643651967189687470572021185976486750034946500772718568718810833717753972434308296576887295743456421989192292634173021986498501079529744113234175701647948167713696120903491778653876871815476379761375054603552912096938015483798002189551591073252126217149118841346366183378434674731898047488576807402245654545689336496088462379223693926556195687084459056202130567270947944128959986565804828041778728982843469285424772291537847509218968895492336217067401476295687891416143848209992955087450666361197860249068894059718712254634841761255734593938564098636661049777729437067314323442545443658415712621814704944523282294692311501658440906168755991166170917014767327718757918502914091559475540193222892403390585086999106677715797412271837411931570222232194263260543837083787548499866470933451874556952722488463966747248288743382477564487529828374102571415558906370012563506294754309278585075397200052443835580313982051671870228836978714442837389553743344081895752861104347739542689186897087498008898810025195283244534826995439560993181506569815630368814412477100543380578622723827318469843599631325904859968263543632176136733073906827303321566858207662222846630711381956923426116853439693921312005165716735016291522154797895337791046570691117344514232209583787704967967237585194881612217223223052659203555287978310488992077611928592388593760945379086607307620447256912721514643358140543377648584496387506275949616576864966567453263643718600060036483598090621857828265523644848209523745122967162885720859313517258295595115621575418724115567668077767980802817755374141726964175308871428379434654348043599140978033163791312412113649607508046865471562576738884202554195227052454870099708834196724932720174586802546381384769020399634157257330130788203487684863532460616485691723712119288988691551395445929267524842777869160226584298482846926636703662536717737499385657633545091621434818318744751718881414211899932258489310946618115641125729236655595544473723493892445214696681343175285073837328779456895896728081905270443578461261201570692426838655835642316018525836527880258573934833962331162365045612614150889117144318564741036536866838784765450664740474027640604355487031312539499177514937637599459639180794466613241996184857064357739672683896658374131546474419120852748395545447278094076577062638192400659811962368523275998335226961676308343422606099639257911762562575243689882347068197952627864843565040710241844672775534165775723024248384971919382888392839263548951356255186826863184054475329354313271244794639765424132073725725177581377824311864365637047616647193541333415503626088071350738825646986396776203871419085161958538093933374871055621816586877264448640421343814126121254822553345096499326320207915242227708745803829335381029832682222765880312351258121942476708295741066428525308293172066260125146326255504086855426210637532489474470918390541333862612878334767623718259742406715535141389075155553878154975316040157156353762942644032696054146511145471105130860363003488770011414343658618812733385192298263194254056820179278955043559582880581518270666843562647577804231691874069521092662757578043853382289584544213675593467325978397877280631727219532673635774201211766022537745468943473909890319710709741199886131066173347292926903277525371555747556654096661924271356285003270830060372526834819967751863676793729697163377521557776073748936060731324637649362369694720150139719841958196248707865787127616142678828209812101529105310174031059102785721728676702327671989960359276486367590596756497561693262355293297998783077479715527934340261176097305615487961120574616654134937455175123872698786581419143670043839311628556937269418277265965783171138148319391126870059686996925098651760750435749638323115775268468986805164341819938028954416884483787117954040366618978226303891792251699787607490268973254699578929783288189164572727856933885986831729014046700033343490726988643153141393755449962095118049640189944357073953653640218933573589347113819911338399531167089842355713514420312470377125544766613123588433323231951936022972169831789335569301152706582563647867584462314860539443041537353585672364998913954105268729359467340884253578461216836739356412474172807999338872811838561395556259101560476147442903445895694845709264759762713110343789730617694272276908625996024309977852197022714607689002046225483016184908452499183149508826337963204930897456298080806283274870751128587136944394259224697257654344776448419435958662234984836743433294738169537648363522940056469854666926719282126380765922116380428116161469277506301373761057672052192390143647312241676436299897739842084726168085113773969564770376481882233249266898866820740888012240186726239314471212611199189925769985112828175447736563715224935012152163077039459489814990320596613552512690282911297546944103632295340831162990081317289597056148933173266206871280129453203058991249749221537621106989564263214532266534206168270656026697426597096155254624236177351616175667852353455013950815319559079701450212468598641428172872278962932505948361277546377661164918107706465516188802722639804311742689545994772990087762111331429254469824541367113222574164335761653098885771519018103731171357696071284784147136596554232637566979153440451462911752126039443994463596836932758924659295840901924838348022294897968752929155930239791917739495239690221864366993612645716133483685581258819343021034964565473222455464725263220445659927389166577917731456846399965841968665221144878031531353306392539680406937888627043487253897176693650561607035028299495726091240213746516631123496642541125545274055185161665962702129097768271810282606783361477999843629859867306536918397286609422501725564356210206881201940223018759721462634311121064448067903123049111699293525192946624196863173464635695408895306883093120112514732694281166029863962731431260147191844631101263388482210192187332818160130138556871955840763963