342559308832979559825010149435628481899847736923762265992536704245207225118920846601900288212073562102449191194327362628944029876287757717011550217644901779526769378299889205008786877971880283417758456594431591316821695523586807625914689655969624104671925342118444937483341664615086689352464384379492290497641978348511535676143683313260533866290949561785290199822258785661644883184422582403838215951288594871064402974230988883788532173573557855567263497875889145366478481719817969631746952403817811096847859414538664810085704351083895369508213219273801174769491094985706182427483804698911054303944514519223392543311795529247625490667705132232885433320286984399464280223982925648375627523225337250057875250921732870848719702069632212620147012163211772388116315669768826542285874337233509181011640468002770420977331921634741188663349592688328461422065781525291026861740606687294812754698121420034345505054547200172786036972097838184562246181788481975668194645686679115597083447880801080745964764557254847556015885621067778856980090295267128732504768175181452232664195369443238856477056573488811231259363935742444398631953624926853126570490912715860564556985773055115971946476772480575302257804823295672931693932623548456638376434359119273321005557685487816677955195588559651338904022989795353154808077438200378797053114829145280842826910416455699981181589201360981413393347958785661292546901045557563397977864067946725762656921381174454238078543822288677479989263858037357374888235970084328526929062535862131122940355767480872558887992312618709621725299021198212423036803885726751771958479042689274637936914526723792185479572462876906253349944006268932190686529705569766326285974208569583055801948530944398224754694274031508072754284455487873065093830497910237558190485172547300391925485025616288713036115654662214474591692987736546968881917677657584349719530467005646724824797868697389916348612342026001681861347798932873386585155989356481367676707683977454913883925704863778017757672173718933957598340222056828189356457098666789027056921136416892370513941387496969876796767228245133165286281989237410808219451128614614137915931846255224284175926378154758071989026805849155192414332982867908956601919211824846152523273752664298174838815543873061493361134197947543926106488443552911936529323472325316389216201677635353413478205482261253131248608485215863769138466703626043971168841292117231189670468701026484411183455301735672617282925622812888848343933554028451120166163490233073673117738425367359399563343579925991944242465486905866460927324978133380988100858720084842426483761358371689556203542019656962861273763825391893604996431005021711934554658758935643084168580186878274834369084575371801074625855707696145957359241508364813393872813616354193155936068543775024243228960186148072356527033570610094432855191449639721898653720089259314350213713359569177789974388879303841784050209950729479011231524884533615149654132266801920483518014855879713130435793273305889693444606215281465343410339869278163040796122713253243936263994406927539564888731648293941009218976110671265264721168534391741154377593214145452778734631510145860375869174698658515522816825449692031878184703240771834748472957374024654992727854975926485431435593982146232895115299902557380821472023732732152066704471440784622627477738018277614957044235667970532597473383173002903486812451697495656177711399299827653446849110600183168832274247472059265387256057256563528881953934897112003750723292524473341001114535445461010710235553316860984398819662927295425380834235266883222166637889559522523454706120170895547700549983803022216953117094446932685605248017468600726246403968871572107827372728724838347491394984864565379772998219481368620598978415400724445491140776068632566182320482082895999638197743478873098697040707171685774713870013532819868959638329208124056103934347642668123248149840714229911438383687041856517155189410343640597812245254431981659118979186555598312949236868754675538236685890213022241862478441084832775855560947360317075387413746302953779604760704659113633178893217142952123986450108465985267834210557941905623282546365227642288444856716913497837689271739873406650262145539678797086829373367849761783955549312205059743199086605226102519876367258994172234575853895861249763761321140192332571517018542168635356739127272481920809549986768976925415909822136074036538752656944187652555592310125310157487434808336427936287627383227556601880027292658253412196975179434107376423380163693441092459454482239067560667420294244946216024156384476222366366542554392375292436969149422811725942651523614306376668428497378006870614722580642918047801635346564151378396182364328186614316163230448158260423372518647464185239331661781133355507214945323584204444115520917147124342285634724246298652541409870069082343532487885196744888753130370991599295884182322495615325781482984901598439699414063941891488761921197206167023779936787552722123798228610882776159715731930938338624341533458211264839635433390118652557099450544316296870236428779947795960169594518929210213748479545377836414015682138171239227556774077192343845860719234941724116980938062993774455778347226927048951331540644635917794933351987894456604236378975599728994639131443170863839856728685009894573260377076557714641408893710768016267815508578813267065358459687830458088096196394377277212460964496076387015772192405482015772239251101573578773263442923284825182636352372314422371227609682254603831109113643913268543572519817511126693482114821984471682096457317418142003900556283540509670971556612197299529299515725088791731679710716766454276725912292941593956475033742242217009843627955334845522295729937188443438110697173397963226978562045797281651962172454225167990414961815254429120190554710165478563144410221438255248491712791056135607952579306653552986989915651543713514247031454627875040071451