227478292564959834624158145933797357183808944942487098461607951729380407023708461217928433012422891225756301498991103597478998372284430894960243213034381823220925443619684788299077587728908406278161416257243769081767015114114797648136341875601559576214890472060877471048168522498812718399522446008843466115148301030308857020936798706699119731692126178239985033720364166128143117592647211745463544838623636897138946891652181600701827531109900041662733687362194851708289096605685781837851406659551368738929626637547068760130459189513986383771051500939037094273278192878096669337161768640985052522441247692649062779174948856030271846215258434680342213582800609780164161641954204676243336906552952343699779846062567868213181954804239575684907534782349854786222359090541124205682278415427883187553712955785796068936970115829748890072646123972248955569280027624179244544893203389416524364308459098019574317535263900334732045863486646924363419986032177293921398106110456013690906902570251545866713938634902593448547617813787664903898393231279417010163895201669200987924351927942529134236163418562118259791134874253360830514917161820643502175649987549228435216466376068392780795779989168496242640683376428952165659936843688981397435864218893117489813499379048730812244787537618656964594698435212616376097818771520942898089845741506040631925363538906826524406446728629422833138144123164234191308940664210323857248198289513144291738033020338921448023127778689894595807622741892316404437621167374246799206255254836090187085792089459248514341075119238636556298111792954550440082534389936914793896793525190645186287108640993413371543063832776253024653953569763860347039410836011059683762592474672927712005111864579973201743342307621898767340616751120607223725046226723994007329239789282827359619518296456453368887401437951593444890290798711208296604785680384558424452578815293926775862727689798357892310636455487941248437196943853268765262333653378467440899567053484719375391323895723913895837883958290138628888403586384953817384375198574339381215186925751480884834326747797084634162742398515560375338148155218039994171623087179723088294261523898009200458787495163415817027398374061646940435713493505813087700120253187444200291708893921928573708957062853769866914545757064428473773024722688291975933283805068871467258426414683345332843759018138195253744641793819570506128586371224998052220893279377412588296130123880587778517557046081425333722154523890222553765251481832612372279402623966380078264841251315219264730291482156118518350367087418636942293643082521701501627635094293744571288642346251946997229446472090863436783691565839643387695917846937655257365569032234707529341582139905494979423385587214998992935221728284849252400468675235358307102864809834737159632960169115559004102544515425234973431445262353176313782237929213971544983774605904431986595812089621327182473788935498395569870480372169284147313040289642310688158235790410773713932736409539121589462888891879459157494439628046440183735986583913733055844689370407712907599562277828499838575215719598293990272003089250375878239493861775747337211365378592917684791700812496446624213131833442018962730659760576127412114469869925575398509261883441376622983286982187671348489024622996166246338260630737349783866784389322574492202374178409376509245258794944953731800596078927898600373528690906521589276912070871783207915535773347046266814218061917372037673245984241814259473960191258408592925530919928494140237146303318306732021966258363584153166667041954515628604499848327258416097940363537908219838249458782577754639410124643713494774598542757376988153440142031474679412238999149848647286046532787288086854956658028435045344961508419224817822886954251290776644726853440377046825194225836652473375515649527651821533184178756720527386599257348189352298705150971153893511993493349645594493723396475581824132536623862475987389267694365011849772422747492255933524282868940322313986668762610831500960330072476186974415088179644103177510310063492117029388285779618966567840884832279783337988706432454138828507660928077566722182120766001872037172835742792483941437418497672535941484972796773250948055979265778788881639744079615950321430990824669105992545720519135808126528289860371037718137032684782128160954996504587703414600831297954961362980975075945662766854671878187276171168115555487914502558949155654752754228988710931473078735210356719243827698708498311373893629481291225414371256638428266870056833675199436139599142094971005996851055046341233531331677475249014414800082912607354628979447162853186587166739841352754957408562238065398992963255038238337349472700044847478078418779980368600926895968133811020058423799767806529663195298115898433425172578639528638148118099336264190764227484742088538606928428695340367282319312400132989497430330818938590547228891205403228884466715650426072482394760551800273194899096396010315260309087892347943251255201402403622336349805904993462817066504593832858297418526799194145367173391151684189966329531594049404631398458038126147471850705437863115180237148408172517976509412293122819727652195914650437837481440309377597630342427054069540160999912645213448866118224438465034515130899732756742302141825643805184828533128298940321403467457726445042372280789448566738074575436276383688856712598412400569365675128928932480579295600235192105402942853740492550896416677641295578392754205973154555949610134271535568984158979413190161036693045422102618723785512760508218228873259141454224283995809881567062604225402219052875269783084981225516022647775532868885937954130137021284469580505785825214990444885350406941603202892486117726619863374552827601522861702204223079456444834618716947751072657269137751066353801295677478632931497896684713691149511073197838412579762806958195212077666642559642771024722984888938877447934681842032769820262647488516387840