312499144310181286632975199374209470385638752830681897311316429813218932357431571964668168252313188618674107716630693282922474368239132145666338820640175424096543518014622090441027059944548518601314706885481684003204422615025096321756814273471492715857682824961447852414802342101218072190276349103843065275461603210241015627812526327880262373861196435126487813840112179562948833188737092192647313834832565461045428943711778912716637370628955171235328957155959041876553721724296982877449243483007461567818069207854136198342353692007243727591244438870425902771887597268171953183883792486147333111871278780077267063108255593953158749339138159160312724664022976618286120985721881653876817217021112715985224914767114991452265491613037360545273517216669526914404042344776423243420577754537948626531862448148556918687584862381984857169653533032098901682321704952488666625630158972241279482367168028870088893116735285737851209474491356515461844461853837465048192660326428471291039842630471084669119147675477390571925161426713070425892609560987184631724824870302153837164758679399193524033824136684864759949947710587494897600997479663698165141018790465421339149165127554773129992813868988571982264658592093099242371361370387655894270267721803823486349818811036883960877819882499365881132595102051325084687002393817488394897244121992292070823682949751354609390179796877901211137223703683596988071360789356204816512630565928273551501856564154489411268975778773558855642441197727817766902354914301667610441034477857629939130393015333215495929758626980306924486543623761023977380383364990840047507414727147877267349253522344858821577920947795274586718490360562978003852913333582265725026745192553964816220457788141660793654762101134862085706475843459380471232291941801738016149792866657458993551953952589420344947132510487126597251719439056278434587477151449679941916619645941871508481766877341567841337719844714190976286492203901360901866641538549502510638255229606532369236597748771719878932826566467899725466108466280322276364453259648772801090687137450736283373890494733820210458805086855519897023403196156445255906810462633256494279823395873461581533077994339991527062906169625099689387617264451490658326454400270299564248209995972647738825991070251525278848168515884427425052597362161668849819463476875735544452288792564798526774448589865834870746175265956676785713170442412044264407796559837451356536655573524979598212285873026236793050428147120266656735084564798056040969201512243212051454116836481890869945457374649325629754120790459451351779322065281221330255778352734022269142892345709360713522966244632318628354538232128502692116436217615629744859612327287665347495726715589859748681017997894134582873128165237870453119992001422842735003475062766333839633584392163464219086107722178244393436554209953675317736852648599272239975913357325274962651224605283338000675610434766970474931107592590161816970657713354656325126765733936751244227259449035844684672841256618465778827930811244684216686816257064966429726191873279139593620826209142115133192460495523095874432866406565725535320793544105828496227698768564046301651781555015838684389650794709535099089112173213327176113810211231811623302906931597689530459780354018315530534201381175252023276398172871948617482047434972885867046250340856571547530164303067825978452647617538756253897745855402641615778826285290038821605189748556493988037415655287164156368571462990444541746443313212668970290337368198253775103425431901918737938738216347450772547625227108051725603796342461505705923474066218285529851508346946508596158555136406845769272624558352400590523853599919199849880479442926855753415782519889383505139112189195232852164463674249637232847622224799710933388058638662341809385916690417700468296322640725921076493314565862063108931735340430089274250137479428627274621345002912764441734015525178048772377379474454411375161373561632733496989946784303379678137117517306105889670081602657752951323675370027834616434602385752514086162447917687968344868408109632983923975737927283931764139337277997247143526654119072570335025232211477828050672156624819297271244459539346386047484330556797216671237924929621496061714013463164769419972558962734201330053194561633381569094052320471217620984264861788988899015586682816933353788362062776212896947252439285966926568695627162810757993983589451976209932477842650401053922611716577967716688216999284486839548170190806994863670477974796688736741015774935601282123208838108137887966255684376959744331314944171135716212168491570383559608310311415994090599099789810838350875156577320030037467713597314197474883139302829668225443145656422576344069826770204376523316914945589750949641592162744943027934157800658582046611937367489397364157543396342617231722402081573327837642395467848892496537818477863308288278699185309168456502812617048261340765727964847272271720182734037140215971126922768508588912071896557805958661052680166888662586692721889491033962361193512960881893599192439737155992386384525342912391254974982587328482351745750211037798528657477577928469636317577335251311728376334693607671482939738400723815045430949093711125938913827706774362442103211716560051981983561673118287546130873499217974689910739016813439079672390247271357235765431690647456145956611816618776240648273239518388539793092662183838493859213951837531929579134235941098172716393618359525301372238797305151698279395567125399205607259214747322366321441348332198522444961620463947698959408793003127948914692873929093096295882412770880027637620358052233696686568483712792217123036200124954163892869324419814052298527789402329426225548087985341469051414851410997029413976876628525585480111003820077043700157933541327572240381717645446171904164327650417531221872613964360320889305529031257395893455875963869718575519921650984212194190577156706188688394542799971877644778056086493554309524831368303378358173624297