3844687317769561652911579563207081363888513631478955514388341159171987619527171020514269723618743703891879382560981932654433613658108897603468160140102482308641563722666096746251722294725269421512993964141696373736749032864437179434469994543082912537290066927658147240226848277835135524219347852358021324125958087692421748924248381013258832896948838550347315810815322172080166251109062355774297789642047387038226596848844914628821508980178976302275799925113964989557818511191415962148506991582660388699244429975354672532874739036373612780961534715060505964692238501580578022875537745967947295527573782198910650859334639328376404455950793889050331299721195695616982369708334792256360696586528325979317181692834089239564713489669827897446914349912585015605977063417955732359670716908298261160146517282299957995202467414918100760336489724724566472598219019314790680290568688239037249431496719794485368738955611434495011953268747784297759675345017388368144221856681376664659976478066775295133642587766409158534255636634717816675929112257780469693580175073821405942131242977734134627654973156513737824492435141293063152172940645867716478164287373899665787059560162020118969549758689052257534224423443613429518005603946673630241888205342879605798611949805411770152164287149053210129161521384576272878497668527185236232196216227218431949744855051488781427425715878381869495655082324862823203392487707288179884392946493448078783850330976602398038928713404971933619185529278656153722757793101792769192781443937830024956904497333250266167196621998176385334737210670354564235975653149152474234010184087872439777018225015887634309044308881453143623657202449585126853205941025496368789291529693952680516337585302960841545923395002440214423546617824845353085957521913491369469728175414587297172728760912588502696148699503092744085505352453245113950911275204646315701143367751707748033614179990769179186304977028328240581686813939789114695205173209949165470199104074546195423640830444046663842812879679500148695932258537564999553435408698315880711611279780325431173555321723294413974771120354235397117229245043252259796538855818462913346349489648016695482459955536771141925468219481745525522185793737245814318445586304162728379004242496034088274871833123819298410741986973281042442969874094979505919117213782334135967530678514756479860078884106393855977778819642043619145235439566510302590117322673275415695710030391425439511032693477018745738141086828295308991880455619691884236039323396361055056439412489875066444963145836536856926466992000491239612852903687523353852596176112632821146889666642652855931806947489598201676832218133488169176544534922365685878665885255297807216898537544392537388846901620096848833645288131122739012539141424612054154930940629269419994286858833206892788645289039712092345148333117996923494203992898625458841261034923632476794188242655949301525459165222947226019363793362934243645822410802635402834772049114259562226144049623177308945837636255679487943607196744973951325745553385162857069349704704678187248984281723360726145652513596944362535326672462131917747262235991717926587766723240888875578892581908604384784082869388830177739764649447279408402838668411993944734420783664111962293806341044992612349570990507345826369719017138560496836484884918565613108669880837914805017315468233558026728877739583268215263406264229022955639651721414360592533645120116786609887118157378493846197688272862739493179538919350334370333960986044764296899598136249209023776744551547921121296644381664198490639309954728424791789211541650454648515398764451673584993957453105765148457052217741031103769322564324102449274566473190577543207705625824919446552433193698676564585328872806531939847191661006606278881063059907139799886250359056021499768057569413989922325973947577682223992525989725995734083539158528892710673735843481435716662509529310995194984980231121006641717896492710532259709794757165642942028362965782718911969868554114241910451889494918581526988717176111892711910792839143970183157258552856593752009618045305869390683296705707256907224328769861638835550091343387684229288195643416086654240229627618661399109721348199991670874145127325125393913868199197426537291593403286174188393799359797112841611744175859703560941339707256705697865409836332549052713487828836838579756147688017201526404618217471886821525755989971017168764371911218346346438381033039408415048656731322412772265164093572742836182449812608422326741370655169097948156578017139877496637932628665479509185912224462614624318261485789151951309820158285115329507727338542786701185392769975423741789161404812028695857693637606156990892886425914359520504392343325199349151671968689569891815662539597638292364400626625689638470433321619721726495014628536569598939158626377262953736864765759167566411761763881141125784829980894637840322995578482989711355141411252769175171775723936703631669137070121685603836777842675141520175116031489790244159044859736677957156942016700522141068908767263524931738163645595850596414923934782217441894739815119874808642022121109282355141880871424675241486398879037658949812798659516298973148949886903194333445584247996316946260692968358877742115916364870850751171294746039551211776093914316659795334401984038653407712462440392679451583969210685056241611884540253136991353328189149646839754517788342245671190205198938494283177205380795879964912195822918613048782888835159037721810472300386229172847934621615499621390462425638764911217108181336682936270531246573574293466425490909015869886117579640841141649633285596858447274694453359081084058938595822604192149069655045807557074534238483473488158845319692880372501436789388827559266249910276959738781787947698530953539149986491431591207102913085396170479603280753947258778562178741311606483150542228244794585649722962255838677528731228820797265472425268511382248636916843177869488236295539221951395480