43887078262744893018607993791206986869798988642613550741156252687358646850084211560607230438816543864267229732555498154228366541868176008354669333055249346241033330155114368304504332369771279875828120501617798055757473667901581068131892476405259432964140936059459714124076601214479958843663382186422464799524811163399239995347756022017029812866777977414686523044885361934936243508786152410913355346103239435353873312406944271215812728918783620773673473551598701347562464612749560072788207382804557934209887483661797222168816707008998949753444134968272630136529498604877794451120765247124542726681214492345216487019842731631898256371263157706350622613781163133614452461144663256475676779325446096579748466139674009570165363591445647014484362526973075036573669443989932408418981039047752142833777646690679801228929703618627348156094687543759148558621776918273096190887311997669278065619800110772687187466991016463642762151236541213795555862610919746987113430183484804584311105797425991270312664325073198360303014663015703552762198518437399482859092033639638674628557258552498142110093763713986726222555252758070431022264797426258164070169992629819189708604984665181700221156735908133290683152592988526085333767311985078271408058588259703898468787226561436389146589044515386694275474918676333558603276114661365545660317371825578468555089288689405897722651466958098015555556699701528018231584334626253691744120481536341551585604438764266399922930214771218711515274385228449218472235257079866578311708587816096722724523561196106800583145865452840067274223180452151959715255802848155883985731428573377556039009737920574210417190445607302093204833240083207188316666473393444770117499544659843275250068237820258921386009688904081959655167110948612430789191982531768174546707517899167225567259275304754335884366576645536529123794422483864045202846262071549310964584664016269960338994919282680722934519450633533623587308684977941389621558306167817133457044541235937014460544821542088914433171734469343279514965366012085453010484862911888661885726030228615961592977151621735752386150739698612547615167302130373326203573051133009367757833690191859827572894961811771022527049854284996705335349688866178746566128785771046669741254679656088946039524320356917335554486289977972318517448165168658736718039827219008512330457719535683195556426898121216315417458980384794658047065823421885791535257639995734615978428868052010995125444651382604469142535699406382721757850609024968028886815731771501014443619309362183548771455589636369159993162676053840891135729492726043785787684959425695674721592269022302116558038032663174831164338149691582108382790062287367644469717613952510491932705965118272571860491515547646560812512622436757633927783094761675816612879769635987779909918947659207768433266316746831864807488863057387460394086843346111932126040307234708903652384777602192499263338114051101715312114104780749121077319944352585209707105077915565606971889237508098145844332766493232521628798444990612980069021137764769776914652257032212546667741095720233662976273162687466599412646843071224444367375507108920856532852551566593269302469734660353411929510994076536398903710495730326015144288620832805435985480482908275619707850402806261054365345252084188251667437044311992751292790485428169894397792345775162708511059624641875086684173302867177821155873953324406279253580288410048915899911577955844190935987936596809890612179551189539645568382630434085391423684529342237338238059458485081964277812178469888858613839425054882152857136719485395549660843257157742871450922275676384021725084782922993539983826066468298394234069754790684246229130428271520483525556174389248488109240993936127092056533361850892276488380314715457739724544697869638814290226133077840341977615681763489484668438739014143610485854268092710737186166280860719044374131921861639825186034331934672817652658970288391623157335502181479545107056293221868832409824787837606572314069582651789341296448112575643397176818546947402772234047272367640277959462009839758246723683591020655162848178675943520857476340265312387064476565761528766348174423245069543288547302820939560345625552084498822102646519639466277667253723498597298453553757412051123825411779732902623462574722519690114817437977382057491053191709210237424588375492924241362627199051933990652553706351501371792319828605216058847253563101764146756508861133146986234680518132228782808263412332811642712901692023373745688054575722441551970474219750439026605673515152804514544477225959723903117952575163554036628716738948231119614652618538961972419428717247173170707610446641235179804142341532148608971209344151259985483517337861006998967146368972518336831577381736964324513241593916165486906058262996226811279019651568563238813177233757628669872188598810162219041798791289525426416425426760756776405231992084989653181016894190944161303418846561444235237864532358213732127951684222157056537894334141291163218479814674994972780298141073946653082035435644522062301961919585171565193181098795941721055382575881297600305160165574332329053263850899833321296072719215115875501454971626468847877992928692837932662297646719911062756607497488735332151392792733155334248729776810258504249938046548160403216741684358573357236585517562851479497982572514114157544573646832049284121627093947403897065295139223415601557179001679147041516562429711793234396784455345046181256482619478530889639678458932229718421538943558959393955913772328965124646401848658625810589005357650555524391270956416729535645629302536442059816268768897229990622921585451098221950752575248682668292359672778541664174134556824130349748105918477673559906517787196828510797416964762324393550809059411644018707640611456576531356744149831167293068258460446238094696962985615175588117309085254684628400121023036552588643169574273428387857673261549995969287368653379140944698824820342025839458061678