604517434885677943541294753438588426395878819316121640140246063222589969857476437652330883827704985578858825300241788760517262921538966708911899271632219773971644761757353004397025985551963834659273430532482374297027539619311661248902888731632414351546541248953064907522547401099671491611426928274431019231987961914552737789656794279793087834896755868967776262183752822447483358428399039040933071872318389926641592927979181878605728877542450725974051517686474845566015829313524744972159144924674830860932787823937756059727479402262963496653428841018797290640591287887784638013819720866027749096178795501518186731616746021709311489623654833789588378089400077163559750987602115922575687696387342228676503290680905906741441734567672892796789508751423388690908529642381238093451290931140591598885225886767557143343925042398718648373231559518562750085025709807278758984855144521851834148144250673418426766324962663444563630601434765492556278396986932488982841583660476339091820201951407382694107381411804278850545392984695858678330971466905102740120796646831245990735325481608732852381155505326679716023298177221614503232574749435574621223914828366799346607540501250159650941295969493963034714049991712333597753447403531786442013788402594853497099953116372950571188164495251567903130751521351536738593204764489546749210284138127727388077169062338357180457904338429692542843400445257378934531364728581514059319490658848338890627654186763711988973837582183983210162338628321511252598271892310869774557141742893842451667709672220484502648393446274113938714480922504584142225781992749013570145233515145901145885597718360068426421766735549389515733793292634529384744129619918809920616463314197052985611022699276424397666366877166298867668446355411756742244146983029358435830312358743162409301602457122033923583168655594983886862539550415127997953691746642454619278819989583059329492922023840673569217320865755371989422437940956855585032585234425561902194259241216687501952539836796963003757718555737397195773514359349543728926153237173178242807431734453146955551935023996141742522553787968096156153952151260183513206605732047637861776411612634815229627834563514903768678056251418859929668738825767279358966113117123987805228575857993106148206016988645307593841482613028224714754668202548296923495395819144334422981177105618037213941556235692071724925357648619520859636473022992279366416874816615726925642775283821769505412708363168440413466943500279736636672150968835675528025661026724427878036440196102020301577694086795646134349666358396967331889241967655316641781579745687585298548358297265362332399879727903453975995698267669167060480551457451233160866131274253799517820942137762721301342831318539451342947153782952623729418547777770853266803599817962202368651131602578999838608275138068576356315158590834195181588745455426771579651897306991859087376118773658763304950756723183401076536313797918373227918523195330604778947868505032400738707615583017312175174764783848448743636213615061370136871027417844346312353170839092617778865617682235681901627374948693757149518675746714471887188022125597769675796704006458232315117500496646064433671962071989073076523691838283921404433392659292958810217673883546261384379663118029220618876687620381765059825358341763564716864903382564088673962967616267520159642969882345938147665733026544001121661490488587759521593486199334597160490329553609960746581786543152621296096694387051700341016275935910804345040825695496069926202124649875176846795054154449912387647676375503219807971770286978720758796580273722002562206278527133570981398159872929518637226660197499812078695411465732054038552743685304365718432569168713969293664164829018871524492103692346852874524131641069430421163218649591044575542424035990672925196372961556232394621627489352475045607676870761629309677855223043321692220395414541543881278696766651832354528163844292759213337372232227892178003694176147389161638866878685428047845401662424512711649905611653546862835651585457557832925291996967054314848753216615829333799435542076999810921407077737676362190514908359717218981870268956601923654344342917299269491866065797732193888144933893627608383642739947360344877482523110518428130751963945599307652108035103511823788065671170707401581848374463921737728286692460590199524740911023951812138371710439766684602265297488269301273263083491649329747664561760254489726734132294758609456988145983068906347199785837739719575965599550765982043193767650115047741414473139766516786966638736478622617177242553131242571535298312166062298476091514388333796631703345605296848135511917035014590066493014745322191565198485255238260812482649881994535472467292925274683280070259725784052016611565284789523428014821406552238433878508963556668124966231017673415178379828114955893972287237713159579805111151550451474917463247256106912817051101910789152385223587641587982203543321839307548327737907065760098465163267128848097171218402985971545448193909766718653036888879218963728820475997905803770570581979895750430129234432448947917225586618739584107537929983328374444292487265664599031115711989446009467261926678721817520424495177777888503240211906760902146922312256559096754915786774700807695031928505853249579831513074287694186302294459164367816527608944078954681777622694953769214442249695679814137184993098151648128033322779910030046221890494386901804445954484174038505923642624555940943515973987635281110549211965730382544619448588196858998331263320731393287249798733381808961227184595267533158279873631221973412594986903726980695929903463395788728674032024134671387003437369098098562518655182615730974901642967854196374374632604095737022836786572039659018439418996672866493822995316537354020517261359213138285369525386993988122613976377956512604901815318416935574614183671381152069918968763577492312571771815497267730675823160064514201492264884839642583138541