463926886712610197581775376596158261473966268026250529052905340746539123634612339803201985851288794502040493304392285518612752513074852632777831684984606312859996236333397516333390013025449306859914223736987752551697051588604836408031991558358832336531866867124075971194196244597968578721776741771098079146618731039341817379734248559333641868248860439139966133375981459191631159036931167024209792560034675400177912528599338135371311304039598401848425898285419660264742181043253579304066951824731874189707225690378550769160182802908569768572151490296967693379742655478191558152048821818317767032750281157035184721861284538461175443119399856179594929674764453542579750790377698235581088058836145708327682891494847594960332174878764305288343955119924168472253980069117300598252918319970145670768273561598380609934533324662334661349955541685096622584974464096533162495093425719551002417116960086300621675271689675429222303773796551291929517982357329192729960504167072496204166196982165253693679971837983923664679695626713819849026552028277605330681034709598246175382002827799631317422775684612422535503349927838015962520206048764563566446701731734995786242483449482292362399242888033882567096878625207729862235970416021334264676373763741518589696694966165863992052282415644449813429872384364254629791885460160723333715744238554375315436356498755588261549828324626923739883397519315179485958955206629637583534639584661282684044223776143786538350473547627035190794373057416351777913442690358513942752896312235016901255403971294068301375516352800788765554207391768727039381959151841983656709436049763848183507663437569205658549821622531663930111806532615647287621378022972143206657481772148151584856553142149059674556387019578217927867137747676476020958841439911551218983998702148025596488247433645003420895555631892508252052456753898126087646422325753109604821791513098761157227340479450715004963343475390716696426210752652538236492853195356837563585167364631717958144329958973357362847643471353156255063569747646308816203353914767231454883727031971697560143549335928031071324988255402858403740197167672937475404400125858642875528674671349570319072221205363609593557761057025558461757931815605380039323228643930985912799324217471593821094834558518972386401235585149240890009264777541445369335549719434620218035842454446957581278115821176590099686759068246564337099277700713045807661618759189087324358176971975864114610278671709534925439584467023784572423053096351968819184305010841044884507365112063513544287550751644714253171140134579292161219376355027115151588959674575672236119852265046527527218542166603998032318377282474302209713650563542465139460281357582041358908668285297365938217592984762421628132137584360731417508460415946230876686864536383915593112080261745005282400243472393437389678576179240584910284929953816696658798431899261216243305432982374809513878356342512889662475556849628692423116809416562562973151935513815851397470756613664722490352473542154951431027127983634362093156257278027094890412303031179361158099781892201725084367706612092355303415447105494712754901118315276647513052756880137891403907909794491183758049482439186745219828970535199295656665580929340679452748318485112262547639119887353494145545217335571040647937066902563762104439875451627865872355082110747899085711498840217171472691194169492973659599365899277240082463992155537546665452071215558156535017913990922677038493146654530543810268574272517168468467169658143497118273810754773444033238886691823122995546165158747623464258620351595485578922176972931263338366115899053849456820925882115712706414311960454909159983166343463768334490629743563426242596551696548844936853348750473698929513398518462288239541876367450099568616191721823355307270512099222496171279869890782639660800675328597819430589378341306345799157400612540063712901519778392117232682783057504693069477340854214158309645213193288836957231417454492584648585095759607422106612484659924491652241944377310326564395726691587539801066824763731198046201236274459192763480291713893261502391893925223839705193237210270939974637641857094135947968102373919732835757361107117536647976394612545758021822905445344654649665238636061315584285416396186358222199129324445816019321303154814891659731505303145218644835483026878804282262154377593326256653561179157469486626701755687943003957680229601129179149011021341643964866240798477313990213468663143036196485451239541477005371529196012376520344216135694692643581279942001187191697086876597771160264988205215432941839684686975040611566614410936588652249791971804365577478889268900351309035708041975400811631765923766669658073225079428875810964839665286163022662113913982066985746740944520472240566097245588105159868641219508173686969339601139017092266510376793889574127291206199496384303916365936712679118451619779631326969762234874015699755421716299629747737367314277056313176385430727578196289152614143272522175789771831608188975547258800140527953150431497664798998026004722514452138640788987056482140782341497849128817162278469566414862435652653171753142770525332802731962663275094345088166259566785537832703561427547236790360283837499137048252907059507083804237600879348226439019814873800930326371576071835824249822136152122247765039193262304499896441122047588550563861094765241528377670460645114536034961810255342420748495280219259854792566590342545644310908859240225696471151919867954954241669138377188198147217459851943493267614399868981637787843202767109871326984994580252538691866656673040357059025904653624054577900768637124837449255216051514149166967771954471253793631627327395087248369933690538498187749357259177923946089581576859138316668877338598007012681770739825500335955359246589758699222792253667804329737226816060893863851447867658640992882363814864839790213077292388435575395524726585907458959845199066313160053327865995621788941397925389576