587690155359580152670811579259430914940130319507070801841856375831984306549525084135614926181158498501053962121162955541356084495059488899113664761953812443738936718843129580453852744078810913132249713588582918505815883258834754791502376581009480720149617891374926244590565575961310792869507738623982987538354240817248305084926462542766512578855565656483358727766274642642966261776799887658798667301008594169533901766752718957947833619992417956426104388317031566634666956357581389784794137866156112405493813923627939932358956759466163247976311710800223514847156414321053261223662978345003233174444898648701984636175883527829823830581446647472538219727747465598910611374938090648713148588831489731874697273229253395596347318614905495278375187617316487225567191026920242523228599280144392301569511676277657884212525294376048422551312215001206617851233290832467391914317105418397835974568190542433354247280479396302671392184039897330772174853894225248225992507194175712999296518044472420875316098692912897498894347131257128224525014222267599098686578875789453155274392133496271064272518518059225908768431678093438929862323352356158355958501713999385740916676625771530744570564139016238788167020197438853566426818980972463363005837179214557943808979977059964918478379909775135432134712443940898725065671965501892651392079263989947717966793890391994265007952515755789754853903258578736010560146804132103686935830193664079398653447694827184033986621280555944720128142869712257109582525635137611432673695423194096057342976424051257961667757834994611984944698116069161727565012784433414857387376267925100307926136457686340822248387790121264194421754737337785670861779411844879993542838139841585016702385352660091181467997745123144636147088051384163886199568913598576658274478569398477397321112588456707983064657488931337948447917895581295867755137503826378463572673852674491475600770321465429990542334094045633221423740722947234203686830256133364189404185497520547251270019033118564096145872330864965333675493316462630845429564123762726718556455910520612418948914871681201686231174344585679955535490977613648760368313402870628035156737078356549492557051899647819932505739719793126327287258458422799640101833414417237243366589770121057401145326505505033969002618373214039158402913404812589877465998161472406408438860171484810295384594307134449451403565739051027343774774453159557866943355438756042479587757519322845460839916143191237779963622238158402956564632082622150195248802483417159828200575311888168577623577953074869682164953001348542679131342840148580484474201363898734508777158308197113467262058509240814671046169210522434320135621836247353640037834488341059608526148536007555237927985373347185401720529121993454176805743083479390573459273127277971621307839117021044827418932132777793067337288875200089048724207712481718638811705280468291803726480985816132064511989939247951619853049450395934977096975214323649741515455322771503832638889557305870624774459916412283733393955783887116011392987327656412967806639105898797938957789578691765864720862796476834287736806531386164145434566709768602858690548981336683518802567510791633318915799405770138496215551347312077326232554844257158331092831354782830515136771510999595143147741879777873128199822378309168946774292758182796259710342168601409249856426341810164879036469214648627903508797795102792867297742564866537406696729030276247839128193211462141239476696112996445294273775832425199512264508738644275770511649744093290373091490982887924974601475578962817999646411842941881494738488131556055923331621299698265724958616194545830130720618872127294748585701262613044691490813896470932053490676656098169841450829625291930032713312986831070281018639615215444112084588929447688130446859829830459289948660129882760967970596837145710692367119899263012355709385757027961465833822774346609040993688135582253091223286607662901118906630885757317989777524208202620651921675815114294120587105822723999273224227781091204556265402368173978575600796463548238738376467835120249980458978185049595074620417493680172093183511375975170926716916414434510691818653620903904728594435435725862498823911720330857715615673332862842964703152907627176430163515352477347596005265613712749258222037786546945759700271526459154912614086611748798746897528287199382195017618749021087620553859927720451108026113182175872551907261185176848265785833078227438119424675486981389996401819488213922431161830219086726693085794610243331353712494948796938749445781536544985985591218866167657173610587337722461448658859255435759210279759468847857807054475679466910159393585607578017992162431096655414631647554893332831575103731615783688700685164384806507759224152992313759791913969383014739815210297949942776162161956764426658007848263799671154934688567089217320030502726793661151772574944284611533805580542188347041402154516070361233386621684714199860873451996148532677025549252513529380449279281939093285579458389316864517684593039657825642217707336670261079491425375487965336342421473981588609461894696729133399430136447740824343517738909513275807065774352206219339940687427671155743703892840026907219280831152043136524179106455627831492262274436296244857401334418610686661834378965189174164673884645480019324749492397845874630209717229970419905985061697638438980696375313205926714692584530641243972334057627356839872431991592252943854369989660288942350972792721286828160361058296437768616920313150846761574328924503781452415209652819915962441928901818897971107208426562273118942376405129573862491211756789769973529562691069163760081234687876015616643739541221665885571598807829184534431798547872531616694431877914690477372003022469415048537139615287164668929787882316517525716765307521418194298021806660844966631942074461848138431723548409988977390874883873119047273141153225063939658716031837260465983322095856740313259203056