62786646909504626447500574813356336303649485685111282384345770655266030686216293602931192253703463945992149549237017308589864295141996387614347610097094516246753973944621607243761063808572906506552371762105452249331654119668544669139003558833903338198416315374853713146045242621028189848430067157753646479856318584909740308330826648441888900375345051317889175991854129794694033212428359576949830218924096173685057742169162176074336581744457238840175136548329016846915268307428656805168373845952419750261347664057247658006001637957784235446909315433104808939517361191470836452541367411458306627531523963821053615770319921357532115147228475952120545622351178138045024936753896118501515430507680845498064454438668382390107144721898779179483491669127206708703357267717402379403389307176435506225360787211564995731482295721734117938231392933721165745583825138538974163691956149779272646946175943069156538372311591599380198943595834832723411875645428881925081370287219349344034654677502149466216039170314689344428580772169881813641268218747536742813065667680972074671465178801325062613148205736383064094521662072171911421407298862621543468163577565720516142614560785478985253272996278869284462333713878855296845805605393015326582371277375288795850951958352469655578259415342864612267167186819777776062299024607035802427581924308310991569953121254784903453491621063135378862899604475135944456528425760614919953882902229835697628928044530018839738751838842823262542364362521537397224400768908136082428128149689500476033063107443847444812500826298917055909221116109641611586699946563248130875932558924791321524537647814456067876588866372902619757472606382906153755734299728778881794024924236993309541875515052422957021368615968238058685622468122473953167244296421180632855638823547372334721955654121115210242889516573738477513559283734943754170665190450310296622521315688355864722104662802736884280520563957534252989601566983884114866869413204443436754755356365458138224433673674452581611247046084444637962763942251238945154115554477949844873208153455578273766391172203087508158645914937769892229016380449364171663318635221658800194912929411672468316561061671942308857692047654817452583012783853426212783571107572453779555137763182533624412221905240740332885233632153315391225870877255317709333263405302246507074809629875531185752712385482167232286147774697241585957477060808679086843857863593627083006018234026608726769657699708208234931893178866712956350965768085767878033802195316171936574775789272296207502316176322301539616793529295866921997372328227157310147563779703056539950220306178478718582394975306969014416345150403147658406210288274661288389698637085287272746842739799869854771363572436352455602301535276118152816786869793987309183459324347717441569291165187564215757205061515871912886917175634398730530255366792948081128977921052412291352424895911855544841412009572486652083376803817438730517662657559796486684085430499439379700883280507776819684423201587864765985676824373678808165727123199901543288952355520992375170871787027304110089757210576953112936870763825798119461283448526432907591334114366911914188815861850849485634499619552521066689724915653758160304622414331421034648803987083400022304353484371892487428361391547242739500230002133158735055765726478678286412463038004644608789571216445354048052908195642276286078283899481348579314150343530259093774476507333612665365568220523089158995959174928815148816445430127373766141995040944974138817256419510961094875940817544543191949108183426336192337265961796098968271047235145285042161366865570427124170984426283749168167314872887785365587780620867502728365131694510548182222330545631702521660914334700374831186333778845555399970597667854629344036830462674538022917453845357550766997866532975181979619448409258616325036816514584128834243218968683134542871962668223255494408392165364800172357497663488843777909875757767936618313441673583848552604455297168538910469567502846937761006362281537294762468245841081197146224467497806764531431639478883809575730844583139338044453680560622781466716653986464248731891761333866320519638168480732370604052422211703919689795068749711547489369550549347736811867034775005668423415630776399843328972892868627728870466239504974984498587391458024656892769427271320966322138824829375805091835124299446126076218578577888134448116844583215012751842564575632857035499083280423354542605586465376929371826467345130243259282215589038766167573554805568456912898109824342747566680824631887500327531898534331343565093469693496686179720632261534961124970765589479797387082294538276452491150950069745377353564664242636163467141389429793383737170123588857999526161088433798799788460424239183651107334306570666140235702614499588024781413345568377591095913459616093977444793954563813178861544185550818255176126790234682579721831051306911707307540221793639483942488933155847025733481555947541799161699877933488996120963570513472750251614187934489257381753034751728613259384743918474459167996313553509204238813483366396352377195320901159308307244593493216624048109161373149446574169361437503960515855203528877743334658426057696971487289677287212261271392732426674378375146235099793900903056452062795552792607709788623246728293273427295964046994273964179694098811092319449271122725724799971194019665656450705270995547410114612878980481108079187588068309521025144543952313374005206342938981624433626265965631145768372573094773548469225777228427875874671478595695525038629408732919142458175975226998838239946763624668131676889534339865163061880930420673588011118455452409313577545341355706540817284650942551332546356106711928131290957715955591509951277801966741186909741745001665372848953973514375147360465076763403859441569763538568993991923957435442630748559541443997187365765521323481639508687483882511343778548979967953034651526093972407487258129428887441982362980048641906930514729325