90123210599569798277236151878943966875697748299183438297136404183668075893978425792923785640451527240859174236640748432839946665184120296327503817680162618856293523458568901672486995650698899381272647635106100865164959033652478753381261292925085162917927878746532312553798824656014901056158274383661183080723348434773451092336426582463652509860679145397815662803256489923930572412837169042273339619326117456019130839830556647500190995159502248654685206924023562324020383568398708102018982890245594896871418510858255609584623347567582490862813148090316082642318410222488339425161379396832278407776313094328322486474836057422712334654995036147947623454969454683933313057272928918563108349662748156076634752833508667065758973738165649612973849967492590386572799645677374218327324991654292970191486546159803337606258562390514564725488825580739401984493844880876166128158797229342092251290895054881558936237056466881187971469459758328108266328069123379794851369676843570325995006977240752123821477159716614588687030866960979444620217384645386878544220227596079206725495178458961379702895242626884807650841435227672020783647591668245885193227987767757254237144944387129759720141622625563941489911103328349297458296023025601369794351705570484545651143064511978103889659529461841602902628532107558693694131925174435779642807860803862777074729268853841637855659125180876586687066749672731041335922690820643223309132181209222013015093494983957606747983935934941104049898327518171153378642246514829153566743554390620816121275561056686264217782865314337579804222718153364461163868379556327719392226262164278989925322491814244255988511814758804493841411153433908558762060420751905355439044319584877526472931664297718366497161194218115656264036539439449362207923682264265606512675125821465985771291829439348402419327599785844226206338513943891950057506674683378769593126715647465441714765975890221216907162895669576113131533652470155034982893493601757786595311615814031314491665393733990547648951919212730811419851460647568448906559114495505534081147075886292494273561114869453463778108850284372935733454857495781380835433280268527169061101631304149933975815486507514398926312238615240177882512980147628394999133475878166344026783587534714725641430796992818166230859814791435165697532898455259812531611816836514141148789843462361466450992750655920255659900251506629966416244724418968835229231853273844941293036625906158539044288970291898879564704597178723268624868534324063077175825241529940787225183818409024935034094171961942402461182569341424227277066878342880082032806162523135027300977431276253712883182995929873947539924622887286837238508085029767318052755942756818686221903574674953589178468831318431104318512871395346163916619698676199085641145539409022742260766749656634438848299184576342291789150737709936124929775054810492571848620659988450175484325104722488901781722014955370492330013102118661078751420996225600226180577500233264674221177114267947469860868984129382188221467606467899266956783305957956756437893566355839411205700168740521305506201514878042783328562998879272469448207811904559203120246478193739617253123755844592789173785225053088698371923473811529156622215504425715502872916232162888964189743089625615995344563919632342911115030195600811184649456433927124182298055778302602867136680651141189341344704944234688738298390588679852891278784509095830745304602271252554440811690143752701843051954519828631665894206184596271907275602909758195642964527396555766597611305258918178632673359531416996519752844246975883115490692259502861479135669317075575269112730255456292728985331527584064946274956794983061756091237086965298377296761455619305026257970033979514693694436682781719208974360951278958489786915017925812057792660646137768787440015914991311359280850032505843717026455010660165328103416596818002994820883759751269599422628330227313533336207421896481286973843143832347501947697091549295683694076559580020899477583064462936497409820512652860380691253464065169730599388056280444734373193237337110121863942628692636947989173620755045991028053444817650322284450816527152270031371184670713709235548613284619368270236972140525386397904235711136301868198716328858337265736539966145348953317614784056250497169714273487116612974906335345314869295765375290233792653883707826447667408391589133327644124824247838656194126761991542808022394567923289900627121370357970361108130148233045667992278778366684063215107781896097892187958359565431019796883265524887897102227889750523199195198499282275486860415766800332852769552481852764788211168997172870886258417544260020435321655118672330557262133502536962139750707395757847933830159858154339962114632559371447626844388017539319883352785956995410705693767693786962359050142369315759462066348846860567474639206262576721285300612570577095663372840477264447153525801554128421286308445332152342093082020130590192031907245611523447090557871177777246636131168742473377640721147481352615955689552057165628797538698287312463425405214796472185775571371446656905131493155188322205533197691512129203561491994367511870188053923553976273416793385490453667155385796072611924481799721129547133335872386163147466793140925516182640560283125224691964025568291369942043064116162046851148739855881366419757459441646963985783483288468438965410615648088651632372033781822402351228536343941371193017848965550136578348181209554253487223832974758292486787755155860049901288487937507983333932232517741670865396501592567795193724252375310072083947461555036990992531648627222530892049485958644843163283627618339891831911346025983121241464562442862915127331464735144075843440863057369912812726233309870187117207270561110877797150687616619373712181422728862973376189966399387887634324339170132199793357406955614573702356517692242183367613293896449212403856239435226918246590397876036386997706753954968049779607446176724132171276182995579