977948533881975806358223356602170665610322135717959453366544966361135552529859525499751524701132447163417801565597532946360806840805819848369191192338269256523577496927912058565359216117353934018735531741815670986855097376750498763598275489535981903324038223866172979355315453514298962716718191257179973836095652491714280409177176844227086766638022111048233915352858807778817950313040233954908631363560827328498529969064916751644246904267466812173970269511799243895366440444206084830117821747199551484613386276749738256914976140728184274549321277333985587733875251257997467429440761226502206286185230751048464862467136087313657451552679445125784568378656561382898944213929340900547598133641543568018782791373424744345613533168050766492736163541272688184294569383409563579058977012424371547873279645448441377373270731528866490725919538209427246108922013078698428454559413614455871976480666033833521239415144498575552457491704035291288463561045269952212358679575624926762006759120864751365735301839252543808193372225657832737816827243955396959474323823328176597821356487513145067915727878000737455017447265331531473219516936788137375271476651743343471851959660229475428832492138247654894757907111364382508733253491931602996263704256659180937226680671316557667096019108724435078136912881195437595245470421162751542517013885450621653112609850187713229086984045522155190668676448195601710837032583293912640887389101758791033946169483805675285140103591424637466279175895281009941712431094129420813720190289324927081383538573781038682705645725646907430463045186941937954233616162837295584338776904010232342228937734301966790716280679904690484029177849319065413058797559847895840925399555608338471161776649138030248726920166482144759465185308555635750237274052370781882416278929867600601566303146327135391488877256451015425888329766488482785231304561994249739487224219934410461652393125693283918648001959055055777181875352637961317555855300778129066511770069999606651766274814326121262827343443450572207406831127595396011053406642442803889638478746942945059598891337252145888136716234863938684552413221939153039392899350538392191260830313584921230185399895985904180827453589689562199788663793575121524348857599205778518860502716633775564651845396611205419286131566448646379822581148404276247023071548128632673036806956001353599167768736259941838496305669526592644409576319307151281795436605713467409920189679323212505365521750760734660579705565982366800730799953180289970676485175273336936921132444519919211096317825843755080685821184528541191789067603409130823863151526565166541164024156578169448264310666225848933227966985381700787496230494315692862610282123842436822801026596561055227720693597176846153967524567516292992792316775265457324981245628634236355397243343399610863193673917643924701491555374263902683776164787814654046029129893397156971487847473892861974764994334688875881780634988952982190876522812820854981394284419542356671268524418583876342312635306938235236801395282353725404334873174690186981471348955946416758571353279682137916544833277833657494522551348383758767682547398139827857437452275441402272832473193188395155131527254285521426891591958844414772665794099500394796945575493750231710597715729334224960498295426567952052269178659913561808665355904144249936892803379976483318338237787618765073371017452820542002629060509629228326436173155367892335943358457198543442987949453692652436091621307693097987771396746366901762616337516780892735274148614682799819544236182996996430964492233298192449422353211445598573111157705868193539628528264513078978374728072589422299857439685762934896171898768327708331929807903376201884651591979796852853345604657237237888264563385141405205039845930936418803134306554468942490217872157231651199634398958756382192672420702360174379298488258375389229407486971542512492118385928325177303833883747481210745680343770141267396336154058802144267960469776642595805473421195108887830393571894712086211362370360686054585516638734555495903358849393676825447585218142588889741705849385826642726398648304239277201047172443711108621349473161969264722808796981170956306748572749885125345289432536429211455746364765458677041266395913623469011608823086231327560426876545743429114993171283460229177870450721962887235016939508701249332181456561792582511185261375715280056052808513251105432867769113815064942441618959783165673283775391862342190178067729822083867558735711713069381847981441259270113827395536630345411719424045192798224911558620573116218757418856048330097131494656532004254824039718187637743633566167739705699024173168151896737402756085070906399502457118659269749732043969724581096892025571614814899240463907218489345826458277252977898908095336423168025810630404317545979670280551819429670704661525374976349294319933863202832861215147915246688290592912351086796729590768489281632374870962428003278927884926039421253481239730393398830796886671107648878246260427160046938519771283165103796624495168424576039672789964836131794325454436208802529334540385754355163865946173393327593217800251660007441286219777199859219925172151223795371555248356377144324391955088366781542176683279581627308916614121117541541061634250510215949843828072813127761992324214348399184817786245907163925483876233272842637414835037545346957366939325064104839328601451696715716203878786798310893698045591856796015233347660472574697817776356677393045616349060683380430729031763988676334688086516946041319104727734831678722274076598226348831996092191255639271701190917653333479820894623585407093349341676872299808316655631793479337091643448741671158438462373440467296237861653021966974853564051912298786230388228904956064319929783578275906473398224672615172839524101852573167269644606699287124442389669394246751446280885817179554284397116200393868653968858944576672921320017605362168276069107265875400698932969246828768578394998113