124816172324313336384245464952556164727678828791971011101151171221271331341401441511531601661731811891911992062152162252322332332342352362362372382432442452522532552572582602672682712742752782822832872872882922962973023033043093123133193193203263323333403433443523533543623713723813823833924014034034094114124174194204264284304354374404424444474504524554584604634674694724774794824884904934995015045115135165245265305335355395435455495545565615635655705735755805855875925996016066146166226226246306376396456536556626636656726766786856906926997077097177197217297327347427497517597667687767847867957977998088148168258328358358378408408438468468508538538628658668688718728758788798888918929019049069069099119179209239259289319349379419419449489519549589629659709729759809839869919959981004100610091016101710201027102910321040104110441052105410571065106810711080108210861086108710911091109410981098110111051105111411181119112011241125112711311132113911431144115311571159115911631165117111751177118511891192119211961199120412081211121812221226122612301234123612401244124812521256126312671272127212761281128312871292129713011306131413181324132413281334133713411347135413581364137313771384138613901397140414081415142414281436143814421450145814621471147114751484148714911500150915141514151515201520152415291530153115361537154015451546155215571559156315681570157615811584158415891592159516001603160816131616162516301634163716421646165116561660166916741679168316881693169917041710171117161722172517301736174117461753175317581765176817731780178517901798179818031811181618211829183618411850185218571866187518811881188218881888189419001901190519111912191819241926192819341936193819441946195019561959195919651968197519811984199319992003200820142019202220282033203820442050205220582064206720732079208420902097209921052112211821242131213921452153215821642173217321792188219021962205221422212221222822352235224422512252225922662267227622832285228622932295230423112314231623232326233023372341234323502354236323702375237623832388239724042410241624232429243724442451245724642472247624832491249725042513251825252534254125482557256625742574258225902591259526032604261026182620262526332636263826462649265426622665267026782681268826962700270027082712271227202724272727352739274527532757276327712776277627842789279228002805280828162822282428322838284328512857286328712877288528932900290129092916291829262933293829462953296129692976298529933001300930173026302730353044304630553055305630653065306930783078308430933093309931083108311731263127312831373138314531543156315631653167317031793181318631953197320532143217321832273230323432433246325332623266326732763280328132903294329833073311331933283333333433433348335233613366337433833389339134003406341134203427342734363443344534543461346634753483348334923500350335123520352635353544354535543563356835773586359435953595359535993600360036003606360736073607361636173617361836243625362536263633363436343636363636373637363936463647364736493658365936593662366436653665366936693670367036743675367636763680368436853685369036923693369336983702370337033708371537163716372237273728372837343742374337433750375137523752376037603761376137693771377237723780378637873787379538013802380238103817381838183827382838293829383838393840384038493853385438543863387138723872388138893890389138913892389338943894389939003901390139063907390839093913391439153916392439253926392739363937393839403940394139423944394839493950395239573958395939613968396939703973397439753976397939813982398339863995399639974001400440054006401040144015401640214024402540264031403840394040404540544055405640614070407140724078408140824083408940944095409641034104410541064113411841194120412741344135413641444149415041514159416841694170417941814182418341924194419541964205421142124213422242314232423442344238423942414241424942504252425342544255425742584266426742694271427342744276427842844285428742894295429642984301430143024304430743114312431443174323432443264330433043314333433743414342434443484356435743594364436643674369437443804381438343894392439343954401440844094411441844204421442344304432443344354442444844494451445944604461446344714474447544774485449244934495450445064507450945184525452645294529453045314534453445404541454445454549455045534554456245634566456845724573457645784582458345864588459645974600460346074608461146144621462246254629463046314634463846454646464946544658465946624667467546764679468546894690469347004703470447074714472147224725473347374738474147494755475647594768476847694772478147884789479347934797479848024802481048114815481648214822482648284832483348374839484748484852485548614862486648694877487848824886488848894893489848984899490349084916491749214927492949304934494149424943494749544955495649604967497249734977498549894990499450025009501050145023502450255030503050305031503650365045504650515052505650575062506350675068507350745079508050855087508750885093509550955096510151035107510851135115512451255130513351335134513951425143514451495152515851595164516751745175518051845184518551905194519952005205520952155216522152265228522952345239524652475252525752665267527252785281528252875293530153025307531453145315532053275333533453395347534853495354536253665367537253805384538553905398540754085413542254245425543054395444544554515451545154525458545854615462546854685476547754835484548754885494549555015502550855105515551655225525552555265532553555395540554655495556555755635567556955705576558055865587559355985599560056065611561756185624563056305631563756435652565356595666567056715677568456935694570057085711571257185726573457355741575057535754576057695778577957865786579057915798579957995800580758085809581058175818582458255832583458365837584458465851585258595862586258635870587358795880588758915892589359005904591059115918592359265927593459395942594359505955596359645971597759825983599059966004600560126019602260236030603860386039604660546059606060676076607660776084609361016102610961186126612761356135613861396147614861496150615861596165616661746176617761786186618861976198620662096215621662246228622962306238624362436244625262576259626062686273628062816289629563016302631063176322632363316339634063416349635763586359636763756377637863866394640264036411641964276428643664456449645064596459645964606469646964706471648064806485648664956496649764986507650865106511652065216529653065396541654565466555655765636564657365756583658465936596660066016610661366196620662966326640664166506654665866596668667266786679668866936693669467036708671467156724672967386739674867536762676367726778678367846793679968076808681768246829683068396847684868496858686668706871688068896892689369026911692069226922692269256927692769276935693769376938694269446944694569546956695669586960696269626964697269746974697769806982698269856993699569956999700370057005701070107012701270177019702170217026703470367036704270467048704870547061706370637070707370757075708270917093709371017105710771077116711671187118712771347136713671457154715671577157716271647165716671687170717171727180718271837185718971917192719571967198719972027211721372147218722372257226723172347236723772427250725272537259726372657266727372767278727972867289729172927299730873107311731973277329733073397339734173427351735773597361736173667368737073717375737773797381738273847386738873897391739373957403740574077410741574177419742274277429743174357439744174437448744974517453745874607462746474697478748074827488749474967498750475117513751575227528753075327540754375457547755575607562756475727578758075827591759475967598760776127614761776177621762376267627762876307633763476387640764376447650765276557657766076627665766776737675767876817681768376867689769676987701770577067708771177157718772077237728772877307733773877427744774777537756775877617768776877707773778077857787779077977803780578087816781978217824783278407842784578547861786378677867787178737877787878787880788478857891789378977899790279047908791079197921792579287935793779417945794979517955796079617963796779727979798179857991799579978001800880108012801680238029803180358043804680488052806180628064806880778084808680918091809580978102810381068108811381148122812481298131813681388143814681508152815781618162816481698173818181838188819382008202820782138219822182268233823782398244825182558257826282708272827482798288828882908295830483058307831283218326832883348334833783398345834583498351835783588358836083668367837583778383838583858387839383958400840284088411841484168422842584318433843984428450845284588462846884708476848084898491849785028506850885148520852285248530853685418543854985568556855885648571857985818587859585968598860486128620862286288637864386458652865286528654866186618661866386708670867886808687868886908692869987008702870487118713871387158722872487288730873787398746874887558758876387658772877587848786879387978802880488118816881988218828883388408842884988558858886088678874887588778884889188978899890689138919892189288936894089428949895789668968897589848986898889968996899689989006900690119013902190219029903190399040904690489056905890609062907090729076907890869089909190939101910491129114912291269129913191399144914591479155916091679169917791839186918891969203920492069214922192289230923892469251925392619270927392759284928492849286929592959296929893079307931693189327932893349336934593469354935693659367937393759384938793909392940194049412941494239427943394359444944994529454946394699470947294819487949694989507951495209522953195399544954695559564956795709570957095719574957495749583958695869587959495979597959996059608960896109617962096209623962896319631963596399642964296469652965596559660966596689668967396789681968196869692969596959701970697099709971597209723972397299738974197419748975697599759976697749777977797859789979297929801980498079807981698199822982298319840984398449844985298559856985698649867986898699876987998809882988898919892989499019904990599079915991899199922992999329933993699449947994899529957996099619966997099739974997999859988998999941000010003100041001010015100181001910025100321003510036100431004310046100471005410063100661006710075100761007910080100881009410097100981010710112101151011610125101321013510137101371014210145101471014810152101551015710158101651016810170101711017910182101841018610193101961019810201102011020410206102091021310216102181022210225102281023010234102401024310245102501025310256102581026410266102691027110277102831028610288102941030110304103061031310319103221032410332103321033510337103451034610349103511036010360103631036510374103781038110383103921040010403104061040610413104161041910420104211042410427104281043710440104431044510453104561045910462104651046810471104741047810481104841048810491104941049710501105091051210515105201052210525105281053410535105381054110547105531055610559105661057010573105761058410587105901059310601106101061310616106251062610629106331063310633106361064010640106461064910653106541065510658106621066410664106671067110673106801068310687106891069610699107031070610712107151071910723107261072910733107371074210745107491075410758107611076510771107721077510779107851079110794107981080510810108131081710825108281083110835108431084610849108531086210864108671087210872108721087510880108801088310886108911089210894108971090210904109041090710912109141092010923109281093110936109391094410948109521095510960109641096910972109771098210986109891099411000110031100611011110171102511028110331104011047110501105511063110691107211077110861109011093110981110711112111151112011129111341113711142111511115611159111641117311182111851119111191111911119411200112001120011203112091120911209112121121811218112241122711233112331124011243112491124911256112591126511265112721127511281112821128811291112971129811305113081131411315113221132511331113321134011343113491135111355113581136411366113711137411380113821138711390113961139811404114071141311416114191142211428114311143511438114441144711451114541146011463114691147211478114811148711490114961149911506115091151511518115251152811534115371154611549115551155911565115681157411578115851158811594115981160511608116141161811627116301163611641116491165211658116631167211675116811168611695116981170411710117121171511721117271173111734117401174611751117541176011766117711177411780117861179511798118041181011819118221182811835118351183811844118511185111854118601186711871118741188011887118921189511901119081191411917119231193011936119391194511953119531195611962119701197411977119831199111996119991200512013120181202112027120361203612039120451205412056120591206512074120771208012086120951209812101121071211612124121271213412134121361213912146121461214912152121591215912162121651217212172121801218312190121911219612199122061220712213122161222312224122301223312240122421224412247122541225612263122661227312275122831228612293122951230312306123131231612320123231233012334123361233912346123501235312356123631236712370123731238012385123851238812395124001240112404124111241612418124211242812433124351243812445124511245112454124611246712467124701247712483124841248712494125001250112504125111251712526125291253612543125441254712554125611256312566125731258012582125851259212600126001260312610126181262412627126341264212649126521265912667126741267712684126931269812701127091270912710127131272112721127231272612734127341273612739127471274812748127511275912760127671277012778127791278712790127981279912807128101281812820128271283012838128401284812851128591286112870128731288112883128921289512903129061291412917129251292812937129401294812952129521295512963129671296712970129781298212991129941300213007130101301313021130261303013033130411304613050130531306113067130701307313081130881308913092131001310713109131121312013127131291313213140131481314913152131601316813177131801318813197131971320013208132171321813221132291323813239132421325013259132611326413272132811328413287132951330413308133111331913328133321333513343133521336113364133731337313373133761338513385133861338913398133981339913402134111341113417134201342913429134361343913448134481345613459134681346813477134801348913490134931349613505135061351013513135221352313528135311354013541135471355013559135611356513568135771357913584135871359613598136041360713616136181362513628136371364013646136491365813661136681367113680136831369113694137031370713707137101371913723137231372613735137391374013743137521375613758137611377013774137781378113790137941380213805138141381813827138301383913844138441384713856138611386313866138751388013887138901389913904139121391513924139291393813941139501395613957139601396913975139831398613995140011401014013140221402914029140321404114048140511405414063140701407414077140861409314098141011411014117141231412614135141421415114154141631417114172141751418414192141941419714206142141421714220142291423714243142461425514264142691427214281142901429614299143081431714324143281432814328143291433314333143331433714341143411434114346143501435014350143561436014360143611436114365143651436614370143741437414375143801438414384143851439114395143951439714398144021440214404144081441214412144141441914423144231442514431144351443514438144391444314443144461445414458144581446114470144741447414478144781448214482144861449114495144951450014504145081450814513145181452214522145271453314537145371454314544145481454814555145551455914559145661456714571145711457814580145841458414591145991460314603146111461214616146161462414626146301463014638146411464514645146531466214666146661467514679146831468314692146971470114701147101471614720147211472114724147281472914729147331473714738147381474314747147481474814754147581475914760147631476714768147691477714781147821478314792147961479714799147991480314804148061481314817148181482114825148291483014833148381484214843148461485214856148571486114865148691487014874148831488714888148931489314897148981490314904149081490914914149231492714928149341494214946149471495314962149661496714974149741497814979149861499514999150001500815009150131501415022150241502815029150371504015044150451505415056150601506115070150741507815079150881509315097150981510715113151171511915119151241512815130151311513215136151381513915141151451514715148151511515515157151591516115165151671517015171151751517715180151821518615188151911519515199152011520415208152121521415217152251522915231152341524315247152491525315254152581526015264152651526915271152751528415288152901529515295152991530115306153081531215314153191532215326153281533315337153411534315348153531535715359153641537115375153771538215390153941539615402154081541215414154201542715431154331543915448154521545415461154621546615468154751547815482154841549115495154991550115508155141551815520155271553515539155411554915553155571555915567155721557615578155861559315597155991560715616156201562215631156361564015642156511565715661156631567215680156841568715687156881569215695156951569615700157031570315705157091571215712157161572015723157231573015734157371573815739157431574615747157491575315756157571576115765157681576915776157801578315785157881579215795157971580115805158081581015816158201582315826158261583015833158361583615840158431584615847158511585415857158601586415867158701587715881158841588815889158931589615900159021590615909159131591715921159241592815936159401594315948159541595815961159661597315977159801598515994159981600116007160111601516018160241603016034160371604316050160541605716063160721607616079160861609016094160971610516105161091611216120161211612516128161361613916143161461615416163161671617016179161811618516188161971620016204162071621616221162251622916229162301623416238162381624616250162541625416263162671627116272162731627716281162821629016294162981630016300163041630816310163111631516319163211632416328163321633516335163391634316346163481635216356163591636216366163701637316378163821638616390163921639616400164041641216416164201642416433164371644116446164471645116455164601646916473164771648316483164871649116497164981650216506165121651516519165231653016531165351653916546165501655416558165651657016574165781658516592165961660016608166131661716621166301663216636166401664916652166561666016669166741667816683166831668716691166961669616702167061671116711167181672216727167271673616740167451674616754167581676316765167701677416779167811678716791167961679816807168111681616818168271683116836168391683916843168481685116852168561686116864168681687216877168801688416888168931689716897169011690616910169111691516920169241692816932169371694116946169501695516959169681697216977169821698216986169911699616999170031700817013170171702117026170321703417038170431704917052170561706117067170731707717082170881709617100171051711217114171181712317130171331713717142171491715517159171641717117179171831718817196171981720217207172151721817222172271723517241172451725017258172661727017275172841729017294172991730817315173191732517325173251732917335173351733817342173481734817355173591736517365173731737717383173841738517389173951739617400174041741017412174131741717423174251742717431174371743917444174481745417456174651746917475174781747817482174881749117492174961750217505175091751317519175221753017534175401754417549175531755917563175691757317579175831759217596176021760717611176151762117626176341763817644176491765817662176681767417676176801768617692176991770317709177161772117725177311773817744177481775417761177701777417780177881779317797178031781117820178241783017839178391784317849178581786117865178721787217872178761788317883178861789017897178971790117905179121791217919179231793017931179351793917946179481794917953179601796217964179681797517977179821798617993179961799918003180101801318020180241803118034180421804618053180571805818062180691807318082180861809318098181031810718114181191812518129181361814118150181541816118167181751817918186181921820018204182111821718226182301823718244182461825018257182651826618270182771828518293182971830418312183211832518332183411834418348183551836418367183711837818387183941839818405184141842218426184341843418436184401844818448184501845418462184631846318467184751847618477184811848918490184951849918507185081851418518185261852818529185331854118543185451854918557185591856518569185771857918587185911859918602186041860818616186191862218626186341863718644186481865618659186681867218680186841869118695187031870718715187191872718732187341873818746187511875618760187681877418775187791878718793187951879918807188131881918823188311883718846188501885818865188721887618884188911889918903189111891918921189251893318941189471895118959189671897518979189871899519004190081901619025190281903219040190491905719061190691907819086190901909819107191161912019129191291913219136191451914519153191571916619167191731917719186191871919419198192071920919210192141922319225192321923619245192471925619260192691927219272192761928519288192921929619305193091931019314193231932719329193331934219346193491935319362193661937319377193861939119395193991940819413194181942219431194361944219446194551946119461194651947419480194871949119500195071950919513195221952919532195361954519552195591956319572195801958519589195981960619615196191962819637196371964119650196591966319668196681966819670196751967519675196841968919689196901969019695196951969619700197051970519707197101971519715197171972119726197261972819733197381973819741197411974619746197491974919754197541975719757197621976219765197661977119771197741978019785197851978819794197991979919803198081981319813198171982319828198281983319834198391983919844198461985119851198561986219867198671987219879198841988419890198921989719897199031990619911199111991719924199291992919935199431994819948199551995819963199631997019974199791997919986199952000020000200082000820013200132002120026200312003120039200462005120051200592006620071200712007920087200922009220101201042010920109201182012320128201282013720142201472014720156201622016720168201682016920174201752017520178201832018420184201912019620197201972020520210202112021220215202202022120222202272023220233202352023920244202452024720252202572025820261202612026620267202702027320278202792028220285202902029120294202982030320304203072031620321203222032620328203332033420338203412034620347203512035520360203612036520374203792038020385203872039220393203982040620411204122041720426204312043220438204422044720448204542046120466204672047420478204832048420491204962050120502205102051020515205162052420528205332053420542205462055120552205602056520570205712058020580205852058620595205992060420605206142062320628206302063020630206352063720637206422064720649206492065820663206652066620671206762067820679206852069020692206942069520700207022070420710207152071720719207272073220734207362074520750207522075520759207642076620769207782078320785207892079520800208022080620813208182082020825208272083220834208392084620851208532085920865208702087220878208852089020892208992090120906209082091520923209282093020938209392094420946209542095620961209632097120978209832098520994209972100221005210052100621011210142101421016210212102421024210312103621039210402104421049210522105321057210622106521066210712107621079210812108121086210892109121098211032110621109211122111721120211232112721132211352113821147211522115521159211662117121174211782118621191211942119821207212122121521220212242122921232212382124021245212482125421260212652126821274212812128621289212962129821303213062131421314213192132221330213342133921342213502135521360213632137221372213772138021389213972140221406214062141321418214222142221430214352143921440214432144821452214542145621461214652146721471214762148021482214872149221496214992149921504215082151121520215252152921533215372154221546215502155521560215642156921570215752157921584215852159021594215992160021605216092161421616216212162521630216382164321647216522166021665216692167521676216812168521691216932169821702217082171621721217252173121739217442174821755217612176621770217772178421789217932180121804218092181321821218252183021834218422184921854218582186621874218792188321892218962190121905219142191921924219292192921930219352194021940219422194721952219522196021965219702197121971219762198121982219872199221997219982200422009220142201622018220232202822030220352204022045220472205222057220622206422070220752208022083220852209022095220982210322108221132211622125221302213522139221392214422149221532215922164221692217322182221872219222197222032220822213222182222522230222352224122244222492225422260222672227222277222832229222297223022230922309223142231922326223322233722342223502235022355223602236822374223792238422392223992240422409224182242122426224312244022448224532245822467224762248122487224872248722492224982249822504225092251522516225172252222528225292253622541225472254822556225612256722569225732257822584225872258722592225982260122601226062261222615226162262122627226302263722642226482265222655226602266622671226732267822684226892269222697227032270822717227222272822734227402274522751227582275822763227692277622777227822278822795228022280722813228212282522830228362284522848228532285922868228722287722884228842288422889228962289622904229092291622917229182292322930229312293322938229452294622954229592296622968229742297922986229892299322998230052300823013230182302523029230302303523042230472304723052230592306423067230722307923084230882309323100231062310623111231182312423133231382314523152231602316523172231792318823193232002320823214232192322623234232402324523252232612326123266232732328223283232882329523304233122331723324233332334223347233542336323372233772338523385233852339023398233982340523410234182341823426234312343923439234482345323461234622346223467234752347623483234882349623497235052351023518235202352423529235372353923544235492355723560235622356723575235782358223587235952359823604236092361723620236272363223640236442364823653236612366523671236762368423689236902369523703237082371023715237232372823737237422375023756237582376323771237772377923784237922379823801238062381423821238212382623834238412384423849238572386423873238782388623894238942389923907239152392223927239352394423945239502395823967239692397423982239912399423999240082400824008240132402224022240262403124040240412404124046240552405624057240622407124072240802408524094240962409924104241132411524121241262413524137241442414924158241612416524170241792418224191241962420524209242112421624225242292423224237242462425124251242562426524270242752428024289242952429824303243122431824322243272433624343243442434924358243652437224377243862439424396244012441024418244212442624435244442444424449244582446724473244792447924479244832448924489244892449424500245002450124503245092450924510245192452524525245272452924535245352453724540245462454624549245492455524555245582456624572245722457524583245892458924592246012460724607246112461724623246232462824632246382463824643246522465824658246642466424670246702467624683246892468924696247022470824708247152472124727247272473424741247472474724755247592476524765247742477724783247842478424785247912479224792247942480024801248012481024816248172481824826248322483324835248412484724848248502485724863248642486724872248782487924882248872489324894248972490524911249122491524924249302493124935249422494824949249532496124967249682497224981249872498824993249932499925000250052501325019250202502525034250402504125047250522505825059250652507125077250782508525089250952509625103251092511525116251232513025136251372514425152251582515925167251732517925180251882519625202252032521225219252252522625235252432524925251252512525725263252652526525274252802528225283252882529425296252972530325309253112531325317253232532525327253352534125343253452535425360253622536525365253712537325376253842539025392253962539925405254072541125414254202542225426254302543625438254432544525451254532545825465254712547325478254872549325495255012550125507255092551525523255292553125538255412554725549255572555725563255652557325574255802558225590255992560525607256162562125627256302563025631256372564025640256422564825651256522565225658256612566225669256752567825680256822568825691256932569625702257052570825709257152571825721257302573625739257432574325749257522575625757257632576625770257792578525788257932580025806258092581425822258282583125836258452585125854258602586725873258762588325888258942589725904259112591725920259272593525941259442595225958259642596725976259802598625990259902599225998260022600226005260112601526016260172602326027260282603726043260472604926056260622606626068260762608226086260892609526101261052610926114261202612426128261372614326147261522615226158261622616726176261822618626191262002620626210262152622426230262342624026240262462625026256262652627126275262812629026296263002630726307263132631726324263252633126335263432634326349263532636126361263672637126379263842639026394264022640826414264182642726432264382644226451264572646326467264762648326489264932650226510265162652126521265282653426539265392654726553265582655926559265652657026571265722657826583265852658526591265962659826599266052661026612266212662726632266352663526641266462664926658266642666926673266742668026685266892669426700267052670926715267212672626731267362674226747267522675926765267702677626779267852679026796268002680626811268182682126827268322683926844268502685526863268662687226877268852688926895269002690926912269182692326932269382694426950269502695026956269622696226963269692697526976269762698226988269892699226998270042700527014270202702627028270282703427040270422705127057270632706627068270742708027084270842709027096271002710127107271132711827118271242713027135271392714527151271562716427170271762718127190271962720227208272162722227228272352723727243272492725627264272702727627283272922729827304273122732027326273322734127344273502735627365273682737427380273892739327399274062740627409274152742227422274302743627443274442744827454274612746227467274732748027482274862749227499275012751027516275232752627534275402754727550275592756527572275762758427590275972760227605276112761827624276262763227639276452764827654276612766827670276762768327690276982770427711277192772227728277352774327747277532776027769277722777827785277942780327809278172781727824278302783827838278462785227860278612786827874278822788427888278942790227904279132791927927279302793027936279442794727956279622797027974279812798727995279992800728013280212802528034280402804828053280612806728075280812808728093281012810828108281142812228129281302813628144281522815228158281662817428183281892819728206282082821428222282312823428240282492824928251282572826628267282682827428283282852828528291283002830228304283102831928321283232832928338283402834228348283572835928364283702837928381283882839428403284052841228418284272842928436284422845128454284592846528474284772848428490284992850228509285152852428527285352854128550285542855628562285712857528579285852859428598286022860828617286212862628632286412864628650286562866528670286762868228691286962870228708287172872228730287362874528751287512875728766287722877428780287892879528797288032881228818288222882828837288442884628852288612886828872288782888728894288982890428913289202892728933289422895028950289562896528973289752898128990289982900029006290152902329028290342904329052290552906129070290792908429090290992910829113291192912829137291462915329153291532915629163291632916329168291752917529175291802918729187291882918829195291952919629196292032920329204292062921329213292142921629223292232922429231292382923829239292482925529255292572925829265292652926729268292752927529277292832929029290292932929729304293042930729313293202932029323293292933629336293402934229349293492935329359293662936629370293782938529385293892939729404294042940929413294202942029426294272943429434294402944329450294502945629459294662946629473294732948029480294872949029497294972950429509295162951629523295282953529535295432954529552295522956129562295692956929578295812958829588295972960029607296082960829609296162961729617296222962929630296302963729644296452964529652296592966029661296672967429675296762968229689296902969129699297062970729708297162972329724297262973329740297412974429748297552975629759297652977229773297762978229789297902979429799298062980729812298162982329824298292983529842298432984829855298622986329868298752988229883298892989129898298992990529909299162991729923299282993529936299422994829955299562996229970299772997829985299852999229993300003000130008300093001630018300253002630034300343004130042300503005230059300603006830071300783007930087300923009930100301083011730124301253013430135301423014330152301543016130162301713017630183301843019330199302063020730216302243023130232302413025030257302593025930261302683027030271302723027930281302823028530292302943029530299303063030830309303173032430326303283033130338303403034230347303543035630358303643037130373303763037730384303863038930393304003040230405304113041830420304233043030437304393044330445304523045430459304593046630468304733047530482304843048930492304993050130506305153052230524305303053330540305423054830553305603056230568305743058130583305903059330600306023060930615306223062430631306393064630648306553066430671306733068130687306943069630704307133072030722307313073230739307413075030752307593076130770307793078630789307893079730804308073080830808308153081830819308203082730830308313084030847308503085230859308663086930871308803088730890308933089330900309033090630915309223092530928309373094430947309513095230959309623096630968309753097830983309843099130994309993100631013310163102131030310373104031046310473105431057310633106431071310743108031086310933109631102311103111731120311273112731134311373114431145311523115531162311673117431177311843119131198312013120831217312243122731235312363124331246312543125631263312663127431278312853128831296313023130931312313203132831335313383134631355313623136531374313753138231385313943139731404314073141631421314283143231432314353144231446314463145131458314623146231469314763148031481314813148831492314933149831505315093151031517315243152831529315383154531549315513155331560315643156631573315803158431586315953160231606316093161031617316213162431629316363164031643316523165931663316673166831675316793168331686316933169731701317093171631720317243173331740317443174931750317573176131766317693177631780317853179331800318043181031810318173182131827318293183631840318463185031857318613186731876318833188731894319023190931913319213192131928319323194031942319493195331961319693197631980319893199332000320043201332019320263203032039320473205432059320593206332070320753207632077320843208932090320933210032105321063211132118321233212532127321343213932141321493215632161321643216432171321763217932181321883219332197321973220432209322133221632223322283223232237322443224932253322603226732272322773228232289322943230032300323073231232318323203232732332323383234232349323543236132363323703237532382323903239732402324103241032417324223243032432324393244432453324543246132466324753247932486324913250032506325133251832527325353254232548325483255532562325683256932571325783258432585325893259632602326033261032617326233262432631326383264432646326473265432660326623266532672326783268032686326933269932701327083271532721327233273132738327443274732747327543276032763327663277332779327823278632793327993280232810328173282332827328273283432840328443284732854328603286432868328753288132886328863289332899329043290632913329193292432929329363294232947329543296132967329733297332980329863299232994330013300733013330183302533031330373304433051330573306433067330743308033087330923309933105331123312033127331333314133142331493315533163331643317133177331853318833195332013320933215332223322833236332453325233258332673327333280332863329533303333103331733317333183332533332333323333733344333513335133357333643337133371333793338633393333943339533402334093341033415334223342933430334383344533452334543345433461334683347033473334803348733489334973350433511335133352133528335353353833538335453355233555335583356533572335753358333590335973360133603336103361733621336253363233639336433365033657336643366933672336793368633691336973370433711337163372433731337383374433745337523375933765337733378033787337933380133808338153382233822338293383633843338463385333860338683386833875338823389033895339023390933917339243393133938339473394733954339613397033977339843399233992339953400234010340103401534022340303403034038340453405334054340603406734075340763408534092341003410234103341103411834120341243413134139341423414434151341593416334163341703417834182341843419134199342033420834215342233422834232342393424734253342543426134269342753427834285342933429934306343133432134327343343434134349343563435734364343723437934382343893439734404344113441834426344333444134448344563446334471344783448634494344943450134509345173452134528345363454434549345563456434573345743458134589345983460134608346163462534632346393464734656346653467234681346813468334690346993469934703347103471934719347273473434743347443474434751347603476134770347773478634788347893479634805348073481234819348283483034838348453485434857348623486934878348813488834895349043490834909349163492534929349343494134950349543496334970349793498434985349923500135006350113501835027350333503335040350493505535056350633507235078350813508835097351033511035117351263513335135351423515135158351673517435183351913519235199352083521635221352283523735246352473525435263352723527735284352933530235309353173531735317353183532635326353263533435342353423534335343353513535135352353543536235362353633536935377353773537935382353903539035392354013540935409354123541335421354213542435429354373543735441354443545235452354563546235470354703547435482354903549035495354973550535505355113551235520355203552635528355363553635542355463555435554355603556835576355763558335590355983559835606356103561835618356263563235640356403564935650356583565835667356683567635676356853569035698356983570735714357223572335723357253573335734357343573735745357463574635752357603576135761357693577735778357793578235790357913579235796358043580535807358093581735818358203582435832358333583535844358523585335856358573586535866358693587535883358843588735895359033590435908359113591935920359243593035938359393594435944359523595335958359603596835969359743598135989359903599635997360053600636012360143602236023360293603336041360423604836057360653606636073360763608436085360933609436102361033611136114361223612336131361393614736148361573616036168361703617036170361783618036180361823619036192361923619936207362093621036213362213622336224362333624136243362453624636254362563625836264362723627436277362803628836290362933630036308363103631336322363303633236336363403634836350363553635636364363663637136376363843638636391363983640636408364143641636424364263643336433364413644336450364523646036462364693647336481364833649036499365073650936517365253653336535365433655136559365613657036570365783658036589365943660236605366053660936617366203662036625366333663636636366433665136654366553665736665366683667036671366793668236684366903669836701367033671136719367223672536729367373674036743367473675536758367613676836776367793678236791367993680236806368113681936822368263683136839368423684636855368633686636871368723688036883368883689536903369063691136919369273693036935369433695136954369603696036968369713697736983369913699437000370073701537018370253703037038370413704837055370633706637074370773708537088370963710137109371123712037125371333713637144371513715937162371713717437182371853719437199372073721137211372113721937223372233722537233372373723737245372533725737258372593726737271372723727637284372883728937295373033730737309373113731937323373253733037338373423734537346373543735837361373643737237376373793738837396374003740437406374143741837423374233743137435374403744237450374543745937467374753747937485374873749537499375053751337521375253753237532375403754437551375573756537569375773757737585375893759737606376143761837627376283763637640376493765637664376693766937671376793768437684376903769837703377033771137719377243772537729377373774237744377443775237757377593776137769377743777637780377883779337796377963780437809378123781837826378313783537836378443784937853378563786437869378733788237890378953790037906379143791937924379303793837943379483795637964379693797537979379873799237999380003800838013380203802938037380423805038051380593806438072380793808738092381013810638114381193812838134381423814738156381643817238178381783818238190381963819738199382073821338215382153822338229382313823338241382473824938257382653827138274382813828938295382993830238310383163832038325383333833938344383463835438360383653836738375383813838638388383963840238407384113841938425384313843238440384463845238453384613846738473384743848238488384943849738505385113851838518385263853238539385393854738553385603856838576385823859038590385983860438612386193862738633386413864938657386633867238672386803868638695386973870538711387203872938737387443874438744387523875938759387613876938776387763878038788387953879638797388053881238813388163882438831388323883538843388503885138856388643887138873388753888338890388923889638904389113891338921389293893638939389393894738954389573896438972389793898238991389993900639010390163902439031390353904339051390583906339068390763908339088390963910439111391173912039128391353914139146391543916139168391703917839185391923919739205392123922039224392323923939247392533926139268392773928039288392953930439311393193932739327393293933739345393453934939357393653936639367393753938339384393903939839406394073941639424394323943439435394433945139453394613946939477394803948339491394993950339503395113951939523395253953339541395453955439562395703957539580395883959639601396093961739625396313963139639396473965339660396683967639683396873969539703397103971539723397313973839745397533976139769397733978139789397983979939807398153982439831398393984739856398653987339882398823988839896399053990639909399173992639927399363994439953399553995639964399733997539983399914000040003400094001740026400304003040038400474005140053400614007040074400834009140100401054011240120401294013540141401494015840164401724018040189401964020140209402184022640230402384024740255402614026940278402864029440302403114032040326403344034340352403584036640375403844039040398404074041640424404334043340433404394044840448404484045440463404634046440465404744047440475404784048740487404894049040499404994050140502405114051140513405224053140531405344053540544405444054740556405654056540569405694057840578405824058840597405974060140609406184061840623406294063840638406434065140660406604066640666406754067540681406834069240692406994069940708407084071540717407264072640733407394074840748407554076340772407724078040786407954079540803408124082140821408304083140840408404084940852408614086240862408634087240873408734087740886408874088840890408994090040901409054091440915409174091940928409294093140937409464094740949409584096740968409714097240981409824098540994410034100441008410124102141022410264103141040410414104541052410614106241067410724108141082410884108841097410984110441111411204112141127411364114541146411534116041169411704117841181411904119141199412054121441215412234123141240412414125041256412654126741267412704127941281412814128541294412964129641302413114131341314413184132741329413314133241341413434134541353413624136441367413674137641378413814138941398414004140441410414194142141426414274143641438414434144641455414574146341464414734147541482414824149141493415004150341512415144152141526415354153741545415494155841560415684157241581415834159141595416044160641614416204162941631416404164541654416564166541670416794168141690416964170541707417164172441733417364173641743417524175541755417624177141774417754178141790417934179441802418114181441816418234183241835418374184541854418574186041864418734187641879418854189441897419014190641915419184192241928419374194041945419494195841961419664197241981419844199041995420044200742013420204202942032420394204242051420544206142066420754207842086420904209942102421104211742126421294213842138421474215042159421614217042174421744217542184421884218842192422014220542206422084221742221422224222642235422394224142244422534225742259422664227542279422824228542294422984230142306423154231942323423274233642340423444235342362423664237142373423824238642391423954240442408424144241742426424304243642445424544245842465424654247442478424854248742496425004250842509425184252242530425374254642550425594256542574425784258742595426044260942609426164262542630426314263542644426494265142651426604266542667426694267842683426864268742696427014270442713427224272742731427354274442749427534275942768427734277842783427924279742803428074281642821428274283442843428484285542855428644286942876428764288542890428974289742906429114291842919429284293342940429444295342958429654296942978429834299042994430034300843016430194302843033430414304743056430614306943075430844308943097431044311343118431274313143140431454315443161431704317543184431914320043205432144322343232432384323843243432524325843258432664327543281432814328943298433044330543305433144332043321433284333743343433454334543354433604336243362433714337743379433824339143397433994340743416434224342543426434354344143444434454345443460434634346843477434834348643495435044351043514435164352543531435354353743546435524355643562435714357743582435844359343599436044360943618436244362943634436434364943655436554366443670436764368143690436964370243710437194372543731437394374843754437614376443773437794378643794438034380943817438184382743833438414384243851438574386543871438804388643895438974390643912439214392643935439414395043955439644397143971439724398143988439884399444003440104401044019440284403544035440444405344060440614406644075440824408444084440934410044102441054411444121441234412644135441424414444153441624416944172441804418944196442004420144210442174422144222442314423844242442504425944266442714427744286442934429844307443164432344328443374434644353443594436544374443814438844392444014440844415444224443144438444454445244461444684447644481444904449744505445144452344530445394454144550445574456644568445774458544585445864459544603446034460744616446244462444631446404464844648446554466444672446734467944688446964469744706447154472344725447274473644744447464474844757447654476844769447784478644790447904479944807448114481444823448314483544839448484485644860448644487344881448864488844897449054491044915449244493244937449434495244960449654497144980449884499444998450074501545021450284503745045450514505945068450764508245091451004510845115451214513045138451454515445163451714517945179451884519645204452064521545223452314523945248452564526545266452754528345292452944530345311453204532445333453424534245343453524536145361453654537445383453834538845397454064540645413454224543145432454374544645455454564546445473454824548345492455014551045512455144552345532455344554345552455614556445566455754558445587455904559945608456114561745626456354563945643456524566145665456724568145690456944570245711457204572545727457364574545750457574576645775457814578145790457994580545806458154582445830458364584545854458614586145870458794588645889458984590745914459184592745936459434595245961459704597845983459924600146009460174602646035460434605246061460704607946083460844608446084460844608446085460854608546085460884608946089460894608946093460944609446094460954609546096460964609646097461024610346103461034610446112461134611346113461144612346124461244612446126461314613246132461324613546137461384613846138461414614646147461474614746150461564615746157461574616146164461654616546165461694617246173461734617346177461834618446184461844618846195461964619646196462014620546206462064620646212462154621646216462164622246228462294622946229462354624246243462434624346250462554625646256462564626346269462704627046270462774628646287462874628746295462954629646296462964630446312463134631346313463224632646327463274632746336463434634446344463444635346361463624636246363463634637046371463714637246373463754637646376463774637846383463844638446385463864639246393463934639446396464014640246402464034640646408464094640946410464134641846419464194642046423464304643146431464324643546442464434644346444464484645046451464514645246456464614646246462464634646746474464754647546476464804648846489464894649046495464974649846498464994650446509465104651046511465164652346524465244652546530465384653946539465404654646551465524655246553465594656746568465684656946576465764657746577465784658546586465874658746588465954660446605466054660646614466164661746617466184662646630466314663146632466404664646647466474664846657466604666146661466624667146677466784667846679466884669646697466974669946699467004670146701467034670346704467054670546707467074671146712467124671446714467204672146721467234672346732467334673346735467364673946740467404674246743467494675046750467524675346761467624676246764467664676846769467694677146773467784677946779467814678346791467924679246794467974679746798467984680046803468074680846808468104681446814468154681546817468214682446825468254682746831468364683746837468394684446844468454684546847468524685546856468564685846863468694687046870468724687746885468864688646888468944689846899468994690146907469134691446914469164692246931469324693246934469414694246943469434694546952469594696046960469624697046973469744697446976469844699046991469914699347001470094701047010470124702147025470264702647029470294703047031470314703447034470384703947039470424704247048470494704947052470534705647057470574706047061470704707147071470744707647078470794707947082470844708847089470894709247095470974709847098471014710447106471074710747110471134711847119471194712247125471324713347133471364714047145471464714647149471534715947160471604716347167471764717747177471804718547186471... 

248161723243133363842454649525561647276788287919710111011511712212713313414014415115316016617318118919119920621521622523223323323423523623623723824324424525225325525725826026726827127427527828228328728728829229629730230330430931231331931932032633233334034334435235335436237137238138238339240140340340941141241741942042642843043543744044244444745045245545846046346746947247747948248849049349950150451151351652452653053353553954354554955455656156356557057357558058558759259960160661461662262262463063763964565365566266366567267667868569069269970770971771972172973273474274975175976676877678478679579779980881481682583283583583784084084384684685085385386286586686887187287587887988889189290190490690690991191792092392592893193493794194194494895195495896296597097297598098398699199599810041006100910161017102010271029103210401041104410521054105710651068107110801082108610861087109110911094109810981101110511051114111811191120112411251127113111321139114311441153115711591159116311651171117511771185118911921192119611991204120812111218122212261226123012341236124012441248125212561263126712721272127612811283128712921297130113061314131813241324132813341337134113471354135813641373137713841386139013971404140814151424142814361438144214501458146214711471147514841487149115001509151415141515152015201524152915301531153615371540154515461552155715591563156815701576158115841584158915921595160016031608161316161625163016341637164216461651165616601669167416791683168816931699170417101711171617221725173017361741174617531753175817651768177317801785179017981798180318111816182118291836184118501852185718661875188118811882188818881894190019011905191119121918192419261928193419361938194419461950195619591959196519681975198119841993199920032008201420192022202820332038204420502052205820642067207320792084209020972099210521122118212421312139214521532158216421732173217921882190219622052214222122212228223522352244225122522259226622672276228322852286229322952304231123142316232323262330233723412343235023542363237023752376238323882397240424102416242324292437244424512457246424722476248324912497250425132518252525342541254825572566257425742582259025912595260326042610261826202625263326362638264626492654266226652670267826812688269627002700270827122712272027242727273527392745275327572763277127762776278427892792280028052808281628222824283228382843285128572863287128772885289329002901290929162918292629332938294629532961296929762985299330013009301730263027303530443046305530553056306530653069307830783084309330933099310831083117312631273128313731383145315431563156316531673170317931813186319531973205321432173218322732303234324332463253326232663267327632803281329032943298330733113319332833333334334333483352336133663374338333893391340034063411342034273427343634433445345434613466347534833483349235003503351235203526353535443545355435633568357735863594359535953595359936003600360036063607360736073616361736173618362436253625362636333634363436363636363736373639364636473647364936583659365936623664366536653669366936703670367436753676367636803684368536853690369236933693369837023703370337083715371637163722372737283728373437423743374337503751375237523760376037613761376937713772377237803786378737873795380138023802381038173818381838273828382938293838383938403840384938533854385438633871387238723881388938903891389138923893389438943899390039013901390639073908390939133914391539163924392539263927393639373938394039403941394239443948394939503952395739583959396139683969397039733974397539763979398139823983398639953996399740014004400540064010401440154016402140244025402640314038403940404045405440554056406140704071407240784081408240834089409440954096410341044105410641134118411941204127413441354136414441494150415141594168416941704179418141824183419241944195419642054211421242134222423142324234423442384239424142414249425042524253425442554257425842664267426942714273427442764278428442854287428942954296429843014301430243044307431143124314431743234324432643304330433143334337434143424344434843564357435943644366436743694374438043814383438943924393439544014408440944114418442044214423443044324433443544424448444944514459446044614463447144744475447744854492449344954504450645074509451845254526452945294530453145344534454045414544454545494550455345544562456345664568457245734576457845824583458645884596459746004603460746084611461446214622462546294630463146344638464546464649465446584659466246674675467646794685468946904693470047034704470747144721472247254733473747384741474947554756475947684768476947724781478847894793479347974798480248024810481148154816482148224826482848324833483748394847484848524855486148624866486948774878488248864888488948934898489848994903490849164917492149274929493049344941494249434947495449554956496049674972497349774985498949904994500250095010501450235024502550305030503050315036503650455046505150525056505750625063506750685073507450795080508550875087508850935095509550965101510351075108511351155124512551305133513351345139514251435144514951525158515951645167517451755180518451845185519051945199520052055209521552165221522652285229523452395246524752525257526652675272527852815282528752935301530253075314531453155320532753335334533953475348534953545362536653675372538053845385539053985407540854135422542454255430543954445445545154515451545254585458546154625468546854765477548354845487548854945495550155025508551055155516552255255525552655325535553955405546554955565557556355675569557055765580558655875593559855995600560656115617561856245630563056315637564356525653565956665670567156775684569356945700570857115712571857265734573557415750575357545760576957785779578657865790579157985799579958005807580858095810581758185824582558325834583658375844584658515852585958625862586358705873587958805887589158925893590059045910591159185923592659275934593959425943595059555963596459715977598259835990599660046005601260196022602360306038603860396046605460596060606760766076607760846093610161026109611861266127613561356138613961476148614961506158615961656166617461766177617861866188619761986206620962156216622462286229623062386243624362446252625762596260626862736280628162896295630163026310631763226323633163396340634163496357635863596367637563776378638663946402640364116419642764286436644564496450645964596459646064696469647064716480648064856486649564966497649865076508651065116520652165296530653965416545654665556557656365646573657565836584659365966600660166106613661966206629663266406641665066546658665966686672667866796688669366936694670367086714671567246729673867396748675367626763677267786783678467936799680768086817682468296830683968476848684968586866687068716880688968926893690269116920692269226922692569276927692769356937693769386942694469446945695469566956695869606962696269646972697469746977698069826982698569936995699569997003700570057010701070127012701770197021702170267034703670367042704670487048705470617063706370707073707570757082709170937093710171057107710771167116711871187127713471367136714571547156715771577162716471657166716871707171717271807182718371857189719171927195719671987199720272117213721472187223722572267231723472367237724272507252725372597263726572667273727672787279728672897291729272997308731073117319732773297330733973397341734273517357735973617361736673687370737173757377737973817382738473867388738973917393739574037405740774107415741774197422742774297431743574397441744374487449745174537458746074627464746974787480748274887494749674987504751175137515752275287530753275407543754575477555756075627564757275787580758275917594759675987607761276147617761776217623762676277628763076337634763876407643764476507652765576577660766276657667767376757678768176817683768676897696769877017705770677087711771577187720772377287728773077337738774277447747775377567758776177687768777077737780778577877790779778037805780878167819782178247832784078427845785478617863786778677871787378777878787878807884788578917893789778997902790479087910791979217925792879357937794179457949795179557960796179637967797279797981798579917995799780018008801080128016802380298031803580438046804880528061806280648068807780848086809180918095809781028103810681088113811481228124812981318136813881438146815081528157816181628164816981738181818381888193820082028207821382198221822682338237823982448251825582578262827082728274827982888288829082958304830583078312832183268328833483348337833983458345834983518357835883588360836683678375837783838385838583878393839584008402840884118414841684228425843184338439844284508452845884628468847084768480848984918497850285068508851485208522852485308536854185438549855685568558856485718579858185878595859685988604861286208622862886378643864586528652865286548661866186618663867086708678868086878688869086928699870087028704871187138713871587228724872887308737873987468748875587588763876587728775878487868793879788028804881188168819882188288833884088428849885588588860886788748875887788848891889788998906891389198921892889368940894289498957896689688975898489868988899689968996899890069006901190139021902190299031903990409046904890569058906090629070907290769078908690899091909391019104911291149122912691299131913991449145914791559160916791699177918391869188919692039204920692149221922892309238924692519253926192709273927592849284928492869295929592969298930793079316931893279328933493369345934693549356936593679373937593849387939093929401940494129414942394279433943594449449945294549463946994709472948194879496949895079514952095229531953995449546955595649567957095709570957195749574957495839586958695879594959795979599960596089608961096179620962096239628963196319635963996429642964696529655965596609665966896689673967896819681968696929695969597019706970997099715972097239723972997389741974197489756975997599766977497779777978597899792979298019804980798079816981998229822983198409843984498449852985598569856986498679868986998769879988098829888989198929894990199049905990799159918991999229929993299339936994499479948995299579960996199669970997399749979998599889989999410000100031000410010100151001810019100251003210035100361004310043100461004710054100631006610067100751007610079100801008810094100971009810107101121011510116101251013210135101371013710142101451014710148101521015510157101581016510168101701017110179101821018410186101931019610198102011020110204102061020910213102161021810222102251022810230102341024010243102451025010253102561025810264102661026910271102771028310286102881029410301103041030610313103191032210324103321033210335103371034510346103491035110360103601036310365103741037810381103831039210400104031040610406104131041610419104201042110424104271042810437104401044310445104531045610459104621046510468104711047410478104811048410488104911049410497105011050910512105151052010522105251052810534105351053810541105471055310556105591056610570105731057610584105871059010593106011061010613106161062510626106291063310633106331063610640106401064610649106531065410655106581066210664106641066710671106731068010683106871068910696106991070310706107121071510719107231072610729107331073710742107451074910754107581076110765107711077210775107791078510791107941079810805108101081310817108251082810831108351084310846108491085310862108641086710872108721087210875108801088010883108861089110892108941089710902109041090410907109121091410920109231092810931109361093910944109481095210955109601096410969109721097710982109861098910994110001100311006110111101711025110281103311040110471105011055110631106911072110771108611090110931109811107111121111511120111291113411137111421115111156111591116411173111821118511191111911119111194112001120011200112031120911209112091121211218112181122411227112331123311240112431124911249112561125911265112651127211275112811128211288112911129711298113051130811314113151132211325113311133211340113431134911351113551135811364113661137111374113801138211387113901139611398114041140711413114161141911422114281143111435114381144411447114511145411460114631146911472114781148111487114901149611499115061150911515115181152511528115341153711546115491155511559115651156811574115781158511588115941159811605116081161411618116271163011636116411164911652116581166311672116751168111686116951169811704117101171211715117211172711731117341174011746117511175411760117661177111774117801178611795117981180411810118191182211828118351183511838118441185111851118541186011867118711187411880118871189211895119011190811914119171192311930119361193911945119531195311956119621197011974119771198311991119961199912005120131201812021120271203612036120391204512054120561205912065120741207712080120861209512098121011210712116121241212712134121341213612139121461214612149121521215912159121621216512172121721218012183121901219112196121991220612207122131221612223122241223012233122401224212244122471225412256122631226612273122751228312286122931229512303123061231312316123201232312330123341233612339123461235012353123561236312367123701237312380123851238512388123951240012401124041241112416124181242112428124331243512438124451245112451124541246112467124671247012477124831248412487124941250012501125041251112517125261252912536125431254412547125541256112563125661257312580125821258512592126001260012603126101261812624126271263412642126491265212659126671267412677126841269312698127011270912709127101271312721127211272312726127341273412736127391274712748127481275112759127601276712770127781277912787127901279812799128071281012818128201282712830128381284012848128511285912861128701287312881128831289212895129031290612914129171292512928129371294012948129521295212955129631296712967129701297812982129911299413002130071301013013130211302613030130331304113046130501305313061130671307013073130811308813089130921310013107131091311213120131271312913132131401314813149131521316013168131771318013188131971319713200132081321713218132211322913238132391324213250132591326113264132721328113284132871329513304133081331113319133281333213335133431335213361133641337313373133731337613385133851338613389133981339813399134021341113411134171342013429134291343613439134481344813456134591346813468134771348013489134901349313496135051350613510135131352213523135281353113540135411354713550135591356113565135681357713579135841358713596135981360413607136161361813625136281363713640136461364913658136611366813671136801368313691136941370313707137071371013719137231372313726137351373913740137431375213756137581376113770137741377813781137901379413802138051381413818138271383013839138441384413847138561386113863138661387513880138871389013899139041391213915139241392913938139411395013956139571396013969139751398313986139951400114010140131402214029140291403214041140481405114054140631407014074140771408614093140981410114110141171412314126141351414214151141541416314171141721417514184141921419414197142061421414217142201422914237142431424614255142641426914272142811429014296142991430814317143241432814328143281432914333143331433314337143411434114341143461435014350143501435614360143601436114361143651436514366143701437414374143751438014384143841438514391143951439514397143981440214402144041440814412144121441414419144231442314425144311443514435144381443914443144431444614454144581445814461144701447414474144781447814482144821448614491144951449514500145041450814508145131451814522145221452714533145371453714543145441454814548145551455514559145591456614567145711457114578145801458414584145911459914603146031461114612146161461614624146261463014630146381464114645146451465314662146661466614675146791468314683146921469714701147011471014716147201472114721147241472814729147291473314737147381473814743147471474814748147541475814759147601476314767147681476914777147811478214783147921479614797147991479914803148041480614813148171481814821148251482914830148331483814842148431484614852148561485714861148651486914870148741488314887148881489314893148971489814903149041490814909149141492314927149281493414942149461494714953149621496614967149741497414978149791498614995149991500015008150091501315014150221502415028150291503715040150441504515054150561506015061150701507415078150791508815093150971509815107151131511715119151191512415128151301513115132151361513815139151411514515147151481515115155151571515915161151651516715170151711517515177151801518215186151881519115195151991520115204152081521215214152171522515229152311523415243152471524915253152541525815260152641526515269152711527515284152881529015295152951529915301153061530815312153141531915322153261532815333153371534115343153481535315357153591536415371153751537715382153901539415396154021540815412154141542015427154311543315439154481545215454154611546215466154681547515478154821548415491154951549915501155081551415518155201552715535155391554115549155531555715559155671557215576155781558615593155971559915607156161562015622156311563615640156421565115657156611566315672156801568415687156871568815692156951569515696157001570315703157051570915712157121571615720157231572315730157341573715738157391574315746157471574915753157561575715761157651576815769157761578015783157851578815792157951579715801158051580815810158161582015823158261582615830158331583615836158401584315846158471585115854158571586015864158671587015877158811588415888158891589315896159001590215906159091591315917159211592415928159361594015943159481595415958159611596615973159771598015985159941599816001160071601116015160181602416030160341603716043160501605416057160631607216076160791608616090160941609716105161051610916112161201612116125161281613616139161431614616154161631616716170161791618116185161881619716200162041620716216162211622516229162291623016234162381623816246162501625416254162631626716271162721627316277162811628216290162941629816300163001630416308163101631116315163191632116324163281633216335163351633916343163461634816352163561635916362163661637016373163781638216386163901639216396164001640416412164161642016424164331643716441164461644716451164551646016469164731647716483164831648716491164971649816502165061651216515165191652316530165311653516539165461655016554165581656516570165741657816585165921659616600166081661316617166211663016632166361664016649166521665616660166691667416678166831668316687166911669616696167021670616711167111671816722167271672716736167401674516746167541675816763167651677016774167791678116787167911679616798168071681116816168181682716831168361683916839168431684816851168521685616861168641686816872168771688016884168881689316897168971690116906169101691116915169201692416928169321693716941169461695016955169591696816972169771698216982169861699116996169991700317008170131701717021170261703217034170381704317049170521705617061170671707317077170821708817096171001710517112171141711817123171301713317137171421714917155171591716417171171791718317188171961719817202172071721517218172221722717235172411724517250172581726617270172751728417290172941729917308173151731917325173251732517329173351733517338173421734817348173551735917365173651737317377173831738417385173891739517396174001740417410174121741317417174231742517427174311743717439174441744817454174561746517469174751747817478174821748817491174921749617502175051750917513175191752217530175341754017544175491755317559175631756917573175791758317592175961760217607176111761517621176261763417638176441764917658176621766817674176761768017686176921769917703177091771617721177251773117738177441774817754177611777017774177801778817793177971780317811178201782417830178391783917843178491785817861178651787217872178721787617883178831788617890178971789717901179051791217912179191792317930179311793517939179461794817949179531796017962179641796817975179771798217986179931799617999180031801018013180201802418031180341804218046180531805718058180621806918073180821808618093180981810318107181141811918125181291813618141181501815418161181671817518179181861819218200182041821118217182261823018237182441824618250182571826518266182701827718285182931829718304183121832118325183321834118344183481835518364183671837118378183871839418398184051841418422184261843418434184361844018448184481845018454184621846318463184671847518476184771848118489184901849518499185071850818514185181852618528185291853318541185431854518549185571855918565185691857718579185871859118599186021860418608186161861918622186261863418637186441864818656186591866818672186801868418691186951870318707187151871918727187321873418738187461875118756187601876818774187751877918787187931879518799188071881318819188231883118837188461885018858188651887218876188841889118899189031891118919189211892518933189411894718951189591896718975189791898718995190041900819016190251902819032190401904919057190611906919078190861909019098191071911619120191291912919132191361914519145191531915719166191671917319177191861918719194191981920719209192101921419223192251923219236192451924719256192601926919272192721927619285192881929219296193051930919310193141932319327193291933319342193461934919353193621936619373193771938619391193951939919408194131941819422194311943619442194461945519461194611946519474194801948719491195001950719509195131952219529195321953619545195521955919563195721958019585195891959819606196151961919628196371963719641196501965919663196681966819668196701967519675196751968419689196891969019690196951969519696197001970519705197071971019715197151971719721197261972619728197331973819738197411974119746197461974919749197541975419757197571976219762197651976619771197711977419780197851978519788197941979919799198031980819813198131981719823198281982819833198341983919839198441984619851198511985619862198671986719872198791988419884198901989219897198971990319906199111991119917199241992919929199351994319948199481995519958199631996319970199741997919979199861999520000200002000820008200132001320021200262003120031200392004620051200512005920066200712007120079200872009220092201012010420109201092011820123201282012820137201422014720147201562016220167201682016820169201742017520175201782018320184201842019120196201972019720205202102021120212202152022020221202222022720232202332023520239202442024520247202522025720258202612026120266202672027020273202782027920282202852029020291202942029820303203042030720316203212032220326203282033320334203382034120346203472035120355203602036120365203742037920380203852038720392203932039820406204112041220417204262043120432204382044220447204482045420461204662046720474204782048320484204912049620501205022051020510205152051620524205282053320534205422054620551205522056020565205702057120580205802058520586205952059920604206052061420623206282063020630206302063520637206372064220647206492064920658206632066520666206712067620678206792068520690206922069420695207002070220704207102071520717207192072720732207342073620745207502075220755207592076420766207692077820783207852078920795208002080220806208132081820820208252082720832208342083920846208512085320859208652087020872208782088520890208922089920901209062090820915209232092820930209382093920944209462095420956209612096320971209782098320985209942099721002210052100521006210112101421014210162102121024210242103121036210392104021044210492105221053210572106221065210662107121076210792108121081210862108921091210982110321106211092111221117211202112321127211322113521138211472115221155211592116621171211742117821186211912119421198212072121221215212202122421229212322123821240212452124821254212602126521268212742128121286212892129621298213032130621314213142131921322213302133421339213422135021355213602136321372213722137721380213892139721402214062140621413214182142221422214302143521439214402144321448214522145421456214612146521467214712147621480214822148721492214962149921499215042150821511215202152521529215332153721542215462155021555215602156421569215702157521579215842158521590215942159921600216052160921614216162162121625216302163821643216472165221660216652166921675216762168121685216912169321698217022170821716217212172521731217392174421748217552176121766217702177721784217892179321801218042180921813218212182521830218342184221849218542185821866218742187921883218922189621901219052191421919219242192921929219302193521940219402194221947219522195221960219652197021971219712197621981219822198721992219972199822004220092201422016220182202322028220302203522040220452204722052220572206222064220702207522080220832208522090220952209822103221082211322116221252213022135221392213922144221492215322159221642216922173221822218722192221972220322208222132221822225222302223522241222442224922254222602226722272222772228322292222972230222309223092231422319223262233222337223422235022350223552236022368223742237922384223922239922404224092241822421224262243122440224482245322458224672247622481224872248722487224922249822498225042250922515225162251722522225282252922536225412254722548225562256122567225692257322578225842258722587225922259822601226012260622612226152261622621226272263022637226422264822652226552266022666226712267322678226842268922692226972270322708227172272222728227342274022745227512275822758227632276922776227772278222788227952280222807228132282122825228302283622845228482285322859228682287222877228842288422884228892289622896229042290922916229172291822923229302293122933229382294522946229542295922966229682297422979229862298922993229982300523008230132301823025230292303023035230422304723047230522305923064230672307223079230842308823093231002310623106231112311823124231332313823145231522316023165231722317923188231932320023208232142321923226232342324023245232522326123261232662327323282232832328823295233042331223317233242333323342233472335423363233722337723385233852338523390233982339823405234102341823418234262343123439234392344823453234612346223462234672347523476234832348823496234972350523510235182352023524235292353723539235442354923557235602356223567235752357823582235872359523598236042360923617236202362723632236402364423648236532366123665236712367623684236892369023695237032370823710237152372323728237372374223750237562375823763237712377723779237842379223798238012380623814238212382123826238342384123844238492385723864238732387823886238942389423899239072391523922239272393523944239452395023958239672396923974239822399123994239992400824008240082401324022240222402624031240402404124041240462405524056240572406224071240722408024085240942409624099241042411324115241212412624135241372414424149241582416124165241702417924182241912419624205242092421124216242252422924232242372424624251242512425624265242702427524280242892429524298243032431224318243222432724336243432434424349243582436524372243772438624394243962440124410244182442124426244352444424444244492445824467244732447924479244792448324489244892448924494245002450024501245032450924509245102451924525245252452724529245352453524537245402454624546245492454924555245552455824566245722457224575245832458924589245922460124607246072461124617246232462324628246322463824638246432465224658246582466424664246702467024676246832468924689246962470224708247082471524721247272472724734247412474724747247552475924765247652477424777247832478424784247852479124792247922479424800248012480124810248162481724818248262483224833248352484124847248482485024857248632486424867248722487824879248822488724893248942489724905249112491224915249242493024931249352494224948249492495324961249672496824972249812498724988249932499324999250002500525013250192502025025250342504025041250472505225058250592506525071250772507825085250892509525096251032510925115251162512325130251362513725144251522515825159251672517325179251802518825196252022520325212252192522525226252352524325249252512525125257252632526525265252742528025282252832528825294252962529725303253092531125313253172532325325253272533525341253432534525354253602536225365253652537125373253762538425390253922539625399254052540725411254142542025422254262543025436254382544325445254512545325458254652547125473254782548725493254952550125501255072550925515255232552925531255382554125547255492555725557255632556525573255742558025582255902559925605256072561625621256272563025630256312563725640256402564225648256512565225652256582566125662256692567525678256802568225688256912569325696257022570525708257092571525718257212573025736257392574325743257492575225756257572576325766257702577925785257882579325800258062580925814258222582825831258362584525851258542586025867258732587625883258882589425897259042591125917259202592725935259412594425952259582596425967259762598025986259902599025992259982600226002260052601126015260162601726023260272602826037260432604726049260562606226066260682607626082260862608926095261012610526109261142612026124261282613726143261472615226152261582616226167261762618226186261912620026206262102621526224262302623426240262402624626250262562626526271262752628126290262962630026307263072631326317263242632526331263352634326343263492635326361263612636726371263792638426390263942640226408264142641826427264322643826442264512645726463264672647626483264892649326502265102651626521265212652826534265392653926547265532655826559265592656526570265712657226578265832658526585265912659626598265992660526610266122662126627266322663526635266412664626649266582666426669266732667426680266852668926694267002670526709267152672126726267312673626742267472675226759267652677026776267792678526790267962680026806268112681826821268272683226839268442685026855268632686626872268772688526889268952690026909269122691826923269322693826944269502695026950269562696226962269632696926975269762697626982269882698926992269982700427005270142702027026270282702827034270402704227051270572706327066270682707427080270842708427090270962710027101271072711327118271182712427130271352713927145271512715627164271702717627181271902719627202272082721627222272282723527237272432724927256272642727027276272832729227298273042731227320273262733227341273442735027356273652736827374273802738927393273992740627406274092741527422274222743027436274432744427448274542746127462274672747327480274822748627492274992750127510275162752327526275342754027547275502755927565275722757627584275902759727602276052761127618276242762627632276392764527648276542766127668276702767627683276902769827704277112771927722277282773527743277472775327760277692777227778277852779427803278092781727817278242783027838278382784627852278602786127868278742788227884278882789427902279042791327919279272793027930279362794427947279562796227970279742798127987279952799928007280132802128025280342804028048280532806128067280752808128087280932810128108281082811428122281292813028136281442815228152281582816628174281832818928197282062820828214282222823128234282402824928249282512825728266282672826828274282832828528285282912830028302283042831028319283212832328329283382834028342283482835728359283642837028379283812838828394284032840528412284182842728429284362844228451284542845928465284742847728484284902849928502285092851528524285272853528541285502855428556285622857128575285792858528594285982860228608286172862128626286322864128646286502865628665286702867628682286912869628702287082871728722287302873628745287512875128757287662877228774287802878928795287972880328812288182882228828288372884428846288522886128868288722887828887288942889828904289132892028927289332894228950289502895628965289732897528981289902899829000290062901529023290282903429043290522905529061290702907929084290902909929108291132911929128291372914629153291532915329156291632916329163291682917529175291752918029187291872918829188291952919529196291962920329203292042920629213292132921429216292232922329224292312923829238292392924829255292552925729258292652926529267292682927529275292772928329290292902929329297293042930429307293132932029320293232932929336293362934029342293492934929353293592936629366293702937829385293852938929397294042940429409294132942029420294262942729434294342944029443294502945029456294592946629466294732947329480294802948729490294972949729504295092951629516295232952829535295352954329545295522955229561295622956929569295782958129588295882959729600296072960829608296092961629617296172962229629296302963029637296442964529645296522965929660296612966729674296752967629682296892969029691296992970629707297082971629723297242972629733297402974129744297482975529756297592976529772297732977629782297892979029794297992980629807298122981629823298242982929835298422984329848298552986229863298682987529882298832988929891298982989929905299092991629917299232992829935299362994229948299552995629962299702997729978299852998529992299933000030001300083000930016300183002530026300343003430041300423005030052300593006030068300713007830079300873009230099301003010830117301243012530134301353014230143301523015430161301623017130176301833018430193301993020630207302163022430231302323024130250302573025930259302613026830270302713027230279302813028230285302923029430295302993030630308303093031730324303263032830331303383034030342303473035430356303583036430371303733037630377303843038630389303933040030402304053041130418304203042330430304373043930443304453045230454304593045930466304683047330475304823048430489304923049930501305063051530522305243053030533305403054230548305533056030562305683057430581305833059030593306003060230609306153062230624306313063930646306483065530664306713067330681306873069430696307043071330720307223073130732307393074130750307523075930761307703077930786307893078930797308043080730808308083081530818308193082030827308303083130840308473085030852308593086630869308713088030887308903089330893309003090330906309153092230925309283093730944309473095130952309593096230966309683097530978309833098430991309943099931006310133101631021310303103731040310463104731054310573106331064310713107431080310863109331096311023111031117311203112731127311343113731144311453115231155311623116731174311773118431191311983120131208312173122431227312353123631243312463125431256312633126631274312783128531288312963130231309313123132031328313353133831346313553136231365313743137531382313853139431397314043140731416314213142831432314323143531442314463144631451314583146231462314693147631480314813148131488314923149331498315053150931510315173152431528315293153831545315493155131553315603156431566315733158031584315863159531602316063160931610316173162131624316293163631640316433165231659316633166731668316753167931683316863169331697317013170931716317203172431733317403174431749317503175731761317663176931776317803178531793318003180431810318103181731821318273182931836318403184631850318573186131867318763188331887318943190231909319133192131921319283193231940319423194931953319613196931976319803198931993320003200432013320193202632030320393204732054320593205932063320703207532076320773208432089320903209332100321053210632111321183212332125321273213432139321413214932156321613216432164321713217632179321813218832193321973219732204322093221332216322233222832232322373224432249322533226032267322723227732282322893229432300323003230732312323183232032327323323233832342323493235432361323633237032375323823239032397324023241032410324173242232430324323243932444324533245432461324663247532479324863249132500325063251332518325273253532542325483254832555325623256832569325713257832584325853258932596326023260332610326173262332624326313263832644326463264732654326603266232665326723267832680326863269332699327013270832715327213272332731327383274432747327473275432760327633276632773327793278232786327933279932802328103281732823328273282732834328403284432847328543286032864328683287532881328863288632893328993290432906329133291932924329293293632942329473295432961329673297332973329803298632992329943300133007330133301833025330313303733044330513305733064330673307433080330873309233099331053311233120331273313333141331423314933155331633316433171331773318533188331953320133209332153322233228332363324533252332583326733273332803328633295333033331033317333173331833325333323333233337333443335133351333573336433371333713337933386333933339433395334023340933410334153342233429334303343833445334523345433454334613346833470334733348033487334893349733504335113351333521335283353533538335383354533552335553355833565335723357533583335903359733601336033361033617336213362533632336393364333650336573366433669336723367933686336913369733704337113371633724337313373833744337453375233759337653377333780337873379333801338083381533822338223382933836338433384633853338603386833868338753388233890338953390233909339173392433931339383394733947339543396133970339773398433992339923399534002340103401034015340223403034030340383404534053340543406034067340753407634085340923410034102341033411034118341203412434131341393414234144341513415934163341633417034178341823418434191341993420334208342153422334228342323423934247342533425434261342693427534278342853429334299343063431334321343273433434341343493435634357343643437234379343823438934397344043441134418344263443334441344483445634463344713447834486344943449434501345093451734521345283453634544345493455634564345733457434581345893459834601346083461634625346323463934647346563466534672346813468134683346903469934699347033471034719347193472734734347433474434744347513476034761347703477734786347883478934796348053480734812348193482834830348383484534854348573486234869348783488134888348953490434908349093491634925349293493434941349503495434963349703497934984349853499235001350063501135018350273503335033350403504935055350563506335072350783508135088350973510335110351173512635133351353514235151351583516735174351833519135192351993520835216352213522835237352463524735254352633527235277352843529335302353093531735317353173531835326353263532635334353423534235343353433535135351353523535435362353623536335369353773537735379353823539035390353923540135409354093541235413354213542135424354293543735437354413544435452354523545635462354703547035474354823549035490354953549735505355053551135512355203552035526355283553635536355423554635554355543556035568355763557635583355903559835598356063561035618356183562635632356403564035649356503565835658356673566835676356763568535690356983569835707357143572235723357233572535733357343573435737357453574635746357523576035761357613576935777357783577935782357903579135792357963580435805358073580935817358183582035824358323583335835358443585235853358563585735865358663586935875358833588435887358953590335904359083591135919359203592435930359383593935944359443595235953359583596035968359693597435981359893599035996359973600536006360123601436022360233602936033360413604236048360573606536066360733607636084360853609336094361023610336111361143612236123361313613936147361483615736160361683617036170361703617836180361803618236190361923619236199362073620936210362133622136223362243623336241362433624536246362543625636258362643627236274362773628036288362903629336300363083631036313363223633036332363363634036348363503635536356363643636636371363763638436386363913639836406364083641436416364243642636433364333644136443364503645236460364623646936473364813648336490364993650736509365173652536533365353654336551365593656136570365703657836580365893659436602366053660536609366173662036620366253663336636366363664336651366543665536657366653666836670366713667936682366843669036698367013670336711367193672236725367293673736740367433674736755367583676136768367763677936782367913679936802368063681136819368223682636831368393684236846368553686336866368713687236880368833688836895369033690636911369193692736930369353694336951369543696036960369683697136977369833699136994370003700737015370183702537030370383704137048370553706337066370743707737085370883709637101371093711237120371253713337136371443715137159371623717137174371823718537194371993720737211372113721137219372233722337225372333723737237372453725337257372583725937267372713727237276372843728837289372953730337307373093731137319373233732537330373383734237345373463735437358373613736437372373763737937388373963740037404374063741437418374233742337431374353744037442374503745437459374673747537479374853748737495374993750537513375213752537532375323754037544375513755737565375693757737577375853758937597376063761437618376273762837636376403764937656376643766937669376713767937684376843769037698377033770337711377193772437725377293773737742377443774437752377573775937761377693777437776377803778837793377963779637804378093781237818378263783137835378363784437849378533785637864378693787337882378903789537900379063791437919379243793037938379433794837956379643796937975379793798737992379993800038008380133802038029380373804238050380513805938064380723807938087380923810138106381143811938128381343814238147381563816438172381783817838182381903819638197381993820738213382153821538223382293823138233382413824738249382573826538271382743828138289382953829938302383103831638320383253833338339383443834638354383603836538367383753838138386383883839638402384073841138419384253843138432384403844638452384533846138467384733847438482384883849438497385053851138518385183852638532385393853938547385533856038568385763858238590385903859838604386123861938627386333864138649386573866338672386723868038686386953869738705387113872038729387373874438744387443875238759387593876138769387763877638780387883879538796387973880538812388133881638824388313883238835388433885038851388563886438871388733887538883388903889238896389043891138913389213892938936389393893938947389543895738964389723897938982389913899939006390103901639024390313903539043390513905839063390683907639083390883909639104391113911739120391283913539141391463915439161391683917039178391853919239197392053921239220392243923239239392473925339261392683927739280392883929539304393113931939327393273932939337393453934539349393573936539366393673937539383393843939039398394063940739416394243943239434394353944339451394533946139469394773948039483394913949939503395033951139519395233952539533395413954539554395623957039575395803958839596396013960939617396253963139631396393964739653396603966839676396833968739695397033971039715397233973139738397453975339761397693977339781397893979839799398073981539824398313983939847398563986539873398823988239888398963990539906399093991739926399273993639944399533995539956399643997339975399833999140000400034000940017400264003040030400384004740051400534006140070400744008340091401004010540112401204012940135401414014940158401644017240180401894019640201402094021840226402304023840247402554026140269402784028640294403024031140320403264033440343403524035840366403754038440390403984040740416404244043340433404334043940448404484044840454404634046340464404654047440474404754047840487404874048940490404994049940501405024051140511405134052240531405314053440535405444054440547405564056540565405694056940578405784058240588405974059740601406094061840618406234062940638406384064340651406604066040666406664067540675406814068340692406924069940699407084070840715407174072640726407334073940748407484075540763407724077240780407864079540795408034081240821408214083040831408404084040849408524086140862408624086340872408734087340877408864088740888408904089940900409014090540914409154091740919409284092940931409374094640947409494095840967409684097140972409814098240985409944100341004410084101241021410224102641031410404104141045410524106141062410674107241081410824108841088410974109841104411114112041121411274113641145411464115341160411694117041178411814119041191411994120541214412154122341231412404124141250412564126541267412674127041279412814128141285412944129641296413024131141313413144131841327413294133141332413414134341345413534136241364413674136741376413784138141389413984140041404414104141941421414264142741436414384144341446414554145741463414644147341475414824148241491414934150041503415124151441521415264153541537415454154941558415604156841572415814158341591415954160441606416144162041629416314164041645416544165641665416704167941681416904169641705417074171641724417334173641736417434175241755417554176241771417744177541781417904179341794418024181141814418164182341832418354183741845418544185741860418644187341876418794188541894418974190141906419154191841922419284193741940419454194941958419614196641972419814198441990419954200442007420134202042029420324203942042420514205442061420664207542078420864209042099421024211042117421264212942138421384214742150421594216142170421744217442175421844218842188421924220142205422064220842217422214222242226422354223942241422444225342257422594226642275422794228242285422944229842301423064231542319423234232742336423404234442353423624236642371423734238242386423914239542404424084241442417424264243042436424454245442458424654246542474424784248542487424964250042508425094251842522425304253742546425504255942565425744257842587425954260442609426094261642625426304263142635426444264942651426514266042665426674266942678426834268642687426964270142704427134272242727427314273542744427494275342759427684277342778427834279242797428034280742816428214282742834428434284842855428554286442869428764287642885428904289742897429064291142918429194292842933429404294442953429584296542969429784298342990429944300343008430164301943028430334304143047430564306143069430754308443089430974310443113431184312743131431404314543154431614317043175431844319143200432054321443223432324323843238432434325243258432584326643275432814328143289432984330443305433054331443320433214332843337433434334543345433544336043362433624337143377433794338243391433974339943407434164342243425434264343543441434444344543454434604346343468434774348343486434954350443510435144351643525435314353543537435464355243556435624357143577435824358443593435994360443609436184362443629436344364343649436554365543664436704367643681436904369643702437104371943725437314373943748437544376143764437734377943786437944380343809438174381843827438334384143842438514385743865438714388043886438954389743906439124392143926439354394143950439554396443971439714397243981439884398843994440034401044010440194402844035440354404444053440604406144066440754408244084440844409344100441024410544114441214412344126441354414244144441534416244169441724418044189441964420044201442104421744221442224423144238442424425044259442664427144277442864429344298443074431644323443284433744346443534435944365443744438144388443924440144408444154442244431444384444544452444614446844476444814449044497445054451444523445304453944541445504455744566445684457744585445854458644595446034460344607446164462444624446314464044648446484465544664446724467344679446884469644697447064471544723447254472744736447444474644748447574476544768447694477844786447904479044799448074481144814448234483144835448394484844856448604486444873448814488644888448974490544910449154492444932449374494344952449604496544971449804498844994449984500745015450214502845037450454505145059450684507645082450914510045108451154512145130451384514545154451634517145179451794518845196452044520645215452234523145239452484525645265452664527545283452924529445303453114532045324453334534245342453434535245361453614536545374453834538345388453974540645406454134542245431454324543745446454554545645464454734548245483454924550145510455124551445523455324553445543455524556145564455664557545584455874559045599456084561145617456264563545639456434565245661456654567245681456904569445702457114572045725457274573645745457504575745766457754578145781457904579945805458064581545824458304583645845458544586145861458704587945886458894589845907459144591845927459364594345952459614597045978459834599246001460094601746026460354604346052460614607046079460834608446084460844608446084460854608546085460854608846089460894608946089460934609446094460944609546095460964609646096460974610246103461034610346104461124611346113461134611446123461244612446124461264613146132461324613246135461374613846138461384614146146461474614746147461504615646157461574615746161461644616546165461654616946172461734617346173461774618346184461844618446188461954619646196461964620146205462064620646206462124621546216462164621646222462284622946229462294623546242462434624346243462504625546256462564625646263462694627046270462704627746286462874628746287462954629546296462964629646304463124631346313463134632246326463274632746327463364634346344463444634446353463614636246362463634636346370463714637146372463734637546376463764637746378463834638446384463854638646392463934639346394463964640146402464024640346406464084640946409464104641346418464194641946420464234643046431464314643246435464424644346443464444644846450464514645146452464564646146462464624646346467464744647546475464764648046488464894648946490464954649746498464984649946504465094651046510465114651646523465244652446525465304653846539465394654046546465514655246552465534655946567465684656846569465764657646577465774657846585465864658746587465884659546604466054660546606466144661646617466174661846626466304663146631466324664046646466474664746648466574666046661466614666246671466774667846678466794668846696466974669746699466994670046701467014670346703467044670546705467074670746711467124671246714467144672046721467214672346723467324673346733467354673646739467404674046742467434674946750467504675246753467614676246762467644676646768467694676946771467734677846779467794678146783467914679246792467944679746797467984679846800468034680746808468084681046814468144681546815468174682146824468254682546827468314683646837468374683946844468444684546845468474685246855468564685646858468634686946870468704687246877468854688646886468884689446898468994689946901469074691346914469144691646922469314693246932469344694146942469434694346945469524695946960469604696246970469734697446974469764698446990469914699146993470014700947010470104701247021470254702647026470294702947030470314703147034470344703847039470394704247042470484704947049470524705347056470574705747060470614707047071470714707447076470784707947079470824708447088470894708947092470954709747098470984710147104471064710747107471104711347118471194711947122471254713247133471334713647140471454714647146471494715347159471604716047163471674717647177471774718047185471864718... 

361213151619202526323342444446515359626467707476808488929610210710811311612113013613814414815416116816817517918619220020020821222022823723924825425525525725825826526626627427527627928028128728829029129229529529629930530630931731832232632733133934034534935035635735836437237337938738839540040140841741842643243344244444644644644844844845045045846046146346546746746947147948148449149349650550751151952152653053253754254454955455656156857057558358559059860060661161361962562763363964164865265466166666867568168369069970170970971171972072273073773974775575776676676877777878078979179380280780981882382583484084285186086386386887187187788088088989289390090390491291591791992292493093393594294594894995295596496797197197497898398699099910021007100710101015102110241029103610391044105210551061106510681075107710801087109010931100110911121120112711301138114611491158116311671167116711711171117211761176118411881189119612001201120912131215122112251228123012341237124012441248125012541258126212661270127612801284129012941298130413081312132013241328133613401344135213561361136113651370137013741379138713911397139714011407140814121418142114251431143614401446145314571463147014741480148914931500150115051512152115251533153415381546155015541563156415681577158015841593159916041604160916141614162116261627162816331634164316481650165116561658166416691672167216771680168216871690169717021706170817131717172117261730173917441749175317581763176917741780178117861792180018051812181218171824182918341842184518501858186318681877187718821891189919051905190519111911191719231924192519311932193519411942195119571959196419701972197919851988199119972000200920152019202020262030203820442049205120572062206620722078207920852091209721032109211721232130213521412149215021562164216721732182218221882197220622132213221422212221223022372237224622532254225522622263227222792281228122882290229222992302230223092312231923262329233823452349235623632368237323802385239223992405241124182424243024372443245124582465247224792486249425012509250925162524253325402549255025572566256925772577257925872587259426022602261126192620262826362638264126492651265626642667267126792683268326912695269727052710271127192725272527332739274227502756275927672773278127892796279728052812281328212828283528432851285128592867286728752883289229002909291129192928293129402940294029492949295229612961296529742975297729862987299230013002300930183019302830373039304130503052305630653068306830773080308330923095310031093113311531243128313331423146315431633167317631853190319232013206321132203226323032393245325232613268326932783285328632953302330633153322333033393347335033593367337333823391339134003409341834193419341934213422342234223429343034303430343734383438343934393440344034413446344734473449345034513451345334573458345834603469347034703473347934803480348334923493349334973501350235023507350935103510351535203521352135273528352935293535354035413541354735553556355635633568356935693576358335843584359235923593359336013608360936093618361836193619362836313632363336333633363436353635364436453646364736493650365136533653365436553657366436653666366936693670367136743682368336843688369436953696370037093710371137163724372537263732373537363737374337503751375237583765376637673773378037813782378937903791379237993800380138023809381138123813382038263827382838353841384238433851385538563857386538733874387538833892389338943903390939103912391239123913391539153916391739193919392839293931393239353936393839393944394539473949395039513953395539603961396339653973397439763979397939803982398539893990399239954002400340054009400940104012401640204021402340274035403640384043404340444046405140554056405840634071407240744080408240834085409140974098410041074107410841104117412341244126413441344135413741454149415041524161416141624164417341774178418041894197419842014201420542064209420942174218422142224224422542284230423042314234423642404241424442464254425542584261426742684271427542754276427942834287428842914296429842994302430743134314431743234324432543284334433543364339434543504351435443614361436243654372437243734376438343874388439143984407440844114419442644274430443944404441444444534460446144644473448044814485448544864487449144914498449945034503451145124516451745194520452445254533453445384540454145424546454845534554455845614562456345674570457645774581458545854586459045944600460146054610461346144618462346304631463546414644464546494656465646574661466846724673467746854685468646904698470747084712472147244725473047304730473147364736473747384743474347484749475447554757475847634765476647674772477447794780478547884791479247974800480448054810481348214822482748314837483848434848484848494854485948634864486948754878487948844890489448954900490649144915492049274934493549404948494849494954496249664967497249814984498549904999500850095015501550195020502650265030503150375037504650475053505450585059506550665070507150775079508050815087508950955096510251045111511251185120512851295135513851415142514851515155515651625166516951705176518051885189519552005200520152075212521352145220522552315232523852435251525252585264526852695275528152905291529753045306530753135320532253235329533653435344535053585358535953655373537553765382539053975398540454135413541454205429543654375444544454465447545454545460546154685468547654775484548554885489549654975504550555125514551555165523552555315532553955425542554355505553556255635570557455785579558655905599560056075612561556165623562856365637564456505653565456615667567656775684569156955696570357115711571257195727572857295736574457505751575857675769577057785778577857795787578757925793580158025804580558135814581658175825582658335834584258445848584958575859586858695877588058845885589358975899590059085912591759185926593159315932594059455953595459625968597159725980598659945995600360106017601860266033604060416049605760596060606860776078607960876096610561066115611561206121613061306135613661456145615061516160616161626163617261736174617561846185619261936202620462076208621762196223622462336235624062416250625362546255626462676269627062796282628762886297630163026303631263166318631963286333633463356344634963566357636663716380638163906396640064016410641764176418642764346436643764466453646264636472648064856486649565036511651265216530653165326541655065576559655965596559656165616561657065726572657365786580658065816590659265926594659465966596659866046606660666096609661166116614662266246624662866326634663466386647664966496654665566576657666266696671667166776679668166816687669366956695670267046706670667136721672367236730673967416741674967546756675667656766676867686777678467866787678767906792679367936802680468056806681368156816681868216823682468276827682968306833683868406841684568466848684968536862686468656870687068726873687868846886688768936897689969006906691369156916692369266928692969376939694169426950695269546955696369716973697469836990699269946994700070027004700570087010701270137016701870207021702570277029703170327034703670387039704170437046704670487050705370607062706470677074707670787082708870907092709771007102710471097113711571177122712771297131713771397141714371497152715471567163716571677169717671857187718971977198720072027210721172137215722372317233723572447244724672487257725972617263727272817283728672867288729072937293729572977300730073097311731473157317731973227323733273347337733973457347735073527361736373667369737773797382738673917393739674007409741174147419742574277430743674397441744474507458746074637470747374757478748674867488749174997504750675097518752075227525753475437545754975497554755675607561756275647568756975777579758375857589759175957598759876007604760776147616762076247627762976337638763976417645765076587660766476707675767776817688769076927696770377127714771877267732773477387747775177537758775877597761776677667775777777827782779177937798779978057807781278147818782078257828783178337838784278427844784978537862786478697874787478767881788678937895790079067912791479197925793479367941794879557957796279697976797879837990799980018006801480218023802880368043804580508059806380658071807180738075808180818083808580918092809380958101810281118113811981218121812381298131813981418147815081568158816481678175817781838187818881908196820082098211821782228223822582318236824282448250825682608262826882748281828382898296829782998305831283218323832983378340834283488356835983618367837683778379838583948399840184078416842384258432843284378439844684478447844984568457845884608467846884778479848684888493849585028504850985118518852185248526853385368545854785548558856085628569857485748576858385888594859686038608861786198626863286398641864886558658866086678675867686788685869387028704871187208726872887358744875187538761876187668768877687778779878187898790879387958803880588068808881688188826882888368839884488468854885888618863887188768877887988878892889388958903890889178919892789338940894289508956896389658973898089858987899590039006900890169025902790299038903890389040904990499058906090699070907190739082908390929094910391059113911591249127912891309139914391439145915491589158916091699173917391759184918891979199920892129221922392329237923992419250925692579259926892749275927792869292929792999308931593199321933093379342934493539360936793699378938693929394940394119418942094299438944094439443944394449447944794479449945294529452946194649464946594739476947694779486948994899491949995029502950595129515951595189527953095309534953595389538954395439546954695519553955695569561956795709570957695819584958495909598960196019607961596189618962596329635963596439643964696469654965796609660966996719674967496839688969196929692969296959696969697059708970997109713971697179718972397269727972997339736973797399747975097519754975797609761976597679770977197759781978497859790979497979798980498079810981198179824982798289835984198449845985398589861986298719871987498759884988698899891989198929895989798979903990699089909991099139915991799179920992299249930993399359938993899419943994699559958996099649969997299749979998199849986999299939996999810004100121001510017100231003210035100371004410052100551005710065100701007310075100831008910092100941010310108101111011410114101161011910122101221012810131101341013510140101431014610148101501015310156101591015910162101651016810177101801018310187101941019710200102051020510208102111021610225102281023110237102441024710250102571026010263102661027410276102791028210291102921029510298103071030810311103151031510315103181032210322103311033410338103391034710350103541035510364103671037110372103811038410388103891039810401104051040710408104111041510417104191042210426104281043010433104371043910441104441044810450104591046210466104691046910472104761047910479104821048610489104891049210496104991050610509105131051610524105271053110534105421054510549105521056110564105681057110580105831058710591105911059410598106021060210605106091061310614106171062110625106311063410638106421064910652106561066010667106701067410678106871069010694106991069910702107061071110712107151071910724107251072810732107371074010743107471075210759107621076610771107791078210786107911079910802108061081210812108151081910825108341083710841108481084810851108551086210862108651086910876108791088210886108931090210905109091091710917109201092410932109321093510939109471095010953109571096610968109711097510984109871099010994110031100611009110131102211029110321103711037110381104111046110461104811051110561105611058110611106611066110731107611081110811109011093110981109911099111021110711108111081111111116111171112211125111301113211132111351114011142111431114611151111531115411157111621116411171111741117911181111891119211197111991120811211112161121811227112301123511238112431124611251112551125511258112631126711268112711127611280112811128411289112931130011303113081131311318113211132611331113371134011345113501135611359113641137011373113761138111387113951139811403114091141811421114261143211441114441144911456114621146511470114781148111484114891149711501115041150911517115211152411529115381154011543115481155711559115621156711576115791158211587115961159911602116081160811609116121161811618116261162911635116351164411647116531165311662116651167111672116801168311689116901169811701117071170811717117201172611727117361173911745117471175511758117641176711768117711177711780117821178511791117941179711800118061180911812118151182111824118271183011836118391184311846118521185511860118631186911872118771188011886118901189411897119031190711912119151192111925119311193411940119441195111954119601196411973119761198211987119871199011996120011200212005120111201612019120221202812033120361203912045120501205412057120631206812073120761208212087120941209712103121091211312116121221212812133121361214212148121541215712163121691217812181121871219312202122051221112218122181222112227122341223512238122441225112255122581226412272122741227712283122911229412297123031231112315123181232412332123401234312349123581236212365123711238012385123881239412403124091241212419124191241912422124291242912438124411244812449124491245212459124601246112464124711247212478124811248812490124941249712504125061251112514125211252312529125321253912542125441254712554125571256212565125721257512581125841259112594126011260412611126151261812621126281263312633126361264312648126491265212659126641266612669126761268112689126921269912705127101271312720127261273212735127421274812755127581276512772127751277812785127931279312796128031281112812128151282212830128321283512842128501285912862128691287812878128811288812897128981290112908129171291912922129291293812947129501295812958129581296112969129691297012973129811298112983129861299412994130031300613014130151301613019130271302813030130331304113042130451304813056130581305813061130691307113077130801308813090130971310013108131101311813121131291313213137131401314813152131531315613164131681317013173131811318513188131911319913204132051320813216132211322613229132371324213248132511325913264132711327413282132881329313296133041331113314133171332513332133361333913347133541335913362133701337813381133841339213401134031340613414134231342613429134371344613450134531346213462134651346813477134771348613489134981349913499135021351113512135141351713526135271352913532135411354213544135471355613557135601356313572135731357813581135901359113596135991360813609136151361813627136281363513638136471364813657136601366913670136791368213691136931370113704137131371513724137271373613739137401374313752137551375713760137691377213777137801378913792137981380113810138131382113824138331383613845138481385713861138651386813877138811388613889138981390213909139121392113925139341393713946139511395113954139631396813969139721398113986139891399214001140061401114014140231402914029140321404114047140481405114060140661406914072140811408714092140951410414111141141411714126141331413714140141491415614162141651417414181141901419314202142091421814221142301423814238142411425014258142601426314272142801428514288142971430514314143171432614335143351433814347143561435814361143701437914384143881438814388143901439414394143941439714401144011440114406144101441014410144191442314423144231443214436144361443714437144411444114442144441444814448144491445514459144591446114461144651446514467144681447214472144741447714481144811448314490144941449414497145021450614506145091451514519145191452214530145341453414538145411454514545145491455214556145561456014564145681456814572145781458214582145871458814592145921459714602146061460614611146171462114621146261463414638146381464414647146511465114658146591466314663146701467214676146761468314687146911469114699146991470314703147111471314717147171472514728147321473214740147451474914749147581475914763147631477214779147831478314792148001480414805148051480514809148101481014817148211482214822148291483314834148341484214846148471484814848148521485314854148611486514866148681487114875148761487814882148861488714889148951489914900149031490714911149121491514919149231492414927149321493614937149401494714951149521495614961149651496614970149791498314984149891498914993149941499915001150051500615012150131501715018150241502515029150301503615038150421504315049150531505715058150651506815072150731508015087150911509215099151071511115112151201512015124151251513315142151461514715156151631516715168151771518515189151911519115192151961519815198151991520315205152051521015214152161521615222152261522815228152371524115243152431525215256152581525915266152701527215273152811528515287152891529015294152961529815300153041530615308153121531615318153201532515329153311533315341153451534715350153501535415356153591535915363153651536815369153731537515378153821538615388153911539715401154031540715407154111541315417154181542215424154281543215436154381544215448154521545415459154631546715469154741547915483154851549015498155021550415510155111551515517155231553015534155361554215550155541555615563155641556815570155771558215586155881559515600156041560615613156191562315625156321564115645156471565515658156621566415672156791568315685156931570115705157071571615717157211572315732157381574215744157531576115765157671577615785157891579215792157941579815801158011580815812158151581615819158231582615827158311583515838158391584615850158531585515858158621586515867158711587515878158801588515889158921589415902159061590915912159161592015923159261593115935159381594115947159511595415957159661597015973159771598215986159891599415994159981600116006160071601116014160191602316027160301603616037160411604416050160511605516058160641606616070160731607916084160881609116098161001610416107161141611616120161231613016133161371614016147161531615716160161681617116175161781618616193161971620016208162161622016223162321623316237162401624916257162611626516265162721627616280162801628816292162961629716298163021630616307163161632016324163261633216336163401634216349163531635716360163601636416368163711638016384163881639216392163961640016404164051640916413164171642116425164291643416437164411644516451164511645516459164651646616470164741648016484164881649216499165021650616510165181651816522165261653416535165391654316551165561656016564165721657716581165851659316599166031660716615166221662616630166391664016644166481665716658166621666616675166831668716691167001670916713167181671816721167251673016730167331673716742167431674416748167531675416756167601676516766167721677616781167821678916793167981679916808168121681716819168191682316828168301683416838168431684516850168541685916862168651686916874168771688116885168901689316901169051691016914169141691816923169271692816932169371694116943169471695216956169621696616971169751698316987169921699717000170041700917014170181702217027170321704017044170491705517056170601706517071170731707717082170881709117095171001710617113171171712217129171291713317138171451715117155171601716717174171781718317191171921719617201172091721417218172231723117236172401724517253172591726317268172771727717281172861729517299173031730917309173091731317319173191732017324173301733017335173391734517346173461735017356173571736017364173701737117375173791738517386173941739817404174061740917413174191742217422174261743217435174361744017446174491745417458174641746817469174731747917483174871749117497175011750617510175161752017529175331753917544175501755417560175651757117575175811758617593175971760317609176101761417620176261763417638176441765117653176571766317670176731767717683176901769717701177071771517720177241773017738177431774717753177611776717771177771778617786177901779617805178131781717824178241783117835178421784217850178541786117862178641786817875178771787817882178891789117895178991790617908179131791717924179271792717931179381794117941179451795217955179551795917966179691797017974179811798417990179941800118004180101801418021180241803118035180421804518053180571806418068180711807518082180861808918093181001810418112181161812318127181361814018147181521815618160181671817218177181811818818193182001820418211182161822418228182351824118244182481825518261182661827018277182831828918293183001830618313183171832418331183331833718344183511835518359183661837318382183861839318401184011840518412184201842518429184361844418452184561846318472184731847718484184931849518499185061851518522185261853418534185341853818546185461855018554185621856218567185711857918580185801858418592185931859618600186081861018611186151862318625186271863118639186411864818652186601866318664186681867618679186861869018698187011870918713187211872518728187321874018744187521875618764187681877618780187881879218801188051881318818188221882618834188391884818852188601886618869188731888118887188911889518903189091891818922189301893718942189461895418961189691897318981189881899719001190091901719021190251903319042190421904619054190631906719071190791908819093190971910619106191061911019119191191912519129191381913919143191471915619157191621916619175191771917719181191901919219199192031921219215192191922319232192351924019244192531925719257192611927019274192821928619295192991930719311193201932419333193371934619351193551935919368193741937619380193891939519401194051941419420194271943119440194471944919453194621947019471194751948419492194961950019509195171952219526195351954419544195481955719566195751958019580195801958819593195931959319602196071960719608196131961819618196191962419629196291963019639196441964419646196461965119651196531965919664196641966619672196771967719680196801968519685196881968919694196941969719704197091970919712197191972419724197281973419739197391974319750197551975519760197631976819768197731977719782197821978719795198001980019805198141981919819198251983019835198351984119847198521985219859198591986419864198711987219877198771988419891198961989619903199121991719917199251992519930199301993819939199441994419952199591996419964199721998119986199861999520000200052000520014200202002520026200262002820033200342003420038200432004420045200462005120052200532005520060200612006220070200752007620078200782008320084200862009420099201002010220111201162011720120201252013020131201342014220147201482015220153201582015920163201652017020171201752018320188201892019420195202002020120206202112021620217202222022820233202342024020242202472024820254202602026520266202722028120286202872029420294202992030020307203132031820319203272032720332203332034120349203542035520363203722037720378203872039220397203992039920399204042040620406204062041120413204132041420419204212042120428204332043520436204382044320445204462044920454204562045720461204662046820470204702047520477204792048420489204912049420495205002050220505205072051220514205172052520530205322053620539205442054620551205522055720559205642056620571205732057820586205912059320599206032060820610206162062420629206312063720646206512065320660206652067020672206802068120686206882069720697207022070420713207142071920721207302073720742207452074520749207542075720757207632076820771207712077820783207862078720790207952079820800208002080520808208102081220817208202082220825208302083320835208442084920852208552086120866208692087320876208812088420888208922089720900209052090520910209132091820926209312093420939209472095220955209602096920974209772098320988209932099621003210062101121014210212102621031210342104121047210522105521063210652107021073210822108221087210902109921106211112111421123211312113621140211402114421149211532115421157211622116621167211702117521179211802118421189211932119521195212002120421206212152122021224212272123321238212422124521252212572126121265212692127421278212822128621291212952129921305213102131421318213252133021334213392134321348213522135721361213662137021376213762138121385213912139221397214012140721415214202142421430214382144321447214542146021465214692147621483214882149221500215042150921513215212152621531215352154321551215562156021568215772158221586215952160121606216102161921626216312163621636216402164521650216502165521660216652166621668216732167821679216832168821693216942169921704217092171021716217212172621728217312173621741217432174821753217582176121762217672177221775217772178221787217902179921804218092181321815218202182521829218312183621841218452184821853218582186321863218682187321878218812188621891218972189921904219092191521918219232192821935219352194021945219522195621961219662197321981219862199121998220072201222017220252203122036220412205022050220552206022069220782208322089220892208922094221002210022107221122211822119221212212622132221332213822143221492215022156221612216722169221722217722183221852219322198222042220722213222182222422227222342223922245222492225322258222642226922269222742228022285222882229322299223042230822313223192232522326223312233722343223502235522361223682237422379223852239222399224042241022418224222242722433224422244322448224542246322468224732247922488224942249922506225062250922514225212252222523225282253522536225372254222549225502255222557225642256522574225792258622588225952260022607226092261722622226292263122640226452265222655226612266622673226772268122686226932269822698227032271022715227162272122728227332274122746227532275922766227712277822784227932279822805228122281222817228242283122839228442285122858228662287122878228852289322898229052291222921229262293322941229482295322960229682297522980229872299622998230032301023019230222302723035230352303623041230492304923051230562306423064230682307323081230812308623091230992310023103231082311623117231212312623134231352314123146231542315523162231672317523177231822318723195231972320323208232162321923222232272323523238232422324723255232592326123266232742327823282232872329523299233072331223320233242333323338233462335123358233632337123376233852339023398234042341223417234252343123440234452345323460234672347223480234882348823493235012350923513235182352623534235392354423552235612356423569235772358623593235982360623615236242362923638236382363823643236522365223660236652367423675236772368223691236922369923704237132371423722237272373623738237442374923758237612376223767237762377923780237852379423797237992380423813238172381723822238312383523840238452385423859238622386723876238812388523890238992390523907239122392123927239352394023949239562395723962239712397823980239852399424002240022400724016240242403024035240442405324057240622407124080240852409124091240912409424100241002410124101241072410724108241152412124121241222413024136241362413824144241502415024153241562416224162241662416624172241722417624177241832418324187241962420224202242072421424220242202422524234242402424024246242462425224252242582426624272242722427924286242922429224299243072431324313243202432924335243352434324350243562435624365243712437724378243782438324389243902439024396244022440324404244092441524416244172442224428244292443124431244372443824440244412444724448244512445124457244582446124461244672446824471244762448224483244862449224498244992450324508245142451524519245242453024531245362453624542245432454824549245552455624562245622456824569245752457624582245832458924591245972459824604246072461324614246212462324629246302463724640246462464724654246582466424665246722467724683246842469224696247022470324711247162472224723247322473424740247412475024753247592476124761247632476924771247712477524781247832478324790247962479824798248062481224814248152482224828248302483124840248462484824850248532485924861248632486724873248752487824881248872488924892248972490324905249092490924915249172492124922249282493024935249352494124943249482495124957249592496424968249742497624981249862499224994250002500425010250122501825025250312503325039250482505425056250632506325069250712507825087250932509525103251052511125113251212512825134251362514425152251582516025169251762518225185251852518625192251952519525197252032520625206252092521525218252192522125227252302523125237252432524625247252552526125264252652527425280252832528525293252992530225305253082531425317253202532425330253332533625341253472535025354253582536425367253712538025386253892539425400254062540925414254212542725430254362544225448254512545825459254652546825476254762548225485254932549425500255032551225512255182552125530255362554225546255462554625552255562555625557255632556725568255682557425578255792558625592255962559725604256102561425615256232562925633256352564225648256522565525659256652566925672256782568425688256912569825704257082571225718257242572825733257362574225746257522575425760257642577025773257792578325790257922579825802258102581025816258202582825833258392584325851258572586325867258762588125887258922589225895259012590625907259082591425919259202592225928259332593525936259422594725950259502595625961259642596525971259762597925981259872599225996259972600326008260132601326019260242602926036260422604726052260612606726072260772608626092260972610226111261172612226127261362614226147261532615426160261652617126172261782618326189261902619626201262082620826214262192622626228262342623926246262482625426259262662626926275262802628726295263012630626314263142632026325263332633326339263442635226353263592636426373263732637926384263932639526401264062641526417264232642826437264412644726452264612646526471264762648526491264972650226511265172652326528265372654526551265572655726561265672657326573265792658526591265912659726603266092660926618266242663026630266392664526651266522665326659266652666626667266732667926680266842669026696266982670026706267122671426718267242673026732267362674226748267502675826764267702677326775267812678726790267942680026806268092681326819268252682826836268422684826852268592686526871268752688426890268962690026909269152692126926269302693626942269472695226958269642696926976269822698826993270002700627012270182702027026270322703827047270532705927066270672707327079270862708727093270992710627113271192712527132271412714727153271612716227168271742718227183271892719527203272102721627222272312723427240272462725527260272662727227281272862729227299272992730127307273142731427318273242733127331273372734327350273502735627362273692737027373273792738627388273892739527402274042740727413274202742227425274312743827441274412744727454274572746627472274792748327484274902749727501275022750827515275192752827534275412754627550275562756327568275742758027587275922759827604276112761727622276282763527641276472765327660276662767427680276872769327701277072771427721277282773427741277492775327759277662777427780277862779327801278082781427821278292783627842278492785827858278642787127880278822788827895279042790727913279202792927932279382794627946279482795427962279622796627972279802798027985279912799927999280052801128019280202802328029280372803828043280492805728058280642807028078280792808728093281012810328104281102811828120281232812928137281392814328149281572815928166281722818028182281892819528203282052821428220282282823128231282372824528248282512825728265282682827628282282902829428294283002830828312283132831928327283312833628342283502835428360283662837428378283862839228400284042841328419284272843228435284412844928455284572846328471284772848128487284952850128506285122852028527285272853328541285482854828554285622856928571285772858528592285952860128609286162862428630286382864628650286562866428672286782868428692287002870728713287212873028733287392874728756287632876928777287862879528801288102881028810288162882528825288312883728846288472885028856288652886628871288772888628887288932889928908289102891328919289282893028936289422895128953289612896728976289782898728993290022900529012290182902729030290392904529054290582905929065290742907829080290862909529100291002910629115291202912229128291372914229146291522916129166291712917729186291922919529201292102921729218292242923329240292432924929258292652926929275292842929229295293012931029319293192932529334293432934529351293602936929373293792938829397294012940829408294082940829415294152941529417294242942429424294282943529435294352944029447294472944729455294622946229463294632947029470294712947329480294802948129484294912949129492294982950529505295062951429521295212952329523295302953029532295332954029540295422954729554295542955629563295702957029572295812958829588295912959229599295992960229604296112961129614296182962529625296282963429641296412964429652296592965929662296712967829678296822968329690296902969429697297042970429708297142972129721297252973129738297382974229750297572975729762297622976929769297742977729784297842979029790297972979729803298052981229812298182982229829298292983529842298492984929856298602986729867298742988029887298872989429902299092990929917299192992629926299342994229949299492995829958299652996529974299762998329983299922999930006300073000730007300143001530015300173002430025300253002930036300373003730046300533005430055300583006530066300673007230079300803008130088300953009630098301003010730108301103011730124301253012730136301433014430147301483015530156301593016630173301743017730186301933019430198301993020630207302113021430221302223022630235302423024330248302503025730258302633026730274302753028030286302933029430300303033031030311303173032230329303303033630343303503035130357303663037330374303813038730394303953040330408304153041630424304313043830439304473045630463304643047330480304873048830497305053051230514305143051430521305233052330525305323053430535305353054230544305453054630553305553055630559305663056830569305743058130583305853058830595305973060030601306083061030613306163062330625306283063330640306423064630650306573065930663306673067430676306803068630693306953069930707307143071630721307283073530737307423075130758307603076630767307743077630782307853079230794308013080330810308123082030821308283083030838308413084830850308583086430871308733088130887308943089630904309123091930921309303093030937309393094830951309583096030969309723097930981309903099531002310043101331020310273103031030310303103731040310403104031047310503105031059310663106931070310713107831081310823108631093310963109731102311093111231113311203112731130311313114031147311503115231154311613116431166311693117631179311823118431191311943119731201312083121131214312213122831231312343124331250312533125731262312693127231276312833129031293312983129831305313083131331315313223132531331313323133931342313483135131358313613136731373313803138331389313983140531408314153142231429314323143931448314553145831466314683147531478314863149231499315023151131512315193152231531315343154131544315533155931566315703157031570315773158131581315903159731601316023160331610316143161531619316263163031631316403164731651316533165831665316693167131678316853168931692316923169931703317063171231719317233172631735317423174631750317513175831762317663177031777317813178631786317933179731802318103181731821318273182731834318383184431847318543185831865318653187231876318833188631893318973190431909319163192031927319353194231946319543196031967319713197931985319923199632004320123201932023320323203332040320443205332062320693207432074320783208532090320903209632103321083210832117321243212932130321383214532150321523215232159321643216632168321753218032182321873219432199322023220632213322183222232225322323223732241322463225332258322623227132278322833228732296323033230832313323173232432329323343234032347323523235832358323653237032376323773238432389323953239732404324093241532419324263243132437324453245232457324633247232479324843249132498325053251032517325263253332538325463254932556325613256932574325813258632594326033261032615326243262532632326373264632651326583266332672326803268732692327013270932716327223272232722327293273532735327393274632752327523275932766327723277332777327843279032791327973280432810328123281232819328253282732831328383284432846328533286032866328683287732884328903289332896329033290932912329203292732933329363294532952329583296232963329703297632980329853299232998330033300333010330163302133029330363304233048330483305533061330673307133078330843309133091330983310433111331163312333129331363314333150331563316433165331723317833186331943320133207332163321633223332293323833240332473325333262332683327533282332823328533292332993330033302333093331633317333213332833335333363334433351333583336033366333733338033383333853339233399334023340633413334203342333431334383344533449334563346333470334753347633483334903349533498335053351233517335253353233539335443355233559335663357133580335873359433600336013360833615336213362733634336413364733653336603366733674336793368633693337003370733714337213372933731337383374533753337553376233769337783377933786337933380233805338123381933828338363384333850338593386833875338833388333888338953390333903339103391733925339263392833935339433394433948339553396333964339723397933987339893398933996340043400634011340183402634028340363404334051340543405534062340703407334076340833409134094341023410934117341213412334130341383414234144341513415934163341673417434182341863419534202342103421534218342253423334239342413424834256342623426634273342813428734296343033431134318343223432934337343443434834355343633437034376343833439134399344003440734415344233442934436344443445334456344633447134480344853449234501345013450134508345173451734523345303453934540345423454934558345593456334570345793458034589345963460534607346123461934628346313463534642346513465434660346673467634680346813468834697347013470934716347253473034735347423475134756347633477034779347853478734794348033480934818348253483434841348473485434863348703487834885348943490234905349123492134930349303493734946349553496434972349723497234973349813498134981349873499534995349963500035008350083501035011350193501935021350243503235032350343504235050350503505335059350673506735071350743508235082350863509135099350993510435104351123511235117351263513435134351403514335151351513515735162351703517035177351783518635186351933519435202352023520935212352203522035227352323524035240352483524935257352573526535266352743527435282352853529335293353013530635314353143532335324353323533235341353433535135351353603536335371353713538035385353933539435394353953540335404354043540635414354153541635417354253542635427354303543835439354403544935457354583546035461354693547035472354733548135482354843548735495354963549835507355153551635519355203552835529355323554135549355503555435555355633556435568355753558335584355893558935597355983560335609356173561835623356313563935640356463565035658356593566535672356803568135688356933570135702357093571635724357253573335736357443574535753357603576835769357773578535793357943580335803358113581235821358273583535837358373583735845358473584735856358643586635867358683587635878358793588635894358963589835900359083591035912359153592335925359273593235940359423594535946359543595635959359653597335975359793598135989359913599535999360073600936014360143602236024360293603536043360453605136051360593606136067360693607736079360853609336101361033611036114361223612436132361333614136143361513615436162361643617236181361893619136200362063621436216362253623236240362423625136260362683627136271362763628436287362883629036298363013630336304363123631536317363203632836331363333634236350363533635636363363713637436378363783638636389363933639536403364063641036418364263642936434364403644836451364563646536473364763648236483364913649436500365073651536518365253653136539365423654936556365643656736574365833659136594366023660736615366183662736631366393664236651366603666836672366723667336681366853668536692367003670436705367113671936723367253672836736367403674236747367553675936762367643677236776367793678136789367933679636803368113681536818368273683536839368433684936857368613686536872368803688436888368953690336907369113692036928369323693736943369513695536960369673697536979369843699237000370043701037010370183702237028370353704337047370533706137069370733708037087370953709937106371153712337127371353714137149371533716137169371773718137190371933720137205372143721937227372323723237234372423724737247372513725937264372643727337281372863728737288372963730137302373103731837323373253732637334373393734137345373533735837360373663737437379373823738537393373983740137407374153742037424374293743737442374463745337461374663747137475374833748837493375013750937514375203752037528375333753937541375493755437560375693757737582375893759337601376063761337617376253763037637376433765137656376643766737675376803768837696377043770937718377223773037735377443775037758377643776437767377753778137781377893779737803378043781137819378253782637835378433784937851378573786537871378743787637884378903789337902379103791637920379213792937935379393794737955379613796637971379793798537990379983800638012380183801838026380323803838045380533805938066380713807938085380923809838106381123811938127381353814138149381543816238168381773818038188381953819538197382053821238212382163822438231382323823338241382483825038250382583826538267382733828138288382903829838306383133831638321383293833638340383443835238359383643836538373383803838538388383963840338409384103841838425384313843238440384473845338459384673847438480384883849638503385103851638524385313853838545385533856038567385763858438591385993860038608386153862338632386403864738656386563866438671386803868338691386983870738712387203872838728387313873938747387473875238760387683876838774387823879038790387983880638814388153882138829388373883838846388543886238864388703887838886388883889638904389123891538921389293893738940389493895738965389693897338981389893899338999390073901539020390243903239040390453905339061390693907539076390843909239098391013910939117391243912539133391413914839154391623917039177391843919239200392073921639224392323924039247392553926339272392743928239290392993930239310393183932739332393403934939349393523936039369393693937739385393943939539402394103941939420394293943739446394483945539463394723947539478394863949539499394993950739516395203952239530395393954439544395523956139566395723958039589395953959839606396153962139626396343964339650396533966139670396783967839686396953970339708397163972539733397403974839757397663977139780397803978039783397923979239792397983980739807398073981539824398243982539831398403984039842398473985639856398583986539874398743987639885398943989439897399053991439914399173992539934399343993739945399543995439958399583996739967399713998039989399893999340002400114001140016400244003340033400394003940048400484005440063400724007240079400794008840088400954009640105401054011240115401244012440132401344014340143401514015440163401634017240174401834018340192401964020540206402064020940218402194021940224402334023440235402384024740248402494025440263402644026640270402794028040282402894029840299403014030940318403194032240322403314033240335403444035340354403584036140370403714037540378403874038840392403974040640407404124041640425404264043140439404484044940454404624047140472404784047840487404884049440503405124051340520405234053240533405404054340552405534056040565405744057540583405874059640597406054061340622406234063240639406484064940658406674067640678406784068640695406974069840700407094071140713407144072340725407274073040739407414074440746407554075740760407674077640778407814079040799408014080540806408154081740822408224083140833408384084440853408554086040867408764087840883408924090140903409094091740926409284093540939409484095040957409624097140973409804098740996409984100641012410214102341032410344104341045410544106141070410724108141090410994110241102411104111941122411234112841137411404114141150411594116241164411654117441177411804118041189411924119541202412114121441218412204122941232412364124041249412524125741260412694127241278412784128741290412964130341312413154132141330413394134241349413574136641369413774138341392413954140441406414154141841427414314144041444414444144741456414604146141462414714147541476414844149341497414994149941508415124151441523415324153641539415474155641560415644156441573415774158141584415934159741601416044161341617416214162441633416374164141645416544165841662416694167841682416864169341702417064171041717417264173041734417434175241756417614176341772417764178141783417924179641801418034181241816418224182341832418364184241846418554185941865418694187841882418884189341902419064191341916419254192941936419424195141955419624196841977419814198841995420044200842016420224203142035420434205242061420654207342082420914209542104421054211442118421274213642145421504215042152421614216642166421684217742182421824218742196422014220242204422134221842219422244223342238422394224442253422584225942267422764228142283422904229942304423074230742316423214232442324423334233842341423454235442359423624236742376423814238442392424014240642409424174242642431424354243842447424524245642459424684247342477424834249242497425014250742516425214252642527425364254142546425494255842563425684257442583425884259342599426084261342619426204262942634426404264742656426614266842668426774268242689426894269842703427104271642725427304273842739427484275342761427654277442779427874279142800428054281442814428234282842837428454285442860428604286142870428764287642877428864289242892428994290842914429154292042929429354293642944429534295942960429684297742983429854299042999430054300843010430194302543028430334304243048430514305643065430714307543078430874309343097431004310943115431194312543134431404314443150431594316543170431744318343189431944320143210432164322243222432314323743243432434325243258432644327343282432884329543296433054331143318433224333143337433444334843357433634337143374433834338943397434054341443420434294343043439434454345443456434654347143480434824349143497435064350843517435234353243537435464355243561435674357643582435914359743606436134361343618436274363443634436424365143658436584366743676436834368443684436934370043701437044371343720437214372743736437434374443751437604376743768437764378543792437944379743806438134381543821438304383743839438464385543862438644387343882438894389243895439044391143914439204392943936439394394643955439624396543974439834399043994440014401044017440224402244031440384404344044440534406044065440694407844085440904409744106441134411944119441284413544141441424415144158441644416944178441854419144198442074421444221442214423044237442444424544254442614426844273442824428944297442984430744314443224432644335443424435044355443644437144380443804438944396444054440944418444254443444441444504445744466444744448344491444914449544504445124451244519445284453644537445374454644554445554455644565445734457444581445904459844600446044461344621446234463044639446474464944657446664467444677446824469144699447034470444713447214472544729447384474644750447554476444772447774478044789447974480244810448194482744833448344484344851448574485944868448764488344884448934490144908449094491844926449334493744946449544496144966449754498344991449954500445012450204502645035450434505145060450694507745086450874509645104451134511445123451314514045142451514515945168451734518245190451994520645215452234523245239452484525745257452604526945278452784528445293453024530245310453194532845328453374534645355453564535645365453744537545378453874539645397454024541145420454214542845437454464544745454454634547245474454744548345492454944549645505455144551645520455294553845541455414555045559455624556545574455834558645591456004560945612456204562945638456414564945658456674567145672456814569045694456974570645715457194572545734457434574845753457624577145776457844579345802458084580845817458264583245836458454585445860458694587845887458944589645905459144592145925459344594345950459594596845977459854598645995460044601246016460254603446042460484605746066460754607746086460954610446107461164612546134461404614946158461674617546176461764617646176461804618146181461814618246184461854618546185461864619146192461924619246193462004620146201462014620346206462074620746207462104621246213462134621346216462214622246222462224622546232462334623346233462374624146242462424624246247462494625046250462504625546260462614626146261462664627346274462744627446280462854628646286462864629346293462944629446294463014630446305463054630546312463174631846318463184632646329463304633046330463384634746348463484634846357463594636046360463604636946373463744637446375463754637846379463794638046380463884638946389463904639146392463934639346394463954639946400464004640146402464064640746407464084640946415464164641646417464184642746428464284642946431464334643446434464354643746439464404644046441464434645146452464524645346456464574645846458464594646246466464674646746468464714647646477464774647846482464824648346483464844648846491464924649246493464974650346504465044650546509465174651846518465194652446524465254652546526465314653446535465354653646541465474654846548465494655446563465644656446565465704657946580465804658146587465894659046590465914659746602466034660346604466104661846619466194662046627466344663546635466364664446644466454664546646466544665746658466584665946667466744667546675466764668546689466904669046691467004670746708467084671046710467104671146711467134671346718467194671946721467214672646727467274672946729467374673846738467404674146742467434674346745467464675246753467534675546757467624676346763467654676746775467764677646778467814678246783467834678546788467954679646796467984680246806468074680746809468134682046821468214682346828468284682946829468314683646843468444684446846468524685246853468534685546861468644686546865468674687346879468804688046882468894689346894468944689646903469094691046910469124691946928469294692946931469394694146942469424694446953469544695546955469574696646968469694696946971469804698546986469864698846997470054700647006470094700947016470174701747020470204702847029470294703247033470344703547035470384703947044470454704547048470494705447055470554705847059470644706547065470684706947077470784707847081470834708547086470864708947091470934709447094470974710047101471024710247105471084711247113471134711647119471274712847128471314713447143471444714447147471514715... 

481617232431333638424546495255616472767882879197101110115117122127133134140144151153160166173181189191199206215216225232233233234235236236237238243244245252253255257258260267268271274275278282283287287288292296297302303304309312313319319320326332333340343344352353354362371372381382383392401403403409411412417419420426428430435437440442444447450452455458460463467469472477479482488490493499501504511513516524526530533535539543545549554556561563565570573575580585587592599601606614616622622624630637639645653655662663665672676678685690692699707709717719721729732734742749751759766768776784786795797799808814816825832835835837840840843846846850853853862865866868871872875878879888891892901904906906909911917920923925928931934937941941944948951954958962965970972975980983986991995998100410061009101610171020102710291032104010411044105210541057106510681071108010821086108610871091109110941098109811011105110511141118111911201124112511271131113211391143114411531157115911591163116511711175117711851189119211921196119912041208121112181222122612261230123412361240124412481252125612631267127212721276128112831287129212971301130613141318132413241328133413371341134713541358136413731377138413861390139714041408141514241428143614381442145014581462147114711475148414871491150015091514151415151520152015241529153015311536153715401545154615521557155915631568157015761581158415841589159215951600160316081613161616251630163416371642164616511656166016691674167916831688169316991704171017111716172217251730173617411746175317531758176517681773178017851790179817981803181118161821182918361841185018521857186618751881188118821888188818941900190119051911191219181924192619281934193619381944194619501956195919591965196819751981198419931999200320082014201920222028203320382044205020522058206420672073207920842090209720992105211221182124213121392145215321582164217321732179218821902196220522142221222122282235223522442251225222592266226722762283228522862293229523042311231423162323232623302337234123432350235423632370237523762383238823972404241024162423242924372444245124572464247224762483249124972504251325182525253425412548255725662574257425822590259125952603260426102618262026252633263626382646264926542662266526702678268126882696270027002708271227122720272427272735273927452753275727632771277627762784278927922800280528082816282228242832283828432851285728632871287728852893290029012909291629182926293329382946295329612969297629852993300130093017302630273035304430463055305530563065306530693078307830843093309330993108310831173126312731283137313831453154315631563165316731703179318131863195319732053214321732183227323032343243324632533262326632673276328032813290329432983307331133193328333333343343334833523361336633743383338933913400340634113420342734273436344334453454346134663475348334833492350035033512352035263535354435453554356335683577358635943595359535953599360036003600360636073607360736163617361736183624362536253626363336343634363636363637363736393646364736473649365836593659366236643665366536693669367036703674367536763676368036843685368536903692369336933698370237033703370837153716371637223727372837283734374237433743375037513752375237603760376137613769377137723772378037863787378737953801380238023810381738183818382738283829382938383839384038403849385338543854386338713872387238813889389038913891389238933894389438993900390139013906390739083909391339143915391639243925392639273936393739383940394039413942394439483949395039523957395839593961396839693970397339743975397639793981398239833986399539963997400140044005400640104014401540164021402440254026403140384039404040454054405540564061407040714072407840814082408340894094409540964103410441054106411341184119412041274134413541364144414941504151415941684169417041794181418241834192419441954196420542114212421342224231423242344234423842394241424142494250425242534254425542574258426642674269427142734274427642784284428542874289429542964298430143014302430443074311431243144317432343244326433043304331433343374341434243444348435643574359436443664367436943744380438143834389439243934395440144084409441144184420442144234430443244334435444244484449445144594460446144634471447444754477448544924493449545044506450745094518452545264529452945304531453445344540454145444545454945504553455445624563456645684572457345764578458245834586458845964597460046034607460846114614462146224625462946304631463446384645464646494654465846594662466746754676467946854689469046934700470347044707471447214722472547334737473847414749475547564759476847684769477247814788478947934793479747984802480248104811481548164821482248264828483248334837483948474848485248554861486248664869487748784882488648884889489348984898489949034908491649174921492749294930493449414942494349474954495549564960496749724973497749854989499049945002500950105014502350245025503050305030503150365036504550465051505250565057506250635067506850735074507950805085508750875088509350955095509651015103510751085113511551245125513051335133513451395142514351445149515251585159516451675174517551805184518451855190519451995200520552095215521652215226522852295234523952465247525252575266526752725278528152825287529353015302530753145314531553205327533353345339534753485349535453625366536753725380538453855390539854075408541354225424542554305439544454455451545154515452545854585461546254685468547654775483548454875488549454955501550255085510551555165522552555255526553255355539554055465549555655575563556755695570557655805586558755935598559956005606561156175618562456305630563156375643565256535659566656705671567756845693569457005708571157125718572657345735574157505753575457605769577857795786578657905791579857995799580058075808580958105817581858245825583258345836583758445846585158525859586258625863587058735879588058875891589258935900590459105911591859235926592759345939594259435950595559635964597159775982598359905996600460056012601960226023603060386038603960466054605960606067607660766077608460936101610261096118612661276135613561386139614761486149615061586159616561666174617661776178618661886197619862066209621562166224622862296230623862436243624462526257625962606268627362806281628962956301630263106317632263236331633963406341634963576358635963676375637763786386639464026403641164196427642864366445644964506459645964596460646964696470647164806480648564866495649664976498650765086510651165206521652965306539654165456546655565576563656465736575658365846593659666006601661066136619662066296632664066416650665466586659666866726678667966886693669366946703670867146715672467296738673967486753676267636772677867836784679367996807680868176824682968306839684768486849685868666870687168806889689268936902691169206922692269226925692769276927693569376937693869426944694469456954695669566958696069626962696469726974697469776980698269826985699369956995699970037005700570107010701270127017701970217021702670347036703670427046704870487054706170637063707070737075707570827091709370937101710571077107711671167118711871277134713671367145715471567157715771627164716571667168717071717172718071827183718571897191719271957196719871997202721172137214721872237225722672317234723672377242725072527253725972637265726672737276727872797286728972917292729973087310731173197327732973307339733973417342735173577359736173617366736873707371737573777379738173827384738673887389739173937395740374057407741074157417741974227427742974317435743974417443744874497451745374587460746274647469747874807482748874947496749875047511751375157522752875307532754075437545754775557560756275647572757875807582759175947596759876077612761476177617762176237626762776287630763376347638764076437644765076527655765776607662766576677673767576787681768176837686768976967698770177057706770877117715771877207723772877287730773377387742774477477753775677587761776877687770777377807785778777907797780378057808781678197821782478327840784278457854786178637867786778717873787778787878788078847885789178937897789979027904790879107919792179257928793579377941794579497951795579607961796379677972797979817985799179957997800180088010801280168023802980318035804380468048805280618062806480688077808480868091809180958097810281038106810881138114812281248129813181368138814381468150815281578161816281648169817381818183818881938200820282078213821982218226823382378239824482518255825782628270827282748279828882888290829583048305830783128321832683288334833483378339834583458349835183578358835883608366836783758377838383858385838783938395840084028408841184148416842284258431843384398442845084528458846284688470847684808489849184978502850685088514852085228524853085368541854385498556855685588564857185798581858785958596859886048612862086228628863786438645865286528652865486618661866186638670867086788680868786888690869286998700870287048711871387138715872287248728873087378739874687488755875887638765877287758784878687938797880288048811881688198821882888338840884288498855885888608867887488758877888488918897889989068913891989218928893689408942894989578966896889758984898689888996899689968998900690069011901390219021902990319039904090469048905690589060906290709072907690789086908990919093910191049112911491229126912991319139914491459147915591609167916991779183918691889196920392049206921492219228923092389246925192539261927092739275928492849284928692959295929692989307930793169318932793289334933693459346935493569365936793739375938493879390939294019404941294149423942794339435944494499452945494639469947094729481948794969498950795149520952295319539954495469555956495679570957095709571957495749574958395869586958795949597959795999605960896089610961796209620962396289631963196359639964296429646965296559655966096659668966896739678968196819686969296959695970197069709970997159720972397239729973897419741974897569759975997669774977797779785978997929792980198049807980798169819982298229831984098439844984498529855985698569864986798689869987698799880988298889891989298949901990499059907991599189919992299299932993399369944994799489952995799609961996699709973997499799985998899899994100001000310004100101001510018100191002510032100351003610043100431004610047100541006310066100671007510076100791008010088100941009710098101071011210115101161012510132101351013710137101421014510147101481015210155101571015810165101681017010171101791018210184101861019310196101981020110201102041020610209102131021610218102221022510228102301023410240102431024510250102531025610258102641026610269102711027710283102861028810294103011030410306103131031910322103241033210332103351033710345103461034910351103601036010363103651037410378103811038310392104001040310406104061041310416104191042010421104241042710428104371044010443104451045310456104591046210465104681047110474104781048110484104881049110494104971050110509105121051510520105221052510528105341053510538105411054710553105561055910566105701057310576105841058710590105931060110610106131061610625106261062910633106331063310636106401064010646106491065310654106551065810662106641066410667106711067310680106831068710689106961069910703107061071210715107191072310726107291073310737107421074510749107541075810761107651077110772107751077910785107911079410798108051081010813108171082510828108311083510843108461084910853108621086410867108721087210872108751088010880108831088610891108921089410897109021090410904109071091210914109201092310928109311093610939109441094810952109551096010964109691097210977109821098610989109941100011003110061101111017110251102811033110401104711050110551106311069110721107711086110901109311098111071111211115111201112911134111371114211151111561115911164111731118211185111911119111191111941120011200112001120311209112091120911212112181121811224112271123311233112401124311249112491125611259112651126511272112751128111282112881129111297112981130511308113141131511322113251133111332113401134311349113511135511358113641136611371113741138011382113871139011396113981140411407114131141611419114221142811431114351143811444114471145111454114601146311469114721147811481114871149011496114991150611509115151151811525115281153411537115461154911555115591156511568115741157811585115881159411598116051160811614116181162711630116361164111649116521165811663116721167511681116861169511698117041171011712117151172111727117311173411740117461175111754117601176611771117741178011786117951179811804118101181911822118281183511835118381184411851118511185411860118671187111874118801188711892118951190111908119141191711923119301193611939119451195311953119561196211970119741197711983119911199611999120051201312018120211202712036120361203912045120541205612059120651207412077120801208612095120981210112107121161212412127121341213412136121391214612146121491215212159121591216212165121721217212180121831219012191121961219912206122071221312216122231222412230122331224012242122441224712254122561226312266122731227512283122861229312295123031230612313123161232012323123301233412336123391234612350123531235612363123671237012373123801238512385123881239512400124011240412411124161241812421124281243312435124381244512451124511245412461124671246712470124771248312484124871249412500125011250412511125171252612529125361254312544125471255412561125631256612573125801258212585125921260012600126031261012618126241262712634126421264912652126591266712674126771268412693126981270112709127091271012713127211272112723127261273412734127361273912747127481274812751127591276012767127701277812779127871279012798127991280712810128181282012827128301283812840128481285112859128611287012873128811288312892128951290312906129141291712925129281293712940129481295212952129551296312967129671297012978129821299112994130021300713010130131302113026130301303313041130461305013053130611306713070130731308113088130891309213100131071310913112131201312713129131321314013148131491315213160131681317713180131881319713197132001320813217132181322113229132381323913242132501325913261132641327213281132841328713295133041330813311133191332813332133351334313352133611336413373133731337313376133851338513386133891339813398133991340213411134111341713420134291342913436134391344813448134561345913468134681347713480134891349013493134961350513506135101351313522135231352813531135401354113547135501355913561135651356813577135791358413587135961359813604136071361613618136251362813637136401364613649136581366113668136711368013683136911369413703137071370713710137191372313723137261373513739137401374313752137561375813761137701377413778137811379013794138021380513814138181382713830138391384413844138471385613861138631386613875138801388713890138991390413912139151392413929139381394113950139561395713960139691397513983139861399514001140101401314022140291402914032140411404814051140541406314070140741407714086140931409814101141101411714123141261413514142141511415414163141711417214175141841419214194141971420614214142171422014229142371424314246142551426414269142721428114290142961429914308143171432414328143281432814329143331433314333143371434114341143411434614350143501435014356143601436014361143611436514365143661437014374143741437514380143841438414385143911439514395143971439814402144021440414408144121441214414144191442314423144251443114435144351443814439144431444314446144541445814458144611447014474144741447814478144821448214486144911449514495145001450414508145081451314518145221452214527145331453714537145431454414548145481455514555145591455914566145671457114571145781458014584145841459114599146031460314611146121461614616146241462614630146301463814641146451464514653146621466614666146751467914683146831469214697147011470114710147161472014721147211472414728147291472914733147371473814738147431474714748147481475414758147591476014763147671476814769147771478114782147831479214796147971479914799148031480414806148131481714818148211482514829148301483314838148421484314846148521485614857148611486514869148701487414883148871488814893148931489714898149031490414908149091491414923149271492814934149421494614947149531496214966149671497414974149781497914986149951499915000150081500915013150141502215024150281502915037150401504415045150541505615060150611507015074150781507915088150931509715098151071511315117151191511915124151281513015131151321513615138151391514115145151471514815151151551515715159151611516515167151701517115175151771518015182151861518815191151951519915201152041520815212152141521715225152291523115234152431524715249152531525415258152601526415265152691527115275152841528815290152951529515299153011530615308153121531415319153221532615328153331533715341153431534815353153571535915364153711537515377153821539015394153961540215408154121541415420154271543115433154391544815452154541546115462154661546815475154781548215484154911549515499155011550815514155181552015527155351553915541155491555315557155591556715572155761557815586155931559715599156071561615620156221563115636156401564215651156571566115663156721568015684156871568715688156921569515695156961570015703157031570515709157121571215716157201572315723157301573415737157381573915743157461574715749157531575615757157611576515768157691577615780157831578515788157921579515797158011580515808158101581615820158231582615826158301583315836158361584015843158461584715851158541585715860158641586715870158771588115884158881588915893158961590015902159061590915913159171592115924159281593615940159431594815954159581596115966159731597715980159851599415998160011600716011160151601816024160301603416037160431605016054160571606316072160761607916086160901609416097161051610516109161121612016121161251612816136161391614316146161541616316167161701617916181161851618816197162001620416207162161622116225162291622916230162341623816238162461625016254162541626316267162711627216273162771628116282162901629416298163001630016304163081631016311163151631916321163241632816332163351633516339163431634616348163521635616359163621636616370163731637816382163861639016392163961640016404164121641616420164241643316437164411644616447164511645516460164691647316477164831648316487164911649716498165021650616512165151651916523165301653116535165391654616550165541655816565165701657416578165851659216596166001660816613166171662116630166321663616640166491665216656166601666916674166781668316683166871669116696166961670216706167111671116718167221672716727167361674016745167461675416758167631676516770167741677916781167871679116796167981680716811168161681816827168311683616839168391684316848168511685216856168611686416868168721687716880168841688816893168971689716901169061691016911169151692016924169281693216937169411694616950169551695916968169721697716982169821698616991169961699917003170081701317017170211702617032170341703817043170491705217056170611706717073170771708217088170961710017105171121711417118171231713017133171371714217149171551715917164171711717917183171881719617198172021720717215172181722217227172351724117245172501725817266172701727517284172901729417299173081731517319173251732517325173291733517335173381734217348173481735517359173651736517373173771738317384173851738917395173961740017404174101741217413174171742317425174271743117437174391744417448174541745617465174691747517478174781748217488174911749217496175021750517509175131751917522175301753417540175441754917553175591756317569175731757917583175921759617602176071761117615176211762617634176381764417649176581766217668176741767617680176861769217699177031770917716177211772517731177381774417748177541776117770177741778017788177931779717803178111782017824178301783917839178431784917858178611786517872178721787217876178831788317886178901789717897179011790517912179121791917923179301793117935179391794617948179491795317960179621796417968179751797717982179861799317996179991800318010180131802018024180311803418042180461805318057180581806218069180731808218086180931809818103181071811418119181251812918136181411815018154181611816718175181791818618192182001820418211182171822618230182371824418246182501825718265182661827018277182851829318297183041831218321183251833218341183441834818355183641836718371183781838718394183981840518414184221842618434184341843618440184481844818450184541846218463184631846718475184761847718481184891849018495184991850718508185141851818526185281852918533185411854318545185491855718559185651856918577185791858718591185991860218604186081861618619186221862618634186371864418648186561865918668186721868018684186911869518703187071871518719187271873218734187381874618751187561876018768187741877518779187871879318795187991880718813188191882318831188371884618850188581886518872188761888418891188991890318911189191892118925189331894118947189511895918967189751897918987189951900419008190161902519028190321904019049190571906119069190781908619090190981910719116191201912919129191321913619145191451915319157191661916719173191771918619187191941919819207192091921019214192231922519232192361924519247192561926019269192721927219276192851928819292192961930519309193101931419323193271932919333193421934619349193531936219366193731937719386193911939519399194081941319418194221943119436194421944619455194611946119465194741948019487194911950019507195091951319522195291953219536195451955219559195631957219580195851958919598196061961519619196281963719637196411965019659196631966819668196681967019675196751967519684196891968919690196901969519695196961970019705197051970719710197151971519717197211972619726197281973319738197381974119741197461974619749197491975419754197571975719762197621976519766197711977119774197801978519785197881979419799197991980319808198131981319817198231982819828198331983419839198391984419846198511985119856198621986719867198721987919884198841989019892198971989719903199061991119911199171992419929199291993519943199481994819955199581996319963199701997419979199791998619995200002000020008200082001320013200212002620031200312003920046200512005120059200662007120071200792008720092200922010120104201092010920118201232012820128201372014220147201472015620162201672016820168201692017420175201752017820183201842018420191201962019720197202052021020211202122021520220202212022220227202322023320235202392024420245202472025220257202582026120261202662026720270202732027820279202822028520290202912029420298203032030420307203162032120322203262032820333203342033820341203462034720351203552036020361203652037420379203802038520387203922039320398204062041120412204172042620431204322043820442204472044820454204612046620467204742047820483204842049120496205012050220510205102051520516205242052820533205342054220546205512055220560205652057020571205802058020585205862059520599206042060520614206232062820630206302063020635206372063720642206472064920649206582066320665206662067120676206782067920685206902069220694206952070020702207042071020715207172071920727207322073420736207452075020752207552075920764207662076920778207832078520789207952080020802208062081320818208202082520827208322083420839208462085120853208592086520870208722087820885208902089220899209012090620908209152092320928209302093820939209442094620954209562096120963209712097820983209852099420997210022100521005210062101121014210142101621021210242102421031210362103921040210442104921052210532105721062210652106621071210762107921081210812108621089210912109821103211062110921112211172112021123211272113221135211382114721152211552115921166211712117421178211862119121194211982120721212212152122021224212292123221238212402124521248212542126021265212682127421281212862128921296212982130321306213142131421319213222133021334213392134221350213552136021363213722137221377213802138921397214022140621406214132141821422214222143021435214392144021443214482145221454214562146121465214672147121476214802148221487214922149621499214992150421508215112152021525215292153321537215422154621550215552156021564215692157021575215792158421585215902159421599216002160521609216142161621621216252163021638216432164721652216602166521669216752167621681216852169121693216982170221708217162172121725217312173921744217482175521761217662177021777217842178921793218012180421809218132182121825218302183421842218492185421858218662187421879218832189221896219012190521914219192192421929219292193021935219402194021942219472195221952219602196521970219712197121976219812198221987219922199721998220042200922014220162201822023220282203022035220402204522047220522205722062220642207022075220802208322085220902209522098221032210822113221162212522130221352213922139221442214922153221592216422169221732218222187221922219722203222082221322218222252223022235222412224422249222542226022267222722227722283222922229722302223092230922314223192232622332223372234222350223502235522360223682237422379223842239222399224042240922418224212242622431224402244822453224582246722476224812248722487224872249222498224982250422509225152251622517225222252822529225362254122547225482255622561225672256922573225782258422587225872259222598226012260122606226122261522616226212262722630226372264222648226522265522660226662267122673226782268422689226922269722703227082271722722227282273422740227452275122758227582276322769227762277722782227882279522802228072281322821228252283022836228452284822853228592286822872228772288422884228842288922896228962290422909229162291722918229232293022931229332293822945229462295422959229662296822974229792298622989229932299823005230082301323018230252302923030230352304223047230472305223059230642306723072230792308423088230932310023106231062311123118231242313323138231452315223160231652317223179231882319323200232082321423219232262323423240232452325223261232612326623273232822328323288232952330423312233172332423333233422334723354233632337223377233852338523385233902339823398234052341023418234182342623431234392343923448234532346123462234622346723475234762348323488234962349723505235102351823520235242352923537235392354423549235572356023562235672357523578235822358723595235982360423609236172362023627236322364023644236482365323661236652367123676236842368923690236952370323708237102371523723237282373723742237502375623758237632377123777237792378423792237982380123806238142382123821238262383423841238442384923857238642387323878238862389423894238992390723915239222392723935239442394523950239582396723969239742398223991239942399924008240082400824013240222402224026240312404024041240412404624055240562405724062240712407224080240852409424096240992410424113241152412124126241352413724144241492415824161241652417024179241822419124196242052420924211242162422524229242322423724246242512425124256242652427024275242802428924295242982430324312243182432224327243362434324344243492435824365243722437724386243942439624401244102441824421244262443524444244442444924458244672447324479244792447924483244892448924489244942450024500245012450324509245092451024519245252452524527245292453524535245372454024546245462454924549245552455524558245662457224572245752458324589245892459224601246072460724611246172462324623246282463224638246382464324652246582465824664246642467024670246762468324689246892469624702247082470824715247212472724727247342474124747247472475524759247652476524774247772478324784247842478524791247922479224794248002480124801248102481624817248182482624832248332483524841248472484824850248572486324864248672487224878248792488224887248932489424897249052491124912249152492424930249312493524942249482494924953249612496724968249722498124987249882499324993249992500025005250132501925020250252503425040250412504725052250582505925065250712507725078250852508925095250962510325109251152511625123251302513625137251442515225158251592516725173251792518025188251962520225203252122521925225252262523525243252492525125251252572526325265252652527425280252822528325288252942529625297253032530925311253132531725323253252532725335253412534325345253542536025362253652536525371253732537625384253902539225396253992540525407254112541425420254222542625430254362543825443254452545125453254582546525471254732547825487254932549525501255012550725509255152552325529255312553825541255472554925557255572556325565255732557425580255822559025599256052560725616256212562725630256302563125637256402564025642256482565125652256522565825661256622566925675256782568025682256882569125693256962570225705257082570925715257182572125730257362573925743257432574925752257562575725763257662577025779257852578825793258002580625809258142582225828258312583625845258512585425860258672587325876258832588825894258972590425911259172592025927259352594125944259522595825964259672597625980259862599025990259922599826002260022600526011260152601626017260232602726028260372604326047260492605626062260662606826076260822608626089260952610126105261092611426120261242612826137261432614726152261522615826162261672617626182261862619126200262062621026215262242623026234262402624026246262502625626265262712627526281262902629626300263072630726313263172632426325263312633526343263432634926353263612636126367263712637926384263902639426402264082641426418264272643226438264422645126457264632646726476264832648926493265022651026516265212652126528265342653926539265472655326558265592655926565265702657126572265782658326585265852659126596265982659926605266102661226621266272663226635266352664126646266492665826664266692667326674266802668526689266942670026705267092671526721267262673126736267422674726752267592676526770267762677926785267902679626800268062681126818268212682726832268392684426850268552686326866268722687726885268892689526900269092691226918269232693226938269442695026950269502695626962269622696326969269752697626976269822698826989269922699827004270052701427020270262702827028270342704027042270512705727063270662706827074270802708427084270902709627100271012710727113271182711827124271302713527139271452715127156271642717027176271812719027196272022720827216272222722827235272372724327249272562726427270272762728327292272982730427312273202732627332273412734427350273562736527368273742738027389273932739927406274062740927415274222742227430274362744327444274482745427461274622746727473274802748227486274922749927501275102751627523275262753427540275472755027559275652757227576275842759027597276022760527611276182762427626276322763927645276482765427661276682767027676276832769027698277042771127719277222772827735277432774727753277602776927772277782778527794278032780927817278172782427830278382783827846278522786027861278682787427882278842788827894279022790427913279192792727930279302793627944279472795627962279702797427981279872799527999280072801328021280252803428040280482805328061280672807528081280872809328101281082810828114281222812928130281362814428152281522815828166281742818328189281972820628208282142822228231282342824028249282492825128257282662826728268282742828328285282852829128300283022830428310283192832128323283292833828340283422834828357283592836428370283792838128388283942840328405284122841828427284292843628442284512845428459284652847428477284842849028499285022850928515285242852728535285412855028554285562856228571285752857928585285942859828602286082861728621286262863228641286462865028656286652867028676286822869128696287022870828717287222873028736287452875128751287572876628772287742878028789287952879728803288122881828822288282883728844288462885228861288682887228878288872889428898289042891328920289272893328942289502895028956289652897328975289812899028998290002900629015290232902829034290432905229055290612907029079290842909029099291082911329119291282913729146291532915329153291562916329163291632916829175291752917529180291872918729188291882919529195291962919629203292032920429206292132921329214292162922329223292242923129238292382923929248292552925529257292582926529265292672926829275292752927729283292902929029293292972930429304293072931329320293202932329329293362933629340293422934929349293532935929366293662937029378293852938529389293972940429404294092941329420294202942629427294342943429440294432945029450294562945929466294662947329473294802948029487294902949729497295042950929516295162952329528295352953529543295452955229552295612956229569295692957829581295882958829597296002960729608296082960929616296172961729622296292963029630296372964429645296452965229659296602966129667296742967529676296822968929690296912969929706297072970829716297232972429726297332974029741297442974829755297562975929765297722977329776297822978929790297942979929806298072981229816298232982429829298352984229843298482985529862298632986829875298822988329889298912989829899299052990929916299172992329928299352993629942299482995529956299622997029977299782998529985299922999330000300013000830009300163001830025300263003430034300413004230050300523005930060300683007130078300793008730092300993010030108301173012430125301343013530142301433015230154301613016230171301763018330184301933019930206302073021630224302313023230241302503025730259302593026130268302703027130272302793028130282302853029230294302953029930306303083030930317303243032630328303313033830340303423034730354303563035830364303713037330376303773038430386303893039330400304023040530411304183042030423304303043730439304433044530452304543045930459304663046830473304753048230484304893049230499305013050630515305223052430530305333054030542305483055330560305623056830574305813058330590305933060030602306093061530622306243063130639306463064830655306643067130673306813068730694306963070430713307203072230731307323073930741307503075230759307613077030779307863078930789307973080430807308083080830815308183081930820308273083030831308403084730850308523085930866308693087130880308873089030893308933090030903309063091530922309253092830937309443094730951309523095930962309663096830975309783098330984309913099430999310063101331016310213103031037310403104631047310543105731063310643107131074310803108631093310963110231110311173112031127311273113431137311443114531152311553116231167311743117731184311913119831201312083121731224312273123531236312433124631254312563126331266312743127831285312883129631302313093131231320313283133531338313463135531362313653137431375313823138531394313973140431407314163142131428314323143231435314423144631446314513145831462314623146931476314803148131481314883149231493314983150531509315103151731524315283152931538315453154931551315533156031564315663157331580315843158631595316023160631609316103161731621316243162931636316403164331652316593166331667316683167531679316833168631693316973170131709317163172031724317333174031744317493175031757317613176631769317763178031785317933180031804318103181031817318213182731829318363184031846318503185731861318673187631883318873189431902319093191331921319213192831932319403194231949319533196131969319763198031989319933200032004320133201932026320303203932047320543205932059320633207032075320763207732084320893209032093321003210532106321113211832123321253212732134321393214132149321563216132164321643217132176321793218132188321933219732197322043220932213322163222332228322323223732244322493225332260322673227232277322823228932294323003230032307323123231832320323273233232338323423234932354323613236332370323753238232390323973240232410324103241732422324303243232439324443245332454324613246632475324793248632491325003250632513325183252732535325423254832548325553256232568325693257132578325843258532589325963260232603326103261732623326243263132638326443264632647326543266032662326653267232678326803268632693326993270132708327153272132723327313273832744327473274732754327603276332766327733277932782327863279332799328023281032817328233282732827328343284032844328473285432860328643286832875328813288632886328933289932904329063291332919329243292932936329423294732954329613296732973329733298032986329923299433001330073301333018330253303133037330443305133057330643306733074330803308733092330993310533112331203312733133331413314233149331553316333164331713317733185331883319533201332093321533222332283323633245332523325833267332733328033286332953330333310333173331733318333253333233332333373334433351333513335733364333713337133379333863339333394333953340233409334103341533422334293343033438334453345233454334543346133468334703347333480334873348933497335043351133513335213352833535335383353833545335523355533558335653357233575335833359033597336013360333610336173362133625336323363933643336503365733664336693367233679336863369133697337043371133716337243373133738337443374533752337593376533773337803378733793338013380833815338223382233829338363384333846338533386033868338683387533882338903389533902339093391733924339313393833947339473395433961339703397733984339923399233995340023401034010340153402234030340303403834045340533405434060340673407534076340853409234100341023410334110341183412034124341313413934142341443415134159341633416334170341783418234184341913419934203342083421534223342283423234239342473425334254342613426934275342783428534293342993430634313343213432734334343413434934356343573436434372343793438234389343973440434411344183442634433344413444834456344633447134478344863449434494345013450934517345213452834536345443454934556345643457334574345813458934598346013460834616346253463234639346473465634665346723468134681346833469034699346993470334710347193471934727347343474334744347443475134760347613477034777347863478834789347963480534807348123481934828348303483834845348543485734862348693487834881348883489534904349083490934916349253492934934349413495034954349633497034979349843498534992350013500635011350183502735033350333504035049350553505635063350723507835081350883509735103351103511735126351333513535142351513515835167351743518335191351923519935208352163522135228352373524635247352543526335272352773528435293353023530935317353173531735318353263532635326353343534235342353433534335351353513535235354353623536235363353693537735377353793538235390353903539235401354093540935412354133542135421354243542935437354373544135444354523545235456354623547035470354743548235490354903549535497355053550535511355123552035520355263552835536355363554235546355543555435560355683557635576355833559035598355983560635610356183561835626356323564035640356493565035658356583566735668356763567635685356903569835698357073571435722357233572335725357333573435734357373574535746357463575235760357613576135769357773577835779357823579035791357923579635804358053580735809358173581835820358243583235833358353584435852358533585635857358653586635869358753588335884358873589535903359043590835911359193592035924359303593835939359443594435952359533595835960359683596935974359813598935990359963599736005360063601236014360223602336029360333604136042360483605736065360663607336076360843608536093360943610236103361113611436122361233613136139361473614836157361603616836170361703617036178361803618036182361903619236192361993620736209362103621336221362233622436233362413624336245362463625436256362583626436272362743627736280362883629036293363003630836310363133632236330363323633636340363483635036355363563636436366363713637636384363863639136398364063640836414364163642436426364333643336441364433645036452364603646236469364733648136483364903649936507365093651736525365333653536543365513655936561365703657036578365803658936594366023660536605366093661736620366203662536633366363663636643366513665436655366573666536668366703667136679366823668436690366983670136703367113671936722367253672936737367403674336747367553675836761367683677636779367823679136799368023680636811368193682236826368313683936842368463685536863368663687136872368803688336888368953690336906369113691936927369303693536943369513695436960369603696836971369773698336991369943700037007370153701837025370303703837041370483705537063370663707437077370853708837096371013710937112371203712537133371363714437151371593716237171371743718237185371943719937207372113721137211372193722337223372253723337237372373724537253372573725837259372673727137272372763728437288372893729537303373073730937311373193732337325373303733837342373453734637354373583736137364373723737637379373883739637400374043740637414374183742337423374313743537440374423745037454374593746737475374793748537487374953749937505375133752137525375323753237540375443755137557375653756937577375773758537589375973760637614376183762737628376363764037649376563766437669376693767137679376843768437690376983770337703377113771937724377253772937737377423774437744377523775737759377613776937774377763778037788377933779637796378043780937812378183782637831378353783637844378493785337856378643786937873378823789037895379003790637914379193792437930379383794337948379563796437969379753797937987379923799938000380083801338020380293803738042380503805138059380643807238079380873809238101381063811438119381283813438142381473815638164381723817838178381823819038196381973819938207382133821538215382233822938231382333824138247382493825738265382713827438281382893829538299383023831038316383203832538333383393834438346383543836038365383673837538381383863838838396384023840738411384193842538431384323844038446384523845338461384673847338474384823848838494384973850538511385183851838526385323853938539385473855338560385683857638582385903859038598386043861238619386273863338641386493865738663386723867238680386863869538697387053871138720387293873738744387443874438752387593875938761387693877638776387803878838795387963879738805388123881338816388243883138832388353884338850388513885638864388713887338875388833889038892388963890438911389133892138929389363893938939389473895438957389643897238979389823899138999390063901039016390243903139035390433905139058390633906839076390833908839096391043911139117391203912839135391413914639154391613916839170391783918539192391973920539212392203922439232392393924739253392613926839277392803928839295393043931139319393273932739329393373934539345393493935739365393663936739375393833938439390393983940639407394163942439432394343943539443394513945339461394693947739480394833949139499395033950339511395193952339525395333954139545395543956239570395753958039588395963960139609396173962539631396313963939647396533966039668396763968339687396953970339710397153972339731397383974539753397613976939773397813978939798397993980739815398243983139839398473985639865398733988239882398883989639905399063990939917399263992739936399443995339955399563996439973399753998339991400004000340009400174002640030400304003840047400514005340061400704007440083400914010040105401124012040129401354014140149401584016440172401804018940196402014020940218402264023040238402474025540261402694027840286402944030240311403204032640334403434035240358403664037540384403904039840407404164042440433404334043340439404484044840448404544046340463404644046540474404744047540478404874048740489404904049940499405014050240511405114051340522405314053140534405354054440544405474055640565405654056940569405784057840582405884059740597406014060940618406184062340629406384063840643406514066040660406664066640675406754068140683406924069240699406994070840708407154071740726407264073340739407484074840755407634077240772407804078640795407954080340812408214082140830408314084040840408494085240861408624086240863408724087340873408774088640887408884089040899409004090140905409144091540917409194092840929409314093740946409474094940958409674096840971409724098140982409854099441003410044100841012410214102241026410314104041041410454105241061410624106741072410814108241088410884109741098411044111141120411214112741136411454114641153411604116941170411784118141190411914119941205412144121541223412314124041241412504125641265412674126741270412794128141281412854129441296412964130241311413134131441318413274132941331413324134141343413454135341362413644136741367413764137841381413894139841400414044141041419414214142641427414364143841443414464145541457414634146441473414754148241482414914149341500415034151241514415214152641535415374154541549415584156041568415724158141583415914159541604416064161441620416294163141640416454165441656416654167041679416814169041696417054170741716417244173341736417364174341752417554175541762417714177441775417814179041793417944180241811418144181641823418324183541837418454185441857418604186441873418764187941885418944189741901419064191541918419224192841937419404194541949419584196141966419724198141984419904199542004420074201342020420294203242039420424205142054420614206642075420784208642090420994210242110421174212642129421384213842147421504215942161421704217442174421754218442188421884219242201422054220642208422174222142222422264223542239422414224442253422574225942266422754227942282422854229442298423014230642315423194232342327423364234042344423534236242366423714237342382423864239142395424044240842414424174242642430424364244542454424584246542465424744247842485424874249642500425084250942518425224253042537425464255042559425654257442578425874259542604426094260942616426254263042631426354264442649426514265142660426654266742669426784268342686426874269642701427044271342722427274273142735427444274942753427594276842773427784278342792427974280342807428164282142827428344284342848428554285542864428694287642876428854289042897428974290642911429184291942928429334294042944429534295842965429694297842983429904299443003430084301643019430284303343041430474305643061430694307543084430894309743104431134311843127431314314043145431544316143170431754318443191432004320543214432234323243238432384324343252432584325843266432754328143281432894329843304433054330543314433204332143328433374334343345433454335443360433624336243371433774337943382433914339743399434074341643422434254342643435434414344443445434544346043463434684347743483434864349543504435104351443516435254353143535435374354643552435564356243571435774358243584435934359943604436094361843624436294363443643436494365543655436644367043676436814369043696437024371043719437254373143739437484375443761437644377343779437864379443803438094381743818438274383343841438424385143857438654387143880438864389543897439064391243921439264393543941439504395543964439714397143972439814398843988439944400344010440104401944028440354403544044440534406044061440664407544082440844408444093441004410244105441144412144123441264413544142441444415344162441694417244180441894419644200442014421044217442214422244231442384424244250442594426644271442774428644293442984430744316443234432844337443464435344359443654437444381443884439244401444084441544422444314443844445444524446144468444764448144490444974450544514445234453044539445414455044557445664456844577445854458544586445954460344603446074461644624446244463144640446484464844655446644467244673446794468844696446974470644715447234472544727447364474444746447484475744765447684476944778447864479044790447994480744811448144482344831448354483944848448564486044864448734488144886448884489744905449104491544924449324493744943449524496044965449714498044988449944499845007450154502145028450374504545051450594506845076450824509145100451084511545121451304513845145451544516345171451794517945188451964520445206452154522345231452394524845256452654526645275452834529245294453034531145320453244533345342453424534345352453614536145365453744538345383453884539745406454064541345422454314543245437454464545545456454644547345482454834549245501455104551245514455234553245534455434555245561455644556645575455844558745590455994560845611456174562645635456394564345652456614566545672456814569045694457024571145720457254572745736457454575045757457664577545781457814579045799458054580645815458244583045836458454585445861458614587045879458864588945898459074591445918459274593645943459524596145970459784598345992460014600946017460264603546043460524606146070460794608346084460844608446084460844608546085460854608546088460894608946089460894609346094460944609446095460954609646096460964609746102461034610346103461044611246113461134611346114461234612446124461244612646131461324613246132461354613746138461384613846141461464614746147461474615046156461574615746157461614616446165461654616546169461724617346173461734617746183461844618446184461884619546196461964619646201462054620646206462064621246215462164621646216462224622846229462294622946235462424624346243462434625046255462564625646256462634626946270462704627046277462864628746287462874629546295462964629646296463044631246313463134631346322463264632746327463274633646343463444634446344463534636146362463624636346363463704637146371463724637346375463764637646377463784638346384463844638546386463924639346393463944639646401464024640246403464064640846409464094641046413464184641946419464204642346430464314643146432464354644246443464434644446448464504645146451464524645646461464624646246463464674647446475464754647646480464884648946489464904649546497464984649846499465044650946510465104651146516465234652446524465254653046538465394653946540465464655146552465524655346559465674656846568465694657646576465774657746578465854658646587465874658846595466044660546605466064661446616466174661746618466264663046631466314663246640466464664746647466484665746660466614666146662466714667746678466784667946688466964669746697466994669946700467014670146703467034670446705467054670746707467114671246712467144671446720467214672146723467234673246733467334673546736467394674046740467424674346749467504675046752467534676146762467624676446766467684676946769467714677346778467794677946781467834679146792467924679446797467974679846798468004680346807468084680846810468144681446815468154681746821468244682546825468274683146836468374683746839468444684446845468454684746852468554685646856468584686346869468704687046872468774688546886468864688846894468984689946899469014690746913469144691446916469224693146932469324693446941469424694346943469454695246959469604696046962469704697346974469744697646984469904699146991469934700147009470104701047012470214702547026470264702947029470304703147031470344703447038470394703947042470424704847049470494705247053470564705747057470604706147070470714707147074470764707847079470794708247084470884708947089470924709547097470984709847101471044710647107471074711047113471184711947119471224712547132471334713347136471404714547146471464714947153471594716047160471634716747176471774717747180471854718647187... 

510111112131415161819222327283334404149505961636568707779879093961001041041081091131221271271321411471481541571631681741821891891962032102192272342432432522552642702712712712722722762772772812822822902912913003013023053063083103113133203213233303313343363373413423433473543553593673683733773783833903913974004014074154164234274284364384394474564574654744754844904924924954974984985005015105125145215235265305325365395415455485505555575595645695715775815835905905925996006026096106126196206226296316336406426446516576596666736756826896916997007027107127147227247267357357377467477497587597627627627657657667697697717747747797827827887917917998028038038068078088118128158188208208238258268298318348378408408438468478508538578608638698728758828858898908938978999029069099129169239269319359389439489519569659689749819849909981001100810111014102110281031103810461049105710601063107210721075108410851088109711041108110811081112111211131117111711241128112911341138113911451149115111541158116011671171117311811185118811941198120112091213121612251229123312401244124912551259126412711275128112861290129713011305131213171321132913331337134613461350135913611365137413761380138913941398140714141418142714351439144814561461146114611466146614671472147314731478147914811486148714911496149814991504150615091514151615221527153015301535153815401545154815541559156215711576158015811586159015951600160416121617162216221627163216371642164716541659166416731678168416881693169917081713172017211726173317401745175317541759176717701775178417841789179817981803181218141819182818371843184318431849184918511857185718661872187318731879188018821888188918981904190619061912191419161922192419331939194219431949195219551961196519651971197519771983198719911997200220032009201420212027203220412047205320592065207220752081208820932099210721092115212321322138214721482154216321722179217921792186218621882195219621962203220422062213221422182225222722292236223822422249225122572264226722722279228222872294229723042311231523212328233223392346235023592366237123792386239124002407241324152422242824302437244324452452245824632470247624812488249425002507251325222529253525442551255825592566257325772584259125952602260926182625263326352642265026522659266726752682269126922699270827092716272527342742274227442752275227552763276327662774277427802788278827952803280328112819282028212829283028322840284128462854285528632871287328732881288328832891289328962904290629112919292129272935293729462954295729582966296929732981298429912999300330033011301530153023302730303038304230483056306030673075308030803088309330963104310931163124313031303138314431473155316131703178318531873195320232073215322332253233324132463254326232713279328832883296330533083316332533323340334933583367336733693378337833843393339334023411341234143423342434303439344134443453345534613470347334743483348634913500350335113520352435273536354035483557356235633572357735833592359836033612361836263635364236463655366336643673368136853694370337033712372137293730373037303731373237323732374037413741374237433744374437453749375037503752375337543754375637643765376537683769377037703773378137823782378637923793379337973806380738073812381938203820382638263827382738333836383738373844384638473847385438563857385738643869387038703878388238833883389138963897389739053913391439143923393039313932393239363937393839383946394739483948395639573958395839663967396839693971397239733974397639773978397939823983398439853992399339943995400240034004400640104011401240144022402340244026403540364037404040444045404640494057405840594062407140724073407740824083408440884097409840994104410541064107411241164117411841234131413241334139413941404141414741544155415641634164416541664173417641774178418641874188418941974202420342044212422042214222423142354236423742464254425542574257425842594261426142704271427342744277427842804281428742884290429242974298430043024311431243144317432043214323432743274328433043344338433943414345435443554357436243674368437043754384438543874393439743984400440744084409441144184423442444264434443544364438444644524453445544644464446544674476448344844487448744884489449244924497449845014502450445054508450945164517452045224523452445274529453845394542454545484549455245554562456345664570457645774580458445904591459445994599460046034608461746184621462746284629463246384643464446474654465846594662466946754676467946874687468846914699470847094712472147254726472947384746474747514751475847594763476447684769477347744782478347874789479647974801480448094810481448174826482748314835484348444848485348594860486448704871487248764882488348844888489448954896490049064912491349174923492949304934494049474948495249594961496249664973497649774981498849914992499650035011501250165023503250335037504550465047505150595065506650705078508550865090509951005101510551145120512151255134514251435147515651655166517151715175517651815181518751885193519352025203520852095213521452195220522652275232523452365237524252445251525252575260526052615266526952695270527552785283528452895292530053015306531053105311531653205325532653315335534353445349535453585359536453695378537953845390539253935398540554065407541254195425542654315439543954405445545354545455546054685474547554805489548954905495550455095510551655165516551755235523552755285534553555375538554455455552555355595561556355645570557255745575558155835590559155975600560256035609561256195620562656305632563356395643565056515657566256665667567356785687568856945700570457055711571857215722572857355743574457505758576257635769577757855786579258015804580558115820582958305837583758455846585358545857585858655867586758685875587758785879588658885894589559025905590859095916592059205921592859325937593859455950595359545961596659705971597859835992599360006006601360146021602860286029603660436048604960566064606860696076608460886089609661046113611461216130613861396146615561636164617261726175617661846185618761886196619762016202621062116220622162296231623962406248625162586259626762716274627562836287629062916299630363066307631563196328632963376341635063516359636463656366637463796386638763956400640764086416642264286429643764446446644764556462646564666474648164846485649365006509651065186526652665276535654365456546655465626570657165796587659665976605661466226623663266326636663766466646665266536662666266686669667866796681668266916692669666976706670767136714672367256727672867376739674367446753675667596760676967726781678267916795679767986807681168146815682468286837683868476852685468556864686968746875688468906891689269016907691269136922692869336934694369506951695269616968697369746983699069976998700770157018701970287036704370447053706270637064707370827089709170917091709370957095709570987100710071007109711171117112711671187118712071217123712371257132713471347137713971417141714571467148714871527159716171617166716971717171717671857187718771937198720072007207720972117211721872237225722572337234723672367244725272547254726372667268726872777286728872897289729672987299729973087310731173127317731973207322732573277328733173337335733673397347734973507354736173637364736873767378737973847388739073917397740074027403741074127414741574227431743374347441745074527453746074697471747274807486748874897497750375057506751475227524752575347539754175427551755775597560756975757577757975797582758475867586759075927594759476007602760476057608761076127613761776197621762276307632763476367641764376457647765476567658766076697671767376767682768476867689769776997701770577077709771177157724772677287733773477367738774377507752775477607764776677687774778177837785779277947796779878057814781678187826782878307832784078477849785178607864786678687877788478867889788978937895789878997900790279057906791179137916791879197921792479267934793679397942794479467949795279617963796679707976797879817986798679887991799680058007801080168022802480278034803580378040804780568058806180698075807780808089809080928096809680968098810281028109811181158116811981218125812681318133813781398141814381478149815781598163816681668168817281758182818481888192819581978201820582108212821682218223822582298234824282448248825482578259826382708270827282768283828982918295830383048306831083188326832883328341834583478352835283528354835983598366836883738374837783798384838683888390839583978406840884138416842184238428843284368438844384488449845184568461846984718476848184908492849785038509851185168523852685288533854085478549855485628566856885738582858385858590859986048606861286128614861686228622863186338639864086488650865686588663866586718674867786798685868886938695870187058707870987158720872087228728873387358737874387488757875987658771877887808786879387988800880688148816881888248833883488368842885188538855886188708879888188888888889688988905890589148916892389248930893289398941894689488955895889628964897189758977897989868990899289949001900590099011901890239025902790349039904190439050905590609062906990759078908090879093909690989105911191179119912691339137913991469153915791599166917491749176918391919199920192089216922492269233924292479249925792579260926292709270927392759283928492859287929592969305930793159317931793199327932993309332934093429351935393619364936493669374937793799381938993939393939594039407940894109418942294289430943894439447944994579462946794699477948394869488949695039504950695149521952495269534954195449546955495629563956595739581958495869594960296059607961596249625962796359644964796499657966696729674968396839687968996989698970497069715971697179719972897299738974097499751975297549763976597729774978397869791979398029805981298149823982798339835984498499853985598649869987698789887989299009902991199179923992599349940994999519960996799709972998199899990999210001100091001310015100241003310034100361004510054100631006610066100661006910072100721007210075100781007810079100801008310083100841008910092100921009310098101011010110103101061010910109101111011810121101211012410124101271012710130101381014110141101451014710150101501015410162101651016510170101761017910179101851018510188101881019410201102041020410211102161021910219102271022710230102301023810238102411024110249102571026010260102691027210275102751028410290102931029410294102981030110302103021031110314103151031610322103251032610328103321033510336103391033910342103431034610346103491035010353103611036410365103691037310376103771038110388103911039210397104021040510406104121041310416104171042410424104271042810435104431044610447104551046010463104641047210479104821048310492104971050010502105021050410507105091050910516105191052110522105271053010532105341053710540105421054410549105521055410557105601056310565105691057010573105751057910585105881059010595105991060210604106101061210615106171062410625106281063010637106461064910651106591066710670106721068010688106911069310702107081071110714107141071910722107251072510733107361073910740107461074910752107541075910762107651076810770107731077610780107801078310786107901079910802108051081010818108211082410830108371084010843108491085610859108621086810877108801088310890108981090110904109111091910922109251093310937109401094310952109551095810961109701097310976109801098010982109851098910990109911099410998109991100111004110081100911013110161102011022110251102811032110341103811041110451104811048110511105511058110671107011074110781107911082110861109011094110971110111106111091111211116111211112611129111331113911140111431114711154111541115711161111681117111174111781118511189111921119611204112071121011214112221122811231112351124411245112481125311253112531125611261112611126411267112721127311274112771128211284112841128711292112941129811301113061130811315113181132311326113321133511340113441134411347113521135611364113671137211377113841138711392113981140011403114081141411417114201142511432114341143711442114491145611459114641147211475114781148311492114941149711502115111151911522115281152811531115341154011541115431154611552115531156111564115701157211578115811158711590115951159811604116081161011613116191162311629116321163811643116481165111657116631166611669116751168111685116881169411701117041170711713117211172211725117311173911744117471175311762117661176911776117761177911782117891178911792117951180211803118051180811815118171181811821118281183011839118421184911852118521185511862118651186511868118751187811878118811188811891118921189511902119051190711910119171192011922119251193211935119371194011947119511195111954119611196511966119691197611980119811198411991119951199712000120071201112014120171202412028120321203512042120461205012053120601206412069120721207912083120921209512102121071210712110121171212212122121251213212137121391214212149121541215712160121671217212176121791218612191121951219812205122101221612219122261223212236122391224612252122571226012267122731227812281122881229412302123051231212318123271233012337123441234412347123541236112361123641237112378123811238412391123991240012403124101241812420124231243012438124401244312450124581246412467124741248312485124881249512504125071251012517125261252912532125391254812555125581256612566125721257512583125831259012593126011260112608126111261912620126221262512633126341264312646126541265612656126591266712669126691267212680126821268812691126991270112707127101271812720127271273012738127401274712750127581276112764127671277512778127841278712795127981280512808128161281912826128291283712841128451284812856128601286612869128771288112888128911289912903129101291312921129261293012933129411294612952129551296312968129751297812986129911299813001130091301513019130221303013036130451304813056130631306313066130741308113081130841309213099131071311013118131261312813131131391314713150131531316113169131721317513183131921319313196132041321313219132221323013239132461324913257132661327313276132851328513290132931330213303133061330913318133191332313326133351333613340133431335213354133571336013369133721337213375133841338713388133911340013403134051340813417134201342213425134341343713443134461345513458134651346813477134801348813491135001350313511135141352313527135331353613545135491355613559135681357213580135831359213596136041360713616136211362713630136391364413651136541366313668136761367913688136931370113704137131371913725137281373713743137501375313762137681377613779137881379413803138061381513822138231382613835138421384413847138561386313866138691387813885138891389213901139081391413917139261393313940139431395213959139671397013979139861399513998140071401514017140201402914037140401404314052140601406414067140761408414089140921410114110141121411514124141331413614139141481415714161141641417314182141871419114191141911419314197141971419714200142041420414204142081421214212142121421814222142221422314223142271422714228142291423314233142341423614240142401424114245142491424914251142531425714257142591426214266142661426814272142761427614278142841428814288142911429614300143001430314309143131431314316143231432714327143311433114335143351433914343143471434714351143561436014360143641437014374143741437814387143911439114396144031440714407144121442014424144241442914438144421444214448144501445414454144611446214466144661447314475144791447914486144891449314493145001450714511145111451914521145251452514533145361454014540145481455214556145561456414572145761457614585145921459614596146051461314617146171462614635146391464014640146441464814649146491465414658146591465914665146691467014670146771468114682146831468514689146901469114697147011470214703147101471414715147161472414728147291473114734147381473914742147431474714748147511475314757147581476114764147681476914772147811478514786147891479814802148031480714807148111481214816148171482114822148261483314837148381484314847148511485214857148621486614867148721487814882148831488914892148961489714903149071491114912149181492314927149281493414940149441494514952149551495914960149671497314977149781498514992149961499715004150121501615017150251503115035150361504415051150551505615064150721507615077150851509415098150991510815115151191512115121151231512715129151291513215136151381513815142151461514815149151511515515157151591515915163151651516715168151721517415176151781518215184151871518815192151941519715202152061520815211152171522115223152261523315237152391524315249152531525515260152641526815270152751528015284152861529115298153021530415309153161532015322153271533515339153411534615355153591536115367153681537215374153801538115385153871539415394153981540015407154081541215414154211542415428154301543715441154451544715454154611546515467154741548215486154881549615496155001550215510155111551515517155251553215536155381554615554155581556015569155691557315575155841558615590155921560115608156121561415623156311563515638156381563815642156451564515647156511565415655156561566015663156641566615670156731567415678156821568515686156931569715700157021570215706157091571115712157161571915721157241572815731157331574015744157471574915756157601576315765157731577715780157831578315787157901579315797158011580415807158151581915822158251583415838158411584515846158501585315857158621586615869158741587815882158851589015895158991590215907159141591815921159271592915933159361594215949159531595615962159701597415977159841598415988159911599816003160071601016018160221602616029160371604216046160491605716064160681607116080160831608716090160991610616110161131612216130161341613816138161381614216146161461615316157161611616116169161731617716177161861619016194161951619616200162041620516213162171622116223162261623016234162361624016244162481625016256162601626416267162711627516279162821628716291162951629816304163081631216315163231632716331163351634116345163491635416356163601636416369163721637616380163851639016394163981640416408164121641616422164261643016434164401644516449164531645916466164701647416481164871649116495165031650616510165141652216526165301653416542165491655316557165651657216576165801658816596166001660416612166211662516629166381664016644166481665716659166631666716676166831668716691167001670816712167171671716718167221672716727167291673316738167381674216746167511675116756167601676516765167731677716782167821679116795168001680116807168111681616817168241682816833168351683516839168441684616848168521685716859168621686616871168731687716881168861688816895168991690416906169151691916924169271693516939169441694716956169601696516969169711697516980169841698916993169981700217010170141701917023170321703617041170461704817052170571706217067170711707617082170841708817093170991710217106171111711717123171271713217139171391714317148171551716117165171701717717184171881719317201172011720517210172181722217226172311724017240172441724917258172591726317268172771728117285172901729917308173121731717326173351733917345173451734517349173551735517358173621736817368173761738017386173871739417398174041740517413174171742317425174261743017436174381744517449174551745717465174691747517477174861749017496174991750117505175111751417522175261753217536175391754317549175531755717561175671757117578175821758817593175971760117607176121762017624176301763517644176481765417660176621766617672176781768717691176971770417709177131771917726177321773617742177491775817762177681777617783177871779317801178081781217818178261783417838178441785317854178581786417873178821788617893178931790117905179121791217921179251793217933179351793917946179481794917953179601796217967179711797817980179861799017997179991800818012180191802218030180341804118045180511805518062180661807318077180841808918090180941810118106181071811118118181231813118135181421814718156181601816718173181761818018187181931819718201182081821418222182261823318239182481825218259182661826918273182801828718291182951830218310183121831618323183311833418338183451835318360183641837118379183881839218399184081841418418184251843418441184451845318453184541845818466184661847018474184821848218491184951850318504185041850818516185171852118525185331853418541185451855318555185611856518573185751858218586185941859718598186021861018613186181862218630186341863718641186491865318657186611866918673186811868518693186981870118705187131871818727187311873918745187451874918757187631876718771187791878618786187901879818805188061881018818188251882718831188391884618852188561886418872188741887818886188941889718901189091891718921189251893318941189491895318961189701897418978189861899519000190041901219021190271903119040190401904019044190531905319059190631907219073190751907919088190891909219096191051910619113191171912619128191311913519144191461915519159191681917119171191751918419187191911919519204192081920819212192211922519232192361924519249192571926119270192751927719281192901929519304193081931719323193241932819337193431934519349193581936419370193741938319390193931939719406194131941919423194321943919446194501945919467194681947219481194891949719501195101951919520195241953319542195441954819557195661957219577195771957719580195851958519586195871959219592195931959519600196001960119607196121961219614196171962219622196251962719632196321963519638196431964319646196531965819658196621966719672196721967619682196871968719691196981970319703197081970919714197141971919728197331973319739197441974919749197551976119766197661977319773197781977819785197931979819798198061981119816198161982419830198351983519844198441984919849198581986719872198731987319873198781987919879198801988519886198861989119896198971989819902199071990819910199101991519916199181991919924199251992719932199371993819941199451995019951199551995719962199631996719970199751997619980199871999219993199982000420009200102001620021200262002720033200392004420045200522005320058200592006620067200722007320080200852009020091200982010420109201102011820119201242012520133201342013920140201482015520160201612016920177201822018320192201952020020201202102021320218202202022020222202272022920229202322023720239202392024720252202542025420263202682027020271202742027920281202822028620291202932029420303203082031020312203122031720319203212032720332203342033620343203482035020353203552036020362203652036920374203762037920385203902039220395204022040720409204132041520420204222042620430204352043720442204432044820450204552045720462204642046920476204812048320489204892049420496205022050220507205092051520516205212052320529205352054020542205482055720562205642057020579205842058620593205932059820600206072061220617206192062620634206392064120649206522065720659206672067120676206782068620695207002070220711207132071820721207212072120726207292072920730207352073820738207442074920752207532075320758207612076220762207672077020771207722077720780207812078720792207952079720797208022080520807208122081720820208222082820833208362083920840208452084820851208562086120864208682087120876208792088320887208922089520899209082091320916209212092520930209332093820946209512095420959209682097320976209822098620991209942100021009210142101721024210322103721040210472105621061210642107221076210812108421093210932109821101211102111221117211202112921132211372114021149211572116221166211662117121176211802118021186211912119521195212022120721211212122121421219212232122421233212382124221244212492125421258212602126621271212752127821279212842128821291213002130521309213122132121326213302133421334213392134321347213522135721361213662136921374213782138321387213922139621401214062141121415214212142121426214302143621444214492145321460214642146921473214802148521490214942150221502215072151121519215282153321537215452155421559215632157221572215772158121590215952160021605216052160921614216192161921628216332163821639216392164421649216502165621661216662166721673216782168321684216902169521700217012170821713217182172021723217282173321735217382174321748217502175721762217672176921777217822178721790217942179921804218072181221817218222182521832218372184221845218532185821863218672187121876218812188521890218952190021905219072191221917219222192521930219352194021949219542195921965219662197121976219822198521990219952200122005220102201522022220222202722032220392204122046220512205822062220672207222079220842208922094221022210322108221132212122124221292213422143221432214822153221622216322168221732218222189221942220022200222002220522211222112221322218222242222422227222322223822238222472225222258222592226122266222722227322282222872229322295222952230022306223082231422319223252232822328223332233922342223442234922355223582236122366223722237522384223892239522399224022240722413224182241822423224292243422435224402244622451224582246322469224752247722482224882249422500225052251122517225242252922535225422254522550225562256322571225762258222590225972260222608226162262422629226352264422648226532266022660226602266522672226722267622681226882268822693226982270522706227072271222719227202272822733227402274222743227482275522757227592276422771227732278122786227932279622801228062281322817228202282522832228362284022845228522285722857228622286922874228822288722894229002290222907229142292022923229282293522941229502295522962229692297622981229882299623001230062301323021230272303223039230482305023055230632306323064230692307723077230812308623094230942309923104231122311323114231192312723129231292313423142231442315323158231662316923169231742318223185231922319723205232082321523220232282323223237232422325023254232602326523273232782328123286232942329923303233082331623321233282333323341233462335423359233672337323378233832339123397234042340923417234232343023435234432344923457234622347023477234822348723495235022350923514235222352923537235422355023557235662357123579235872359323598236062361423622236272363523644236482365323661236702367523680236892368923691236962370523705237102371523724237242373223737237462374623755237602376923770237762378123790237922379223797238062380823808238132382223824238252383023839238412384923854238632386623868238732388223885238922389723906239092391723922239312393523940239452395423959239592396423973239782398123986239952400024004240092401824024240252403024039240452405124056240652407224072240772408624093240942409924108241152412324128241372414524148241532416224171241732417824187241962419924205242052420524205242112421124211242172422324223242242422724233242332423424238242442424424246242472425324253242552426324269242692427124279242852428524287242962430224302243052431124317243172432124324243302433024334243422434824348243522436124367243672437224378243842438424390243942440024400244062441424420244202442624435244412444124448244542446024460244682447224478244782448624494245002450024508245172452324523245322453824544245452454524549245552455624557245602456624567245682457224578245792458124582245882458924592245922459824599246022461024616246172462024629246352463624640246462465224653246582466324669246702467624679246852468624692246962470224703247102471224718247192472624728247342473524742247472475324754247612476724773247742478224786247922479324801248062481224813248212482824834248352484324851248572485824867248732487924880248892489624902249042490424905249112491324913249152492124923249242492424930249322493324934249402494224944249442495024952249542495524961249632496524974249802498224985249862499224994249972500625012250142501825018250242502625030250382504425046250512505225058250602506525073250792508125086250952510125103251092511625122251242513125132251382514025147251512515725159251662517125177251792518725190251962519825206252132521925221252302523025236252382524725248252542525625265252742528025283252832528625292252952529525301253072531025310253172532325326253272533225338253412534225351253572536025362253702537625379253812539025396253992540225409254152541825422254232542925432254372543725443254462545125452254582546125466254752548125484254902549425500255032550925514255202552325529255352554125544255512555525561255642557125580255862558925597256032560925612256202562725633256362564525650256562566025660256602566625670256702567725683256872568725695257012570525706257122571825722257242572625732257362573825746257522575625758257672577325777257802578725793257972580125805258112581525819258252583125835258392584625852258562586125866258722587625882258842589025894259002590525911259152592125927259332593725944259482595425958259662596725973259772598525989259952599926007260122601826022260312603426040260452604526045260512605626056260652607126076260772607726083260882608926097261032610826110261162612226127261292613526141261462614826155261612616626169261742618026185261892619226198262032620726212262182622326227262332623926244262492625326259262642627026272262782628326290262902629626301263082630926315263202632726336263422634726355263622636826373263822638826394263992640826415264212642726427264322643826444264452644926455264612646326465264712647726479264822648826494264972649926505265112651426516265222652826531265372654326549265522655926565265712657526581265872659326597266032660926615266202662226628266342663926642266482665426660266622666826674266802668226688266942670026708267142672026726267352674126747267542676226768267742678126790267962680226810268112681726823268312683326839268452685426855268612686726876268782688426890268992690526911269172692626933269392694626946269522695826965269652697226978269852698626989269952700227003270072701327020270222702527031270382704027045270512705827060270672707327080270822709027096271032710627113271192712627129271382714427151271552715827164271712717527179271852719227197272002720627213272182722427230272372724227251272572726427270272702727627283272892729827304273112731827320273262733327341273422734827355273632736527371273782738727388273942740127410274152742127428274372744427450274572746627474274802748827488274952750127509275102751127517275252752627530275362754427545275502755627564275662757027576275842758627594276002760827611276182762427632276352764327649276572766127668276742768227687276892769527703277082771227718277262773127736277422775027756277602776627774277802778927795278032781027814278202782827835278402784627854278622786627872278802788927889278952790327912279132791927927279362793827944279532795327954279602796927969279762798227991279922799428000280092801028013280192802828030280322803828047280492805728063280722807528078280842809328096281002810628115281192812228128281372814228142281482815728162281632816928178281832818528191282002820628207282132822228228282362824228251282582826128267282762828328287282932830228310283132831928328283372833728343283522836128368283742838328392284002840728407284072841428421284212842228427284342843428435284432845028450284512846028467284672846928477284842848428487284932850028500285042850728514285142851828522285292852928534285372854428544285502855228559285592856528568285752857528581285852859228592285992860228609286092861728619286262862628634286432865028650286592866028667286672867628677286842868428693286942870128701287102871328720287202872928734287412874128750287552876228762287712877628783287832879228800288072880828808288082881528816288162881628823288242882428824288312883228832288412884828849288502885128858288592886028861288682886928870288722887928880288812888728894288952889628904289112891228913289212892828929289312893128938289392894128942289492895028952289552896228963289652896828975289762897828983289902899128994289962900329004290072901129018290192902229026290332903429037290442905129052290552906429071290722907629077290842908529089290902909729098291022910729114291152911929125291322913329137291452915229153291572916529172291732917829180291872918829193292022920929210292162921729224292252923129232292392924029246292522925929260292662927529282292832929029291292982929929306293072931429315293222932829335293362934429349293562935729365293722937929380293882939529402294032941229415294222942329432294402944729449294492944929456294582945829458294652946729467294742948129483294832949229499295012950229503295102951229513295142952129523295242953229539295412954329546295532955529557295622956929571295732957829585295872959029593296002960229605296092961629618296212962729634296362963929645296522965429658296622966929671296762967829685296872969229696297032970529710297142972129723297292973229739297412974729753297602976229768297762978329785297912979929806298082981529822298292983129839298452985229854298622987029877298792988729896299032990529913299222992929931299402994629953299552996429972299792998129990299993000630008300173002630033300363003630044300513005430055300553006230065300663006730074300773007830080300873009030091300983010530108301093011830125301283013030130301373014030142301443015130154301563016130168301713017330180301873019030192302003020730210302133021430221302243022730230302373024030243302483025530258302613026730274302773028030289302963029930303303103031730320303243033330340303433034830348303553035830363303673037430377303833038430391303943040030403304103041330419304233043030433304393044730454304573046430470304773048030487304953050230505305123052130528305313053930543305503055330561305693057630579305883058830595305983060730608306153061830627306343064130645306453064530652306563065630658306653066930669306723067930683306843068430691306953069630698307053070930710307143072130725307263073130738307423074430746307533075730760307613076830772307753077830785307893079230796308033080730811308123081930823308283082830835308393084430846308533085730862308653087230876308823088230889308933089930908309153091930926309273093430938309453094730954309583096630966309733097730985309913099831002310103101831025310293103731046310533105731066310733108031085310853108831095311003110031105311123111731117311233113031135311363114031147311523115431156311633116831170311743118131186311883119331200312053120831212312193122431227312363124331248312523125331260312653126931271312783128331288312893129631301313063131331320313253133031339313463135131357313573136431369313753138431391313963140331408314153142031427314343144131446314533146231469314743148131490314973150231510315123151931524315323153631543315483155631562315693157431582315883159531600316093160931616316213163031632316393164431653316573166431669316783168231689316953169531695317023170831708317103171731723317233172731734317403174031745317523175831758317663177331779317803178031787317933179431796318033180931810318133182031826318273183431841318473184831857318643187031872318733188031886318883189031897319033190631906319133191931922319243193131937319403194431951319573196031966319733197931983319843199131997320013200432011320173202132026320333203932043320503205732063320683207232079320853209032096321033210932114321223212932135321413214132148321543216032169321763218232189321903219732203322103221332220322263223332239322463225232260322623226932275322833228732294323003230832314323213232732335323443235132357323663237332380323863239532404324113241832418324193242632433324333243832445324523245232459324663247332473324823248932496324973249832505325123251332518325253253232534325383254532552325543256032567325743257632584325913259832601326043261132618326213262532632326393264232648326553266232665326733268032687326913269432701327083271332713327203272732732327343274132748327533275732764327713277732777327843279132797328013280832815328213282732834328413284732855328623286932876328803288732894329023290332910329173292532928329353294232950329553296232969329783298032987329943300333007330143302133030330363304333050330593306733074330823308233087330943310233103331073311433122331233312933136331443314533153331603316833170331763318333191331933320133208332163321933219332263323433237332393324633254332583325833265332733327733284332913329933303333123331933327333323333333340333483335433354333613336933375333793338633394334003340633413334213342733435334423345033457334643347133479334873349133498335063351433520335273353533543335523355933567335753358433591335993360833611336183362633635336403364733655336643367233679336873369633705337123372133721337213372833737337373373933746337553375533760337673377633776337823378933798337993380033807338163381733820338273383633837338433385033859338603386833875338843388533894339013391033912339133392033929339313393533942339513395333959339663397533978339823398933998340013400734014340233402634035340423405134055340573406434073340773408134088340973410134107341143412334127341363414334152341573415934166341753418134182341893419834204342073421434223342293423534242342513425834258342653427434281342873429434303343103431834325343343434234343343503435934367343733438034389343973440334410344193442734435344423445134460344613446834477344863449234500345003450034505345133451334513345203452834528345293452934537345373453834544345523455234554345563456434564345663457034578345783458034587345953459534598346023461034610346133461834626346263462934636346443464434648346483465634656346603466734675346753468034686346943469434699347073471534715347213472234730347303473634745347533475334760347653477334773347803478734795347953480334803348113481134819348283483634836348453484534853348533486234864348723487234881348873489534895349043491034918349183492734933349413494134950349583496634967349673496934977349783497834980349883498934989349983500635007350083500935017350183501935024350323503335034350403504835049350503505935067350683507035071350793508035082350873509535096350983510435112351133511635117351253512635129351323514035141351443515135159351603516335172351803518135185351863519435195351993520235210352113521535222352303523135235352443525235253352583526535273352743527935288352963529735303353063531435315353213532735335353363534235348353563535735363353713537935380353873538935397353983540535410354183541935427354293543735438354463545035458354593546735475354833548435493354953550335504355133551835526355273553635543355513555335553355543556235564355643556935577355793558035580355883559035591355933560135603356043561035618356203562235623356313563335635356383564635648356503565535663356653566735676356843568635689356933570135703357073570935717357193572335727357353573735741357493575735759357643576835776357783578335790357983580035805358143582235824358303583335841358433585035850358583586035867358673587535877358843588635894358963590335909359173591935927359303593835940359483595735965359673597635977359853598735996360013600936012360123601536023360263602636030360383604136041360473605536058360593605936067360703607136079360873609036092360983610636109361113611936127361303613336135361433614636150361513615936162361663617136179361823618636193362013620436209362113621936222362273622936237362403624536247362553625836263362673627536278362833629236300363033630836317363253632836334363403634836351363573636536373363763638336386363943639736404364083641636419364263643336441364443645136460364683647136479364833649136494365023650836516365193652736535365433654636555365553656336566365753658036588365913660036607366153661936619366253663336637366373664536653366573665836661366693667336674366803668836692366943669536703367073670936712367203672436726367343674236746367493675136759367633676636772367803678436787367953680336807368113681436822368263683036838368463685036854368633687136875368803688136889368933689836904369123691636922369233693136935369413695036958369623696936970369783698236989369953700337007370153701637024370283703737037370453704937058370603706837072370813708837096371013710137104371123711737117371263713437139371403714137149371543715537161371693717437176371793718737192371943720037208372133721537223372313723637239372423725037255372593725937267372723727637283372913729637300373093731737322373273733137339373443735037352373603736537371373773738537390373963740437412374173742437427374353744037448374503745837463374713747437482374873749537500375083751337522375223753037535375443755337561375673756737571375793758537585375913759937605376063760837616376223762337625376333763937640376443765237658376593766537673376793768137683376913769737699377013770937715377183771937727377333773637739377473775337756377653777337779377833778337791377973780137809378173782337828378283783637842378473785337861378673787237880378883789437900379033791137917379233792837936379423794937950379583796437971379753798337989379963800338011380173802438033380413804738055380603806838074380823809038098381043811338116381243813038139381443815238159381593816038168381753817538180381883819538195382023821038217382173822638234382413824238247382553826238264382643827238279382813828138289382963829838300383083831538317383253833338340383433834638354383613836438369383773838438387383943840238409384133841638424384313843538443384513845838463384703847838485384903849938507385143852038525385333854038547385483855638563385703857838586385933860138601386093861638624386303863838645386543865738665386723868138689386973870538705387053871338721387213872738735387433874438748387563876438765387713877938787387883879638804388123881438818388263883438837388403884838856388593886338871388793888238888388963890438908389103891838926389313893238940389483895338956389643897238977389823899038998390043900539013390213902839028390363904439051390603906839076390843908539093391013910939117391253913339141391493915739165391743918039188391963920539213392213923039230392353924339252392523925739265392743927539279392873929639297393033931139320393223932539333393423934439348393563936539368393683937639385393883939039398394073941039419394273943639440394413944939458394623946839476394853948939497395053951439519395243953239541395463955439562395713957739579395873959639602396063961439623396303963139639396483965539660396683967739684396913969939708397153972439732397413974939755397633977239781397813978939798398073980939817398263983539839398483984839848398493985839858398583986339872398723987239881398903989039891398923990139901399023991039919399193992139924399333993339935399403994939949399513995839967399673997039974399833998339986399954000440004400084000940018400184002240025400344003440039400394004840048400534005840067400674007340073400824008240088400904009940099401054011440123401234013040135401444014440151401594016840168401764017640185401854019340200402094020940218402214023040230402394024540254402544026340271402804028140281402864029540296402974029840307403084030940316403254032640327403364034540346403484035440363403644036740370403794038040383403904039940400404034041240421404224042640432404414044240447404504045940460404654047240481404824048740496405054050640512405184052740528405354053940548405494055640560405694057040577405834059240593406014060440613406144062340624406334063440643406524066140663406634066440673406754067540683406924069440695407014071040712407144071840727407294073140737407464074840751407544076340765407694077140780407824078640793408024080440808408174082640828408334084040849408514085640863408724087440880408804088940891408974089940908409104091740917409264092840935409354094440946409534095640965409674097440979409884099040998410014101041012410204102441033410354104341048410574105941067410744108341085410944109941108411104111941125411344113741137411424115141154411544116141170411734117441179411884119141192411994120841211412124121941228412314123241241412504125341255412624127141274412764128541294412974130041300413094131241315413174132641329413334133341342413454134941351413604136341368413694137841381413864138941398414014140741408414174142041426414304143941442414484145241461414644147041476414854148841495414994150841511415184152541534415374154441553415624156541573415744158341586415944160341612416154162441627416364163941648416514166041663416724167741686416904169041693417024170641706417134172241726417264173441743417474174841748417574176141762417704177941783417854178741796418004180241810418194182341826418264183541839418424185041859418634186741870418794188341887418944190341907419114192041929419334193841945419544195841964419664197541979419854199242001420054201142020420294203342040420474205642060420684207142080420844209242098421074211142119421274213642140421494215542164421694216942172421814218642186421904219942204422044221042219422244222542229422384224342245422464225542260422624226642275422804228242288422974230242305423094231842323423274232842337423424234642350423594236442368423744238342388423934239742406424114241742419424284243342439424424245142456424624246742476424814248842491425004250542513425144252342528425364254042549425544256242568425774258242591425954260442610426104261242621426274262742632426414264742647426544266342669426704267542684426904269242696427054271142713427184272742733427354274242751427574276042765427744278042784427884279742803428074281442823428294283342842428514285742862428694287842884428904289642905429114291842920429294293542942429464295542961429694297242981429874299542998430074301343021430284303743043430514306043069430754308443092431014310743116431244313343140431404314443153431604316043166431754318243183431884319743204432054321143220432274322843235432444325143252432614327043277432794328743296433034330543314433234333043333433414335043357433614336143370433774338143390433994340643411434124342143428434334343543444434514345643460434694347643482434854349443501435074351243521435284353543537435464355343560435644357343580435884359143600436074361543621436304363743646436474365643663436724367543684436924369243694437034371143711437164372543733437344373643745437534375443758437674377543777437804378943797437994380643815438234382643829438384384643849438544386343871438754387943888438964390043909439184392643931439344394343951439564396143970439784398443988439974400544011440204402944037440444405044059440674407444082440914409944107441144412344131441404414244151441604416044160441694417844178441804418944198441994420044209442184421944226442354424444246442494425844267442694427444283442924429544299443084431744321443214433044339443434435244361443704437544376443854439444400444004440944418444244443144440444494445644456444654447444481444834449244501445094451044519445284453644545445544456344572445724458144590445994460144602446024460244602446034460444604446044460444613446144461444614446154461844619446194461944620446254462644626446264462844632446334463344633446364463944640446404464044643446474464844648446484465144657446584465844658446624466744668446684466844673446774467844678446784468444687446884468844688446944470044701447014470144707447134471444714447144472044726447274472744727447334474244743447434474344750447524475344753447534476044762447634476344763447704477244773447734477344780447854478644786447864479344801448024480244802448094481744818448184481844825448344483544835448354484344843448444484444844448524485544856448564485644864448674486844868448684487644880448814488144881448894489844899448994489944908449104491144911449114492044922449234492344923449324493544936449364493644945449534495444954449554495544956449574495744958449584495944960449604496144961449644496544965449664496644972449734497344974449744498344984449844498544985449944499544995449964499744998449994499945000450014500945010450104501145013450144501545015450164501845019450204502045021450234502745028450284502945031450354503645036450374503945046450474504745048450504505745058450584505945062450624506345063450644506745075450764507645077450814508245083450834508445088450894509045090450914509545100451014510145102451064511345114451144511545120451204512145121451224512745127451284512845129451344513845139451394514045146451484514945149451504515645161451624516245163451694517445175451754517645183451834518445184451854519245198451994519945200452074521645217452174521845225452344523545235452364524445249452504525045251452594526445265452654526645274452824528345283452844529245300453014530145302453114531545316453164531845318453194532045320453224532245326453274532745329453294533345334453344533645337453384533945339453414534245348453494534945351453524536145362453624536445365453744537545375453774537945386453874538745389453914539845399453994540145404454044540545405454074541045410454114541145413454164542445425454254542745430454384543945439454414544545446454474544745449454534545445455454554545745461454704547145471454734547845485454864548645488454944549445495454954549745503455034550445504455064551245521455224552245524455314553345534455344553645543455484554945549455514555845563455644556445566455744557845579455794558145590455904559145591455934560245605456064560645608456174562145622456224562445633456374563845638456404564945657456584565845661456614566245663456634566645666456684566945669456724567245674456754567545678456794568045681456814568445685456894569045690456934569445699457004570045703457044571045711457114571445716457184571945719457224572445729457304573045733457354574145742457424574545747457554575645756457594576245764457654576545768457714577645777457774578045783457894579045790457934579645805458064580645809458124582145822458224582545829458314583245832458354583945842458434584345846458504585645857458574586045864458704587145871458744587845887458884588845891458964589645897458974590045905459084590945909459124591845919459204592045923459294593345934459344593745943459484594945949459524595845967459684596845971459784598145982459824598545992459984599945999460024600946016460174601746020460284602946030460304603346041460494605046050460534606246063460644606446067460764607846079460794608246091460984609946099461034610346105461064610646110461104611546116461164612046120461264612746127461314613246134461354613546139461404614346144461444614846149461554615646156461604616146168461694616946173461754617946180461804618446186461904619146191461954619746204462054620546209462114621946220462204622446227462324623346233462374624146244462454624546249462534625946260462604626446268462754627646276462804628546290462914629146295463014630146302463024630646312463154631646316463204632646330463314633146335463424634446345463454634946356463654636646366463704637846380463814638146385463934639646397463974640146410464124641346413464174642646433464344643446439464394643946440464404644546445464474644... 

612131516192025263233424444465153596264677074768084889296102107108113116121130136138144148154161168168175179186192200200208212220228237239248254255255257258258265266266274275276279280281287288290291292295295296299305306309317318322326327331339340345349350356357358364372373379387388395400401408417418426432433442444446446446448448448450450458460461463465467467469471479481484491493496505507511519521526530532537542544549554556561568570575583585590598600606611613619625627633639641648652654661666668675681683690699701709709711719720722730737739747755757766766768777778780789791793802807809818823825834840842851860863863868871871877880880889892893900903904912915917919922924930933935942945948949952955964967971971974978983986990999100210071007101010151021102410291036103910441052105510611065106810751077108010871090109311001109111211201127113011381146114911581163116711671167117111711172117611761184118811891196120012011209121312151221122512281230123412371240124412481250125412581262126612701276128012841290129412981304130813121320132413281336134013441352135613611361136513701370137413791387139113971397140114071408141214181421142514311436144014461453145714631470147414801489149315001501150515121521152515331534153815461550155415631564156815771580158415931599160416041609161416141621162616271628163316341643164816501651165616581664166916721672167716801682168716901697170217061708171317171721172617301739174417491753175817631769177417801781178617921800180518121812181718241829183418421845185018581863186818771877188218911899190519051905191119111917192319241925193119321935194119421951195719591964197019721979198519881991199720002009201520192020202620302038204420492051205720622066207220782079208520912097210321092117212321302135214121492150215621642167217321822182218821972206221322132214222122212230223722372246225322542255226222632272227922812281228822902292229923022302230923122319232623292338234523492356236323682373238023852392239924052411241824242430243724432451245824652472247924862494250125092509251625242533254025492550255725662569257725772579258725872594260226022611261926202628263626382641264926512656266426672671267926832683269126952697270527102711271927252725273327392742275027562759276727732781278927962797280528122813282128282835284328512851285928672867287528832892290029092911291929282931294029402940294929492952296129612965297429752977298629872992300130023009301830193028303730393041305030523056306530683068307730803083309230953100310931133115312431283133314231463154316331673176318531903192320132063211322032263230323932453252326132683269327832853286329533023306331533223330333933473350335933673373338233913391340034093418341934193419342134223422342234293430343034303437343834383439343934403440344134463447344734493450345134513453345734583458346034693470347034733479348034803483349234933493349735013502350235073509351035103515352035213521352735283529352935353540354135413547355535563556356335683569356935763583358435843592359235933593360136083609360936183618361936193628363136323633363336333634363536353644364536463647364936503651365336533654365536573664366536663669366936703671367436823683368436883694369536963700370937103711371637243725372637323735373637373743375037513752375837653766376737733780378137823789379037913792379938003801380238093811381238133820382638273828383538413842384338513855385638573865387338743875388338923893389439033909391039123912391239133915391539163917391939193928392939313932393539363938393939443945394739493950395139533955396039613963396539733974397639793979398039823985398939903992399540024003400540094009401040124016402040214023402740354036403840434043404440464051405540564058406340714072407440804082408340854091409740984100410741074108411041174123412441264134413441354137414541494150415241614161416241644173417741784180418941974198420142014205420642094209421742184221422242244225422842304230423142344236424042414244424642544255425842614267426842714275427542764279428342874288429142964298429943024307431343144317432343244325432843344335433643394345435043514354436143614362436543724372437343764383438743884391439844074408441144194426442744304439444044414444445344604461446444734480448144854485448644874491449144984499450345034511451245164517451945204524452545334534453845404541454245464548455345544558456145624563456745704576457745814585458545864590459446004601460546104613461446184623463046314635464146444645464946564656465746614668467246734677468546854686469046984707470847124721472447254730473047304731473647364737473847434743474847494754475547574758476347654766476747724774477947804785478847914792479748004804480548104813482148224827483148374838484348484848484948544859486348644869487548784879488448904894489549004906491449154920492749344935494049484948494949544962496649674972498149844985499049995008500950155015501950205026502650305031503750375046504750535054505850595065506650705071507750795080508150875089509550965102510451115112511851205128512951355138514151425148515151555156516251665169517051765180518851895195520052005201520752125213521452205225523152325238524352515252525852645268526952755281529052915297530453065307531353205322532353295336534353445350535853585359536553735375537653825390539753985404541354135414542054295436543754445444544654475454545454605461546854685476547754845485548854895496549755045505551255145515551655235525553155325539554255425543555055535562556355705574557855795586559055995600560756125615561656235628563656375644565056535654566156675676567756845691569556965703571157115712571957275728572957365744575057515758576757695770577857785778577957875787579257935801580258045805581358145816581758255826583358345842584458485849585758595868586958775880588458855893589758995900590859125917591859265931593159325940594559535954596259685971597259805986599459956003601060176018602660336040604160496057605960606068607760786079608760966105610661156115612061216130613061356136614561456150615161606161616261636172617361746175618461856192619362026204620762086217621962236224623362356240624162506253625462556264626762696270627962826287628862976301630263036312631663186319632863336334633563446349635663576366637163806381639063966400640164106417641764186427643464366437644664536462646364726480648564866495650365116512652165306531653265416550655765596559655965596561656165616570657265726573657865806580658165906592659265946594659665966598660466066606660966096611661166146622662466246628663266346634663866476649664966546655665766576662666966716671667766796681668166876693669566956702670467066706671367216723672367306739674167416749675467566756676567666768676867776784678667876787679067926793679368026804680568066813681568166818682168236824682768276829683068336838684068416845684668486849685368626864686568706870687268736878688468866887689368976899690069066913691569166923692669286929693769396941694269506952695469556963697169736974698369906992699469947000700270047005700870107012701370167018702070217025702770297031703270347036703870397041704370467046704870507053706070627064706770747076707870827088709070927097710071027104710971137115711771227127712971317137713971417143714971527154715671637165716771697176718571877189719771987200720272107211721372157223723172337235724472447246724872577259726172637272728172837286728672887290729372937295729773007300730973117314731573177319732273237332733473377339734573477350735273617363736673697377737973827386739173937396740074097411741474197425742774307436743974417444745074587460746374707473747574787486748674887491749975047506750975187520752275257534754375457549754975547556756075617562756475687569757775797583758575897591759575987598760076047607761476167620762476277629763376387639764176457650765876607664767076757677768176887690769276967703771277147718772677327734773877477751775377587758775977617766776677757777778277827791779377987799780578077812781478187820782578287831783378387842784278447849785378627864786978747874787678817886789378957900790679127914791979257934793679417948795579577962796979767978798379907999800180068014802180238028803680438045805080598063806580718071807380758081808180838085809180928093809581018102811181138119812181218123812981318139814181478150815681588164816781758177818381878188819081968200820982118217822282238225823182368242824482508256826082628268827482818283828982968297829983058312832183238329833783408342834883568359836183678376837783798385839483998401840784168423842584328432843784398446844784478449845684578458846084678468847784798486848884938495850285048509851185188521852485268533853685458547855485588560856285698574857485768583858885948596860386088617861986268632863986418648865586588660866786758676867886858693870287048711872087268728873587448751875387618761876687688776877787798781878987908793879588038805880688088816881888268828883688398844884688548858886188638871887688778879888788928893889589038908891789198927893389408942895089568963896589738980898589878995900390069008901690259027902990389038903890409049904990589060906990709071907390829083909290949103910591139115912491279128913091399143914391459154915891589160916991739173917591849188919791999208921292219223923292379239924192509256925792599268927492759277928692929297929993089315931993219330933793429344935393609367936993789386939293949403941194189420942994389440944394439443944494479447944794499452945294529461946494649465947394769476947794869489948994919499950295029505951295159515951895279530953095349535953895389543954395469546955195539556955695619567957095709576958195849584959095989601960196079615961896189625963296359635964396439646964696549657966096609669967196749674968396889691969296929692969596969696970597089709971097139716971797189723972697279729973397369737973997479750975197549757976097619765976797709771977597819784978597909794979797989804980798109811981798249827982898359841984498459853985898619862987198719874987598849886988998919891989298959897989799039906990899099910991399159917991799209922992499309933993599389938994199439946995599589960996499699972997499799981998499869992999399969998100041001210015100171002310032100351003710044100521005510057100651007010073100751008310089100921009410103101081011110114101141011610119101221012210128101311013410135101401014310146101481015010153101561015910159101621016510168101771018010183101871019410197102001020510205102081021110216102251022810231102371024410247102501025710260102631026610274102761027910282102911029210295102981030710308103111031510315103151031810322103221033110334103381033910347103501035410355103641036710371103721038110384103881038910398104011040510407104081041110415104171041910422104261042810430104331043710439104411044410448104501045910462104661046910469104721047610479104791048210486104891048910492104961049910506105091051310516105241052710531105341054210545105491055210561105641056810571105801058310587105911059110594105981060210602106051060910613106141061710621106251063110634106381064210649106521065610660106671067010674106781068710690106941069910699107021070610711107121071510719107241072510728107321073710740107431074710752107591076210766107711077910782107861079110799108021080610812108121081510819108251083410837108411084810848108511085510862108621086510869108761087910882108861089310902109051090910917109171092010924109321093210935109391094710950109531095710966109681097110975109841098710990109941100311006110091101311022110291103211037110371103811041110461104611048110511105611056110581106111066110661107311076110811108111090110931109811099110991110211107111081110811111111161111711122111251113011132111321113511140111421114311146111511115311154111571116211164111711117411179111811118911192111971119911208112111121611218112271123011235112381124311246112511125511255112581126311267112681127111276112801128111284112891129311300113031130811313113181132111326113311133711340113451135011356113591136411370113731137611381113871139511398114031140911418114211142611432114411144411449114561146211465114701147811481114841148911497115011150411509115171152111524115291153811540115431154811557115591156211567115761157911582115871159611599116021160811608116091161211618116181162611629116351163511644116471165311653116621166511671116721168011683116891169011698117011170711708117171172011726117271173611739117451174711755117581176411767117681177111777117801178211785117911179411797118001180611809118121181511821118241182711830118361183911843118461185211855118601186311869118721187711880118861189011894118971190311907119121191511921119251193111934119401194411951119541196011964119731197611982119871198711990119961200112002120051201112016120191202212028120331203612039120451205012054120571206312068120731207612082120871209412097121031210912113121161212212128121331213612142121481215412157121631216912178121811218712193122021220512211122181221812221122271223412235122381224412251122551225812264122721227412277122831229112294122971230312311123151231812324123321234012343123491235812362123651237112380123851238812394124031240912412124191241912419124221242912429124381244112448124491244912452124591246012461124641247112472124781248112488124901249412497125041250612511125141252112523125291253212539125421254412547125541255712562125651257212575125811258412591125941260112604126111261512618126211262812633126331263612643126481264912652126591266412666126691267612681126891269212699127051271012713127201272612732127351274212748127551275812765127721277512778127851279312793127961280312811128121281512822128301283212835128421285012859128621286912878128781288112888128971289812901129081291712919129221292912938129471295012958129581295812961129691296912970129731298112981129831298612994129941300313006130141301513016130191302713028130301303313041130421304513048130561305813058130611306913071130771308013088130901309713100131081311013118131211312913132131371314013148131521315313156131641316813170131731318113185131881319113199132041320513208132161322113226132291323713242132481325113259132641327113274132821328813293132961330413311133141331713325133321333613339133471335413359133621337013378133811338413392134011340313406134141342313426134291343713446134501345313462134621346513468134771347713486134891349813499134991350213511135121351413517135261352713529135321354113542135441354713556135571356013563135721357313578135811359013591135961359913608136091361513618136271362813635136381364713648136571366013669136701367913682136911369313701137041371313715137241372713736137391374013743137521375513757137601376913772137771378013789137921379813801138101381313821138241383313836138451384813857138611386513868138771388113886138891389813902139091391213921139251393413937139461395113951139541396313968139691397213981139861398913992140011400614011140141402314029140291403214041140471404814051140601406614069140721408114087140921409514104141111411414117141261413314137141401414914156141621416514174141811419014193142021420914218142211423014238142381424114250142581426014263142721428014285142881429714305143141431714326143351433514338143471435614358143611437014379143841438814388143881439014394143941439414397144011440114401144061441014410144101441914423144231442314432144361443614437144371444114441144421444414448144481444914455144591445914461144611446514465144671446814472144721447414477144811448114483144901449414494144971450214506145061450914515145191451914522145301453414534145381454114545145451454914552145561455614560145641456814568145721457814582145821458714588145921459214597146021460614606146111461714621146211462614634146381463814644146471465114651146581465914663146631467014672146761467614683146871469114691146991469914703147031471114713147171471714725147281473214732147401474514749147491475814759147631476314772147791478314783147921480014804148051480514805148091481014810148171482114822148221482914833148341483414842148461484714848148481485214853148541486114865148661486814871148751487614878148821488614887148891489514899149001490314907149111491214915149191492314924149271493214936149371494014947149511495214956149611496514966149701497914983149841498914989149931499414999150011500515006150121501315017150181502415025150291503015036150381504215043150491505315057150581506515068150721507315080150871509115092150991510715111151121512015120151241512515133151421514615147151561516315167151681517715185151891519115191151921519615198151981519915203152051520515210152141521615216152221522615228152281523715241152431524315252152561525815259152661527015272152731528115285152871528915290152941529615298153001530415306153081531215316153181532015325153291533115333153411534515347153501535015354153561535915359153631536515368153691537315375153781538215386153881539115397154011540315407154071541115413154171541815422154241542815432154361543815442154481545215454154591546315467154691547415479154831548515490154981550215504155101551115515155171552315530155341553615542155501555415556155631556415568155701557715582155861558815595156001560415606156131561915623156251563215641156451564715655156581566215664156721567915683156851569315701157051570715716157171572115723157321573815742157441575315761157651576715776157851578915792157921579415798158011580115808158121581515816158191582315826158271583115835158381583915846158501585315855158581586215865158671587115875158781588015885158891589215894159021590615909159121591615920159231592615931159351593815941159471595115954159571596615970159731597715982159861598915994159941599816001160061600716011160141601916023160271603016036160371604116044160501605116055160581606416066160701607316079160841608816091160981610016104161071611416116161201612316130161331613716140161471615316157161601616816171161751617816186161931619716200162081621616220162231623216233162371624016249162571626116265162651627216276162801628016288162921629616297162981630216306163071631616320163241632616332163361634016342163491635316357163601636016364163681637116380163841638816392163921639616400164041640516409164131641716421164251642916434164371644116445164511645116455164591646516466164701647416480164841648816492164991650216506165101651816518165221652616534165351653916543165511655616560165641657216577165811658516593165991660316607166151662216626166301663916640166441664816657166581666216666166751668316687166911670016709167131671816718167211672516730167301673316737167421674316744167481675316754167561676016765167661677216776167811678216789167931679816799168081681216817168191681916823168281683016834168381684316845168501685416859168621686516869168741687716881168851689016893169011690516910169141691416918169231692716928169321693716941169431694716952169561696216966169711697516983169871699216997170001700417009170141701817022170271703217040170441704917055170561706017065170711707317077170821708817091170951710017106171131711717122171291712917133171381714517151171551716017167171741717817183171911719217196172011720917214172181722317231172361724017245172531725917263172681727717277172811728617295172991730317309173091730917313173191731917320173241733017330173351733917345173461734617350173561735717360173641737017371173751737917385173861739417398174041740617409174131741917422174221742617432174351743617440174461744917454174581746417468174691747317479174831748717491174971750117506175101751617520175291753317539175441755017554175601756517571175751758117586175931759717603176091761017614176201762617634176381764417651176531765717663176701767317677176831769017697177011770717715177201772417730177381774317747177531776117767177711777717786177861779017796178051781317817178241782417831178351784217842178501785417861178621786417868178751787717878178821788917891178951789917906179081791317917179241792717927179311793817941179411794517952179551795517959179661796917970179741798117984179901799418001180041801018014180211802418031180351804218045180531805718064180681807118075180821808618089180931810018104181121811618123181271813618140181471815218156181601816718172181771818118188181931820018204182111821618224182281823518241182441824818255182611826618270182771828318289182931830018306183131831718324183311833318337183441835118355183591836618373183821838618393184011840118405184121842018425184291843618444184521845618463184721847318477184841849318495184991850618515185221852618534185341853418538185461854618550185541856218562185671857118579185801858018584185921859318596186001860818610186111861518623186251862718631186391864118648186521866018663186641866818676186791868618690186981870118709187131872118725187281873218740187441875218756187641876818776187801878818792188011880518813188181882218826188341883918848188521886018866188691887318881188871889118895189031890918918189221893018937189421894618954189611896918973189811898818997190011900919017190211902519033190421904219046190541906319067190711907919088190931909719106191061910619110191191911919125191291913819139191431914719156191571916219166191751917719177191811919019192191991920319212192151921919223192321923519240192441925319257192571926119270192741928219286192951929919307193111932019324193331933719346193511935519359193681937419376193801938919395194011940519414194201942719431194401944719449194531946219470194711947519484194921949619500195091951719522195261953519544195441954819557195661957519580195801958019588195931959319593196021960719607196081961319618196181961919624196291962919630196391964419644196461964619651196511965319659196641966419666196721967719677196801968019685196851968819689196941969419697197041970919709197121971919724197241972819734197391973919743197501975519755197601976319768197681977319777197821978219787197951980019800198051981419819198191982519830198351983519841198471985219852198591985919864198641987119872198771987719884198911989619896199031991219917199171992519925199301993019938199391994419944199521995919964199641997219981199861998619995200002000520005200142002020025200262002620028200332003420034200382004320044200452004620051200522005320055200602006120062200702007520076200782007820083200842008620094200992010020102201112011620117201202012520130201312013420142201472014820152201532015820159201632016520170201712017520183201882018920194201952020020201202062021120216202172022220228202332023420240202422024720248202542026020265202662027220281202862028720294202942029920300203072031320318203192032720327203322033320341203492035420355203632037220377203782038720392203972039920399203992040420406204062040620411204132041320414204192042120421204282043320435204362043820443204452044620449204542045620457204612046620468204702047020475204772047920484204892049120494204952050020502205052050720512205142051720525205302053220536205392054420546205512055220557205592056420566205712057320578205862059120593205992060320608206102061620624206292063120637206462065120653206602066520670206722068020681206862068820697206972070220704207132071420719207212073020737207422074520745207492075420757207572076320768207712077120778207832078620787207902079520798208002080020805208082081020812208172082020822208252083020833208352084420849208522085520861208662086920873208762088120884208882089220897209002090520905209102091320918209262093120934209392094720952209552096020969209742097720983209882099320996210032100621011210142102121026210312103421041210472105221055210632106521070210732108221082210872109021099211062111121114211232113121136211402114021144211492115321154211572116221166211672117021175211792118021184211892119321195211952120021204212062121521220212242122721233212382124221245212522125721261212652126921274212782128221286212912129521299213052131021314213182132521330213342133921343213482135221357213612136621370213762137621381213852139121392213972140121407214152142021424214302143821443214472145421460214652146921476214832148821492215002150421509215132152121526215312153521543215512155621560215682157721582215862159521601216062161021619216262163121636216362164021645216502165021655216602166521666216682167321678216792168321688216932169421699217042170921710217162172121726217282173121736217412174321748217532175821761217622176721772217752177721782217872179021799218042180921813218152182021825218292183121836218412184521848218532185821863218632186821873218782188121886218912189721899219042190921915219182192321928219352193521940219452195221956219612196621973219812198621991219982200722012220172202522031220362204122050220502205522060220692207822083220892208922089220942210022100221072211222118221192212122126221322213322138221432214922150221562216122167221692217222177221832218522193221982220422207222132221822224222272223422239222452224922253222582226422269222692227422280222852228822293222992230422308223132231922325223262233122337223432235022355223612236822374223792238522392223992240422410224182242222427224332244222443224482245422463224682247322479224882249422499225062250622509225142252122522225232252822535225362253722542225492255022552225572256422565225742257922586225882259522600226072260922617226222262922631226402264522652226552266122666226732267722681226862269322698226982270322710227152271622721227282273322741227462275322759227662277122778227842279322798228052281222812228172282422831228392284422851228582286622871228782288522893228982290522912229212292622933229412294822953229602296822975229802298722996229982300323010230192302223027230352303523036230412304923049230512305623064230642306823073230812308123086230912309923100231032310823116231172312123126231342313523141231462315423155231622316723175231772318223187231952319723203232082321623219232222322723235232382324223247232552325923261232662327423278232822328723295232992330723312233202332423333233382334623351233582336323371233762338523390233982340423412234172342523431234402344523453234602346723472234802348823488234932350123509235132351823526235342353923544235522356123564235692357723586235932359823606236152362423629236382363823638236432365223652236602366523674236752367723682236912369223699237042371323714237222372723736237382374423749237582376123762237672377623779237802378523794237972379923804238132381723817238222383123835238402384523854238592386223867238762388123885238902389923905239072391223921239272393523940239492395623957239622397123978239802398523994240022400224007240162402424030240352404424053240572406224071240802408524091240912409124094241002410024101241012410724107241082411524121241212412224130241362413624138241442415024150241532415624162241622416624166241722417224176241772418324183241872419624202242022420724214242202422024225242342424024240242462424624252242522425824266242722427224279242862429224292242992430724313243132432024329243352433524343243502435624356243652437124377243782437824383243892439024390243962440224403244042440924415244162441724422244282442924431244312443724438244402444124447244482445124451244572445824461244612446724468244712447624482244832448624492244982449924503245082451424515245192452424530245312453624536245422454324548245492455524556245622456224568245692457524576245822458324589245912459724598246042460724613246142462124623246292463024637246402464624647246542465824664246652467224677246832468424692246962470224703247112471624722247232473224734247402474124750247532475924761247612476324769247712477124775247812478324783247902479624798247982480624812248142481524822248282483024831248402484624848248502485324859248612486324867248732487524878248812488724889248922489724903249052490924909249152491724921249222492824930249352493524941249432494824951249572495924964249682497424976249812498624992249942500025004250102501225018250252503125033250392504825054250562506325063250692507125078250872509325095251032510525111251132512125128251342513625144251522515825160251692517625182251852518525186251922519525195251972520325206252062520925215252182521925221252272523025231252372524325246252472525525261252642526525274252802528325285252932529925302253052530825314253172532025324253302533325336253412534725350253542535825364253672537125380253862538925394254002540625409254142542125427254302543625442254482545125458254592546525468254762547625482254852549325494255002550325512255122551825521255302553625542255462554625546255522555625556255572556325567255682556825574255782557925586255922559625597256042561025614256152562325629256332563525642256482565225655256592566525669256722567825684256882569125698257042570825712257182572425728257332573625742257462575225754257602576425770257732577925783257902579225798258022581025810258162582025828258332583925843258512585725863258672587625881258872589225892258952590125906259072590825914259192592025922259282593325935259362594225947259502595025956259612596425965259712597625979259812598725992259962599726003260082601326013260192602426029260362604226047260522606126067260722607726086260922609726102261112611726122261272613626142261472615326154261602616526171261722617826183261892619026196262012620826208262142621926226262282623426239262462624826254262592626626269262752628026287262952630126306263142631426320263252633326333263392634426352263532635926364263732637326379263842639326395264012640626415264172642326428264372644126447264522646126465264712647626485264912649726502265112651726523265282653726545265512655726557265612656726573265732657926585265912659126597266032660926609266182662426630266302663926645266512665226653266592666526666266672667326679266802668426690266962669826700267062671226714267182672426730267322673626742267482675026758267642677026773267752678126787267902679426800268062680926813268192682526828268362684226848268522685926865268712687526884268902689626900269092691526921269262693026936269422694726952269582696426969269762698226988269932700027006270122701827020270262703227038270472705327059270662706727073270792708627087270932709927106271132711927125271322714127147271532716127162271682717427182271832718927195272032721027216272222723127234272402724627255272602726627272272812728627292272992729927301273072731427314273182732427331273312733727343273502735027356273622736927370273732737927386273882738927395274022740427407274132742027422274252743127438274412744127447274542745727466274722747927483274842749027497275012750227508275152751927528275342754127546275502755627563275682757427580275872759227598276042761127617276222762827635276412764727653276602766627674276802768727693277012770727714277212772827734277412774927753277592776627774277802778627793278012780827814278212782927836278422784927858278582786427871278802788227888278952790427907279132792027929279322793827946279462794827954279622796227966279722798027980279852799127999279992800528011280192802028023280292803728038280432804928057280582806428070280782807928087280932810128103281042811028118281202812328129281372813928143281492815728159281662817228180281822818928195282032820528214282202822828231282312823728245282482825128257282652826828276282822829028294282942830028308283122831328319283272833128336283422835028354283602836628374283782838628392284002840428413284192842728432284352844128449284552845728463284712847728481284872849528501285062851228520285272852728533285412854828548285542856228569285712857728585285922859528601286092861628624286302863828646286502865628664286722867828684286922870028707287132872128730287332873928747287562876328769287772878628795288012881028810288102881628825288252883128837288462884728850288562886528866288712887728886288872889328899289082891028913289192892828930289362894228951289532896128967289762897828987289932900229005290122901829027290302903929045290542905829059290652907429078290802908629095291002910029106291152912029122291282913729142291462915229161291662917129177291862919229195292012921029217292182922429233292402924329249292582926529269292752928429292292952930129310293192931929325293342934329345293512936029369293732937929388293972940129408294082940829408294152941529415294172942429424294242942829435294352943529440294472944729447294552946229462294632946329470294702947129473294802948029481294842949129491294922949829505295052950629514295212952129523295232953029530295322953329540295402954229547295542955429556295632957029570295722958129588295882959129592295992959929602296042961129611296142961829625296252962829634296412964129644296522965929659296622967129678296782968229683296902969029694296972970429704297082971429721297212972529731297382973829742297502975729757297622976229769297692977429777297842978429790297902979729797298032980529812298122981829822298292982929835298422984929849298562986029867298672987429880298872988729894299022990929909299172991929926299262993429942299492994929958299582996529965299742997629983299832999229999300063000730007300073001430015300153001730024300253002530029300363003730037300463005330054300553005830065300663006730072300793008030081300883009530096300983010030107301083011030117301243012530127301363014330144301473014830155301563015930166301733017430177301863019330194301983019930206302073021130214302213022230226302353024230243302483025030257302583026330267302743027530280302863029330294303003030330310303113031730322303293033030336303433035030351303573036630373303743038130387303943039530403304083041530416304243043130438304393044730456304633046430473304803048730488304973050530512305143051430514305213052330523305253053230534305353053530542305443054530546305533055530556305593056630568305693057430581305833058530588305953059730600306013060830610306133061630623306253062830633306403064230646306503065730659306633066730674306763068030686306933069530699307073071430716307213072830735307373074230751307583076030766307673077430776307823078530792307943080130803308103081230820308213082830830308383084130848308503085830864308713087330881308873089430896309043091230919309213093030930309373093930948309513095830960309693097230979309813099030995310023100431013310203102731030310303103031037310403104031040310473105031050310593106631069310703107131078310813108231086310933109631097311023110931112311133112031127311303113131140311473115031152311543116131164311663116931176311793118231184311913119431197312013120831211312143122131228312313123431243312503125331257312623126931272312763128331290312933129831298313053130831313313153132231325313313133231339313423134831351313583136131367313733138031383313893139831405314083141531422314293143231439314483145531458314663146831475314783148631492314993150231511315123151931522315313153431541315443155331559315663157031570315703157731581315813159031597316013160231603316103161431615316193162631630316313164031647316513165331658316653166931671316783168531689316923169231699317033170631712317193172331726317353174231746317503175131758317623176631770317773178131786317863179331797318023181031817318213182731827318343183831844318473185431858318653186531872318763188331886318933189731904319093191631920319273193531942319463195431960319673197131979319853199231996320043201232019320233203232033320403204432053320623206932074320743207832085320903209032096321033210832108321173212432129321303213832145321503215232152321593216432166321683217532180321823218732194321993220232206322133221832222322253223232237322413224632253322583226232271322783228332287322963230332308323133231732324323293233432340323473235232358323583236532370323763237732384323893239532397324043240932415324193242632431324373244532452324573246332472324793248432491324983250532510325173252632533325383254632549325563256132569325743258132586325943260332610326153262432625326323263732646326513265832663326723268032687326923270132709327163272232722327223272932735327353273932746327523275232759327663277232773327773278432790327913279732804328103281232812328193282532827328313283832844328463285332860328663286832877328843289032893328963290332909329123292032927329333293632945329523295832962329633297032976329803298532992329983300333003330103301633021330293303633042330483304833055330613306733071330783308433091330913309833104331113311633123331293313633143331503315633164331653317233178331863319433201332073321633216332233322933238332403324733253332623326833275332823328233285332923329933300333023330933316333173332133328333353333633344333513335833360333663337333380333833338533392333993340233406334133342033423334313343833445334493345633463334703347533476334833349033495334983350533512335173352533532335393354433552335593356633571335803358733594336003360133608336153362133627336343364133647336533366033667336743367933686336933370033707337143372133729337313373833745337533375533762337693377833779337863379333802338053381233819338283383633843338503385933868338753388333883338883389533903339033391033917339253392633928339353394333944339483395533963339643397233979339873398933989339963400434006340113401834026340283403634043340513405434055340623407034073340763408334091340943410234109341173412134123341303413834142341443415134159341633416734174341823418634195342023421034215342183422534233342393424134248342563426234266342733428134287342963430334311343183432234329343373434434348343553436334370343763438334391343993440034407344153442334429344363444434453344563446334471344803448534492345013450134501345083451734517345233453034539345403454234549345583455934563345703457934580345893459634605346073461234619346283463134635346423465134654346603466734676346803468134688346973470134709347163472534730347353474234751347563476334770347793478534787347943480334809348183482534834348413484734854348633487034878348853489434902349053491234921349303493034937349463495534964349723497234972349733498134981349813498734995349953499635000350083500835010350113501935019350213502435032350323503435042350503505035053350593506735067350713507435082350823508635091350993509935104351043511235112351173512635134351343514035143351513515135157351623517035170351773517835186351863519335194352023520235209352123522035220352273523235240352403524835249352573525735265352663527435274352823528535293352933530135306353143531435323353243533235332353413534335351353513536035363353713537135380353853539335394353943539535403354043540435406354143541535416354173542535426354273543035438354393544035449354573545835460354613546935470354723547335481354823548435487354953549635498355073551535516355193552035528355293553235541355493555035554355553556335564355683557535583355843558935589355973559835603356093561735618356233563135639356403564635650356583565935665356723568035681356883569335701357023570935716357243572535733357363574435745357533576035768357693577735785357933579435803358033581135812358213582735835358373583735837358453584735847358563586435866358673586835876358783587935886358943589635898359003590835910359123591535923359253592735932359403594235945359463595435956359593596535973359753597935981359893599135995359993600736009360143601436022360243602936035360433604536051360513605936061360673606936077360793608536093361013610336110361143612236124361323613336141361433615136154361623616436172361813618936191362003620636214362163622536232362403624236251362603626836271362713627636284362873628836290362983630136303363043631236315363173632036328363313633336342363503635336356363633637136374363783637836386363893639336395364033640636410364183642636429364343644036448364513645636465364733647636482364833649136494365003650736515365183652536531365393654236549365563656436567365743658336591365943660236607366153661836627366313663936642366513666036668366723667236673366813668536685366923670036704367053671136719367233672536728367363674036742367473675536759367623676436772367763677936781367893679336796368033681136815368183682736835368393684336849368573686136865368723688036884368883689536903369073691136920369283693236937369433695136955369603696736975369793698436992370003700437010370103701837022370283703537043370473705337061370693707337080370873709537099371063711537123371273713537141371493715337161371693717737181371903719337201372053721437219372273723237232372343724237247372473725137259372643726437273372813728637287372883729637301373023731037318373233732537326373343733937341373453735337358373603736637374373793738237385373933739837401374073741537420374243742937437374423744637453374613746637471374753748337488374933750137509375143752037520375283753337539375413754937554375603756937577375823758937593376013760637613376173762537630376373764337651376563766437667376753768037688376963770437709377183772237730377353774437750377583776437764377673777537781377813778937797378033780437811378193782537826378353784337849378513785737865378713787437876378843789037893379023791037916379203792137929379353793937947379553796137966379713797937985379903799838006380123801838018380263803238038380453805338059380663807138079380853809238098381063811238119381273813538141381493815438162381683817738180381883819538195381973820538212382123821638224382313823238233382413824838250382503825838265382673827338281382883829038298383063831338316383213832938336383403834438352383593836438365383733838038385383883839638403384093841038418384253843138432384403844738453384593846738474384803848838496385033851038516385243853138538385453855338560385673857638584385913859938600386083861538623386323864038647386563865638664386713868038683386913869838707387123872038728387283873138739387473874738752387603876838768387743878238790387903879838806388143881538821388293883738838388463885438862388643887038878388863888838896389043891238915389213892938937389403894938957389653896938973389813898938993389993900739015390203902439032390403904539053390613906939075390763908439092390983910139109391173912439125391333914139148391543916239170391773918439192392003920739216392243923239240392473925539263392723927439282392903929939302393103931839327393323934039349393493935239360393693936939377393853939439395394023941039419394203942939437394463944839455394633947239475394783948639495394993949939507395163952039522395303953939544395443955239561395663957239580395893959539598396063961539621396263963439643396503965339661396703967839678396863969539703397083971639725397333974039748397573976639771397803978039780397833979239792397923979839807398073980739815398243982439825398313984039840398423984739856398563985839865398743987439876398853989439894398973990539914399143991739925399343993439937399453995439954399583995839967399673997139980399893998939993400024001140011400164002440033400334003940039400484004840054400634007240072400794007940088400884009540096401054010540112401154012440124401324013440143401434015140154401634016340172401744018340183401924019640205402064020640209402184021940219402244023340234402354023840247402484024940254402634026440266402704027940280402824028940298402994030140309403184031940322403224033140332403354034440353403544035840361403704037140375403784038740388403924039740406404074041240416404254042640431404394044840449404544046240471404724047840478404874048840494405034051240513405204052340532405334054040543405524055340560405654057440575405834058740596405974060540613406224062340632406394064840649406584066740676406784067840686406954069740698407004070940711407134071440723407254072740730407394074140744407464075540757407604076740776407784078140790407994080140805408064081540817408224082240831408334083840844408534085540860408674087640878408834089240901409034090940917409264092840935409394094840950409574096240971409734098040987409964099841006410124102141023410324103441043410454105441061410704107241081410904109941102411024111041119411224112341128411374114041141411504115941162411644116541174411774118041180411894119241195412024121141214412184122041229412324123641240412494125241257412604126941272412784127841287412904129641303413124131541321413304133941342413494135741366413694137741383413924139541404414064141541418414274143141440414444144441447414564146041461414624147141475414764148441493414974149941499415084151241514415234153241536415394154741556415604156441564415734157741581415844159341597416014160441613416174162141624416334163741641416454165441658416624166941678416824168641693417024170641710417174172641730417344174341752417564176141763417724177641781417834179241796418014180341812418164182241823418324183641842418464185541859418654186941878418824188841893419024190641913419164192541929419364194241951419554196241968419774198141988419954200442008420164202242031420354204342052420614206542073420824209142095421044210542114421184212742136421454215042150421524216142166421664216842177421824218242187421964220142202422044221342218422194222442233422384223942244422534225842259422674227642281422834229042299423044230742307423164232142324423244233342338423414234542354423594236242367423764238142384423924240142406424094241742426424314243542438424474245242456424594246842473424774248342492424974250142507425164252142526425274253642541425464254942558425634256842574425834258842593425994260842613426194262042629426344264042647426564266142668426684267742682426894268942698427034271042716427254273042738427394274842753427614276542774427794278742791428004280542814428144282342828428374284542854428604286042861428704287642876428774288642892428924289942908429144291542920429294293542936429444295342959429604296842977429834298542990429994300543008430104301943025430284303343042430484305143056430654307143075430784308743093430974310043109431154311943125431344314043144431504315943165431704317443183431894319443201432104321643222432224323143237432434324343252432584326443273432824328843295432964330543311433184332243331433374334443348433574336343371433744338343389433974340543414434204342943430434394344543454434564346543471434804348243491434974350643508435174352343532435374354643552435614356743576435824359143597436064361343613436184362743634436344364243651436584365843667436764368343684436844369343700437014370443713437204372143727437364374343744437514376043767437684377643785437924379443797438064381343815438214383043837438394384643855438624386443873438824388943892438954390443911439144392043929439364393943946439554396243965439744398343990439944400144010440174402244022440314403844043440444405344060440654406944078440854409044097441064411344119441194412844135441414414244151441584416444169441784418544191441984420744214442214422144230442374424444245442544426144268442734428244289442974429844307443144432244326443354434244350443554436444371443804438044389443964440544409444184442544434444414445044457444664447444483444914449144495445044451244512445194452844536445374453744546445544455544556445654457344574445814459044598446004460444613446214462344630446394464744649446574466644674446774468244691446994470344704447134472144725447294473844746447504475544764447724477744780447894479744802448104481944827448334483444843448514485744859448684487644883448844489344901449084490944918449264493344937449464495444961449664497544983449914499545004450124502045026450354504345051450604506945077450864508745096451044511345114451234513145140451424515145159451684517345182451904519945206452154522345232452394524845257452574526045269452784527845284452934530245302453104531945328453284533745346453554535645356453654537445375453784538745396453974540245411454204542145428454374544645447454544546345472454744547445483454924549445496455054551445516455204552945538455414554145550455594556245565455744558345586455914560045609456124562045629456384564145649456584566745671456724568145690456944569745706457154571945725457344574345748457534576245771457764578445793458024580845808458174582645832458364584545854458604586945878458874589445896459054591445921459254593445943459504595945968459774598545986459954600446012460164602546034460424604846057460664607546077460864609546104461074611646125461344614046149461584616746175461764617646176461764618046181461814618146182461844618546185461854618646191461924619246192461934620046201462014620146203462064620746207462074621046212462134621346213462164622146222462224622246225462324623346233462334623746241462424624246242462474624946250462504625046255462604626146261462614626646273462744627446274462804628546286462864628646293462934629446294462944630146304463054630546305463124631746318463184631846326463294633046330463304633846347463484634846348463574635946360463604636046369463734637446374463754637546378463794637946380463804638846389463894639046391463924639346393463944639546399464004640046401464024640646407464074640846409464154641646416464174641846427464284642846429464314643346434464344643546437464394644046440464414644346451464524645246453464564645746458464584645946462464664646746467464684647146476464774647746478464824648246483464834648446488464914649246492464934649746503465044650446505465094651746518465184651946524465244652546525465264653146534465354653546536465414654746548465484654946554465634656446564465654657046579465804658046581465874658946590465904659146597466024660346603466044661046618466194661946620466274663446635466354663646644466444664546645466464665446657466584665846659466674667446675466754667646685466894669046690466914670046707467084670846710467104671046711467114671346713467184671946719467214672146726467274672746729467294673746738467384674046741467424674346743467454674646752467534675346755467574676246763467634676546767467754677646776467784678146782467834678346785467884679546796467964679846802468064680746807468094681346820468214682146823468284682846829468294683146836468434684446844468464685246852468534685346855468614686446865468654686746873468794688046880468824688946893468944689446896469034690946910469104691246919469284692946929469314693946941469424694246944469534695446955469554695746966469684696946969469714698046985469864698646988469974700547006470064700947009470164701747017470204702047028470294702947032470334703447035470354703847039470444704547045470484704947054470554705547058470594706447065470654706847069470774707847078470814708347085470864708647089470914709347094470944709747100471014710247102471054710847112471134711347116471194712747128471284713147134471434714447144471474715147158... 

714151920252635373739444652556063707380839296100104110115117122127133133139142149149156159167167175178187189198204205205205206206210211212212213214219220221228229231233234236243244247250251254257258261270271275277278282291292296305306311317318323332333339346347353360361368373374381389390398405406414423424433441443443447449449454456456461463463468470470476478478484486487487489490491493494496498499501503504507509510514516517526528530530532534535537539547549551560562565566568571574576579583585588594596600603605609613615619626628633633635640641643648652654659666668673681683689690692699699701708709711718723725732739741748756758766768770779780782791793795804810813813818821821827830831832835836843846847855858860863866869871874877880883886895898902908911915922925930933936942942945951952955961969972979982985992996999100710081011101910281031104010401043105210601064106410691073107310791083108410881092109410971101110311071111111411171121112511261130113411371141114511481152115611631167117111801184118811971201120612101214121912251229123412401244125012511255126112641268127412771281128712951299130613061310131713171321132813341338134513531357136413721376138413881392140014061410141814251429143714441448145614651469147814781482149114921496150515081512152115251529153815441548155715651569157815871592159215931598159816011606160616101615161516221627162716361641164216421647164816521657165816641669167016771682168416901695169717051710171317131718172117211726172917311736173917431748175117561761176417711776177917881793179718041809181318221827183218331838184418441849185518571862186818731878188418901895190119091914192119221927193419381943195019561961196819771982199019931998200620112016202420322037204620502055206420702076207620762082208220852091209120962102210221112117211821212127212821332139214021492155215721632169217121792185218821912197220022032209221222172223222722272233223722382244224822512257226122692275228022822288229322972303230823172323232923352341234723552361236823712377238523862392240024032409241724262432244124412447245624582464247324822488249725062513251325142521252125292536253625452552255325542561256225702577257925822589259125962603260626082615261826272634263826392646265026582665267026762683268826962703270927152722272827362743275027502757276427732780278827882795280328052812282128222829283828412848285728622870287028742882288328832891289228952903290429072915291629242932293429352943294529462954295629632971297429742982298529862994299729993007301030153023302630323040304430473055305930653073307730843092309731023110311531233131313731373145315131543162316831743182318831973205321232133221322832323240324732543262327032703278328632893297330533113319332833333341335033583367336733693378337833863395339633973406340734123421342334253434343634413450345334533462346534683477348034863495349935013510351435163525352935343543354835493558356335653574357935843593359936003609361536243633364036423651365836673676368436863695370337083717372637283737374637523761377037793780378037803787378837883788379637973797379837993800380038013810381138113813382138223822382538263827382738313831383238323836383638373837384138443845384538503852385338533859385938603860386638703871387138773881388238823888389738983898390539083909390939163919392039203927393639373937394539483949394939573961396239623970397839793979398839903991399140004004400540054014402140224023402340244025402640264029403040314031403840394040404140424043404440454049405040514052405940604061406340644065406640684073407440754077408340844085408840884089409040934097409840994102410941104111411541164117411841224127412841294133414141424143414841504151415241574163416441654171417441754176418241894190419141984199420042014209420942104211421942234224422542334241424242434252425942604262426242634264426642664272427342754276427642774279428042844285428742884297429843004302430743084310431243214322432443274331433243344338433843394341434543494350435243574357435843604365436643674369437443794380438243884389439043924398440244034405441144194420442244294433443444364443445044514453446144624463446544734480448144834492449744984500450945184519452245224528452945324532453845394542454345434544454745484555455645594560456745684571457345744575457845804588458945924595459946004603460646144615461846224627462846314636463946404643464846554656465946654669467046734680468246834686469346994700470347114715471647194727473547364739474847504751475547554755475647604760476647674771477247724773477747784786478747914793479847994803480548144815481948224829483048344838484248434847485148594860486448694875487648804886489148924896490249114912491649234931493249364943495149524956496449664967497149804981498249864995499749985002501150175018502350235028502950345034504250435048504950515052505750595060506150665068507350745079508150905091509650995107510851135117512151225127513151395140514551505157515851635169517451755180518651955196520152085216521752225230523752385243525252545255526052695271527252775286528952905295530453125313531853275335533653425342534353445350535053565357536353635369537053765377537753785384538553905391539753985403540454105412541454155421542354305431543754395446544754535456546254635469547354745475548154855487548854945498550055015507551155185519552555295537553855445549555155525558556355705571557755825590559155975603560756085614562056295630563656435643564456505657566456655671567956815682568856965700570157075716571657175723573257375738574457535760576157685768577357745781578257825783579057915794579558025803580658075814581558235824583158335834583558425844584558465853585558615862586958715880588158885891589258935900590359095910591759205929593059375941594459455952595659645965597259775978597959865991599759986005601160126013602060266030603160386045604660476054606160676068607560826091609260996107611561166123613261356136614361526159616061686168617261736181618161906191619962006203620462126214621662176225622762346235624362466248624962576260626362646272627562836284629262966300630163096313631763186326633063396340634863536358635963676372637963806388639463966397640564116419642064286435643864396447645464626463647164796483648464926501650165026510651965246525653465346535653665456545655465556564656565696570657965816582658365926594659665976606660866156616662566286632663366426645665366546663666766706671668066856685668666956700670667076716672267236724673367396747674867576764677167726781678967916792680168106810681168206829683268336842685168596861686168616867686968696870687168736873687468806882688268846888689068906893689568976897690069076909690969136919692169216926692669286928693369386940694069466950695269526959695969616961696869746976697669836989699169916998700470067006701470167018701870267028703070307038704370457045705470557057705770667067706970697078708470867087708770897091709270927094709670977098709971017102710371107112711371147122712471257127712871307131713371407142714371457153715571567159716271647165716871777179718071847184718671877191720072027203720872137215721672217228723072317237724072427243724972587260726172687269727172727279728872907291729973047306730773157323732573267335733673387339734873557357735973597359736173637363736673687370737073797381738373847386738873907391739874007402740474077409741174137420742274247426743374357437744074437445744774507457745974617464747274747476748074847486748874927500750275047509751075127514751975267528753075367537753975417547755675587560756775727574757675847584758675887596759876007602761076187620762276317634763676387647765476567659765976627664766776677675767776807681768876907693769576987700770377057714771677197722772777297732773677377739774277467753775577587763776877707773777977807782778577917799780178047811781278147817782478317833783678447849785178547862786878707873788278847886789078907890789278967896789979017905790579147916792079217928793079347936794279447948795179537955795979637964796679707974797579777981798579927994799880038009801180158020802880308034804080448046805080578060806280668074807680788082809080988100810481138120812281278127813381358140814181448146815181528155815781628163816781698174817681778179818481868187818981948196820582078212821582218223822882318237823982448248825382558260826582678269827482798282828482898294829883008305831183128314831983258327832983348341834183438348835583628364836983768385838783928400840284048409841784268428843384428443844584508459846584678473847384768478848484848490849284988498850685088514851585208522852885298537853985458547855485568562856585698571857785808588859085968599860886108616862086268628863486398639864186478652866086628668867486798681868786948694869687028709871587178723873187348736874287508758876087668775878187838790879087938795880288028811881388208821882688288835883788398841884888508858886088678870887688788885888988928894890189068906890889158920892089228929893489418943895089568960896289698976897989818988899689968998900590139021902390309038904690489055906490699071907990799082908490929092909790999107910891109112912091229123912591339135913791399147914991589160916891719179918191899193919491969204920892169218922692319238924092489254925692589266927392739275928392909290929293009307931193139321932993319333934193499352935493629370937393759383939293939395940394129414941694249433943894409449944994529454946394639467946994789478948594879496949795029504951395149520952295319533953795399548955195539555956495679571957395829585959095929601960596089610961996239628963096399643964996519660966596699671968096859691969397029708971197139722972997309732974197489752975497639770977497769785979397959797980698149819982198309838984498469855986498689870987998889895989799069915992499279927992799349937993799389938994199419942994799509950995299559958995899609966996999699972997499779977998199819984998499889992999599959999100061000910009100141001910022100221002710036100391003910045100501005310053100601006310066100661007310080100831008310091100951009810098101071010910112101121012110128101311013210132101341013710138101391013910142101431014410149101521015310155101581016110162101651016610169101701017310180101831018410187101941019710198102021020710210102111021610217102201022110226102301023310234102401024210245102461025210260102631026410271102751027810279102871028910292102931030110309103121031310322103291033210334103341033910342103441034510347103501035210353103561035910361103631036410367103691037110379103821038410387103891039210394103981039810401104031040710414104171041910424104281043110433104391044110444104461045310453104561045810465104651046810470104771048510488104901049810504105071050910517105261052910531105401054710550105531055310558105611056410565105661056910572105731058210585105881059010598106011060410607106101061310616106201062110624106271063210632106351063810643106511065410657106631067010673106761068210689106921069510701107101071310716107231073110734107371074410752107551075810766107721077510778107871079210795107981080710813108161081910828108351083810842108421084810851108551085510862108651086910870108721087510879108811088210885108891089110894108971090110903109081091110915109181092210925109291093210938109411094510949109501095310957109621096210965109691097410977109801098410989109921099510999110051100711010110141102011025110281103211038110461104911053110601106711070110741108211082110851108911097111031110611110111191112411127111311114011149111521115711157111581116111166111671116711170111751117611180111831118811189111951119811203112051121011213112181122011229112321123711240112441124711252112561125911262112671127111279112821128711291113001130311308113131132111324113291133511338113411134611352113571136011365113721137611379113841139111400114031140811416114201142311428114371144011443114481145711466114691147511475114751147811484114841149311496115021150311508115111151711519115231152611532115351153811541115471155111551115541156011564115661156911575115801158111584115901159511603116061161211618116251162811634116411164711650116561166411668116711167711685116911169411700117091171411717117241172411727117301173711737117451174811755117561176311766117731177511781117841179111793118011180411811118141182111824118311183511841118441185111856118581186111868118741187511878118851189211892118951190211909119181192111928119361193611939119461195411954119571196411972119721197511982119901199712000120071201512023120261203312041120491205212059120671207512078120851209412100121031211012119121261212912136121451215212155121621217112179121821218912198122071221012218122181221812221122291222912229122321224012240122411224412252122531225312256122641226512266122691227712278122791228212290122911229412297123051230712308123111231912321123231232612334123361233812341123491235112356123591236712369123751237812386123881239512398124061240812415124181242612429124301243312441124441244512448124561245912461124641247212475124771248012488124911249712500125081251112517125201252812531125381254112549125521255912562125701257412575125781258612590125941259712605126091261412617126251262912634126371264512650126501265312661126661266812671126791268412687126901269812703127061270912717127221273112734127421274712756127591276712773127731277612784127901279012793128011280712813128161282412831128311283412842128491285012853128611286812869128721288012887128941289712905129131291412917129251293312935129381294612954129561295912967129751298312986129941300313010130131302113030130381304113049130581306613069130781307813083130861309513095131031310613115131151312413127131361313613145131481315713158131641316713176131771318613189131981320013200132031321213214132141321713226132281323513238132471325013256132591326813271132781328113290132931330013303133121331613321133241333313337133451334813357133611337013373133821338613395133981340713412134191342213431134371343813441134501345613458134611347013476134781348113490134971349713500135091351613524135271353613543135521355513564135711358013583135921360013608136111362013629136291363213641136501365113654136631367213673136771367713677136771368113681136811368513689136891368913694136981369813698137031370713707137081371213716137161371813719137231372313725137271373113731137331373613740137401374213745137491374913751137551375913759137611376613770137701377213778137821378213784137901379413794137961380513809138091381213812138161381613819138201382413824138271382813832138321383513843138471384713850138591386313863138671386713871138711387513876138801388013884138861389013890138941389713901139011390513909139131391313917139221392613926139301393913943139431394813948139521395213957139581396213962139671396913973139731397813987139911399113997139971400114001140071400814012140121401814021140251402514031140351403914039140451405014054140541406014066140701407014076140841408814088140951409814102141021410914113141171411714124141291413314133141401414714151141511415914162141661416614174141781418214182141901419514199141991420714215142191421914227142351423914239142471425614260142601426914269142731427314282142851428914289142981430514309143091431814326143301433014339143481435214353143531435514359143601436014369143731437414375143751437914380143811438214386143871438814393143971439814399144051440914410144111441814422144231442414432144361443714439144411444514446144481445514459144601446214470144741447514477144861449014491144941449714501145021450614507145111451214516145181452214523145271453014534145351453914547145511455214557145571456114562145671456814572145731457814580145841458514590145971460114602146081461114615146161462214626146301463114637146421464614647146541465514659146601466714671146751467614683146881469214693147001470614710147111471914721147251472614734147431474714748147571475714761147621477114772147761477714786147941479814799148081481714821148231482314823148271482914829148301483414836148361484514849148511485114860148641486614867148671487114873148741487514879148811488214891148951489714899149021490614908149101491414918149201492214927149311493314936149391494314945149491495014954149561496014962149661496814972149751497914981149861498814992149941499915008150121501415020150201502415026150321503415038150401504615048150521505415060150631506715069150751507915083150851509115097151011510315109151151511915121151281513015134151361514315146151501515215159151641516815170151771518315187151891519615202152061520815215152221522615228152351524415248152501525815258152621526415272152761528015282152901529515299153011530915316153201532215330153381534215344153531536015364153661537515383153871539015390153901539415397153971539915403154061540615413154171542015420154281543215435154361543615440154431544415446154501545315455154561546015463154651546715471154741547615480154841548715489154961550015503155061550715511155141551715519155231552615529155331553715540155431555115555155581556115569155731557615579155881559215595155991560015604156071561115616156201562315627156361564015643156481564815652156551566015662156661566915674156811568515688156931570015704157071571215720157241572715733157331573715740157461575115755157581576415770157741577715783157901579415797158031581215816158191582615830158341583715844158531585715860158681586815872158751588315885158891589215900159081591215915159231593215936159391594815948159521595515964159661597015973159821599015994159981599816000160041600816008160111601516019160191602416028160321603316034160381604216043160521605616060160621606216066160701607216074160781608216084160931609716101161041610716111161151611816122161261613016133161391614316147161511615416158161621616716167161711617516180161811618516189161941619716201162051621116212162161622016226162281623216236162421624516249162531625916264162681627216279162821628616290162981629816302163061631416315163191632316331163341633816342163511635316357163611637016377163811638516394164021640616411164111641116415164201642016429164331643816439164471645116456164571646616470164751647716479164831648816490164921649616501165031651116515165201652216531165351654016543165451654916554165571655916563165681657116579165831658816591166001660416609166131661516619166241662816631166351664016644166471665116656166601666416668166731667716684166881669316697167051670916714167191672416728167331673816744167481675316758167671677116776167821678216786167911679716804168081681316819168271683116836168431684416848168531686016863168671687216879168831688716892168991690416908169131692016928169321693716945169451694916954169621697016974169791698716996170001700517014170161702017025170341703917043170481705717066170701707617076170761708017086170861708917093170991709917105171091711517116171201712417130171311713617140171461714717155171591716517167171691717317179171811718817192171981720017208172121721817221172221722617232172351724117245172511725417263172671727317277172771728117287172911729417298173041730817316173201732617331173361734017346173511735717361173671737217381173851739117397174021740617412174181742717431174371744417444174481745417461174641746817474174821748217486174921750017502175061751217520175231752717533175411754717551175571756617569175731757917588175971760117608176081760817612176191761917622176261763317634176351763917646176471765217656176631766417670176741768117682176911769517702177041771117715177221772517730177341774117744177501775417761177641777317777177841778817796178001780717812178121781617823178281782917833178401784517850178541786117866178711787517882178871789217896179031790817914179181792517931179311793517942179481794817952179591796517971179751798217988179951799918006180131801418018180251803218034180381804518052180541805818065180721807518079180861809318100181041811118118181261813018137181451815118155181621817018177181811818818197181981820218209182181822118225182321824118249182531826018269182781828218290182901829318297183051830518310183141832218323183271833118339183401834518349183571835818367183711837918381183831838718395183971840618410184181842118421184251843318436184401844418452184551846318467184751847918481184851849318497185001850418512185161852318527185351854018541185451855318558185671857118579185851858518589185971860318607186111861918625186341863818646186531865818662186701867718683186871869518703187031870718715187231872918733187411875018751187551876318772187741877818786187951880118805188141881418816188201882918830188311883518844188451884718851188601886118867188711888018882188851888918898189011890218906189151891818920189241893318936189421894618955189591896218966189751898018981189851899418999190011900519014190191902519029190381904419048190521906119067190731907719086190921909919103191121911919120191241913319141191411914519154191621916319167191761918419186191901919919207192131921719226192351924019244192531926219269192731928219291192991930419304193041930619311193111931219313193181931819319193261933119331193321934019345193451934719350193551935519357193601936519365193671937519380193801938219391193961939619399194031940819408194111941519420194201942419426194311943119435194381944319443194471945519460194601946419473194781947819483194841948919489194941949619501195011950619513195181951819523195321953719537195431954319548195481955419555195601956019566195721957719577195831959119596195961960319606196111961119618196221962719627196341964319648196481965619657196621966219671196711967619676196851968619691196911970019706197111971119720197291973419735197351974219747197481974819756197611976219763197661977119772197731978019785197861978819789197941979519797197991980419805198071981419819198201982319824198291983019833198421984719848198521985219857198581986219867198721987319878198781988319884198891989619901199021990719915199201992119927199301993519936199421995119956199571996419968199731997419981199861999119992200002000020005200062001420020200252002620035200402004520046200552006120066200682006820069200742007620076200842008920091200922009820103201052010620113201182012020122201242012920131201342013420139201412014420151201562015820161201692017420176201802018320188201902019520197202022020420209202132021820220202252023020235202372024320243202482025020256202652027020272202792028020285202872029420296203012030320310203172032220324203322033820343203452035320362203672036920378203782038320385203942039920404204072040720411204162041920420204222042720430204312043420439204422044320451204562045920461204682047320476204792048420489204922049520501205062050920513205152052020523205272052920534205372054120544205492055220556205602056520568205732057320578205812058620586205912059420599206052061020613206182062520630206332063920642206472065020656206592066420667206732068220687206902069720697207022070520712207182072320726207332074020745207482075520762207672077020777207852079020793208012080520810208132082120826208312083420843208432084820851208602086120866208692087820885208902089320902209102091520919209192092220927209312093120935209402094420945209452095020954209552095720962209662096720971209762098020981209862099120995209972099821003210072100921012210172102121024210242102921033210362103721042210462104921056210612106521068210772108221086210902109621101211052110921116211212112521130211332113821142211472115321158211622116821170211752117921185211882119321197212032121221217212212122821231212362124021247212512125621260212672127221277212812128921290212952129921307213122131721321213292133621341213452135321361213662137021379213832138821392214012140921414214192141921419214242142921429214302143521440214402144721452214572145821459214642146921470214782148321488214892149821503215082151021515215202152521527215362154121546215492155621561215662156921577215822158721591215952160021605216092161821623216282163321634216392164421649216512165621661216662167421679216842169021693216982170321710217102171521720217272172821733217382174521752217572176221770217722177721782217912179121796218012181021811218162182121830218372184221848218482185121856218622186221869218742188021880218882189321899219002190421909219152191721917219222192821930219392194421950219532195321958219642196721973219782198421988219912199622002220062200922014220202202422028220332203922044220442204922055220602206722072220782208422088220932209922105221102211522121221282212922134221402214722156221612216722175221762218122187221952219722202222082221622224222292223522244222502225522262222622226222267222742227422275222802228722287222942229922306223072231322318223252232622332223372234422345223522235722364223662236922374223812238422386223912239822401224082241322420224232243122436224432244722451224562246322468224712247622483224892248922494225012250722508225132252022526225342253922546225522256022565225722257922582225872259422601226052261022617226252262622631226382264622648226532266022668226702267522682226902269322698227052271422714227192272622735227362274122748227572276122766227732278222787227922280022800228022280722815228152281822823228312283122837228422285022850228572286222870228712287522880228882288922894228992290722909229122291722925229272293122936229442294722948229532296122964229672297222980229832298722992230002300323008230132302123025230272303223040230442304823053230612306523070230752308323087230932309823106231112311423119231272313223137231422315023156231572316223170231762317823183231912319723206232112321923226232272323223240232482324823253232612326923270232752328323291232992330423312233212332223327233352334423346233512335923368233712337623385233852338523390233992339923402234072341623416234252343023439234402344023445234542345523462234672347623478234782348323492234942350323508235172352023520235252353423537235442354923558235622356323568235772358123585235902359923603236082361323622236272362923634236432364823654236592366823674236782368323692236982370323708237172372423726237312374023747237542375923768237752378323788237972380423813238182382723835238412384623855238642386523870238792388823895239002390923918239262393223932239322393723943239432394423945239512395123952239542396023960239612396423970239702397223972239782397823980239862399223992239952399524001240012400424005240112401124014240222402824028240322403724043240432404724053240592405924063240702407624076240812408524091240912409724098241042410424110241172412324123241292413724143241432415024155241612416124169241712417724177241862418724193241932420224204242102421024219242282423424235242352424224248242492425024255242612426224263242692427524276242782428124287242882429124293242992430024303243082431424315243182432424330243312433524338243442434524350243522435824359243642437324379243802438624386243922439324399244072441324414244202442824434244352444224444244502445124458244612446724468244762447724483244842449224493244992450024509245092451524516245252452624532245332454224551245572455924559245592456524567245672457024576245782457824582245882459024591245932459924601246022460624612246142461524621246272462924630246372464324645246472465224658246602466224669246752467724680246842469024692246952470024706247082471224715247212472324727247332473924741247452475324759247612476524774247802478224787247942480024802248082480824814248162482224825248312483324839248432484924851248582486024866248682487524880248862488824896248992490524907249152491924925249272493624938249442494624955249612496724970249702497024976249792497924980249862498924989249982500425007250082501125017250202502125028250342503725038250462505225055250572506325069250722507525075250812508425087250962510225105251092510925115251182512225130251362513925144251472515325156251612516925175251782518325192251982520125207252142522025223252302523225238252412524825257252632526625274252742528025283252912529925305253082531725321253272533025339253452535125354253632537025376253802538025385253912539525396253972540325407254082541725423254272542925429254352543925441254492545525459254622546725473254772548025488254942549825501255102551625520255242553125537255412554625550255562556025566255682557425578255842558725593255972560425605256112561525622256312563725641256492565225658256622567025674256802568425693256952570125706257062570725713257182571825719257252573025730257322573825743257442574425750257552575625765257712577625778257822578825793257952580025806258112581425818258242582925832258362584225847258502585525861258662586925875258812588625890258952590125906259102591525921259262593125935259412594625951259562596225967259732597725983259882599425999260052601026016260252603126036260432604326049260542606126070260762608126089260902609626101261092611126117261222613026133261392614426153261552616126166261752617926185261902619926205262112621626225262322623826244262442625026256262622626226270262762628226283262882629426300263012630726313263192632126326263322633826340263482635426360263632636526371263772638026383263892639526399264012640726413264172642226428264342643926442264482645426459264632646926475264812648426490264962650226509265152652126528265282653426540265472654826554265602656826568265742658026588265932659926605266132661826624266302663826644266502665626665266702667626683266832668326689266962669626702267082671526715267222672826735267362674226748267552675726759267652677226774267772678326790267922679626802268092681226815268212682826831268402684626853268572686426870268772688126889268952690226907269142692026927269332693726943269502695726958269642697126978269802698626993270012700227008270152702327032270382704527054270552706127068270772707927085270932709327094271002710827109271092711527123271242712427130271382713927140271462715427156271562716227170271722718127187271952719827200272062721427217272202722627234272382724027246272542725927260272662727427279272882729427302273082730927315273232732927330273362734427350273512735727365273712737827384273922739827407274132742127427274362744227450274572745727463274712747827479274852749327500275032750927517275242752727533275412754827552275582756627574275742758027588275962759827604276122762027622276282763627644276482765427662276702767827684276922770127701277072771527724277242773027738277472775027756277642777327778277842779227801278082781427822278312783827844278532785327853278592786827868278752788127890278902789927905279142791427923279292793827939279422794827957279582796727973279822798427985279912800028002280032800928018280202802628032280412804328049280552806428066280742808028089280912809928105281142811728120281262813528138281462815228161281652816528171281802818428184281902819928203282092821528224282292822928235282442824928251282572826628271282732827928288282932830228308283172832228331283372834628352283532835928368283742837528381283902839628404284102841928426284302843628445284522845828464284732848028486284922850128509285122851828527285352854428550285592856828569285752858428593285942860028609286182862628633286332863328637286442864428644286502865728657286572866328670286702867128675286822868228683286892869628696286972870528712287122871328721287282872828730287362874328743287452875328760287602876328763287702877028773287732878028780287832879128798287982880228805288122881228816288212882828828288322883728844288442884928853288602886028865288702887728877288822888928896288962890128908289152891528921289272893428934289402894728954289542896028969289762897628982289912899828998290052901329020290202902829032290392903929047290532906029060290682907529082290822909029097291042910429112291212912829128291372913829145291452915429156291632916329172291742918129181291902919429201292012921029216292232922329232292392924629246292552926329270292702927929288292952929629296292972930429305293052930729314293152931529318293252932629327293272933429335293362933829345293462934729350293572935829359293632937029371293732937529382293832938529389293962939729399294042941129412294142942129428294292943129439294462944729450294502945729458294612946229469294702947329476294832948429488294882949529496295002950229509295102951429517295242952529529295342954129542295472955029557295582956329568295752957629581295872959429595296002960929616296172962329625296322963329639296432965029651296572966229669296702967629684296912969229699297062971329714297212973029737297382974629746297532975429762297662977329774297822978629793297942980229808298152981629824298312983829839298482984929856298582985829858298652986729867298692987629878298782988129888298902989029898299052990729908299112991829920299212992629933299352993629942299492995129953299542996129963299652997329980299822998529985299922999429997299983000530007300103001730024300263003030030300373003930043300453005230054300583006130068300703007430083300903009230097301053011230114301203012030127301293013530136301433014530151301593016630168301743018330190301923019930200302073020930216302183022530227302343024330250302523026030268302753027730286302863029330295303043030530312303143032330332303393034230342303463035330356303563036230369303723037230379303863038930390303953040230405304073041030417304203042230427304343043730439304453045230455304583046330470304733047630482304893049230495305033051030513305163052530532305353053930547305543055730562305673057430577305823058930596305993060430613306203062330628306373064430647306523066130668306713067730678306853068830694306973070430707307133071630723307263073230738307453074830754307623076930772307793077930786307893079630796308033080630813308223082930832308403084130848308513085930862308693087230880308843089130894309023090830915309183092630934309413094430953309533096030963309723097330980309833099231000310073101131011310113101831022310223102431031310353103531039310463105031050310573106431068310683107731084310883108931090310973110131102311053111231116311183111831125311293113131133311403114431146311503115731161311633116931176311803118331186311933119731200312053121231216312193122631233312373124131241312483125231256312593126631270312743127931286312903129431301313083131231317313173132431328313333134031347313513135631365313723137631382313833139031394314003140431411314153142231424314313143531442314463145331457314643147031477314813148931489314963150031508315123151931523315313153731544315483155631564315713157531584315863159331598315983159831605316103161031612316193162431624316283163531640316403164931656316613166231662316693167431675316773168431689316903169431701317063170731716317233172831730317363174331748317503175831765317703177331773317803178531788317943180131806318093181631823318283183131840318473185231856318573186431869318733188031887318923189731903319103191531920319283193531940319463194631953319583196431971319783198331990319923199932004320113201532022320273203432040320473205232060320643207132076320843208832095321003210832114321213212632134321423214932154321633216932176321813219032198322053221132211322113221832224322243222632233322393224032240322473225332254322623226932275322773227732284322903229232294323013230732310323113231832324323273233132338323443234732353323603236632369323773238432390323943240132408324143241932423324303243632441324473245432460324653247432481324873249232501325083251432520325223252932535325413254532552325583256432571325783258432590325973260432610326173262232629326353264232649326563266232670326703267732683326913269232699327053271332721327283273432743327433275032756327653276832775327813279032795328023280832817328253283232839328393283932846328533285332856328633287032870328753288232889328903289432901329083290932915329223292932930329393294632953329553295732964329713297332980329873299432996330053301233019330223302433031330383304133047330543306133064330713307833085330883309733104331113311533117331243313133135331413314833155331603316333170331773318233187331943320133206332143322133228332343323733244332513325733265332723327933286332863329333300333073331033317333243333133340333473335433362333623336933376333843338633393334003340833413334203342733436334373344433451334603346933476334843348433485334923350033500335043351133519335203352133528335363353733539335463355433555335593356633574335753358233589335973359933603336103361833621336223362933637336403364333650336583366133667336743368233686336903369733705337093371833725337333373833739337463375433759337633377033778337843378633793338013380733815338223383033837338373384433852338593386233869338773388533887338943390233910339143392133929339373394333950339583396733967339743398233991339913399834006340153401534022340303403934041340483405634065340713407834086340953410134108341163412534134341413415034150341513415834167341673417234179341883418834193342003420934210342143422134230342313423734244342533425534255342623427134273342743428134290342923430034307343163431934319343263433534338343423434934358343613436734374343833438734389343963440534409344133442034429344333444134448344573446234463344703447934484344873449434503345083451334520345293453434543345503455934565345683457534584345903459434601346103461634622346293463834645346453465234661346683467234679346883469534700347073471634723347303473734746347543475534762347713477934784347913480034809348113481834827348363484034847348563486534873348813488134881348843489234892348923490134909349093491034911349193491934920349253493334933349353493534943349433494534953349613496134964349643497234972349753497934987349873499134991349993499935003350073501535015350193502535033350333503835038350463504635051350583506635066350723507235080350803508635088350963509635102351083511635116351233512735135351353514235148351563515635163351713517935179351873518935197351973520635206352143521435223352313523935240352403524035248352493524935253352613526235263352663527435275352773527735285352863528835290352983529935301353083531635317353193532635334353353533835341353493535035353353583536635367353713537135379353803538435385353933539435398354023541035411354153542135429354303543535436354443544535450354523546035461354663547135479354803548535492355003550135507355093551735518355243552735535355363554235549355573555835564355733558135582355893559335601356023560935615356233562435631356383564635647356543566335671356723568035684356923569335701357073571535716357243573135739357403574835757357653576635775357793578735788357973580335811358133581335818358263582835828358353584335845358463584835856358583585935864358723587435876358773588535887358893589235900359023590435912359203592235925359263593435936359393594635954359563595935968359763597835982359863599435996360003600836016360183602336026360343603636041360463605436056360623606236070360723607836083360913609336099361063611436116361223613136139361413614836152361603616236169361783618636188361963619836206362083621636220362283623036238362473625536257362663627036278362803628936297363053630836308363083631636319363193632436332363353633636337363453634836349363513635936362363633636736375363783637936388363963639936401364063641436417364193642636434364373643936448364563645936462364663647436477364813648236490364933649736498365063650936513365163652436527365313653936547365503655536560365683657136577365793658736590365963660036608366113661736626366343663736644366503665836661366693667436682366853669336700367083671136720367223673036734367343673436742367463674636748367563676036760367643677236776367763678536793367973679836805368133681736819368253683336837368393684736855368593686236865368733687736881368833689136895368993690236910369143691836923369313693536940369403694836952369573696636974369783698436989369973700137007370143702237026370333703637044370483705537058370663707037077370833709137095371023711037118371223713037134371423714637154371583716637170371793717937187371913720037202372103721437223372313723937243372523726037268372733727337279372873729237292373003730837313373143731837326373313733237337373453735037352373523736037365373673736937377373823738437392374003740537407374163742437429374323743937447374523745537464374723747737481374863749437499375033751037518375233752837532375403754537550375563756437569375753757737585375903759637601376093761437620376293763737642376493765037658376633767037677376853769037698376983770637711377193772737735377403774937749377573776237771377773778537790377993780837816378223782237830378383784437845378453785337859378603786637874378803788237882378903789637898379043791237918379203792837936379423794537949379573796337966379753798337989379923800138009380153801938020380283803438038380453805338059380643806638074380803808638086380943810038106381083811638122381283813638144381503815738161381693817538182381913819938205382133821438222382283823638243382513825738266382703827838284382933829738305383113832038326383343834138341383433835138358383583836738375383823838338388383963840338404384113841938426384283843138439384463844938450384583846538468384723848038487384903849638504385113851538517385253853238537385373854538552385573856538573385803858638586385943860138607386133862138628386353864038648386553866338664386723867938687386903869838705387143871438722387293873838738387463875338762387653877338780387893879438802388103881038812388203882838828388303883838846388473884838856388643886538868388763888438886388863889438902389043890538913389213892338929389373894538947389553896338971389743897938987389953899839005390133902139024390333904139049390533905439062390703907439082390903909839103391033911139119391243913239140391483915439154391623917039176391833919139199392063920639214392223922939235392433925139258392663927439282392903929539303393113931939328393363934439353393553936339371393803938439392394013940139402394103941939419394253943339442394423944839456394653946539473394813949039491394963950439513395153951539523395323953439534395423955139553395553956339572395743958339591396003960339607396153962439628396293963739646396503965339661396703967539675396833969239697397033971139720397263972639734397433974939751397593976839774397833979139800398073981339821398303983739846398543986339871398723988039889398973990539913399223993139937399453995439963399693997739986399954000340012400124001240017400264002640027400304003940039400414004240051400514005340056400654006540068400684007740077400804008840097400974010140107401164011640120401284013740137401424014740156401564016240166401754017540181401904019940199402064020740216402164022340232402414024140248402574026640266402744027640285402854029340297403064030640315403174032640326403354033740346403464035540362403714037140380403894039840399403994040640415404164041640424404334043440435404354044440445404464044840457404584046040460404694047040472404744048340484404864048940498404994050140506405154051640519405224053140532405354054040549405504055340560405694057040573405824059140592405964060340612406134061740626406354063640641406494065840659406654066540674406754068140689406984069940706407074071640717407244073340742407434075140752407614076240770407794078840789407984080140810408114082040824408334083440843408494085840860408604086440873408754087540883408924089440895409014091040912409134092140930409324093440940409494095140954409554096440966409694097740986409884099240992410014100341007410154102441026410314103541044410464105141057410664106841073410814109041092410984110441113411154112241125411344113641143411464115541157411644116941178411804118841191412004120241211412114122041222412314123141240412424125141253412624126541265412654127441277412774128441293412964129741298413074131041311413144132341326413284132941338413414134341352413614136441367413684137741380413834138641395413984140241403414124141541419414284143741440414454144741456414594146441468414774148041486414884149741500415074150741516415194152641529415384154141548415534156241565415734157641585415884159741599416084161141620416234163241635416444164941658416624166241665416744167841679416814169041694416954169941708417124171341719417284173241734417384174741751417544175741766417704177341781417904179441798417984180741811418154182441833418374184141850418594186341868418704187941883418884189241901419054191141914419234192741933419364194541949419554196241971419754198141990419994200342010420184202742031420384204642055420594206742072420814208542093421004210942113421224212842137421414215042157421664217142171421734218242187421874219142200422054220642209422184222342224422284223742242422444224442253422584226042262422714227642279422804228942294422974230042309423144231742324423334233842341423504235942364423684237642385423904239542396424054241042415424184242742432424374244242451424564246242466424754248042486424934250242507425144251542524425294253642539425484255342561425634257242577425854259042599426044261342613426224262742636426384264742653426534265442663426694266942674426834268942689426974270642712427134271342722427284272942738427474275342755427584276742773427754278342792427984280142801428104281642819428284283742843428474285042859428654286942878428874289342898428994290842914429204292042929429354294142946429554296142967429764298542991429984299943008430144302243022430314303743045430504305943065430744307543084430904309943102431114311843118431204312943136431364314443153431604316143162431714317843179431824319143198432004320243211432184322043229432384324543248432484325743264432674326943278432854328943290432994330643310433184332743334433394334143350433574336243366433754338243388433914340043407434144341443423434304343743441434504345743464434704347943486434944349943508435154352443527435364354343552435574356643573435824358943598436064360643612436214362943630436344364343651436524366143670436784368043681436904369843701437014371043718437214372943738437464375043754437634377143775437814379043798438034380843817438254383143835438444385243858438664387543883438904389043899439074391443923439324394043948439564396543973439824398743996440044401344020440294403844038440444405344062440634406844077440864408844092441014411044112441194412844137441394414644155441644416644173441824419144194441984420744216442194422644235442444424744254442634427244275442834429244301443044431244321443304433444335443444435344357443584436744376443804438244391444004440444411444204442944434444344444344452444574445744466444754448044482444914450044505445104451944528445334454144550445594456444572445814459044596445964460544614446204462644635446444465044659446684467744683446924470144710447174471944728447374474444748447574476644773447804478944798448054481244821448304483844839448484485744865448664487544884448924489644905449144492244926449354494444952449604496944978449874498944998450074501645021450304503945048450534506245071450804508945090450904509045090450964509745097450974509745106451074510745107451074511645117451174511745118451224512345123451234512445133451344513445134451364513845139451394513945141451434514445144451444514645153451544515445154451574516345164451644516445167451764517745177451774518045189451904519045190451944519945200452004520045205452054520645206452064521145214452154521545215452204522345224452244522445230452304523145231452314523745240452414524145241452474525345254452544525445260452664526745267452674527445277452784527845278452864528645287452874528745295452984529945299452994530745310453114531145311453204532145322453224532245331453364533745337453374534645354453554535545355453644537245373453734537445374453814538245382453834538345392453934539345394453954539745398453984539945400454024540345403454044540645407454084540845409454114541945420454204542145424454254542645426454274543045432454334543345434454374543945440454404544145444454484544945449454504545345460454614546145462454654547345474454744547545478454874548845488454894549245501455024550245503455074550945510455104551145515455184551945519455204552445528455294552945530455344554345544455444554545550455524555345553455544555945562455634556345564455694557445575455754557645581455894559045590455914559745598455994559945600456064560845609456094561045616456214562245622456234562945635456364563645637456434565245653456534565445661456614566245662456634567045673456744567445675456834568345684456844568545693456964569745697456984570645710457114571145712457204572745728457284572945738457424574345743457444575345760457614576145762457714577945780457804578245782457844578545785457874578745794457954579545797457984579845799457994580145802458034580445804458064580745813458144581445816458174582445825458254582745829458294583045830458324583445835458364583645838458404584645847458474584945852458524585345853458554585845861458624586245864458674587145872458724587445878458784587945879458814588545887458884588845890458944589945900459004590245906459124591345913459154592045922459234592345925459314593145932459324593445940459434594445944459464595245956459574595745959459664596745968459684597045977459824598345983459854599246000460014600146003460104601946020460204602246030460374603846038460404604846057460584605846060460694607146072460724607446083460864608746087460904609046091460924609246095460954610446105461054610846109461114611246112461154611646119461204612046123461254612746128461284613146133461424614346143461464614946151461524615246155461584616246163461634616646169461734617446174461774618046189461904619046193461974619946200462004620346207462114621246212462154621946224462254622546228462324623946240462404624346248462484624946249462524625746259462604626046263462684627146272462724627546280462864628746287462904629546304463054630546308463144631546316463164631946325463284632946329463324633846342463434634346346463524635946360463604636346369463784637946379463824638946390463914639146394464014641046411464114641446422464244642546425464284643646440464414644146444464524645946460464604646346471464804648146481464844649346495464964649646499465084651246513465134651646525465334653446534465374654646554465554655546559465594656046561465614656546565465684656946569465734657346580465814658146585465864659046591465914659546596466034660446604466084660946618466194661946623466254662946630466304663446636466444664546645466494665246653466544665446658466614666446665466654666... 

816172324313336384245464952556164727678828791971011101151171221271331341401441511531601661731811891911992062152162252322332332342352362362372382432442452522532552572582602672682712742752782822832872872882922962973023033043093123133193193203263323333403433443523533543623713723813823833924014034034094114124174194204264284304354374404424444474504524554584604634674694724774794824884904934995015045115135165245265305335355395435455495545565615635655705735755805855875925996016066146166226226246306376396456536556626636656726766786856906926997077097177197217297327347427497517597667687767847867957977998088148168258328358358378408408438468468508538538628658668688718728758788798888918929019049069069099119179209239259289319349379419419449489519549589629659709729759809839869919959981004100610091016101710201027102910321040104110441052105410571065106810711080108210861086108710911091109410981098110111051105111411181119112011241125112711311132113911431144115311571159115911631165117111751177118511891192119211961199120412081211121812221226122612301234123612401244124812521256126312671272127212761281128312871292129713011306131413181324132413281334133713411347135413581364137313771384138613901397140414081415142414281436143814421450145814621471147114751484148714911500150915141514151515201520152415291530153115361537154015451546155215571559156315681570157615811584158415891592159516001603160816131616162516301634163716421646165116561660166916741679168316881693169917041710171117161722172517301736174117461753175317581765176817731780178517901798179818031811181618211829183618411850185218571866187518811881188218881888189419001901190519111912191819241926192819341936193819441946195019561959195919651968197519811984199319992003200820142019202220282033203820442050205220582064206720732079208420902097209921052112211821242131213921452153215821642173217321792188219021962205221422212221222822352235224422512252225922662267227622832285228622932295230423112314231623232326233023372341234323502354236323702375237623832388239724042410241624232429243724442451245724642472247624832491249725042513251825252534254125482557256625742574258225902591259526032604261026182620262526332636263826462649265426622665267026782681268826962700270027082712271227202724272727352739274527532757276327712776277627842789279228002805280828162822282428322838284328512857286328712877288528932900290129092916291829262933293829462953296129692976298529933001300930173026302730353044304630553055305630653065306930783078308430933093309931083108311731263127312831373138314531543156315631653167317031793181318631953197320532143217321832273230323432433246325332623266326732763280328132903294329833073311331933283333333433433348335233613366337433833389339134003406341134203427342734363443344534543461346634753483348334923500350335123520352635353544354535543563356835773586359435953595359535993600360036003606360736073607361636173617361836243625362536263633363436343636363636373637363936463647364736493658365936593662366436653665366936693670367036743675367636763680368436853685369036923693369336983702370337033708371537163716372237273728372837343742374337433750375137523752376037603761376137693771377237723780378637873787379538013802380238103817381838183827382838293829383838393840384038493853385438543863387138723872388138893890389138913892389338943894389939003901390139063907390839093913391439153916392439253926392739363937393839403940394139423944394839493950395239573958395939613968396939703973397439753976397939813982398339863995399639974001400440054006401040144015401640214024402540264031403840394040404540544055405640614070407140724078408140824083408940944095409641034104410541064113411841194120412741344135413641444149415041514159416841694170417941814182418341924194419541964205421142124213422242314232423442344238423942414241424942504252425342544255425742584266426742694271427342744276427842844285428742894295429642984301430143024304430743114312431443174323432443264330433043314333433743414342434443484356435743594364436643674369437443804381438343894392439343954401440844094411441844204421442344304432443344354442444844494451445944604461446344714474447544774485449244934495450445064507450945184525452645294529453045314534453445404541454445454549455045534554456245634566456845724573457645784582458345864588459645974600460346074608461146144621462246254629463046314634463846454646464946544658465946624667467546764679468546894690469347004703470447074714472147224725473347374738474147494755475647594768476847694772478147884789479347934797479848024802481048114815481648214822482648284832483348374839484748484852485548614862486648694877487848824886488848894893489848984899490349084916491749214927492949304934494149424943494749544955495649604967497249734977498549894990499450025009501050145023502450255030503050305031503650365045504650515052505650575062506350675068507350745079508050855087508750885093509550955096510151035107510851135115512451255130513351335134513951425143514451495152515851595164516751745175518051845184518551905194519952005205520952155216522152265228522952345239524652475252525752665267527252785281528252875293530153025307531453145315532053275333533453395347534853495354536253665367537253805384538553905398540754085413542254245425543054395444544554515451545154525458545854615462546854685476547754835484548754885494549555015502550855105515551655225525552555265532553555395540554655495556555755635567556955705576558055865587559355985599560056065611561756185624563056305631563756435652565356595666567056715677568456935694570057085711571257185726573457355741575057535754576057695778577957865786579057915798579957995800580758085809581058175818582458255832583458365837584458465851585258595862586258635870587358795880588758915892589359005904591059115918592359265927593459395942594359505955596359645971597759825983599059966004600560126019602260236030603860386039604660546059606060676076607660776084609361016102610961186126612761356135613861396147614861496150615861596165616661746176617761786186618861976198620662096215621662246228622962306238624362436244625262576259626062686273628062816289629563016302631063176322632363316339634063416349635763586359636763756377637863866394640264036411641964276428643664456449645064596459645964606469646964706471648064806485648664956496649764986507650865106511652065216529653065396541654565466555655765636564657365756583658465936596660066016610661366196620662966326640664166506654665866596668667266786679668866936693669467036708671467156724672967386739674867536762676367726778678367846793679968076808681768246829683068396847684868496858686668706871688068896892689369026911692069226922692269256927692769276935693769376938694269446944694569546956695669586960696269626964697269746974697769806982698269856993699569956999700370057005701070107012701270177019702170217026703470367036704270467048704870547061706370637070707370757075708270917093709371017105710771077116711671187118712771347136713671457154715671577157716271647165716671687170717171727180718271837185718971917192719571967198719972027211721372147218722372257226723172347236723772427250725272537259726372657266727372767278727972867289729172927299730873107311731973277329733073397339734173427351735773597361736173667368737073717375737773797381738273847386738873897391739373957403740574077410741574177419742274277429743174357439744174437448744974517453745874607462746474697478748074827488749474967498750475117513751575227528753075327540754375457547755575607562756475727578758075827591759475967598760776127614761776177621762376267627762876307633763476387640764376447650765276557657766076627665766776737675767876817681768376867689769676987701770577067708771177157718772077237728772877307733773877427744774777537756775877617768776877707773778077857787779077977803780578087816781978217824783278407842784578547861786378677867787178737877787878787880788478857891789378977899790279047908791079197921792579287935793779417945794979517955796079617963796779727979798179857991799579978001800880108012801680238029803180358043804680488052806180628064806880778084808680918091809580978102810381068108811381148122812481298131813681388143814681508152815781618162816481698173818181838188819382008202820782138219822182268233823782398244825182558257826282708272827482798288828882908295830483058307831283218326832883348334833783398345834583498351835783588358836083668367837583778383838583858387839383958400840284088411841484168422842584318433843984428450845284588462846884708476848084898491849785028506850885148520852285248530853685418543854985568556855885648571857985818587859585968598860486128620862286288637864386458652865286528654866186618661866386708670867886808687868886908692869987008702870487118713871387158722872487288730873787398746874887558758876387658772877587848786879387978802880488118816881988218828883388408842884988558858886088678874887588778884889188978899890689138919892189288936894089428949895789668968897589848986898889968996899689989006900690119013902190219029903190399040904690489056905890609062907090729076907890869089909190939101910491129114912291269129913191399144914591479155916091679169917791839186918891969203920492069214922192289230923892469251925392619270927392759284928492849286929592959296929893079307931693189327932893349336934593469354935693659367937393759384938793909392940194049412941494239427943394359444944994529454946394699470947294819487949694989507951495209522953195399544954695559564956795709570957095719574957495749583958695869587959495979597959996059608960896109617962096209623962896319631963596399642964296469652965596559660966596689668967396789681968196869692969596959701970697099709971597209723972397299738974197419748975697599759976697749777977797859789979297929801980498079807981698199822982298319840984398449844985298559856985698649867986898699876987998809882988898919892989499019904990599079915991899199922992999329933993699449947994899529957996099619966997099739974997999859988998999941000010003100041001010015100181001910025100321003510036100431004310046100471005410063100661006710075100761007910080100881009410097100981010710112101151011610125101321013510137101371014210145101471014810152101551015710158101651016810170101711017910182101841018610193101961019810201102011020410206102091021310216102181022210225102281023010234102401024310245102501025310256102581026410266102691027110277102831028610288102941030110304103061031310319103221032410332103321033510337103451034610349103511036010360103631036510374103781038110383103921040010403104061040610413104161041910420104211042410427104281043710440104431044510453104561045910462104651046810471104741047810481104841048810491104941049710501105091051210515105201052210525105281053410535105381054110547105531055610559105661057010573105761058410587105901059310601106101061310616106251062610629106331063310633106361064010640106461064910653106541065510658106621066410664106671067110673106801068310687106891069610699107031070610712107151071910723107261072910733107371074210745107491075410758107611076510771107721077510779107851079110794107981080510810108131081710825108281083110835108431084610849108531086210864108671087210872108721087510880108801088310886108911089210894108971090210904109041090710912109141092010923109281093110936109391094410948109521095510960109641096910972109771098210986109891099411000110031100611011110171102511028110331104011047110501105511063110691107211077110861109011093110981110711112111151112011129111341113711142111511115611159111641117311182111851119111191111911119411200112001120011203112091120911209112121121811218112241122711233112331124011243112491124911256112591126511265112721127511281112821128811291112971129811305113081131411315113221132511331113321134011343113491135111355113581136411366113711137411380113821138711390113961139811404114071141311416114191142211428114311143511438114441144711451114541146011463114691147211478114811148711490114961149911506115091151511518115251152811534115371154611549115551155911565115681157411578115851158811594115981160511608116141161811627116301163611641116491165211658116631167211675116811168611695116981170411710117121171511721117271173111734117401174611751117541176011766117711177411780117861179511798118041181011819118221182811835118351183811844118511185111854118601186711871118741188011887118921189511901119081191411917119231193011936119391194511953119531195611962119701197411977119831199111996119991200512013120181202112027120361203612039120451205412056120591206512074120771208012086120951209812101121071211612124121271213412134121361213912146121461214912152121591215912162121651217212172121801218312190121911219612199122061220712213122161222312224122301223312240122421224412247122541225612263122661227312275122831228612293122951230312306123131231612320123231233012334123361233912346123501235312356123631236712370123731238012385123851238812395124001240112404124111241612418124211242812433124351243812445124511245112454124611246712467124701247712483124841248712494125001250112504125111251712526125291253612543125441254712554125611256312566125731258012582125851259212600126001260312610126181262412627126341264212649126521265912667126741267712684126931269812701127091270912710127131272112721127231272612734127341273612739127471274812748127511275912760127671277012778127791278712790127981279912807128101281812820128271283012838128401284812851128591286112870128731288112883128921289512903129061291412917129251292812937129401294812952129521295512963129671296712970129781298212991129941300213007130101301313021130261303013033130411304613050130531306113067130701307313081130881308913092131001310713109131121312013127131291313213140131481314913152131601316813177131801318813197131971320013208132171321813221132291323813239132421325013259132611326413272132811328413287132951330413308133111331913328133321333513343133521336113364133731337313373133761338513385133861338913398133981339913402134111341113417134201342913429134361343913448134481345613459134681346813477134801348913490134931349613505135061351013513135221352313528135311354013541135471355013559135611356513568135771357913584135871359613598136041360713616136181362513628136371364013646136491365813661136681367113680136831369113694137031370713707137101371913723137231372613735137391374013743137521375613758137611377013774137781378113790137941380213805138141381813827138301383913844138441384713856138611386313866138751388013887138901389913904139121391513924139291393813941139501395613957139601396913975139831398613995140011401014013140221402914029140321404114048140511405414063140701407414077140861409314098141011411014117141231412614135141421415114154141631417114172141751418414192141941419714206142141421714220142291423714243142461425514264142691427214281142901429614299143081431714324143281432814328143291433314333143331433714341143411434114346143501435014350143561436014360143611436114365143651436614370143741437414375143801438414384143851439114395143951439714398144021440214404144081441214412144141441914423144231442514431144351443514438144391444314443144461445414458144581446114470144741447414478144781448214482144861449114495144951450014504145081450814513145181452214522145271453314537145371454314544145481454814555145551455914559145661456714571145711457814580145841458414591145991460314603146111461214616146161462414626146301463014638146411464514645146531466214666146661467514679146831468314692146971470114701147101471614720147211472114724147281472914729147331473714738147381474314747147481474814754147581475914760147631476714768147691477714781147821478314792147961479714799147991480314804148061481314817148181482114825148291483014833148381484214843148461485214856148571486114865148691487014874148831488714888148931489314897148981490314904149081490914914149231492714928149341494214946149471495314962149661496714974149741497814979149861499514999150001500815009150131501415022150241502815029150371504015044150451505415056150601506115070150741507815079150881509315097150981510715113151171511915119151241512815130151311513215136151381513915141151451514715148151511515515157151591516115165151671517015171151751517715180151821518615188151911519515199152011520415208152121521415217152251522915231152341524315247152491525315254152581526015264152651526915271152751528415288152901529515295152991530115306153081531215314153191532215326153281533315337153411534315348153531535715359153641537115375153771538215390153941539615402154081541215414154201542715431154331543915448154521545415461154621546615468154751547815482154841549115495154991550115508155141551815520155271553515539155411554915553155571555915567155721557615578155861559315597155991560715616156201562215631156361564015642156511565715661156631567215680156841568715687156881569215695156951569615700157031570315705157091571215712157161572015723157231573015734157371573815739157431574615747157491575315756157571576115765157681576915776157801578315785157881579215795157971580115805158081581015816158201582315826158261583015833158361583615840158431584615847158511585415857158601586415867158701587715881158841588815889158931589615900159021590615909159131591715921159241592815936159401594315948159541595815961159661597315977159801598515994159981600116007160111601516018160241603016034160371604316050160541605716063160721607616079160861609016094160971610516105161091611216120161211612516128161361613916143161461615416163161671617016179161811618516188161971620016204162071621616221162251622916229162301623416238162381624616250162541625416263162671627116272162731627716281162821629016294162981630016300163041630816310163111631516319163211632416328163321633516335163391634316346163481635216356163591636216366163701637316378163821638616390163921639616400164041641216416164201642416433164371644116446164471645116455164601646916473164771648316483164871649116497164981650216506165121651516519165231653016531165351653916546165501655416558165651657016574165781658516592165961660016608166131661716621166301663216636166401664916652166561666016669166741667816683166831668716691166961669616702167061671116711167181672216727167271673616740167451674616754167581676316765167701677416779167811678716791167961679816807168111681616818168271683116836168391683916843168481685116852168561686116864168681687216877168801688416888168931689716897169011690616910169111691516920169241692816932169371694116946169501695516959169681697216977169821698216986169911699616999170031700817013170171702117026170321703417038170431704917052170561706117067170731707717082170881709617100171051711217114171181712317130171331713717142171491715517159171641717117179171831718817196171981720217207172151721817222172271723517241172451725017258172661727017275172841729017294172991730817315173191732517325173251732917335173351733817342173481734817355173591736517365173731737717383173841738517389173951739617400174041741017412174131741717423174251742717431174371743917444174481745417456174651746917475174781747817482174881749117492174961750217505175091751317519175221753017534175401754417549175531755917563175691757317579175831759217596176021760717611176151762117626176341763817644176491765817662176681767417676176801768617692176991770317709177161772117725177311773817744177481775417761177701777417780177881779317797178031781117820178241783017839178391784317849178581786117865178721787217872178761788317883178861789017897178971790117905179121791217919179231793017931179351793917946179481794917953179601796217964179681797517977179821798617993179961799918003180101801318020180241803118034180421804618053180571805818062180691807318082180861809318098181031810718114181191812518129181361814118150181541816118167181751817918186181921820018204182111821718226182301823718244182461825018257182651826618270182771828518293182971830418312183211832518332183411834418348183551836418367183711837818387183941839818405184141842218426184341843418436184401844818448184501845418462184631846318467184751847618477184811848918490184951849918507185081851418518185261852818529185331854118543185451854918557185591856518569185771857918587185911859918602186041860818616186191862218626186341863718644186481865618659186681867218680186841869118695187031870718715187191872718732187341873818746187511875618760187681877418775187791878718793187951879918807188131881918823188311883718846188501885818865188721887618884188911889918903189111891918921189251893318941189471895118959189671897518979189871899519004190081901619025190281903219040190491905719061190691907819086190901909819107191161912019129191291913219136191451914519153191571916619167191731917719186191871919419198192071920919210192141922319225192321923619245192471925619260192691927219272192761928519288192921929619305193091931019314193231932719329193331934219346193491935319362193661937319377193861939119395193991940819413194181942219431194361944219446194551946119461194651947419480194871949119500195071950919513195221952919532195361954519552195591956319572195801958519589195981960619615196191962819637196371964119650196591966319668196681966819670196751967519675196841968919689196901969019695196951969619700197051970519707197101971519715197171972119726197261972819733197381973819741197411974619746197491974919754197541975719757197621976219765197661977119771197741978019785197851978819794197991979919803198081981319813198171982319828198281983319834198391983919844198461985119851198561986219867198671987219879198841988419890198921989719897199031990619911199111991719924199291992919935199431994819948199551995819963199631997019974199791997919986199952000020000200082000820013200132002120026200312003120039200462005120051200592006620071200712007920087200922009220101201042010920109201182012320128201282013720142201472014720156201622016720168201682016920174201752017520178201832018420184201912019620197201972020520210202112021220215202202022120222202272023220233202352023920244202452024720252202572025820261202612026620267202702027320278202792028220285202902029120294202982030320304203072031620321203222032620328203332033420338203412034620347203512035520360203612036520374203792038020385203872039220393203982040620411204122041720426204312043220438204422044720448204542046120466204672047420478204832048420491204962050120502205102051020515205162052420528205332053420542205462055120552205602056520570205712058020580205852058620595205992060420605206142062320628206302063020630206352063720637206422064720649206492065820663206652066620671206762067820679206852069020692206942069520700207022070420710207152071720719207272073220734207362074520750207522075520759207642076620769207782078320785207892079520800208022080620813208182082020825208272083220834208392084620851208532085920865208702087220878208852089020892208992090120906209082091520923209282093020938209392094420946209542095620961209632097120978209832098520994209972100221005210052100621011210142101421016210212102421024210312103621039210402104421049210522105321057210622106521066210712107621079210812108121086210892109121098211032110621109211122111721120211232112721132211352113821147211522115521159211662117121174211782118621191211942119821207212122121521220212242122921232212382124021245212482125421260212652126821274212812128621289212962129821303213062131421314213192132221330213342133921342213502135521360213632137221372213772138021389213972140221406214062141321418214222142221430214352143921440214432144821452214542145621461214652146721471214762148021482214872149221496214992149921504215082151121520215252152921533215372154221546215502155521560215642156921570215752157921584215852159021594215992160021605216092161421616216212162521630216382164321647216522166021665216692167521676216812168521691216932169821702217082171621721217252173121739217442174821755217612176621770217772178421789217932180121804218092181321821218252183021834218422184921854218582186621874218792188321892218962190121905219142191921924219292192921930219352194021940219422194721952219522196021965219702197121971219762198121982219872199221997219982200422009220142201622018220232202822030220352204022045220472205222057220622206422070220752208022083220852209022095220982210322108221132211622125221302213522139221392214422149221532215922164221692217322182221872219222197222032220822213222182222522230222352224122244222492225422260222672227222277222832229222297223022230922309223142231922326223322233722342223502235022355223602236822374223792238422392223992240422409224182242122426224312244022448224532245822467224762248122487224872248722492224982249822504225092251522516225172252222528225292253622541225472254822556225612256722569225732257822584225872258722592225982260122601226062261222615226162262122627226302263722642226482265222655226602266622671226732267822684226892269222697227032270822717227222272822734227402274522751227582275822763227692277622777227822278822795228022280722813228212282522830228362284522848228532285922868228722287722884228842288422889228962289622904229092291622917229182292322930229312293322938229452294622954229592296622968229742297922986229892299322998230052300823013230182302523029230302303523042230472304723052230592306423067230722307923084230882309323100231062310623111231182312423133231382314523152231602316523172231792318823193232002320823214232192322623234232402324523252232612326123266232732328223283232882329523304233122331723324233332334223347233542336323372233772338523385233852339023398233982340523410234182341823426234312343923439234482345323461234622346223467234752347623483234882349623497235052351023518235202352423529235372353923544235492355723560235622356723575235782358223587235952359823604236092361723620236272363223640236442364823653236612366523671236762368423689236902369523703237082371023715237232372823737237422375023756237582376323771237772377923784237922379823801238062381423821238212382623834238412384423849238572386423873238782388623894238942389923907239152392223927239352394423945239502395823967239692397423982239912399423999240082400824008240132402224022240262403124040240412404124046240552405624057240622407124072240802408524094240962409924104241132411524121241262413524137241442414924158241612416524170241792418224191241962420524209242112421624225242292423224237242462425124251242562426524270242752428024289242952429824303243122431824322243272433624343243442434924358243652437224377243862439424396244012441024418244212442624435244442444424449244582446724473244792447924479244832448924489244892449424500245002450124503245092450924510245192452524525245272452924535245352453724540245462454624549245492455524555245582456624572245722457524583245892458924592246012460724607246112461724623246232462824632246382463824643246522465824658246642466424670246702467624683246892468924696247022470824708247152472124727247272473424741247472474724755247592476524765247742477724783247842478424785247912479224792247942480024801248012481024816248172481824826248322483324835248412484724848248502485724863248642486724872248782487924882248872489324894248972490524911249122491524924249302493124935249422494824949249532496124967249682497224981249872498824993249932499925000250052501325019250202502525034250402504125047250522505825059250652507125077250782508525089250952509625103251092511525116251232513025136251372514425152251582515925167251732517925180251882519625202252032521225219252252522625235252432524925251252512525725263252652526525274252802528225283252882529425296252972530325309253112531325317253232532525327253352534125343253452535425360253622536525365253712537325376253842539025392253962539925405254072541125414254202542225426254302543625438254432544525451254532545825465254712547325478254872549325495255012550125507255092551525523255292553125538255412554725549255572555725563255652557325574255802558225590255992560525607256162562125627256302563025631256372564025640256422564825651256522565225658256612566225669256752567825680256822568825691256932569625702257052570825709257152571825721257302573625739257432574325749257522575625757257632576625770257792578525788257932580025806258092581425822258282583125836258452585125854258602586725873258762588325888258942589725904259112591725920259272593525941259442595225958259642596725976259802598625990259902599225998260022600226005260112601526016260172602326027260282603726043260472604926056260622606626068260762608226086260892609526101261052610926114261202612426128261372614326147261522615226158261622616726176261822618626191262002620626210262152622426230262342624026240262462625026256262652627126275262812629026296263002630726307263132631726324263252633126335263432634326349263532636126361263672637126379263842639026394264022640826414264182642726432264382644226451264572646326467264762648326489264932650226510265162652126521265282653426539265392654726553265582655926559265652657026571265722657826583265852658526591265962659826599266052661026612266212662726632266352663526641266462664926658266642666926673266742668026685266892669426700267052670926715267212672626731267362674226747267522675926765267702677626779267852679026796268002680626811268182682126827268322683926844268502685526863268662687226877268852688926895269002690926912269182692326932269382694426950269502695026956269622696226963269692697526976269762698226988269892699226998270042700527014270202702627028270282703427040270422705127057270632706627068270742708027084270842709027096271002710127107271132711827118271242713027135271392714527151271562716427170271762718127190271962720227208272162722227228272352723727243272492725627264272702727627283272922729827304273122732027326273322734127344273502735627365273682737427380273892739327399274062740627409274152742227422274302743627443274442744827454274612746227467274732748027482274862749227499275012751027516275232752627534275402754727550275592756527572275762758427590275972760227605276112761827624276262763227639276452764827654276612766827670276762768327690276982770427711277192772227728277352774327747277532776027769277722777827785277942780327809278172781727824278302783827838278462785227860278612786827874278822788427888278942790227904279132791927927279302793027936279442794727956279622797027974279812798727995279992800728013280212802528034280402804828053280612806728075280812808728093281012810828108281142812228129281302813628144281522815228158281662817428183281892819728206282082821428222282312823428240282492824928251282572826628267282682827428283282852828528291283002830228304283102831928321283232832928338283402834228348283572835928364283702837928381283882839428403284052841228418284272842928436284422845128454284592846528474284772848428490284992850228509285152852428527285352854128550285542855628562285712857528579285852859428598286022860828617286212862628632286412864628650286562866528670286762868228691286962870228708287172872228730287362874528751287512875728766287722877428780287892879528797288032881228818288222882828837288442884628852288612886828872288782888728894288982890428913289202892728933289422895028950289562896528973289752898128990289982900029006290152902329028290342904329052290552906129070290792908429090290992910829113291192912829137291462915329153291532915629163291632916329168291752917529175291802918729187291882918829195291952919629196292032920329204292062921329213292142921629223292232922429231292382923829239292482925529255292572925829265292652926729268292752927529277292832929029290292932929729304293042930729313293202932029323293292933629336293402934229349293492935329359293662936629370293782938529385293892939729404294042940929413294202942029426294272943429434294402944329450294502945629459294662946629473294732948029480294872949029497294972950429509295162951629523295282953529535295432954529552295522956129562295692956929578295812958829588295972960029607296082960829609296162961729617296222962929630296302963729644296452964529652296592966029661296672967429675296762968229689296902969129699297062970729708297162972329724297262973329740297412974429748297552975629759297652977229773297762978229789297902979429799298062980729812298162982329824298292983529842298432984829855298622986329868298752988229883298892989129898298992990529909299162991729923299282993529936299422994829955299562996229970299772997829985299852999229993300003000130008300093001630018300253002630034300343004130042300503005230059300603006830071300783007930087300923009930100301083011730124301253013430135301423014330152301543016130162301713017630183301843019330199302063020730216302243023130232302413025030257302593025930261302683027030271302723027930281302823028530292302943029530299303063030830309303173032430326303283033130338303403034230347303543035630358303643037130373303763037730384303863038930393304003040230405304113041830420304233043030437304393044330445304523045430459304593046630468304733047530482304843048930492304993050130506305153052230524305303053330540305423054830553305603056230568305743058130583305903059330600306023060930615306223062430631306393064630648306553066430671306733068130687306943069630704307133072030722307313073230739307413075030752307593076130770307793078630789307893079730804308073080830808308153081830819308203082730830308313084030847308503085230859308663086930871308803088730890308933089330900309033090630915309223092530928309373094430947309513095230959309623096630968309753097830983309843099130994309993100631013310163102131030310373104031046310473105431057310633106431071310743108031086310933109631102311103111731120311273112731134311373114431145311523115531162311673117431177311843119131198312013120831217312243122731235312363124331246312543125631263312663127431278312853128831296313023130931312313203132831335313383134631355313623136531374313753138231385313943139731404314073141631421314283143231432314353144231446314463145131458314623146231469314763148031481314813148831492314933149831505315093151031517315243152831529315383154531549315513155331560315643156631573315803158431586315953160231606316093161031617316213162431629316363164031643316523165931663316673166831675316793168331686316933169731701317093171631720317243173331740317443174931750317573176131766317693177631780317853179331800318043181031810318173182131827318293183631840318463185031857318613186731876318833188731894319023190931913319213192131928319323194031942319493195331961319693197631980319893199332000320043201332019320263203032039320473205432059320593206332070320753207632077320843208932090320933210032105321063211132118321233212532127321343213932141321493215632161321643216432171321763217932181321883219332197321973220432209322133221632223322283223232237322443224932253322603226732272322773228232289322943230032300323073231232318323203232732332323383234232349323543236132363323703237532382323903239732402324103241032417324223243032432324393244432453324543246132466324753247932486324913250032506325133251832527325353254232548325483255532562325683256932571325783258432585325893259632602326033261032617326233262432631326383264432646326473265432660326623266532672326783268032686326933269932701327083271532721327233273132738327443274732747327543276032763327663277332779327823278632793327993280232810328173282332827328273283432840328443284732854328603286432868328753288132886328863289332899329043290632913329193292432929329363294232947329543296132967329733297332980329863299232994330013300733013330183302533031330373304433051330573306433067330743308033087330923309933105331123312033127331333314133142331493315533163331643317133177331853318833195332013320933215332223322833236332453325233258332673327333280332863329533303333103331733317333183332533332333323333733344333513335133357333643337133371333793338633393333943339533402334093341033415334223342933430334383344533452334543345433461334683347033473334803348733489334973350433511335133352133528335353353833538335453355233555335583356533572335753358333590335973360133603336103361733621336253363233639336433365033657336643366933672336793368633691336973370433711337163372433731337383374433745337523375933765337733378033787337933380133808338153382233822338293383633843338463385333860338683386833875338823389033895339023390933917339243393133938339473394733954339613397033977339843399233992339953400234010340103401534022340303403034038340453405334054340603406734075340763408534092341003410234103341103411834120341243413134139341423414434151341593416334163341703417834182341843419134199342033420834215342233422834232342393424734253342543426134269342753427834285342933429934306343133432134327343343434134349343563435734364343723437934382343893439734404344113441834426344333444134448344563446334471344783448634494344943450134509345173452134528345363454434549345563456434573345743458134589345983460134608346163462534632346393464734656346653467234681346813468334690346993469934703347103471934719347273473434743347443474434751347603476134770347773478634788347893479634805348073481234819348283483034838348453485434857348623486934878348813488834895349043490834909349163492534929349343494134950349543496334970349793498434985349923500135006350113501835027350333503335040350493505535056350633507235078350813508835097351033511035117351263513335135351423515135158351673517435183351913519235199352083521635221352283523735246352473525435263352723527735284352933530235309353173531735317353183532635326353263533435342353423534335343353513535135352353543536235362353633536935377353773537935382353903539035392354013540935409354123541335421354213542435429354373543735441354443545235452354563546235470354703547435482354903549035495354973550535505355113551235520355203552635528355363553635542355463555435554355603556835576355763558335590355983559835606356103561835618356263563235640356403564935650356583565835667356683567635676356853569035698356983570735714357223572335723357253573335734357343573735745357463574635752357603576135761357693577735778357793578235790357913579235796358043580535807358093581735818358203582435832358333583535844358523585335856358573586535866358693587535883358843588735895359033590435908359113591935920359243593035938359393594435944359523595335958359603596835969359743598135989359903599635997360053600636012360143602236023360293603336041360423604836057360653606636073360763608436085360933609436102361033611136114361223612336131361393614736148361573616036168361703617036170361783618036180361823619036192361923619936207362093621036213362213622336224362333624136243362453624636254362563625836264362723627436277362803628836290362933630036308363103631336322363303633236336363403634836350363553635636364363663637136376363843638636391363983640636408364143641636424364263643336433364413644336450364523646036462364693647336481364833649036499365073650936517365253653336535365433655136559365613657036570365783658036589365943660236605366053660936617366203662036625366333663636636366433665136654366553665736665366683667036671366793668236684366903669836701367033671136719367223672536729367373674036743367473675536758367613676836776367793678236791367993680236806368113681936822368263683136839368423684636855368633686636871368723688036883368883689536903369063691136919369273693036935369433695136954369603696036968369713697736983369913699437000370073701537018370253703037038370413704837055370633706637074370773708537088370963710137109371123712037125371333713637144371513715937162371713717437182371853719437199372073721137211372113721937223372233722537233372373723737245372533725737258372593726737271372723727637284372883728937295373033730737309373113731937323373253733037338373423734537346373543735837361373643737237376373793738837396374003740437406374143741837423374233743137435374403744237450374543745937467374753747937485374873749537499375053751337521375253753237532375403754437551375573756537569375773757737585375893759737606376143761837627376283763637640376493765637664376693766937671376793768437684376903769837703377033771137719377243772537729377373774237744377443775237757377593776137769377743777637780377883779337796377963780437809378123781837826378313783537836378443784937853378563786437869378733788237890378953790037906379143791937924379303793837943379483795637964379693797537979379873799237999380003800838013380203802938037380423805038051380593806438072380793808738092381013810638114381193812838134381423814738156381643817238178381783818238190381963819738199382073821338215382153822338229382313823338241382473824938257382653827138274382813828938295382993830238310383163832038325383333833938344383463835438360383653836738375383813838638388383963840238407384113841938425384313843238440384463845238453384613846738473384743848238488384943849738505385113851838518385263853238539385393854738553385603856838576385823859038590385983860438612386193862738633386413864938657386633867238672386803868638695386973870538711387203872938737387443874438744387523875938759387613876938776387763878038788387953879638797388053881238813388163882438831388323883538843388503885138856388643887138873388753888338890388923889638904389113891338921389293893638939389393894738954389573896438972389793898238991389993900639010390163902439031390353904339051390583906339068390763908339088390963910439111391173912039128391353914139146391543916139168391703917839185391923919739205392123922039224392323923939247392533926139268392773928039288392953930439311393193932739327393293933739345393453934939357393653936639367393753938339384393903939839406394073941639424394323943439435394433945139453394613946939477394803948339491394993950339503395113951939523395253953339541395453955439562395703957539580395883959639601396093961739625396313963139639396473965339660396683967639683396873969539703397103971539723397313973839745397533976139769397733978139789397983979939807398153982439831398393984739856398653987339882398823988839896399053990639909399173992639927399363994439953399553995639964399733997539983399914000040003400094001740026400304003040038400474005140053400614007040074400834009140100401054011240120401294013540141401494015840164401724018040189401964020140209402184022640230402384024740255402614026940278402864029440302403114032040326403344034340352403584036640375403844039040398404074041640424404334043340433404394044840448404484045440463404634046440465404744047440475404784048740487404894049040499404994050140502405114051140513405224053140531405344053540544405444054740556405654056540569405694057840578405824058840597405974060140609406184061840623406294063840638406434065140660406604066640666406754067540681406834069240692406994069940708407084071540717407264072640733407394074840748407554076340772407724078040786407954079540803408124082140821408304083140840408404084940852408614086240862408634087240873408734087740886408874088840890408994090040901409054091440915409174091940928409294093140937409464094740949409584096740968409714097240981409824098540994410034100441008410124102141022410264103141040410414104541052410614106241067410724108141082410884108841097410984110441111411204112141127411364114541146411534116041169411704117841181411904119141199412054121441215412234123141240412414125041256412654126741267412704127941281412814128541294412964129641302413114131341314413184132741329413314133241341413434134541353413624136441367413674137641378413814138941398414004140441410414194142141426414274143641438414434144641455414574146341464414734147541482414824149141493415004150341512415144152141526415354153741545415494155841560415684157241581415834159141595416044160641614416204162941631416404164541654416564166541670416794168141690416964170541707417164172441733417364173641743417524175541755417624177141774417754178141790417934179441802418114181441816418234183241835418374184541854418574186041864418734187641879418854189441897419014190641915419184192241928419374194041945419494195841961419664197241981419844199041995420044200742013420204202942032420394204242051420544206142066420754207842086420904209942102421104211742126421294213842138421474215042159421614217042174421744217542184421884218842192422014220542206422084221742221422224222642235422394224142244422534225742259422664227542279422824228542294422984230142306423154231942323423274233642340423444235342362423664237142373423824238642391423954240442408424144241742426424304243642445424544245842465424654247442478424854248742496425004250842509425184252242530425374254642550425594256542574425784258742595426044260942609426164262542630426314263542644426494265142651426604266542667426694267842683426864268742696427014270442713427224272742731427354274442749427534275942768427734277842783427924279742803428074281642821428274283442843428484285542855428644286942876428764288542890428974289742906429114291842919429284293342940429444295342958429654296942978429834299042994430034300843016430194302843033430414304743056430614306943075430844308943097431044311343118431274313143140431454315443161431704317543184431914320043205432144322343232432384323843243432524325843258432664327543281432814328943298433044330543305433144332043321433284333743343433454334543354433604336243362433714337743379433824339143397433994340743416434224342543426434354344143444434454345443460434634346843477434834348643495435044351043514435164352543531435354353743546435524355643562435714357743582435844359343599436044360943618436244362943634436434364943655436554366443670436764368143690436964370243710437194372543731437394374843754437614376443773437794378643794438034380943817438184382743833438414384243851438574386543871438804388643895438974390643912439214392643935439414395043955439644397143971439724398143988439884399444003440104401044019440284403544035440444405344060440614406644075440824408444084440934410044102441054411444121441234412644135441424414444153441624416944172441804418944196442004420144210442174422144222442314423844242442504425944266442714427744286442934429844307443164432344328443374434644353443594436544374443814438844392444014440844415444224443144438444454445244461444684447644481444904449744505445144452344530445394454144550445574456644568445774458544585445864459544603446034460744616446244462444631446404464844648446554466444672446734467944688446964469744706447154472344725447274473644744447464474844757447654476844769447784478644790447904479944807448114481444823448314483544839448484485644860448644487344881448864488844897449054491044915449244493244937449434495244960449654497144980449884499444998450074501545021450284503745045450514505945068450764508245091451004510845115451214513045138451454515445163451714517945179451884519645204452064521545223452314523945248452564526545266452754528345292452944530345311453204532445333453424534245343453524536145361453654537445383453834538845397454064540645413454224543145432454374544645455454564546445473454824548345492455014551045512455144552345532455344554345552455614556445566455754558445587455904559945608456114561745626456354563945643456524566145665456724568145690456944570245711457204572545727457364574545750457574576645775457814578145790457994580545806458154582445830458364584545854458614586145870458794588645889458984590745914459184592745936459434595245961459704597845983459924600146009460174602646035460434605246061460704607946083460844608446084460844608446085460854608546085460884608946089460894608946093460944609446094460954609546096460964609646097461024610346103461034610446112461134611346113461144612346124461244612446126461314613246132461324613546137461384613846138461414614646147461474614746150461564615746157461574616146164461654616546165461694617246173461734617346177461834618446184461844618846195461964619646196462014620546206462064620646212462154621646216462164622246228462294622946229462354624246243462434624346250462554625646256462564626346269462704627046270462774628646287462874628746295462954629646296462964630446312463134631346313463224632646327463274632746336463434634446344463444635346361463624636246363463634637046371463714637246373463754637646376463774637846383463844638446385463864639246393463934639446396464014640246402464034640646408464094640946410464134641846419464194642046423464304643146431464324643546442464434644346444464484645046451464514645246456464614646246462464634646746474464754647546476464804648846489464894649046495464974649846498464994650446509465104651046511465164652346524465244652546530465384653946539465404654646551465524655246553465594656746568465684656946576465764657746577465784658546586465874658746588465954660446605466054660646614466164661746617466184662646630466314663146632466404664646647466474664846657466604666146661466624667146677466784667846679466884669646697466974669946699467004670146701467034670346704467054670546707467074671146712467124671446714467204672146721467234672346732467334673346735467364673946740467404674246743467494675046750467524675346761467624676246764467664676846769467694677146773467784677946779467814678346791467924679246794467974679746798467984680046803468074680846808468104681446814468154681546817468214682446825468254682746831468364683746837468394684446844468454684546847468524685546856468564685846863468694687046870468724687746885468864688646888468944689846899468994690146907469134691446914469164692246931469324693246934469414694246943469434694546952469594696046960469624697046973469744697446976469844699046991469914699347001470094701047010470124702147025470264702647029470294703047031470314703447034470384703947039470424704247048470494704947052470534705647057470574706047061470704707147071470744707647078470794707947082470844708847089470894709247095470974709847098471014710447106471074710747110471134711847119471194712247125471324713347133471364714047145471464714647149471534715947160471604716347167471764717747177471804718547186471874... 

918192728373946485659666978828892100105111116125131137143152159167175177185193202204205205205206206211212213214215216222223225230231234235236239246247251254255260262263268277278284291292299304305312319320328333334343346348348350352352356358358363365365370372372377379379385387387393395396397399400402404405408410411415417418423425426432434436438440442445447449454456459459461464465467470474476479484486489495497500509511515521523527534536541542544549553555560565567573573575581583585591594596602610612619626628635643645653657659668669671680682684693702705705709712712717720721723726727736739741741744746754757760763766769773776780783786790796799803811814818826829834834837842844847852854857862868871876884887892900903909912915921926929935940943950950953960962965972974977984991994100110101013102010291032104010451048105610631066107410811084109310961099110811131116112511311134114311501153116211711175117511751179117911811185118511891193119311981202120212101214121512151219122012211225122612311235123612431247124812561260126212651269127112761280128212881292129512971301130413081312131513211325132813361340134413441348135213541358136213671371137513821386139013991403140814121416142114271431143614451449145414631467147314741478148414881492149815031507151315201524153115311535154215461550155715631567157415831587159515991603161116171621162916381642165116561660166916761681168116811686168616951700170117021707170817131718172017211726172817311736173817451750175317571762176517711776178017811786179017921797180118051810181418231828183318361841184618511856186218621867187318781883188918961901190819111916192319261931193819431948195619571962197019731978198619911996200520062011202020242029203820442050205020522058205920592065206620682074207520842090209220982104210621142120212321282134213821412147215121562162216721702176218121882194219922082214222022282234224022492255226222632269227722772283229122932299230723112317232623292336233623382345234523502357235723622369236923782385238623882395239623982405240624132420242224222429243124322439244124442451245324592466246824752482248524912498250125102517252125222529253325342541254525492556256025662573257825822589259426012608261426142621262726302637264326492656266226712678268526882695270227082715272327232730273827412748275627622769277827782785279428002807281628252833283328362844284528462854285528592867286828762884288628922900290229112919292229262934293729412949295229592967297129732981298529892997300130083016302130233031303630403048305330603068307430763084309030983106311331143122312931353143315131553163317131783186319531973206320632063215321532183227322732363245324632483257325832633272327432753284328632923301330333123321332433293338334233423351335533583367337233723381338633863395340034033412341834183427343334353444345034553464347134733482348934933502350935163525353335373546355535563565357435783579357935793580358135813582358235833583358435873588358835903590359135913593360236033603360636083609360936133613361436143618362336243624362836363637363736423648364936493655365836593659366536713672367236793683368436843692369336943694370237063707370737163719372037203729373537363736374537543755375637563764376537663767377037713772377337793780378137833788378937903793379437953796379938033804380538093812381338143819381938203821382638293830383138373839384038413848384938503851385838633864386538723877387838793886389138923893390039093910391139183927392839293937393839393940394839533954395539633968396939703978398739883989399840014002400340124015401640174026403440354037403740394040404240424044404540474048404840494051405240564057405940604065406640684069407440754077407840874088409040924092409340954097409840994101410341084109411141134119412041224125412641274129413241374138414041434149415041524156415941604162416641734174417641804188418941914196420242034205421142114212421442204222422342254231423642374239424542544255425742644265426642684275428142824284429242924293429543034305430643084316432443254327433643384339434143504355435643584367437443754378437843794380438343834387438843914391439944004403440444064407441044114416441744204422442344244427442944344435443844404448444944524455446144624465446944694470447344774481448244854489449344944497450145094510451345184520452145244529453345344537454245504551455445604562456345664572457945804583459045914592459546024607460846114619462146224625463346394640464346524652465346564665467446754679467946824683468746874695469647004701470347044708470947154716472047224723472447284730473747384742474547464747475147544760476147654769477447754779478347924793479748024806480748114817482048214825483148384839484348504853485448584865486948704874488148894890489449024906490749114919492749284932494149434944494849574965496649714971497449754980498049874988499349944997499850035005500550065011501350175018502350265027502850335036503750385043504650515052505750615063506450695073507950805085509050905091509651015108510951145120512351245129513551425143514851555159516051655173517651775182519051975198520352125217521852235232524152425248524852515252525852595260526152675268527552765282528452855286529252945303530453105313532153225328533253345335534153465347534853545359536553665372537853785379538553915400540154075414542054215427543554365437544354515452545354595467546854695475548354895490549655045510551155175526553155325539553955395540554755475548554955565556555855595566556655735574558155815589559055975598560156025609561056185619562656285628562956365638563956405647564956555656566356655673567456815684568556865693569657025703571057135721572257295733573857395746575157515752575957645767576857755780578757885795580158035804581158175822582358305837583858395846585358595860586758755875587658835891589258935900590859145915592259315931593259395948595059515958596759745975598359835984598559935993599859996007600860086009601760186022602360316033603660376045604760556056606460676070607160796082608860896097610161026103611161156121612261306135613661376145615061566157616561716173617461826188619061916199620562126213622162286231623262406247625562566264627262756276628462926301630263106319632563266335633563366337634663466354635563646365636663676376637763836384639363956398639964086410641664176426642964306431644064436451645264616465646864696478648264906491650065056511651265216526653365346543654965516552656165686568656965786585658865896598660566136614662366316637663866476656665766586667667666826684668466846689669166916691669766996699670067016703670367056705670767076709671367156715671767266728672867316739674167416745674967516751675667566758675867636763676567656770677267746774677967876789678967946803680568056810681968216821682768326834683468406846684868486854686268646864687168756877687768846889689168916899690369056905691469146916691669256927692969296938694669486949694969536955695669566962696469656966697069726973697569756977697869806983698569866988699669986999700270067008700970127020702270237027702870307031703570427044704570507051705370547059706570677068707470767078707970857092709470957102710271047105711271187120712171297130713271337141714971517152716171657167716871777186718871907190719872007202720372077209721172137213721572177219722772297231723472387240724272467246724872507254726372657267727272777279728172877289729172937299730273047306731273217323732573327339734173437350735773597361736973727374737673857386738873907399740274047406741574247426742974297436743874417442744374457448744974567458746174637469747174747476748574877490749374997501750475077513751575187521752975317534753875437545754875527557755975627567756775697572757775847586758975947601760376067612761476167619762576347636763976457654765676597666767476767679768776927694769777057711771377167724773277347737774677517753775677657771777377767785779377957799779978047806781078107816781878227823782678287832783478347836784078427844784678507852785478567860786278717873787778807881788378877890789278947898790179107912791679207921792379277931793579377941794679477949795379587961796379677972798179837987799379998001800580118019802180258032803780398043805180538055805980678072807480788087808880908094810381118113811881188119812181268127812781298134813581428144814981518152815481598161816381658170817281818183818881918194819682018204820882108215821982208222822782318236823882438247825682588263826882748276828182878287828982948300830683088313832083238325833083378345834783528360836283648369837783868388839384028406840884148414841584178423842384318433843984408444844684528453845784598465846784688470847684788485848784938496849684988504850785148516852285268529853185378541855085528558856385698571857785838585858785938600860186038609861686248626863286408645864786538661866986718677868686918693870087008702870487118711871987218728872987348736874387458748875087578759876287648771877487748776878387868794879688038807880888108817882188298831883888438849885188588864886688688875888188908892889989068914891689238930893889408947895589608962896989788982898489928992899289949002900290099011901990209026902890369038904390459053905690599061906990729075907790859088909490969104910891129114912291269131913391419145915191539161916691709172918091859190919292009205921492169224923092379239924792539261926392719278928492869294930293069308931693249330933293409349935193539362936293629364937393739375937793869387938893909399940094099411942094229424942694359437944394459454945794619463947294759482948494939497949895009509951395229524953395389540954295519556956595679576958295899591960096079608961096199626962996319640964896499651966096689673967596849692970197039712972197289731973197319732973597359735974397469746974797539756975697589759976297629764976797709770977397749777977797809786978997899793979397969796980098089811981198169819982298229828982898319831983798459848984898559859986298629869987598789878988698909893989399029902990599059914992299259926992699329935993699379940994399449945994999529953995599579960996199639972997599769979998499879988999299959998999910004100051000810009100141001910022100231002910032100351003610043100441004710048100551006310066100671007510081100841008510094100991010210103101121011910122101241012410130101331013510135101411014410146101461015210155101571015810163101661016810169101741017710179101801018810191101931019510202102051020710209102161021910221102241023010233102351023910244102471024910253102591026210264102681027610279102811028610293102961029810303103111031410316103221032510328103301033710339103421034410351103551035810360103671037210375103771038510389103921039410402104081041110413104221042410427104301043010431104341043710437104401044310446104471044910452104551045710458104611046410466104701047310476104781048710490104931049610504105071051010514105161051910522105261052810531105341053910540105431054610551105561055910562105671057510578105811058710594105971060010607106091061210615106221062410627106301063810639106421064510653106591066210665106731067910682106851069410699107021070610706107061070910713107131071610719107231072410726107291073310734107421074510749107501075810761107651076710774107771078110784107871079010794107971080210805108091081310817108201082410829108291083210836108411084610849108531085910863108661087010877108781088110885108921089510898109021091010912109151091910927109361093910943109521095510958109631096310965109681097310973109821098510990109911099711000110051100711012110151102011023110261102911034110371104411047110521105611062110651107011075110801108311088110931109911102111071111311118111211112611133111371114011145111521116011163111681117511184111871119211199112081121111216112231123211235112401124811248112511125611264112651126811273112811128211285112901129811300113031130811316113181132111326113341133711340113451135311356113591136411372113761137911384113921139911402114071141511423114261143111439114471145011455114641146411467114721148111481114841148911498114991150211507115161151711520115251153411537115401154611546115481155111557115571156011563115691156911572115751158111581115871159011596115961160411607116131161311622116251163111631116401164311649116501165311656116621166311666116691167511676116801168311689116901169411697117031170411712117151172111723117261172911735117371174111744117501175211756117591176511767117751177811784117871179311796118021180511812118151182111824118311183411840118441184611849118551185911867118701187611880118891189211898119021191111914119201192511930119331193911944119521195511961119661197511978119841198911998120011200712013120181202112027120341203512038120441205112053120561206212069120711207412080120871209612099121051211312116121191212512133121371214012146121541215812161121671217612178121811218712196121991220212208122171222112224122301223912243122461225312253122551225812265122651227112274122811228112288122911229812298123051230812315123161232212325123321233312342123451235212354123541235712364123661236612369123761237812387123901239712400124051240812415124181242412427124341243712443124461245312457124621246512472124771248112484124911249612501125041251112516125221252512532125371254312546125531255912563125661257312579125841258712594126001260612609126161262212629126321263912646126461264912656126631266412667126741268112683126861269312700127031270612713127201272912732127391274712747127501275712765127661276912776127841278712790127971280512813128161282312831128401284312850128591285912862128691287812881128841289112900129041290712914129231292812931129381294712953129561296312972129811298412992129921299512998130061300613010130131302113021130261302913037130371304613049130571305813060130631307113072130751307813086130871309113094131021310313112131151312313124131331313613144131461314613149131571315913160131631317113173131791318213190131921320113204132121321513215132181322613229132301323313241132441325113254132621326513274132771328513289132891329213300133041330513308133161332013328133311333913343133521335513363133681336813371133791338413385133881339613401134091341213420134261342913432134401344613450134531346113467134721347513483134901349213495135031351013517135201352813535135431354613554135611357013573135811358913595135981360613615136161361913627136361363813641136491365813661136641367313673136731367613685136851369413697137061370713707137101371913720137211372413733137341374213745137541375613763137661377513777137851378813797137991380813811138201382313830138331384213845138531385613865138681387713880138891389313893138961390513909139171392013929139341393713940139491395413958139611397013975139801398313992139981400114004140131401914027140301403914045140541405714066140731407314076140851409214100141031411214120141271413014139141471415514158141671417514184141871419614205142131421714217142171421814222142221422214224142281422814228142311423514235142361423814242142421424314248142521425214253142591426314263142641427114275142751427714283142871428714290142941429814298143011430614310143101431314320143241432414327143341433814338143411435014354143541435814358143621436214366143681437214372143761437814382143821438614390143941439414398144031440714407144111441814422144221442614434144381443814442144501445414454144581446714471144711447614477144811448114486144881449214492144971450314507145071451214519145231452314528145371454114541145471454714551145511455714562145661456614572145781458214582145881459614600146001460614615146191461914626146301463414634146411464614650146501465714664146681466814675146831468714687146951470214706147061471414722147261472614735147351473914739147481475014754147541476314765147691476914778147811478514785147941479914803148031481214819148231482314832148401484414844148531486214866148671486714868148721487314873148761488014881148811488914893148941489414903149071490814909149101491414915149161491914923149241492514934149381493914941149411494514946149481495014954149551495714962149661496714969149751497914980149821498914993149941499615005150091501015013150151501915020150231503015034150351503815046150501505115055150551505915060150641506715071150721507615085150891509015095150951509915100151051510715111151121511715123151271512815133151421514615147151531515315157151581516415166151701517115177151831518715188151951519815202152031521015214152181521915226152321523615237152451524515249152501525815266152701527115279152881529215293153021530315307153081531715323153271532915329153311533515337153371534015344153461534615351153551535715358153591536315365153661536715371153731537415376153801538215383153871539115393153951539515399154011540315405154091541115413154161542015422154241542915433154351543815439154431544515448154541545815460154631547015474154761547915488154921549415498155031550715509155141551815522155241552915534155381554015545155521555615558155641556815572155741558015585155891559115597156031560715609156151562315627156291563615641156451564715655156561566015662156701567215676156781568615690156941569615705157071571115713157221572415728157301573915742157461574815757157621576615769157691577215776157791577915784157881579115791157971580115804158041581215816158191582015826158301583315835158391584315846158481585315857158601586215869158731587615879158851588915892158951590315907159101591315922159261592915933159341593815941159461594615950159531595815963159671597015975159811598515988159931600116005160081601416021160251602816035160391604316046160531605816062160651607216080160841608716094161021610616109161161612516129161321614016140161441614716155161581616216165161731617616180161831619116198162021620516213162211622516228162371623816242162451625416255162591626216271162801628416288162881628816292162961629616299163031630716307163111631516319163191632516329163331633316340163441634816349163491635316357163581635916363163671636816374163781638216383163901639416398164001640016404164081641016412164161642016422164251642916433164351643916443164471644916456164601646416466164751647916483164861649016494164981650116506165101651416517165251652916533165371653716541165451654916557165611656516569165781658216586165911659316597166011660616611166151661916625166261663016634166401664216646166501665616661166651666916675166841668816692166981670716711167151672216722167261673016737167401674416748167551676216766167701677816779167831678716795167971680116805168131681816822168261683416843168471685116860168631686716871168801688416888168921690116908169121691716917169181692216927169271693616940169451694616946169501695516956169591696316968169691697716981169861698816988169921699716999170001700417009170111701517019170241702617035170391704417047170501705417059170621706617070170751707817085170891709417098171001710417109171141711417118171231712817129171331713817143171471715117156171621716217166171711717717179171831718817194171971720117206172121721817222172271723417236172401724517252172611726517270172781727817282172871729517298173021730717316173161732017325173341733517339173441735317355173591736417373173781738217388173881739017394174001740017407174111741717417174251742917435174361743717441174471744817457174611746717469174701747417480174821748417488174941749617501175051751117514175171752117527175301753917543175491755317553175571756317567175701757417580175851758717591175971760217604176081761417619176221762617632176371764317647176531765917664176681767417681176851768917695177021770717711177171772417733177371774317750177591776317769177771777917783177891779717800178041781017818178251782917835178431785017854178601786917874178781788417893178991790317910179101791017914179211792117922179261793317933179361794017947179471795117955179621796217970179741798117981179901799418001180021800718011180181801918025180291803618038180381804218049180511805318057180641806618069180731808018082180861809018097180991810718111181181812118121181251813218135181421814618153181561816418168181751817918181181851819218196182011820518212182161822218226182331823718244182481825518260182611826518272182771828118285182921829818298183021830918315183161832018327183331833818342183491835518364183681837518382183861839018397184041840918413184201842718436184401844718455184581846218469184781848018484184911850018503185071851418523185301853418542185421854418548185561855618562185661857418574185811858518593185941859518599186071860818615186191862718629186291863318641186431864418648186561865818663186671867518678186791868318691186941870218706187141871718726187301873818742187451874918757187621876218766187741877918782187861879418799188031880718815188201882818832188401884618851188551886318869188781888218890188971889718901189091891618920189241893218940189411894518953189611897018974189821899118991189951900319012190161902019029190291903119035190441904419050190541906319063190701907419083190841908519089190981909919108191121912119123191301913419143191451915319157191661916919171191751918419188191891919319202192061920919213192221922619230192341924319247192551925919268192731928019284192931929919304193081931719323193291933319342193491935019354193631937019371193751938419391193951939919408194151942019424194331944119441194451945419462194621946619475194831949019494195031951119519195231953219541195441954819557195661957019574195831959219599196031961219621196291963419634196341963719642196421964219647196521965219652196571966219662196621966819673196731967419675196801968019681196841968919689196901969719702197021970319711197161971619718197211972619726197281973419739197391974119748197531975319755197631976819768197711977419779197791978219788197931979319796198031980819808198111981919824198241982819831198361983619840198461985119851198561985719862198621986719869198741987419879198861989119891198971989819903199031990919912199171991719923199271993219932199381994719952199521995919962199671996719974199831998819988199961999620001200012000920014200192001920028200282003320033200422004220047200472005620057200622006220071200772008220083200832008420089200902009020098201032010420104201132011820119201202012420129201302013220132201372013820140201432014820149201512015520160201612016320172201772017820181201862019120192201962019820203202042020820211202162021720221202292023420235202402024520250202512025620265202702027120277202772028220283202892029420299203002030720310203152031620323203292033420335203422034920354203552036320365203702037120380203802038520386203952040220407204082041720425204302043220432204352044020442204432044520450204522045320460204652046720468204762048120483204852048820493204952049820500205052050720511205122051720519205232052520530205322053620544205492055120555205632056820570205752057620581205832058820590205952059720602206102061520617206222063120636206382064420644206492065120657206582066320665206712067820683206852069120699207042070620713207182072320725207322073820743207452075320755207602076220770207742077920781207892079420799208012080920815208202082220831208332083820840208492085320858208612086120864208692087220872208762088120884208852088520890208932089420897209022090520907209082091320916209182092020925209282093020938209432094620949209512095620959209622096620971209742097720982209872099020994209952100021003210072101321018210212102521032210372104021044210522105721060210652106921074210772108221091210962109921105211102111521118211242113021135211382114521147211522115521162211702117521178211852119321198212012120821217212222122521233212382124321246212552125621261212652126521265212702127421274212752128021284212842129121296213002130121305213102131421316213162132121325213272132821333213372133921346213512135521358213632136821372213752138121386213902139321400214052140921413214162142121425214302143121436214402144521447214522145621461214642146921473214782148721492214962150221509215142151821524215322153721541215472155621561215652157221577215822158621594215972160221606216142162321628216322164121641216462165021659216652167021675216752167921684216892169021690216952170021701217022170721712217132172021725217302173221738217432174821751217522175721762217652176721772217772178021789217942179921802218112181621821218242183321838218432184721847218522185721861218682187321878218822188921894218992190321911219162192121925219342193921944219492195521960219652197021976219812198621991219992200422009220142202322028220332203922045220502205522061220672207222077220842208722092220972210422108221132211822126221272213222137221452214622151221562216422173221782218322192221922219722202222112221822223222282223722245222502225622256222572226222268222682227022275222812228122290222952230122302223022230722313223142232222327223332233422343223482235422356223622236722373223752238322388223942239622404224092241522417224262243122437224402244622451224572246022468224732247922482224912249622502225062250622511225172252122528225332253922543225522255722563225682257322578225842258922595226002260622612226152262022626226322263722642226482265522658226632266922676226802268522691226992270022705227112271922723227282273422742227472275222758227662277222777227832279222795228002280622815228212282622833228332283522840228472284722850228552286222863228632286822875228762287922884228912289322894228992290622908229102291522922229242293322938229452294822951229562296322966229742297922986229892299823003230102301423020230252303223037230382304323050230552305623061230682307323075230802308723092231012310623113231192312323128231352314123148231532316023166231742317923186231932319823203232102321823218232232323023238232452325023257232652327323278232852329423299233042331223312233132331823326233262332923334233422334223346233512335923360233612336623374233752338223387233952339723399234042341223414234172342223430234332343323438234462344923456234612346923472234802348523493234962350523510235182352223528235332354123546235492355423562235672357623581235892359523595236002360823614236212362623634236412364623651236592366623671236762368423691236972370223710237182372123726237342374323744237492375723766237682377323781237902379323798238072380723807238122382123821238292383423843238442384823853238622386323868238732388223884238862389123900239032390423909239182392123922239272393623939239412394623955239582396723972239812398523993239982400724012240122401724026240312403224037240462405124059240642407324079240862409124100241072411124116241252413224137241422415124159241622416724176241842418724192242012420924213242182422724235242402424524254242632426624271242802428924292242972430624315243232432824337243462435524361243612436124368243742437424374243822438824388243882439624402244022440224411244172441724418244252443124431244322444024446244462444824450244562445624458244612446724467244702447124477244772448024483244892448924492244982450424504245072451424520245202452424529245352453524539245462455224552245572456224568245682457324579245852458524591245952460124601246072461424620246202462724627246332463324640246412464724647246542466324669246692467724679246852468524693247012470724707247152472424730247302473924746247522475324753247542476024761247612476324769247702477024773247792478024781247822478824789247902479524801248022480424805248112481224814248162482224823248262482624832248332483624841248472484824851248572486324864248672487424880248812488524890248962489724902249022490824909249142492024926249272493224939249452494624952249572496324964249712497224978249792498624989249952499625003250072501325014250222502425030250312503925047250532505425063250632506925070250792508025086250872509625105251112511325113251182512425126251272512925135251372513825141251472514925151251522515825160251622517025176251782518125182251882519025193251952520125203252072520725213252152521925226252322523425239252442525025252252572526325269252712527725281252872528925296252982530425306253132531825324253262533325339253452534725355253592536525367253762537825384253872538725388253942539725397253992540525408254092540925415254182541925428254342543725439254442545025453254552546125467254702547325478254842548725490254952550125504255072551325519255222552525532255382554125545255512555725560255642557025576255792558425588255942559725602256072561325616256222562625632256352564125646256522565525661256672567325676256822568925695256982570525711257172572025727257342574025743257512575425760257632577125775257812578425793257962580225805258142581925825258282583725845258512585425863258722587825882258822589025896259002590125901259072591125912259182592425928259292593625942259462594825954259602596425966259752598125985259882598825994259982600126002260082601226016260162602226026260302603326039260432604826049260552605926064260662607226076260822608326089260932609926104261102611426120261282613426138261442615326159261632617026178261842618826196261982620426208262172621726223262272623626237262432624826248262482625426259262592626426270262752627626277262832628826289262912629726302263042630526311263162631826324263302633526338263412634726352263552635926365263702637426377263832638826392264012640726412264172641826424264292643426436264422644726453264542646026465264712647926485264902649626504265102651526521265302653626541265482655626562265672657526580265862659126599266072661326618266262663526641266462665526663266692667526675266802668626692266932669626702267082670926713267192672526727267302673626742267452674626752267582676126768267742678026783267912679726803268072681426820268262683126837268432684926854268612686726873268782688626892268982690426911269172692326930269362694226948269562695826964269702697826982269882699427002270062701227018270262703027036270422705027059270652707127080270812708727093271022710327109271152712427125271312713727146271532715927165271742718327189271952720427213272192722627226272262723227239272392724027246272532725327256272622726927269272722727827285272852729027296273032730327308273142732127321273282733427341273412734827354273612736127370273762738327384273872739327400274012740627412274192742027425274312743827439274462745227459274612746727473274802748227490274962750327505275132751927526275292753027536275432754627555275612756827572275732757927586275902759127597276042760827613276192762627630276392764527652276572765827664276712767627677276832769027695277012770727714277192772527731277382774327751277572776427769277772778327790277962779927805278122781827821278272783427840278452785127858278642786927875278822788927889278952790227909279112791727924279312793527941279482795527959279652797227979279882799428001280092801628022280292803728046280522805928067280762808228089280982810228108281162811628119281252813328133281382814428152281522815728163281712817228172281782818628187281962820228210282122821328219282272822928230282362824428246282532825928267282702827228278282862828928293282992830728310283142832028328283322833228338283462835028356283622837028374283822838828396284002840828414284222842728431284372844528451284532845928467284732847728483284912849728501285072851528522285232852928537285442854928555285632857028577285832859128598286052861128619286272863128637286452865328662286682867628685286862869228700287092871028716287242873328742287482875728757287602876628775287752878028786287952879528800288062881528816288202882628835288362884028846288552885628862288682887728878288842889028899289012890628912289212892328930289362894528947289562896228971289732898228988289972900029008290142902329027290332903929048290522906029066290752907929088290942910329107291162912229131291362913929145291542915929164291702917929184291902919629205292102921629222292312923729239292452925429260292642927029279292852929029296293052931129317293232933229339293392934529354293612936329369293782938529388293942940329410294152942129430294372944229448294572946429471294772948629493295012950729516295242952429530295392954729550295562956529573295782958429593296012960729613296222963029638296442965329662296682967429683296922970029706297152972429733297402974029740297422974929749297492975529762297622976229770297772977729777297862979329793297942979629803298032980529805298122981229814298162982329823298252982829835298352983729844298512985129853298612986829868298712987129878298782988129882298892988929892298972990429904299082991029917299172992129925299322993229936299412994829948299532995329960299602996529966299732997329978299812998829988299932999730004300043000930018300253002530031300363004330043300493005630063300633006930077300843008430091300953010230102301093011530122301223012930137301443014430151301603016730167301753018030187301873019630198302053020530214302183022530225302343023930246302473024730249302563025730257302593026630267302673027130278302793027930284302913029230293302953030230303303043031230319303203032230322303293033030332303333034030341303433035230359303603036330363303703037130374303763038330384303873039030397303983040230403304103041130415304243043130432304373043830445304463045130453304603046130467304683047530476304823048730494304953050130508305153051630522305303053730538305453055230559305603056830574305813058230590305983060530606306153061530622306233063230632306393064030649306573066430666306663066630673306753067530677306843068630686306893069630698306983070530712307143071430723307303073230733307343074130743307443074730754307563075730760307673076930770307753078230784307853079230799308013080230811308183082030822308293083630838308403084930856308583086130862308693087130874308783088530887308903089830905309073091130911309183092030924309263093330935309393094530952309543095830964309713097330977309853099230994309993099931006310083101331017310243102631032310353104231044310503105531062310643107031077310843108631093310953110231104311113111831125311273113431143311503115231160311613116831170311783118531192311943120231211312183122031229312303123731239312483125131258312603126931278312853128831288312903129731300313003130431311313143131431320313273133031331313333134031343313453134631353313563135831361313683137131373313783138531388313913139331400314033140631415314223142531429314303143731440314443144731454314573146231462314693147231477314843149131494314993150831515315183152431525315323153531541315503155731560315673156931576315793158631590315973160031607316133162031623316313163631643316463165431660316673167031678316863169331696317053170531712317153172431733317403174431744317463175331757317573176131768317723177231778317853178931790317953180231806318083181231819318233182531831318383184231844318533186031864318663187531882318863188931895319023190631909319173192431928319323193331940319443194831950319573196131965319683197531979319833198831995319993200332011320183202232026320353204232046320513205732064320683207332081320883209232098320993210632110321163211932126321303213632145321523215632163321643217132175321823218632193321973220432210322173222132229322343224132245322533226032267322713228032280322873229132300323033231032314323233233232339323443234432345323523235732357323613236832373323733238032387323923239332396324033240832409324143242132426324273243532442324473244932450324573246232464324733248032485324883248932496325013250432508325153252032523325313253832543325473255032557325623256632571325783258332587325953260232607326123261432621326263263132638326453265032655326643267132676326823268432691326963270232709327163272132727327343274132746327523276132768327733278032782327893279432801328083281532820328283283232839328443285232858328653287032878328873289432899329083291232919329253292532926329333293932939329423294932955329553296132968329743297532977329843299032991329953300233008330093301533022330283302933038330453305133053330583306533071330743307833085330913309433100331073311333116331253313233138331423314733154331603316533169331763318233187331933320033206332113322033227332333323933245332523325833265332693327633282332893329533302333083331533324333313333733345333523335933365333743337633383333893339833402334093341533424334313343833445334453345033457334643346533466334733348033481334843349133498334993350533512335193352133525335323353933542335443355133558335613356533572335793358233589335963360333607336133362033627336323363333640336473365233655336623366933674336803368733694337003370533712337193372633727337343374133748337513375833765337723377833785337923380033805338123381933828338313383833845338543385933866338733388233891338983390533914339233393033938339383394233949339573395733963339703397833979339793398633994339953399534002340103401134017340243403234033340413404834056340583406034067340753407734080340873409534097341033411034118341203412834135341433414634148341553416334166341703417734185341883419234199342073421034216342233423134235342353424234250342543425634263342713427534279342863429434298343043431134319343243432434331343393434434346343533436134366343703437734385343903439634403344113441734417344243443234438344403444734455344623446334470344783448534488344953450334510345173452434532345403454034547345553456334564345713457934587345903459734605346133462034627346353464434644346513465934668346703467734685346943469834705347133472234730347373474634746347473475434763347643476434771347803478134783347903479934800348063481334822348243482434831348403484234843348503485934861348643487134880348823488934896349053490834909349163492534928349333494034949349523495934966349753497934980349873499635000350063501335022350263503335040350493505335062350693507835083350863509335102351073511535122351313513735138351453515435160351633517035179351853519235199352083521535217352243523335241352423524935258352663526935276352853529335300353073531635325353283533535344353533536235370353703537035371353793537935379353843539235392353933539435402354023540335412354203542035422354233543135431354333543835446354463544935451354593545935462354693547735477354803548935497354973550135504355123551235517355183552635526355313553435542355423554735552355603556035565355743558235582355883559535603356033561035612356203562035627356313563935639356463565435662356623567035677356853568535693357013570935709357183571835726357263573535739357473574835748357513575935760357613576235770357713577235775357833578435785357933580135802358033581135819358203582135830358383583935841358423585035851358533585935867358683587035877358853588635888358953590335904359063591535923359243592735931359393594035943359483595635957359613596335971359723597635980359883598935993360023601036011360163601736025360263603136033360413604236047360513605936060360653607436082360833608936090360983609936105361083611636117361233612836136361373614436144361523615336160361623617036171361793618036188361893619736200362083620936217362253623336234362433624436252362533626236266362743627536284362903629836300363003630136309363113631136315363233632536325363333634136343363443634436352363543635536360363683637036371363803638836390363923639236400364023640436406364143641636418364253643336435364383643936447364493645236458364663646836471364793648736489364933649636504365063651036517365253652736532365383654636548365533656136569365713657736580365883659036596366043661236614366213662536633366353664236648366563665836666366673667536677366853669236700367023671036717367253672736735367443675236754367633676736775367783677836778367863678936789367953680336806368063681436822368253682636829368373684036842368423685036853368553685836866368693687136876368843688736890368903689836901369043691136919369223692636931369393694236946369533696136964369693697136979369823698836988369963699937005370073701537018370243702837036370393704537054370623706537072370793708737090370983710437112371153712337131371393714237151371543716237166371663716837176371803718037186371943719837198372063721437218372193722337231372353723637240372483725237253372583726637270372713727837286372903729237295373033730737309373123732037324373273732837336373403734337346373543735837361373703737837382373863738637394373983740237406374143741837422374283743637440374453744737455374593746437467374753747937484374913749937503375083751737525375293753537540375483755237558375653757337577375833759137599376033761037610376183762237629376353764337647376543766237670376743768237687376953769937707377143772237726377353773837746377503775937765377733777737786377923780037804378133782137829378343783437838378463785137851378583786637871378723787637884378893789037896379043790937911379133792137926379283793437942379473794937958379663797137974379753798337988379913799838006380113801538016380243802938034380343804238047380523805438062380673807238080380883809338099381023811038115381213813038138381433815038151381593816438171381783818638191381993820238210382153822338228382363824138249382563826438269382783828138289382953829538295383033830938309383103831838324383243832738335383413834138350383583836438365383713837938385383873839138399384053840738413384213842738430384323844038446384503845038458384643846838473384813848738491384983850638512385173852038528385343854038541385493855538561385703857838584385913859238600386063861338620386283863438642386483865638662386713867238680386863869538698387063871338713387133872138728387283872838736387433874338745387533876038760387643877238779387803878138789387963879738798388063881338814388233883138838388403884138849388563885838866388743888138883388923890038907389103891438922389293893238938389463895338957389603896838975389793898438992389993900339011390193902639031390313903939046390513905839066390733907839087390953910239108391103911839125391313913539143391503915739158391663917339180391843919239199392063921039218392253923239238392463925339261392643927239279392873929339301393083931739321393293933639345393513935939367393673937039378393863938639393394013940939409394173942539433394343943439442394503945139458394663947439476394773948539493394953950439512395203952339524395323954039543395513955939567395713957439582395903959439603396113961939624396253963339641396463965439662396703967639680396883969639702397083971639724397303973839746397543976139766397743978239790397913979939807398163981639824398323984139843398513985939868398773988539894398943990039908399173991839922399303993939940399463995439963399653996839976399853998839988399964000540008400164002440033400374003740045400544005840065400734008240087400924010040109401154011540123401324013840140401484015740163401724018040189401964020440212402214022940231402394024840256402604026840277402864028840296403054031440316403244033340342403444035240361403704037440383403834038340385403944039440394403964040540405404054041440423404234042440425404344043440435404444045340453404554045540464404644046640472404814048140483404914050040500405034050940518405184052140529405384053840542405454055440554405584056340572405724057740580405894058940594406004060940609406144062340632406324063840639406484064840654406634067240672406794068140690406904069740702407114071140718407254073440734407424074740756407564076440772407814078140790407944080340803408124081840827408284082840832408414084240842408504085940860408614086340872408734087440878408874088840890408924090140902409044091040919409204092340924409334093440937409404094940950409544095540964409654096940974409834098440989409904099941000410054100841017410184102441025410344103541041410474105641057410644106441073410744108141083410924109341101411014111041111411194112441133411344114341143411524115341162411644117341175411754117541184411864118641191412004120241203412074121641218412194122541234412364123841242412514125341256412564126541267412704127741286412884129141300413094131141315413224133141333413384134141350413524135841359413684137041376413794138841390413974139841407414094141641424414334143541443414474145641458414664147241481414834149241496415054150841508415104151941522415224152841537415404154041548415574156041561415674157641579415814158541594415974160041600416094161241615416174162641629416334163341642416454164941658416674167041675416764168541688416934169641705417084171441716417254172841734417364174541748417544175641765417684177441778417874179041797418004180941812418194182241831418344184141846418554185841865418724188141884418924189841907419104191841925419344193741945419534196241965419744197441983419864199542004420134201742017420174202642030420304203942048420524205342054420634206742069420694207842082420844208642095420994210142105421144211842120421264213542139421424214742156421604216342170421794218342187421904219942203422074221242221422254223042234422434224742252422594226842272422784227942288422924229842301423104231442321423234233242336423434234842357423614236942371423804238442392423964240542409424184242142430424344244342450424594246342472424804248942494424944249442503425084250842517425264253142532425354254442549425514255342562425674256942573425824258742590425934260242607426104261842627426324263642636426454265042654426564266542670426754267642685426904269542701427104271542721427264273542740427464275342762427674277442780427894279442802428044281342818428264283542844428494285842859428684287442874428744288342889428894289642905429114291142919429284293442935429354294442950429514296042969429754297742983429924299843000430094301843024430274302843037430434304743047430564306243066430744308343089430934310243111431174312243123431324313843144431444315343159431654317343182431884319543198432074321343220432254323443240432484325243261432674327643278432874329443294432954330443311433114331443323433304333143333433424334943351433524336143368433704337843387433944339743398434074341443417434184342743434434374343843447434544345743459434684347543478434834349243499435024350743516435234352643531435404354743551435544356343570435744358043589435964360043606436154362243626436334364243649436544365743666436734367843684436934370043705437114372043727437324374043749437564376143770437794378643792437944380343810438164381843827438344384043844438534386043866438734388243889438964389643905439124391943919439284393543942439454395443961439684397243981439884399544002440114401844025440324404144048440564405644065440724408044086440954410244110441194412844135441434415244161441684417744180441894419644205442084421744224442334423944248442554426444270442794428744287442874429644304443044431244321443294433044331443404434844349443504435944367443684437444383443914439244401444104441844420444224443144439444414444344452444604446244470444794448744489444974450644514445174451844527445354453844539445484455644559445664457544583445874459244601446094461344621446304463844642446504465944667446724467744686446944469944708447174472544731447334474244750447564475844767447754478144790447994480744814448194482844836448434485144860448684487544883448924490044908449144492344931449404494044949449574496644969449784498644995449984500745016450164501845027450364503645038450474505645056450614507045079450794508445093451024510345107451164512545127451294513845147451494515445163451724517445180451894519845200452064521545224452274522945238452474525045255452644527345276452824529145300453034531045319453284533245332453414535045354453574536645375453794538345392454014540545410454194542845432454414545045459454644546645475454844548945492455014551045515455204552945538455434555045559455684557445574455834559245598455994560845617456234562645635456444565145653456624567145678456834569245701457084571445723457324573945748457574576645774457784578745796458044581145820458294583745845458544586345872458744588345892459014590645915459244593345941459504595945968459774597845978459784597845982459834598345983459834598845989459894598945989459974599845998459984599846007460084600846008460094601346014460144601446015460244602546025460254602746029460304603046030460324603546036460364603646038460474604846048460484605146053460544605446054460574606246063460634606346066460724607346073460734607746080460814608146081460854608946090460904609046094461014610246102461024610646114461154611546115461204612546126461264612646132461354613646136461364614246148461494614946149461554616246163461634616346170461754617646176461764618446185461864618646186461944619846199461994619946207462124621346213462134622246226462274622746227462364624546246462464624746247462494625046250462514625146254462554625546256462574625946260462604626146262462714627246272462734627546277462784627846279462814628546286462864628746289462934629446294462954629846298462994629946300463034630646307463074630846311463164631746317463184632146326463274632746328463324633346334463344633546339463434634446344463454634946355463564635646357463614636746368463684636946374463764637746377463784638346388463894638946390463954640246403464034640446409464174641846418464194642546428464294642946430464364644246443464434644446450464584645946459464604646646475464764647646477464844648846489464894649046497465044650546505465064651346522465234652346524465324653246533465334653446542465504655146551465524656146562465634656346564465734657646577465774657846587465924659346593465954659546597465984659846600466004660546606466064660846608466154661646616466184661846627466284662846630466314663746638466384664046641466504665146651466534665546656466574665746659466614666546666466664666846671466714667246672466744667746680466814668146683466864669146692466924669446697467064670746707467094671346717467184671846720467244673146732467324673446738467474674846748467504675546758467594675946761467664677546776467764677846784467864678746787467894679546799468004680046802468084681646817468174681946826468324683346833468354684246851468524685246854468624686346864468644686646874468804688146881468834689246895468964689646898469074691346914469144691646925469334693446934469374693746940469414694146944469454694646947469474695046951469554695646956469594696046966469674696746970469724697446975469754697846980469854698646986469894699146999470004700047003470064700647007470074701047013470204702147021470244702747036470374703747040470444704647047470474705047054470584705947059470624706747068470694706947072470774708247083470834708647091470994710047100471034710947109471...