86109307995722179548727746684503997468425827554345337945402617492494932280708134577395283209784415097037650423006798176843213111055730015758452454935363176542683143467239976654185524754517034893091561191220008865305523128780216036663469217614854144156884433975247971787760247928799190623174047911531041961785440484138546321309928013865776155137927689581360718764682232356794926464711249459131389946655957023643023648549337472037967738219416284402528995913791725230396928088364000256436817719934634541084530826639497919533665445758113302680652591673946500579412333329352249388609130538938405204740932262159053799529668792934860405462971592152147586060536728023186907247958988598513181218480482633426127918269459866017895132470054210312953388268528545417590600597889460983819457077520550265805458243458944785449439134244106883653248454033141004910297105700622796598053659881558126462767659689773279699724582392944472073174530837120223226746796353140901039319895787385369820439849749243067212429592578831688728677314538065209829641307246861255031589106366683549580205115976187150174861544602176089938196283494221938560512359085424235775971252594329013100178666072412024361159658211294299202018116984270268307727450137981646914950594711736480518408803974838934775563904194622465694663964616172622911684301086956467899331579653655126241310949531369496062531912942923788505307997688629958412766037206411178439881445478736915614020156339885477950242888781393759512680278231308473322210503334502381306706878065659022549929784292205873866329443314076189338054186371549762545435997434770031199765889149319545641929285165270315494704504236078566102707870077399992443097575794120648521678871930866919391826239386357569343191578799805122486674834966205387791494523910313254822696151661183397769549086265146987442606059188688031130956031103825134858225219956692456610688787759299897012957336933518335022692347257841386085195976546443981441381302728863873664178842928485613791588407784387111686249031178644766311646491779613594101133256168731090984956268902104340317431190742516978943436329357969796946171561618431326087669768415278540198986448777396190021977917294101753521941649862979233628852611841340126657700859113829780714877492754479246531923671882982922151092138677815740073087112473347868229254751383848258790446916317053454121922038949702926546791293229543712671096178546857794461037211869774350881227101569045674322602976158478974468240055864324150055139943394349444744811087928376872213995515128117574487108528191689694752528621749643075895008288132884527425581532744612376588113628731088206553196740908284929174127310589023378109308277962903337538887637589160643718974019992871786614939277011793610381987851931239721527742457286937234877373799314937490465824189663007303895064842090559687758850677933843473905713146449898192114366590126278744299163798162142443416146024695860158508462614784416603629076957163680915043918935195361345090530408032186634994280469681082357854788904902123527065811929704318950373813562800983145415104190957640369919129703748199304751889434930134690382493663905751585745719225028245413493954054674570924296849087530020008545518451336651491402115228928756079951517738939534313156327710185763036925433598321089880947899087732486052664427233421939624181875901029959073107969529696390320132738680472720026531463873615668420555914208769499288374976210076457396477265975578682774747882630774553865516546912215273391355626554237971620125973879286538909557089541904604611668274368749115856171636959375376059610192593459797433146696384244024988463298622261874414609674613246626783067921989802997532407230694757607746303450411720202493120695339345930750561759167612588388226317073699261060467679283428629934958293374381502202591753466767866176932568149547051589283249484953459675545962635937757197553858613134369919199648211750652342186698809528363883547888967553676838743973278714244743461449571550624128416453837725083682390175951442715173237531654977932169528683695661099994552426497398127853937318883506340131485189716589629316246753007841286473758678894539745909894252074339488452743058640709127254581483733048189646222071792931656024702233793331547997887444653833827951604365976810231663132436804437875864246151885278371046340226381263801661812641182983433334970676169499769538041284944105271592388477491539498337016635701398676663666402660630953998750353231317835458463205276271977660735938169716785551939042269884078023800634621827793685929257682350524442172386764968086811879220437243014208211532829697791667443588471112976435885485793967843584415092418416179003314464180233349310543549022161890634248830537878144743616942457452047908331866555716297244235254134289466770096070598241863833294078367278520131050713480027057664545726187518972206364982079786019878576131905522607547090796157971316016587081624434122786513845425858448317949791173829914673944536471951013262090473352124112957697982954115624947531589728949561575031923582243238838447024967719435191513154089836073864396716671404595507776633168778321125937695331843367908465628165585498489059131641694762892123086751716184643405002943393335297928910811628214341057107252821956804343633591482998822551655851493687244438572258162895235221451726025107730841677816429924942384086865315490944921829830119452494198628618344616577200839464463114556569685307293036713934332507344806547667865294095164165711039612530812384620544521638924603618928084186643869776388356368580082703104180099114011129558234170696164516522444227986135164806384289634210571546553043623127295050112489716738629364728115140356807391342256181975780655916805109889674221527970358691204263161817063183870945353343385525695042302010301251950529581878010347291156301834976848262785449270631810102825909206189768135918147557619003231328791541374954551319325395756728240735960704513849487873454