157633311722505426980002870974245209831788689868941818210937758232044816308964254492185546544409697183171064088542884435890344084677679028208998355118889728384032099831300177616136176591185181551413568391616679564574694412385943433363538705364489741122942974065839107253128409478640069225857685088472531421074476278371957446384766825285128967346305182582444136215414166417213983388347682531974251711606731248660837188482653475651202618688207646542497233131596923521578023546263559204913250047701177454537618347783616636128741457713852670530194977339712671815387043184730541740798507753225594995188072457620889228257017118414297606466368549840937317543433156822286781322991988953701931809199888653525792727325964316182504196514064548238058667508935896327182430429958641217457825971534002073304697911809308617198342949890786472179313686520870733646152620964342191776125542859903178871838196418843521291132175471423185687713059457442584245389427972559740046888993738696821900912723384161107825112388691252569845807358912133541585223758775275808253137581812357319201654186026271779534491723200779457213749886412115209741329124800827693449220480138015919503324404024841965886481409818484832140144887641161020018740656640434676983858314224867068730808913221641407556533456018533228633694970849312650056271067366760171204800364942840381786442497329876059981562623767521543935249485272868724631752598992375919675579851877973533541159871535216434391908138917163002478570404157960832796866990926393060662230339037649265359335114083308539385460486165334615434231281833153181504586364275503814374377440042145902248459038812288864879751429611167119088301561018847521255294450510688227282141979367782874350932392860559730944988708930821825207425732872959773111529494346079724244439418768808430421591142306474473943801979558531280553949316856909937586470113676346392102394878474869338655342077035703646895212524667021212006162475775257132480071354733871565094946925423574603809436313756541470319242303335758103255526341447696432429021128712676491243478821211334649965220255106538040286648117353753041958640151426559697570563492311592481364399324901501586074879223039735205347294848804401879165081707940790619067228736530562379838424621411028250324419514086421648419012898284038908305309589724875437145272759698110643258978152042190400254948472015711549853015518106269246287156685563519964136739504630095147767915085001630337713314617958210788929697327183083183835017014834643258939538862301679312211678158740615251588162195660711988855798986539179703934589383209525256194829957954411498981321272759263418462408725834383972037268338014071165154195658755248195853741749969711433948046810289260662892363529282653213449832267962202264336634301406613583600782711495706877189886608004676957317081178857352571638410764129553711206890353565766401354535121602751072606239913619218371290216496314870176648504700946598026014960378874810465414265990876165714704575981784569776667049257914384222210513419155128439251822245199344242034570954072154474927116528336935995743047174139549907732381472262687560746527265282938266555042190961558712662447829763626277996546340150139651519671756682141974743640255913741973964207520433479082653823174336731381832723219332878713718573541893242739856611782498275069252149886705101701536114250900899201031775159679050314284458998456195294003558073858439779074775908585932908470430647671176219765047375944107599957629978559094299960577953415759796699751441806098535035203495666290783461271857772601398248732031859834215676742497030698413592477672686968349968033308417226710427680384981704925902027934282620584287358799098642399487343652239931340329047769650181355763799047033492068901661312834178249913193757260152739525374314672785949114671498218910626228891941232288721211093744171355801410302343350113417747632128745276046621951093014126429657394043576771322242574563215149761230193675906242715329528835448404497368905039177330356327792769679973704183174048437336581308945905828474808550491436367587878143699093749619186555998142291445539025103349987491499060744993213328275315727481781500518712333348424388843047427142470537276787273278341170470567421246895319081508458798029448282384945984053876178564797401529759728553482188984107958651178838135992573569545898720899424468079883758054425341531496459158127845969213870025729095133423733122823028167743666908555390478352566843403615913963874413379393695012255322287698667373639676473009165875126029414234874781276667462202355329778027868328360586005481868694466967088187986859481002299842843627923141989772605987775336470766491346087744229898062678412277762454715798843236420355663897861069461806349247845488012484484688370240842834275336543066812467401213649152716717036865789685745540725737628365543235791846136325706424935130138626550224286424604078639620810591449435930679175244958672781570532421448390368854773170891830543457413534125017193533939140330538511296521396031373366730513564217196169003982853931058517053536456388395445509188033103316816793532426731282947486023313626547994967326231494770824896576574402210912381675819185369636683614791416156708726023356152996708768445847169412120251783766684083317632862945489803385922864244294447624781219381543239167082284678717664628157321654673838317224557372699188674972218429689937714485584597463199199246490194347503793615453206737135638712907120371010197692096160947443918031387119787000863320841483120467459927690875637804323396024134671950762213627357118236419976474740911080251038609985088302545591172353919363718938924876151129506422341411444455220764757744579963769373831898339694438580658022652523790812039103274397737645637443659684414853279041556409475110057542821909488695809789620798079370321646826966797515074358807297841711799192611300632584176483863602554308339297461260449348916140879126760729760546811