3113447541915776980033148037346312219783764772841070256446368026209651179361603349287045586385647480957101115843623856424345668326949436160364204183954692399864798194064232855318598847850912783919088290685248283239533964852911760572924247971440196181792340244831431119643609346683164719089257799887778865784455469649697089238732668459408549675359122255462130708412037136427367159799421558713342417203985513431730127717397591891962073330151516163658816194313406859765141193986910674125374034065648861146222774134113023222844524338520418148712976135771216221716717505284442744730578003950427766049883167625678640920324009710275774384357970188843338458136688595652645273345152251903536987679302538352434809754664342709362129785613764698640312639874167558802882193700086511676507971204149308640735192425427363366009790791742864142540281057564939643722893340961017922015858190071643310865192756517009186876298645768488573923383449841059206924767578655207498125376625872979940032752433570769103515638658878341939392035137575925955209816978182276213593599054555581878074976316777148513572212701202985942383772438344198827164476687384153527786043956173241188265982271287409188979122583632425242055459510811299971687638184292157671962676195142965227600821473522193241149981259365529319913076879047869722294789734534081226950528796339152328711611656534322963999597961702734439599007857688114387933689859984859878326048466684715819464217343716252196526887505852833868323731880478956169141032037884782915246187545515713134542489533907224105379777635909423334088685425523488936874346648505648780463967873949437192520319287406481373483432854446352033826447846259211017351972476372430814608886758546479448191451163744776298111999228173686107887520982923674319042504835548679817758162517611333066817694531577258745067271463351232245859431871561573886335080909461224498702477939963571377095395701493718191816473042593634390217651069526396429808919158766244202950716775490120319987189128448572504450531827696996022316832558827196436669420624083991485420136905627051879370530399444654151333134112464827025660439183075673168620229704493684343557614908318825570521084644797592979913868854274941408309253468557371375291143346161363342168530814862184509227899093885459137322935033841330749191873970638823823408322819869358471039222785556697984849744520124552509729373863007265950688244774862717085596578391606207674624152733045322957956103477384038345286238696333490392985503550387516441143038031849808513576996454767762337332241343860886320864289321667409898596834868937606129205392234321210059125201497934064255298178134940197848538031357891132321607133248219511309013123048596099264321195036503569218147542610375198944537608780992014094549386066018069510121895699334436167113773144465264853398651515464234942811764525288127636024502890946257087769670245885633086269473521209606216188514502151329715906112051825393825156132923942368291622856548212436930928184267149791688067456040341093142138134026525760544323210161437022648516855352582594464714322219946586950877192578020865511301467663436615432489340646983328526253441188019085874544641083452999722412724232650074567217968625495829786948192098521078593335552709381690198106627160728886251454172435226253036785906040748880558374151516996588345054296883257168755937120550882353942636223344599523721682799677535134381255066943532762623557136395662373804705537991904599578762651333291856664085227087748198089128441129982546612234168759374565534820452436973662847293777654139504542104649860763425547830690997735170448536544562254682583132349194417311806358509691541240175044853676973404074825769992790309787089200709996377584260358581191281278326246972323391170617858390243503605398393804059277378033439980432114234653374981514329627198843905562411716315970940563586890945204269739041717993908923602943410489708780384882944278474996625187964615482971195634224832978585688135185507137171907789788265216539584154757532105846293997147265251226029395025646160430453739048325216217216743893549611912994775059439710364641849350904623988252633160518858742541486377128587132604125488457375746248248558753487159647451596023416264195355505386363424867530427129330465488621227219274620516912107286242131362892364862044495267457421940225687312958753731295597238033162978613379104228942114975881708278964433255877227467542154250247342489734148139486121058319115675954971203023704360718458609317927514534497440574368329834377294773519481852444136889734213603789178324262646346444424563076424566786893528022369492924426256998254167192321418139733758289050826439150864369622259627417699387166498211663199962028778716399477606461353313535606943669847145249376142304286056013129495493075739908587770008944865874243017145134146239520129066234293653218905425467306554360160236799847744776786450835334839290042657920283897183217876206856531956332115301098473147330151342679140787892612497218836581062453223568923506551865126561149831458072031104401564884247594092341637543702076139192091891080774599803039700417817654259699148622424138936372989502869943254618849764427487459587681350948650389288425699385025939878196864725784011931788107281701629729763107725189782057189165095886320517289897104876957862168670728669620739058497066731434024803492201611843879872944483987211743058174124443344266513387867741365162824386987756189593246118456816601121126285483652655275403733249263382386331942875963702643189305715315218742994832657894714429682571709644225370748664334772532950895369533834869968041211694377257148458956512829757826941237494972342490479265089678301189283607078550768919512699766841986804888871679366812208050990957255903348508152323892916534054394889832573039797208711450549438432102552086283182662181559890582780126150094672853571585153693310875943454665252137739491147936266465325630