663487993145377349124182176822227526868862384789191574728325745328326745918147935309890078338557116477468433482690386441516327524912484419865333356283744919967221674199660427095449114015439467345564721222585292444424223116089916902042242997486559632044224385592506336736542237885035032683020432754694597293166299744246701250514013737953760329543250996886904286961624292134641694865323479955412282354661048836296483818520394572576149286281161422058314491611195142262048842964663952055181496518894095820629098665961600476156819733595048944997963097575824877496897206476527295205280335266446875507798192082727913387539413797802582255452600067322078992779844395901528074970555197592040433062632189579333311554346061434475069774253497388274215623071071858472031009243952087265467929789361031334907411312255788947512334404840732888352506877292281181182094256979206649833045368961074829706077576738333865832793246626339713459385736391113386473148385719386211441389643129536600356871950859513138468549135624470507061636613278256231851363179871419896046108106976162472992661495898525222985536134691158324441130218545235256869618235080331377478817614836872440838434933819248247955237303999836390707683292744447551418738922170116178860637756184656892590212485957972811352224910529304464979313821285808940750109927994163646604455140528508777682962080523692726076307286917672673896349495959730855968541372934427082559624154069695076470575645378954403184734897128201221392875132633356295458778023477732648302250533513755905536583231844495739197789552688593017204713575325749481149495151471205228782679535974961414161336843532861182123108634391323593721472231581597159219381125913489879582732073985550084664139693540757723505228878548845226123741718780384537434539390667771322704949819179695958529291666499533352712368105978841778284891566949672616405546699778454176232069048967569954574487732535871815585432937059101361162972225793866249477273863028819503386493388862662750860753927701746107013452924585985618998277988912858584111258922536896620432661717385820892250732413111028390849226553635846329219629329810376698947455895781090974386151672865025989955429147967041951465984800518435533401291292948833416921327225958084478379416240839621870958502536540837988444748810183257131824571714022956726610362708696881723754821297441459366796328518346195967710031446194422829344181550010882280730341621056859336751643290650578415155726036696794263908982447616876140680733599986215226744964515176043437872517932056756206033326144559730679374228567347689139481424117644585179809213444909455321970677926619605421650387699814161936868864684210141768500423502067901071364085118633738782897838191091444316965719871526281438054239375999847510184261955383386921219787385656220544777743051861510359436828457384265112521757071604024312191789483671697447026269515740941612648722674302031519274143377526389835172801438284945458987031538400686327491435786011348516572697823052376211523544937492784435298298958969148164516262798430645553408922721996128224904178902856532659291838860442403029447968944384311572892541456753403185316777742556162850637194127587395556890728719151779343599220692351367178282322488502972977034716368439678657192715683487979288778876735396051549119414836923088907181187130155491857482755152694683248353739376953962534264121252454172868611202934716816365536330375871562186062417788553773669791748722840593032817563957510977857676949355011710257812830570512519813215138337839232176381891307915343882930215992652869215770376309027794480023682487694314584381735888293478956650018226760568697315296792838899802876988933617939111942793551811660935493843344413515663245782251853126194163015801438158123545531276294422909246805115209126937983916283797129601296085331315661293514425956847197433611824826690774907234765447183230783811789955894881940310696212745115216553771163023395405445257589014481701195098197708251162125158234768744526879374901471604807790248895608152053581730584627046314522572151994456622506385270806982386539578508662703650851771366685534896124646751832462795537479938208169274083816854039042784362949396685820344447625606175914944741399188974691346918729207598138945293818643698817212296102924543717850681425951102239044750297315916579614276698864233914643787759811819921541977209535920066518689024657512274860828638743213924877913867608102338313577681620814688295161931378960294831174400524821657797843432651938922270796508968881427033275544144192780788464294976879312548952831950537566219150336425084244380979823705470799951470972597011500934758934454561545862066120589533402236601648071257671785853059252160832738827455532732188288346619272354464837504968029556681608451171258389924596802492612987656523536352069708873346441872551712264596129198961058170634878011954269269550761317801384466093547541311883173859347319453915509074476381634279971319392760941813170921869773032468951267416285900484044349157135916543523277051496459659674498780737463677680879141040181331802852798017204636494720102171142330402577334412012696027128761172165656521293292498484238591184358060175359308590088521264786530337053600744895957034809598401163638436409567933566413428958737922286195451632045306244889957485689833209939881528933423713338870092427434487696708262906375609913214442943586423315236438350436295336799457071694714618706283497745445465387086084903821883144968396258088647146929519289385325159405759576967350910297879173998027547143178856953510765619238748304532532298743378578249781731020471675822364174642586832042630694119076351150438921955824248772597372195428314265023549961161169076027824758004270600339132345123458937476820509152848149540819539063366570356756279684731730669126002505532752997228691732357462490365464277270371336436472476622109064199708578136036363693299679690495395093443998239160307675871210943550632051131