45042469816191411919547443860597815211619135742723886004971670513972064811363738432464514797894550447584192994662743827838063013338481352446893596347008307564047033646865382421031184070838767892565199733012887333464792662985694590824853380712506739379237321166713882200674987388130502753068657943915510253535739198124186728907663465537124686285763988488266788735689251038943231661865133251838923432662836235404814344374675416687976408249064346206225411846065994884002805485621946234630139374849987229219201640195259726224815236961930438042339497545339518942092597926988060537621072840161011426727543983337864203981396439354349932571127449424123472464946758309981350405254014742292398362986128197241679137603667739333431131209847216747269641435931020659939024292216054901550507350672777734072776441569254981555286686282084843582995144000780551598090218063126942112222021355695829768339737534128440643710409559867780939517488596782453793366126816449632234860151223498498796177881333574480490169393813799384992343321226951811731631458438265521972602644755928006884533979342160755037091396710250738104987351133186944022562713824465052770176961711954417589659346074078258388873687654016269872227723176534918623541915198020377114751923002541810982145985032332556198980249084375254265792793707973354513339485788014935943472885282119222638487233111887114680828557467637118473845124515976823793311383671339241078302610779271786272914351346221341055248537855722420634152746467156658247668532982414980725754054090242246418766528656859209471458563737648907832185434068895495382328914479107460679049921785875416877538531827664192337064954534777551328549823448112357173512615564161560458203166931379414343583112279810842535951303656576551923542201460049016465032133784553258860336474864377099876451106586561034949284076762772559650088948772448710386004426560461662922651722675931274610734675673064711813604739923181408279131102084277547624473824976257536906519816535375368613568870234166839216650063182325245563064126319456819814158946651201738860198035383295397142698513446586092938849149372387360569825675812206889557087596264627378488910518529867868015706584965689718489005182716611124899398773566318696123459347272898433309404610655707597741598921234181679058553062116880896127109372411810887047306780450197825430633883225771110285571175698841861686767291436889359257826325713225392194517250485884861559094975671407577148286984399728199051797856305976373165574444867792517089851335617953805864930802815111439948150823212453396477385926585329325261858185654042970403088305732944239107637299831673311600343618373985748774178508529935354685383174377406785639981453823183344359317447650982605123598486834898315467971903253299884273237858595640595969938390683846847027953306532156962123061283179428261368326685235900423779926938926921701223131435788243719723793783584891650140645153465199410839419077616087899355591785569338128100152648807663172996156487781858359936999111279661702031775486356266721398861379822393658819598292853762834603624697944873303238354642353245559386139312357008198217032351232581349525912878383601351620139808213551488396617059682547416551540221917515396355643992952731806211213528951942772448210031546877491442604407633622492941827310165885779503252793978262259817176587894798233313695772942599362078234974801640923449165698878893819763998826311886348621663415216041773730885814549465386690055211218749474332394756356671301510760101090004023785533142103380721355165721169724660635444240022406683887476814185424416828619050361948161543324238531952891956311651795182921372569389502386344353773693143599623355425167427172215553035638314960406903203735911998674144373274894339132254572188489220874553117893399519778074883279981522074685973391445677859491601196501373389537481013877684156030336117922067749326685110145656429081715739998663781445459750835098828344858027983358243255246919310512113411532472698413464113187762447037244020524393819500646668203003183347791864375391426035713037133212008234883320705663734109939248743872329077856211771318357816812058518883035641715820341543564174743134344526476888251172840132091033540711088288313667256508285451417619817107441004437151499609271849895143490696468381806266642330023252263023473674265445823743626828901050665197878794609857525359226415331237738400589855081424919051106344997379439901322647911619139591852142057959286317149850377401577274077182977497672933443192105466741982801024785553359981339216036556015127847864499994713988313337823683092306430622829853983842220369682662717155992323178623173236158976301877795934300404791497402255156229704119092497726880482560076068920832219426218223832656809330698887143084317996397993726366249753148566845074482663013572176233028456477389538134281774219925904355529658341336453253898490385546379824924593415544971307879666463903603878917415689524568343134260173312781143573114332392689403754597369156463806252891519404456406764836478688263114577976346174699226108932795121875621577889115101709925845736612817292496548587692856941950780127327418863939418124642336899321968513016329615342376323707732363646583497720258621929351323988539370349128716698665144499111540726546416562109266754818106169445727457888432102126522221526857924211444305925385608595879009348430365678013872181718323492595593604661893696402131369688648611862623246002721247882220218276882051614620843776178431311476281555846185214971675506476381431612325754747181617495696618156258922720776253082350345693621784689113879344896765559534583011742555858946668884541034992762223162938021672463064881381323104414749638131349657084880185854411128597520784278438193502848485630522191337974250136821278889494934370950881527044557111428924446164042481536415666272690135950179019459478477517834408643747537337388599344674688244379820187902754764951523