144061424294401690880849144851096836336612639288960864440777599487781794170215849763423110177253025550459879735445126056592560374876570362827852208873167852437324900492073893531825866679965803205981635061606641458196913081507429802071505748893647861920380182595303121925762634527147934387821254198248933409171418145766178315312560266115872557308363293031400916651202389783003298186798917973262126534262927286543224196786387975223990699149070711789463141545452177748297954215067674876618292627110276483760468013364506479487792783528753018042411171238765857920492356613894205861469785977773142502622513917535442626126161571486545482674324063633917736258878257372166925192006206528042390210796349707804944057711400895184352330126482708584776259024208496889162759307586978185899369426687988184843811644921378571873039315877591688221810288251787316569461342875908718012783481627868551461598770430488531338615378157468852180006404559077324136833169005844653374158706898965778822191148698598772720904918788383238287821214350611229916477413230688396770904559423715658158478034456426185638228914381086315875296316494219152916062924732604865714150277634797205355990546816753222079058371352946175171308722247890925940662342152056713206752095145190821729843761436853999667979209670354918563200833495209774953733161769767530504890288941205226228914041928642222489978810534195887012674820824738554229252709632831142356780557433805935164561580191450843481863035920864207388801590028811361889026999631958173758451661951551782184406774322123488017555557898369211889035904565188676800121964918706387015511837624518750564190857258309267365130363463515262512791249213231887693184571707228425518750508173971353584572728350174298350454961305779275352936798337024385182514888161926329791385635270061558577788567813975274456838342589186376226127359454584320690599534024996286966519277855595307257418527977561139926654462968562926169666774168922844212186453896360377521725244739572127847570849353688593751062236591957776167143795536409849162385545289346934124933737713811012271618072198062982812298388691376042767430770379511389796954629613634238601591598536589432716324734285316518186248526687192415459975215763261651694467125214464908658552049267760568272309863451239065627058503820943873660450923954350371126842393534447422017921878535741578247945842542369498355363125814784783343247088735910869363198331726685147314390948096165485939757666152587754384491197015620151903283787544117185553314530133237239315133296375571908732576241349014457287357554069078769052136907711919029544081474218093166680835442598153350341933599363394486467773211177714266861534186611826608473639038585671490122568700470791036086531294861017532577295599447695842377589816926134102567280538676296403639627391991411687479956074556604409175416188714679809742490644284537173288877236054540333388741116670129460053496304580981100824294692746349189721545202375585452955120954406603583528495047571534737542270583347042942370754043725582724833336986899218545168746586270193837875442515751036615314548110248049889337148594039292435858136890973973967604100763692547879482634912654084868020473374489860430757357722992567897101725637194593911248966337087638134166805388143543239560968416481655253233423255229937969158273916138271418222434374590577979848431449381527675270272713074690274465083248694214338493255185047641747612577818812633671976934144791684723477957376550943195146517884821651467715702913551114528351103445531485319619317474504109915843026982825671658223358288657883562532808035613856818945707820616953685322847327488741603789927080188054937558361354171343172895230994635088562803113421384228361414331106174373678611768224278455734703504405478522581768398052515589653947438703690463582983188011281430782566630015138616668253036633243291824868935757428482631579379068825897828025697477354652562195981473943768074884314958252049204195676165678177238728468562878388151889123488871174608619862545682785669395527980378643496898424854914273428804954743806037781871127075231396362403797373114120131464659767374342444191999196279478652313692863808106390756628607793364152616535969489091845837710685812912348366229923211802226323671503234917065686269594708926639047395673375256355214786702036844159987264265765565524954440287994185735630242828951553301705270349283366470567378634491350684108956272470778469969643463613203797581791578669177573267610426975199285683836628569526747731109266575112458909753962443127906541589883333713347627441511482073304416165673083159151761783903665883215841917412077827551840921725049066697810893996246032766356809750896436303049341534609727841992423736434423003536832937712632734990781328222382675888679519314934637764576701690415721532944489749997855931741877806684617594305653655148866697872610235982270287222436609510481899623234744356429868009292991595574438368854079583578129839695341569302930181848256066512781783074996231493843899482532362673128219999897013277218802763796671195639912276489353540935559753828863455335671571316900223057673872840956102426491494801751883165019482452396171865264759458583620984784503264456483644435142253492734352637408915856367966115623766584374388982431122791146528097734015075478675612783192789818933917848952919402395732765469703732040952029255993986712344474179084917086443069453666064587915716939772640853188841746410189903475858387099508977989068932831504411302350037076216648514718720176176384764363932752915193309024174365726352373538980480763704810453953487829656575556193596772818658895984237308502531280808712315516171448122391910138332624742266204941867972260380139819754173573521518675721051470701798804342932952669477264490957196617831977960269056194188328751752006759252493639992947172313417629243649317208861776917222621747194227214899523575990826272348063666571597107800623371013458884099057161