346261576420189953608234100710143407124208746164052965046624383222749959968154944326487885873711226399658262814359449907601415764146734235722436898269655196474794393383527594679043019928912370107475473528713617219552753258175441692167154289425652637873485955187881407987262145116239511909817881917041690857182617507194422583838275267362932939252151114398748506022624934733561143688640121175251337524971515756624684669933149478124359804750980162736936176235037368251182545102308533132638930296947585589639756656300426125010749159994093459962366152295350822142365256387272382066562338477537932373279643373717782414044167858395532482296936033721051968840209336514538709615123333353755456689201503380948297517362672545975106972851589498224433778148633088455061821407697106011101991702848519445753051148687418431558911288775792627064278021717238152527419034158976558117979390339067979147788965311416647381574591974965896076332882593449126838593449736746359650199886513664299664991328514588706326962156461635594402655529755736082424175131231707031616334163661897580587788813815466583517968235822871515154934974649834476227839072726700179813299011561931503756408276691167114565567688213297948284523663426764737502075276249088364513226544177932156022427499194635723333399547578489033583282663480068402173759537179621717630132804570252196579393167329683847487873224598357251983174165541492519975878064976162137280148591866720392689523546551485663254457131939195313567527495492179583929083815720329067543249808111389974596529878645651898936585848412130566235655822325274467724270996661563636845186958856844596681272808084601455679542519547786816869544149175312748314507672512989808616862299753930717740433197166414941124661932067165598343548087363187198976586104262911131923671809075408199427893209667653385761240097398006939329308495453401147244120381133621132401281587866351828318164135956409112209225996852561899894957551726319696587462086018590750557628098036482196145833212054529061843031791789625243269557325602323955710012347174812578462678568372581124692327065137915809521929231441548550080428285135456283643114157671248966446940873272636779724007506262958265753861799365425632474482621343808125475797274991842095546851561495331320596995468037573694141064785713704293822369163964082536605366138429751699689523961609642268482644391168599975020847424148938265594458531966683165798933576447373312573373915194188712374975696348368624785426760501519350228702450645741675291360360929195713133988472714442095321404419639452234712296918608841217911005264211448271705875337230606118668904792239799731865230119743059178191133714736073751866086783116711983054516337755514330118046570279667964326414597200468932053379821217999036373650472722640948011548158274975413589887177919530962481676692610955273863304671467667100848503796956384196298949330703546208056435056384145317317347999571762938654063364280495690816287475751189225393458989062258258635334588606755423174186058981435961664756284778016833041834639725359969592765972932655212454436748800964999128405664229755487073067265889447560351671505147108192151353770635998851342961965462246310896711579259236529608412599294393196825510361587385193757950845981044734720249465945544550398073344870921977069936198113872027769552284963139714381618583645763963728226292327877658447807759388269737970868038982142933447425636884322846496534393228853715794938004978266319901678850789546514254696636384718612912274564693374345665206078833136373541317542648524539963718447979635822388723892496244645640813843419998645093846275616178853539966629290585050367024220527673601055946069504875548931802575694155665973946923703434526965945251096652215980605400623810596726658216075807127770884289321632270118275873156704506245384776523217405458139467664160525024922471165165816064082465551811030234885314908406363717609978594014086785848491408397236521929863436462717032353228539024954722472775460659337334367582136705246878323495231076443302086904620223153935896072623118767145166739016723614613078210040588238235560638329174398737063105672537353641091776931713037270299586593278559931759397374262551769374712631828330658316395289056348614248790166537243942207787628715356559171489315879545345029163493729998548059188508669679893858382723072419805325030925241879619196179714528988425169787729534579220247678526316437680551452869160799454444366132139761941554336294949428628524714979174183374702204088556644052422422081786098285026159916575959802902412261525724837923915951670851339874852977126327493494475489354858932393878514752574562231342958701525655285893622043128285873372885214309477335079277604366129025502157367988269277252154657248938236995384282835254314466720413706844636890446281114147542721342409577528132159850185764421373261072962818705663694073196517836821758016184178984772661437178063915686185398354225120411187665238722177002874027244242697495823217493464671166229423943798726771199338665545104962195028522587838063677178831244875024706219061864218619313397986357300830679437498954219008495789332751807506148470698469872129614019369419555872909503389505393235515329047930815984615781381864606986951082372855759685343869818401859909089975634250872152083765893466814475949856975948618056233459756308128962564472436818437110489307679230895939914035195218406481743516122498604082008969654189197507586339974624713812960117169153834717529522095259473221740668707857086028276629356407389710661396987957618264161461392493467543396967221302750623518357067104600965396199866636352261663963985003034501715812988415981324831620627990763565477416299148221579576980466666266068723566492623453322991319324688719832731714917419662915527688130027099906375941182768805618282529408357384399930562268239887586590019833356984346700701758466443911812666519363400261708169411338458807512954061065164920693586913