31422328759700777393311127724767607681827571571386552654463122331944258034892184175893277937442996055367889697452863473996969012304841736417963143460555908754368575845815439039489470714520579880983237188559994526324842569522185722134887773287170872177588148257945843002653455526712006846087365836595506364629953248133212340528418089699134943664976603429006126769266006868492019172881366520419427022405353359083073064811974191399694970415675383861229963926995874401676595676227926305182801080243560569994221528287630375396268986028517792071702256743799842095562977325017109543023964611210455147921011655772834236087979234729518785144257835232885317126631659915746943376627382579262841438433634836483139183675317491668665593724286800100132231078852513362180850441529517874154523353997386581116259711879031836350977982432766139667830593844736315199143304933866605859160656256751418378922186730256281244535970916069726276713432849529997050904412229528743779783611750767066938857386482438650118326986642099873317502574193515439455542723516519315408770777761954162332429807476115346318282103068146324305555832421105283833643958362204314712547625930351761920395613746945188287810251743142694612982998164186874548762366069983152945971817719703456251628466299277478894404806635036950609887947853191349779068281368267716988770814768397983472315967746276039783299739655991157966988234721360972204263111873397702406784019036602589116016404250140258676861732296962117068707845478843842945832898835710234592486207590567399772743724508703430076342448787351860476788338537311176184472413359488563377864595285908970221454861797195607991643826321886104730872389472553980441771401290433927966662020214393267188709445309556843569445023672990541344983051023640087686094950231594074982060011081520163599930879213837543591972891573773019632895876175552420649688009001992111501736280535663765391570316158026418610462855497328171143347754169466236682327515876693111544917315998834173853212871652131386552042872708528038820541422682768665050913282626881588740841551335815759693863365328180533271680478698967818830237835883744623865477684084408855957180252959591893333149462402327395651644352284759813662403128742702242471687058186609769688010157698438077549457161407269862483230134556727663433975474878371811193847994972519683830627467661939813234297110540119806769127353799007246054813198862390546292519153828375198268925964967306902711926471591862574035901836695243825710025299871121712281362426232349648755914628781354278522116227256165812892585222583998839028343308677593265704016046578226432018203836800317971507251822480058585178261688246388518662858186290539655901979366597392329315920954332336306615458062801416743846145361434853887611892072706553783318718871910329201417736313176222678775891183857185285417172232545687700360743208674075017013423924276697447521303243581097415144921372063199272454631586118592028318688905483821309387034643602085922054192738217922328992692832245225422563478726972790988668756733079754860740584891691555015681732688257477853829407848336482125278869521536121874216330327437380830591938485807494241414892676217758363004536424962343466997557490984706448951757426239394715713840135649341826525073541455765227519393631605674313323774447625885524240384726884913736328891897126787599319097998955069184156976321736018527546452644042735808625540579532656371318913820450730529681372025589638371115166303610304792303048154982900042607301376186925210836925951050360287539007382941013981490562280558194929124252323473584250036859585452347070334253635246805246711192187437704013265596309566511870157087965867958956942674717472522310531398492992852864390974333798442234206108202173954637992296238780194276928786287476338111157911553544313783443938566609844343245622832266815674866404979963051035799889352421140020512160759274146575849869150683510471217519901110343856722059927962908044624498818621476826667394430690672194440939173914487294089787739030659078639202827258112673979500098064683954830551444184145945212926690248185911422773208330992984076278771408379598407922970805047975247522499155377311192237490598512459707612437224264781781652591208851954028547576287475309514506765252921820525833756390694753772751186804484947929176120965921225935445958909963539330208282824355407160513494180365799696077621435314291161922564103712067284650917095922394594085008113126669039420297848842665261105200479530165775518657101358207699711095494448645723622522411595854054775357180988607488436335933698420743161430639051872376746529321053104593898077216525384066596427969050838577893011228886128032651080998259606960550746188239992180341507851152851115494498027829128548610003896376495122585665877710357812481674424827012361996478862075169944035468299671074105503233885207977392655978213360943193780357465699556370155608574244523537212761837452268783915768488542229729448902868167887981641992265517050778989766441872897285451627617832979771127997953759433057260132152831637289049828342881374565022455315516831793421864985629683633860033268972279381204823510946792517494334372214160366051282871759638277710352170353539128697233671959776999799229798471807082883184875260630443984256050666817542425846520828614519542240817304802485444778457385957862894525976089761659357847577643693338706298103600377385792736873422344358762704672462610039432168220791831951367156738273117745617545589636530585498978356473921339996035473314609130671312905174964939208016840674535964855435293535499343732289015599779263731454322864595268225278781791733324556676840493131353387834169926966019895501286089526753391167065072537768148333801055383255371999423289547476130755927150492550561214016669168155235533028778948359233199746635307146269007454136529397731981062701576764336716349324116054184386443643708621787918661867221171832343971207834345507538337422823752046697843