847270066508288157270809224890536292249581265893847370205216417081266691568478620263664129271436628373356322055240157153863907201437715545341214174819366369892253791888813184492924183281927438994879648899685416439732652937434816818146422875601132663425468363834059371125360871094651858555175336643518798766926532394339294009713190306486368077279392584579766036075189927962674192866532923216418140460550057186090937644828744163859838697367824632931689523199903897138626947748099541723372525758510320846772631936328371569943085772154956440646124078703358853113110028627601896155575444072350283402753600944289468834981334231432290298196177781640104880117870452814104600935924186403625131601584682559544851689777549180756369849375349599305241628220589678892226194675402686147252498829508708696925119243914682936659407852185334766585085277878132573188455714555600166232389442972687297646921498437873592927443449394036134621035168692121866044922878547673824312500673481731132073024724752382867657882525355824230316988983333513781748804878385547495877345628375964858843565427430768908899189023099847269662771666909967559870403591397606666526411107739792061852767794632308053999634638803215391388281735873013244698769480222788566595156269072549131187871083212815678396087407428759518604153167482984664841350407717515278169942956573350469606701387011541964010317583335973548823728928356657615966268421923302479149208167444392398674608228582039521186197458329579468809045868183553149813871297674144142366328358690934566024321391373818301570568140552605939940714621227976155660635477121255839254652191791239814893974824983803818213452274068950825057322976751149091179793869894594608043237305103211565232536088771663218925853332641492941089479866697795749433582768502130140356570892511564074047995134494909962727754868984520575298114016922379333752734992554005097194895796675187735742749102596989637435080766990781062652087884853648875942705538899722124512780135846371933467361778687098447126107614112270867463299539855666643599701027655273384894092835192717465261741798675353013516164935846367140635296938642575785136559388025200112415078854312850558993704276565115337792622658937965155723476304894469241220913365475799385014264908159846707248413454478141416337915278362178489287739942141010453759374119185070953511417454206931958551795546746257158370460270723888408797935861430554522344208968191639952382961866486565164874817556807532182678539717944953088448494305741373888890867452809275844926282456435568879451492328478648871814477301950282748599013844382282395377652036532564969532255176676714249972267743387323763798727136005253957789284204158341391966944855979064684694528308442594850870385585657888390679971805222541103511327931585934606268401499257317686164316473914652295087487380446628309154070716904478180186441780607977701675405871137832867916229403329931667909550819085556119828729721737399866468679809224116741355135755452877628475629448470534562352507878623531386973578655423821437403282964945161731706160099466712329715393857952526516067859627799482471311552962904570234750948663857964991614658315969049057368972269886765425146425625784988088908542422706585245359377445470975223029904100637129469382317658869240921584626064258246649453218905410107598711925323482596537971567757376613094161579983248961428265277566270988135203729083032174356652013249120446281737914902947613372241480747031848709238927404076746363334350717717966946640645596234480547683642635417983610819897342794822499082288538463473465258154372451305867567260938342125493792317398583393779818234198963839608079321958784513986055453382833158235323752405614008470619140750825164657176147890425453106209205199631353784046431921011951650519922748205373772817304671676220865840247496713182876025277131185236212507702162226776179129061172174759606212572813084795295714146460556915062617885147059566541824132329900074638462304374249583852876715048918141577026981139274106348397822687323110113025674529945967448320374221547522727666439047541392772302680592013263879539878854399599138681697631747676587642319562054179538768309855957307177627693613164825249173592285968126274062555642814684066952333305622409878854150885732879139770167699019458937401409692342421456350171435134284660327302393864671971581374013419241158039262884841716891633555518101961270944365724905393422394892958324071667651346402948323129952153342966794585410747702588144937502994374836740149271731269745792992387973535468829836853646751579457653027009418539417676712911123703224993689491117531736128321574974209591365614052747401793476039218430104990776952563591641951727349356977046171773424782457021741759783202399880966092989845173919504751785421205663261736984815710868278420891187701183161040249049719754097662965358997009218912305433619097081707533367269360719344246534145392978511070642446395263791976329989129846435512371648798049137859629776550743674958202335472975407570438303835861724719488075107041382202618239735581696253228543947855806849906967168963872424067641027908864917972388976976019946893283601659490395891658384554418504566145874565600182588397800522916766563175716236266339260251817508269525386959350348771386112998931811667811260856605983571683277579393734911034168627560042663200528638529076410734011133864248722227470220262975654469534838631789577094942923747032616584089594241227657566803385778496077958953542853646848687941154538975137382199875134634248068138492051827434555566434921872323733388399024885862848130403341947014763161865821302340515320480365108831708174137875827647049111383154798398036283728329599276286979449810505276524492593466398341769634204955122795990137843908878884836764807156439224687134394086986678551883359643414736217279469669978037297867372181581839711835956807980297569787252410032417610636755966166775073743671638557724740516188694483682320109762