21789430402333755997682340684059844557094885091769872188069580294748155655536532264202826099153894844042946641081157696843449855559895325724074121771970676102847303621339549730709025583460400446868505117972824991611885314025152359354420296242287103813355103320774560191449090052944933059022821244394169791087373889057868486038709645668388036897774394822911684171839610431337610142796739740831262747836426751251912288663563843333516541169718305366419778119140371973407022875202734802586965555834025414611557273195269860914116565198489396068008725931744582926341639148712585782843908774899472974996774946521097711384203421083364427897477380899161612149868652588248895955660280861797560266065883596744128174591778655786372717285187616935326572663006984414247651792644952535986537209272167116896473043052256973558024929357388787506750089899622477527710715982965053748248833530707638287367121921323189962270929717773173961448239795502713984096543267500021827889250946382205777087275517863151518209169529415294856719006706565724552349433756317672798866827602568028153489786919446180603404818240013486287920324218357013690362728039717966312290918473429347029364570592552023748135979514019299350971432448533632820269680921222649484292706208622364294313876444864306516783009986547254519981664986982824904391849041498204951618795118216591660270063937600114170628249673316664022120736116347681487747258948635499933343678393233204351528418398710256481059346515817922680739437653555757417686386116948581258513679711265835705603297955778603273057275232868556254419431816119699650310004437377836396767199861694476348913779845483633217397800657825872515183378119608925943743299867478416299811822455057144900064606993127486948365670750568155122544592577619442840906164694412266746788416478453014613878931829403849730993457142726798982542682517396765221253845419761003122196085965029224594004430376583357613633582567538259719945483775008674815193031538526779885704410808624442244900514821936104936339383160436926503365865315589934133639297304655368048583227273647076514359716859555463786946556233011931232219858365833042902167174175344503508983083212169298125477147187442525306738089914549721922765496392315762525457979004187534036113679015162971661672473338006708136295765241162791134290657806679487982153666451892522478938622788670131220543673248083846697838735726724277012987260987550525903504023607178820897916729441184098634201426884024549077159783124374748851758294166570252735786293990756794717699229394221441573919331253416052493843795241369898060629988945396865676343534603395577749429632356939213263283384708376681248198311808448769068256995955951949043421493841289612276908768225384529963623706071663364111574741561833694646717973189272812254827243981712510644335121882409357674276611018276478382179869048854341764693313441503125884726720666402338162626853440628875291419725315532063739297681038817948836485594041659261818440317987618760965696944319721520448756571222552981343986279868416640890523375650872857587160890084577025541417914678364269676717870816356948468417757532422369275769473640699594142016948993538603767823003513640759555329617411833653594565175530124589358148239880591136347222656398076971432395303772915612022517062611023878344793428361032358079502822224772365196009690805730876511596979228235195669107766622989925470775312955208645995542768258681155301097293094240755116729616675381601602092193396570865161768715395880845378323585374955421394248452465206472007068687874302331943996358158225824752673923395811505932855217599232691204021714660350786367967773922823586359499652465246078155328568987855779008105394794925158374656657994227097438871021362221377937748277167166244209466835795199507501923494396352260975446597444833189561780827146623625835874007688977782611749003620185636747490428014861250436987452669803652443225038866584808989214082683209125553772076326640128011356675233155807095451895709576895169019407954867126855943263164742411318901528953634773864417316732874157228358408116243855493543841867011363674314415669850681556429439618230842056101244322636784743127203714242889269909899783992368538866078483509186777038022979156987235205342747367697303725337776537650121763564787231576739735789019982547259023528178611415568771530787946374656509889146660608245362749335276867978791775088761009143118393947210413146267162229514112841458762516389285791751993727376556446204913681783136306977114397327734816759859139365671782233518863846507749119491422711446194906357329531875742324322884391626138723461356474386669371841644808073184788035043937874325713314020874601046306661505200976726669403434732775982949799297291005316674361155424397116211828714307289589515251118135068038613330254819571874317298337752942752403941459375535961553991524843554977548734657318846633764247117223548651312085091633934527776649309820699087186884717682158983865471723501992847839187751503128104727323532411876167554537215551433282466131741668541993145352625724622764791132725003557869870231782497362198896525263212669773174597473206877190165079670393559252616203751471332648544574771745504351081158400332983747979430280755045526812574582802586184895636055864433672815703046992441450448925841640297595903229915779975798388928783949372212514075399298358653417193538188145467743675226197570531920831671681484124577895957094089773496693163901403674982921490120337709360788515079611354431735827882534361992548838910447357763162817767699852786015682384986893473354368569921906505197668030696921137408932262442287112354224896382918628808122174285820123993374658142745264307493246641086436905793182950499819881063009100138496969744471570952625834243255061609111086586887141357451718671109433671395603078119557244766415876081902655603090335047806648675189842728688485448013475778193413428297973635359105613858943501551782658734556083