40208579964012856592330099103679293357339723835704456677952349280501003734116359717899964173432163573770534029822382713879221214637455519188292959675687468093468485298698768447373525635033108254414988663812256481203367113879235966731927939252984924610446118210298653165468281298097250339671439266730942673185602960086972186410605616708637013663404256124223435760485668828571572481269717860258939271770905857117585715949187477131574258687433325934206429681846168936014089306291461323467059846059608025458189974758370889106447988302833365159868098866750150390777651135479658133423405195125650953673750256586515550693898225143142135719682564164193502094390880848720794316799748968478331395622401484524887991413955857103572237125605692458059742427709588738790672413759158654759496079928943506589159832122825079392810975338731113844621938830389783506868201750427169926058903701957753102880841286964640466627253565819550237509507948060457711629761073782248550217551305802754428720346387382660487627205711392755917015542691489561683762959972732490990780779427385994691786310691637202129082420328924731915532978236372437119841279834887112143066862788336264405023237391311784168034459311198973363938821457984263268234333218716098579280407226324932850962614831727254952409425443971862548798475074291197965029861972305380835377916448959894655766525956229682589564825830099338157630746034818923692358257346828881779148875940319141526620195346171768647064309886093915608379978464912333248362006652048768255367199922034021367877193176494066036956768585007874978256255563784870854620384633679287559270168316850751677286824823723039787150844663148365759889436262744493177657714427897703321339192975774342996383621090823746321164849405590687632340174739553784654528325602751990669043718112172107522635542585878849808696190976396843265799630042013211763374612708480923031673015546407780274371837108279312486519401736600623867597947310434136707955457785145541142574380583384449300385657008625172338531935488191143856382248804364032917602901987053420607343322547842599894742658758884176189939903822398331788567212518494793963889428789818792001389871188716934845891466204861689633577798874122805426105237800067169192190735197057741090986801265062488670835451760740111506593260415999501313005481229347649271979753092042516568845732181123059864755575983004211772846661373110111825834709566294219307917171160971249082971732111288654815934389734358521085591639928395855948961274080566463489625815645985531689816885166685096328831424155185039708419931416729811876024473049434652812845107837578127335253438680319672686645284117533786982840179512480628779576727175266579708243088013836334464483834425896023124025059284734859588157643895042534248056575729625865737904272457966258732818524596541693221005565447561613921810774638683168557078442403535843562725781309271367041093961455214168322765194702397237942707431747713625853108237940038064181563304536307503317766719214723072706941765049962879390954344936158499211149668497889208665867463480798773633127905587829209403307840807533981791581432884523906757186041457967933192951190536928273175393610186282877065833486604227317671453975412789836277151899473438826638546622839909997699585173435922451238980357418075333184617796101647556636868113277463173735881542419438508261351041637884321650546173102142216577626331883615600666544766829555799567713017416411851360046551255397676309147698759083845351782282622018427241113027993878519444485735927787992681109327485699088126242143999721336365207086164158388371816310811791425526078916883142991107765599542520724619511580319315576170581546981866521114824699281830460314804268554381052070595312277355799631503748542521163452155537255234573613275334338612608167944048846420307844701460158138371236862326757431121517613927390370693768673360657471231427576108748392524811175303798950485470953549874201207418039180952875708371331982714447329934222345421896965474549479290802210514193271489229974676266235862754165973149815084865128856830532694933619818999654587996016428344529380399082799947397512840719222201300763932909449387445346168929947962743242912091366652077758478735261695609893679126408649784875824727118383808203410366324557387392292586498477196479775039763621593478093014164367081992506782281274499851870751884370546742298855564695535174470744717966244134867128780583333175769552654846342082322057990581671689270886623499405159876677919999778246630843886981855317313642843399466512001881643583775668868684709708179089053099786344311797548484253015159482049252912225444347437968484511071874853842385758351605876188193267070664262647407301553956234278565509336673855823533585709600976134123255799375411951344015696768898282677971949639175219648259586921521657321657985557267979620566450325627328235149819799386176329440708623641911542618318607279109283608890131343374019197228057622768377545147376271865135278915819848321395528101781630799269409246596052660999111509949979720799711658772082181488761349939875782968212477829848174913325071184583471641634592063573816252467213584908783761603351985891563726420927399186015814280016311764777210346804414597067384106942746530399862018352662513906900440061005615451411217089379296844578572487484692172445844272237499985232121346786470695047305460722590487772022389654935774161543766598834849279151201622160461453215898976522168405209434642495233377554255119878602384797845228178084025105635993224402880906599499532427284455921384755992228344949132889308995685916333181612735450824177965821365075905604794656806655641015246291929353127515783346244624178686369682825538612881704881395707281844564512367478683312164288642940681253873658934593933418625224839257514459415885300503292457222244229232004200567308714740746796164775882623976379124197387634717177054232718863424813317769848418367621646771352327893893592172526638365847842810335069114879