122940238278336874166144573903256136242902773773297863794498435342942639913299894768433184216980750835002423928687446663980903469844626785009866767857684399685775273194892989515670075252887402261986406518919691236246760666594100897046698386485537169745564587441767739290833851912903116604382446368605517414671413413806711554067065910470127581220783651319801937558991517342988343978827539569368734209418336396859694118454963600261899902037616689167321619657426118976938728372982617689792039788559441671317734668166977429415763694596021990625087292092354371894312612585365917952120914756926854994666858966464557813792046518175267668654743161450672059568594144624211484214778169227190649457542850313773517822329987405460705338529409996819746799488353585632421405306054316771504915498070854786787246142877237627196014329362585965134645605713374153793746757822660557311494348627205113543282864780338282000192480816011321832459347337848714380627778449603530810654877087654288214252706975632884029975117128906892177629476186118661435942755292427611942518615490230192964442996835056830567262370183304814947352512006648211138011584811254734687332810825046648941169644116075915558326369764724631581349947792246533884337651602369755978029553556206893256648011944056739915069393122639375484665749192508476721308402346628571394967280644477235600879798599155727960934459349492895215404443698782048834999882258178173727609622925063701824371093455811717721377634040726836667744012686792541701198832349751253422122933439603615979617570676441284201629350582628939391230781005969446169395104022648878640374549876797293459160862293196700685448897403540272453708943503177554553295368847883652511682429977346386243335064906826642898583887846418361185435374933619721808530514348393960281978654129521035787236941404444221389363297597595581629848171423206508380127194828621259385986743536294357675021378270615038059603868957394095427868221489766274824281439944944450682188482759839004565672410338942179738096149926877793704531797229864150495958063368927551639643911096195367722128829679576179143296326463886893421963767956983421857449725124678714224469230630057263163522584496561720735988405194661529253504615415613572294650651892883458195282570922952059884623533952156401855503799598037474253387146913036977232942667238674731945544818899884841930388258464684049880415128248466563524366735781438546890692772578583047295230842253153519679343849256695249483395130469762478713530655240203161807963864250698451466865143392934648085076073189439516467485948363378673785852672848250243734965143710590904950482917803113722594936579426705164101882229030385131745417167220969727309157954484758906773203675127552545276122939265432352137315950549683193620561575057597534584501896940548868933387705708934520164876903319891993877436388960603832111906422584755457765942301914849573822664005920745192414235141048945324793456545516516043342569439017456318904264413999775146833546521608364765062379367560027847147190245665054695858436350920641879352709863991536939258673576515871616933077542533022555605347546285546445971031417410733285733938738165586936175404282450137407821165644571933519448335075101261652429596628270036367488685459477893239519062601106283218010984472232231502295465174812418623553298155672615336639215642196154823879329134936701871477765946371386475765810038862464198778917913536501500997959561843492588542654263622476603143031875527471103463794661018030258332281934582379479197416838479735979440430023817046948195199223714840049108715550502135540193232382018274842261668594323354045478649296419180192663901632415549066541443273980812541198557742591903978934645748748832577641202566782366098881774944662519001286335395990123174826395990556795462142377384045237764353892415741873376347770979566432707670252713987425766585321756757449128329658735613612443519358489546252058931946824905245330295289649514497272211040543945374636591838524671132734483648207637850719613393059429012569381835292256816478455607072897309975889509471284984008994104727624245040075903336981903116944623807452549581340899062061434997869501219520193007563400028282760688014051226853731506813342043419026765063978510958850038838970894748263939539790010155808162036646797956502324584754389268558768724197858649253875271232066304029898257709869101603710557517172248932452599223724003089444100933354163981772867718617800323813943284370874709134986691394284320160993422502699291338052726556649672934819491087849675380480520101310927427591232179412898930805584909350553358574278040272822299881855326718798335447470487893761753549645282612109553365992954675890248177753458464984314122589364344624046700956714751291262070267899475574047487434881126996188060238725773462544848185768871419371408795714462353756731759425526569085783696387677839556637283614300307621526504229638063471080907129289211257015739674056544409999938445212126672458829882335747044212464748738775190212833168351637861986152671892385035052667751093033474340488697540760213266394164192735946176319027507615923673339642606464851318114318588530337435268930751360876263785136893132441319354301042461880888781637404276627227896553756924135829303267371379686370946921312330858337229973261207153229191676674683179373704962163232461589894902467554149592775388072799124749071529472244595663224854538713946800559663754540995658625961177831122447335874923297890837150361694162811189549266797374444536157603629437793915721817155345172701645075769167571756413833731557937743593116528436593133441215975776095357668353052273901225994817479738946499140496444953486535092831517330551543548448996181175564818809932486819889218670125918006597197537688006615554915930168675746760384877022634490975982043207034363997959269636881315695729684722342558463899541865057793638831049489133685909049644816961875584717858157276383438060573673