40172880928063933047206299383543817375850985013132124523134713989542927521043775654292361681501866998689560160292464883015677635120991466997677165683062075298104343179488705989993285281625894598587607262556464018187598047647710797110445351942564247519661589288463299272845545924832287436892829219665022560977192130595012893181407452287687862684896741805419171612823704389076767412281199893979302955314983318621623111928866686128889893354545755643868438572389281751594263459596036920705919264350366452873245146311397575122621478362761996938197656959222448433189833083725041708133177939630645264191195699153385915494309124723825263597334292215137295664175512788408972279707451342573045428511685389146603204533141615185814366379521483375178599993963796283374655947225035148573836526837638413169167465805864037453479938638111836541893964468398181877595523429327319496469782735132181879675915722612959434442132218169820598024748574189215276603941771241719429333933910608638281724861373436484456482914039846438105965534293458554301277052932384722053876981316874633060336246325735244742402163997768203990516020881674343805832065592355479548306903780492715747804010115389335691536715709636385749842749943295025203059084050709416573841430587599247841725971212796642636468514178201169332539187700602787909191367001642635071556756060847902433932688579885921324937302966255998037949796076817693957721609229736811757884036565246683612002596905691321965655078210929848808303911316509952532849283486694186465613736586428825501574090956369313098519115394516366863929650681056635146927657960458534268393649527860708999778314353889062070995410527861694772459626518387465711899628995480734532286479595818294061568137622544597113745822989448452777854267915543494853713261389773441023037757106761686486560746885606625528572668609025467592815914103354862130006914382728439681874805224299416463522352724330299541152791473885922153396212329456563194671403485925533837096777110585973972296467439383527090311739813516707996242554038669329290127155681378236137553124778930892694127761285884191121186747562371568743982819651464004371165146146383264655853070849561989257518556454925066642477261655976318466606041476714554614301220003077640766149895385046924382940105128341908995394536100845820679329645316755005049694542172466643395893416124333948827446798933630076160370661428719100754648492298496082654392213596305148811370436428518796450428046738728135818198467858336627726194990886396545790651091672580212704380690350425576947313457150242824922385183265785827813672049472110874962160228516397233356542299140280188929281796428855589890779387272119634014704286332038332543747333233841610328785214847565520085225295485552129286450239222878229617309577238218038063428488552682238391886317182210662252510829547031138901380322393770491532037976587797677547989932214388856232552657865892197405228117367674925965155476219820318989404556017738738691518898905731961095755631840677791000828538536818200731605189346812695782715232734725076980301404740283229811578889368584039877697191644497485988077452361620001411465453222474942385189161088602464843344812181236619355041951889397088426322185941688612248376543158875124459744521715844958300847418975326399538749565437433723176972192668554920181082016218365924901951677679451193847157485111528514962410084497637140582854068417981514367785145344628647144593901288782667029334154052412592094214502560481716979321557091695013518302138860343794921699881632460060258961454752017601755149054167799606434614801153685017960242778553010595889316663323080196380696192856961446837492781431092137761338342903278246451584497180298886226858808917756061272594802080733265189504546179855582012607596429844014249469566581279579706601136148314008689382922511563715392645778836761430272111796734697157285135840367797435986776950078718492933135115095143153538349856802494202395609288137650504934954962444892296733901543153198385174262783063865762669526667446603724983149989945666990308219221008884841866306667879496035310748065061734284115989157718466416268371293132960323605639341626299396085757978483475806979761210691177102537678935686025529951277188237461956705288727522318956173353617505063309276747020148896340888769876111852134423732598899606451810327746932276163851602520311674524284621750979097112542552371032005188774198872535484247772116969560697089360943130550834791720983096488029578541513425708221936224369325238713569670752981772891107280708325599415287318887361368794386685688606528404162076392929436354867206157602496059349594845066038325926826518807424061912892430544685728324974827666319993168459565682233122397330800740505753388671632774657148436975631457555851685897511612942782232129300942036422085326842765449237380824627373242061427279614418426618294377551964139070886035721949427469348227767375781182875346769561725090195074760311209779272836018312319686546940971254778364627951453793795624033608515735246655815206164811634438611483495966939925310685981170723905322823618155150494190852005547428247134739425873467480933712240388718496868286662429454749563012148180862183885723476635415257763875292931676978405764134174610707718538829341983258122919590745107090901574441587286436576491198384580349455644133338979981090828249947023103593776071052714022817210775251748484441440739990479094931121879464841112435026158367083193528517959223917952828491072405149137879450177122583910960954249715424758598814229383089808862308946959922752586243691618143857950742246541591691742298959968260326251016817518642364021875792126026271310753065141952169228674925212351466435713836275270777012158913464658771751439846662662771609715287176765203443047063155872995831532486550994116645811786064295930911288247794187417419566775455705257334162243332305277431657811097718978448373918958443929713084969127593086042