2572612989235991344562928708585927084349197359271414606490186235924877103992788072836685114773486224297413283471956439401824443296887565124754708770188279986120711621613210657115028529523292292150547229739949710978515920301438986350274166227169850695972890446034591064804861984645881940361539123728469464332175707897842162165750784028816462561142195945202129405920905626617046673426263725869789159208157440739121268395793172189561791905846767286214948742134692501089596394808125659145415128702721649046906111355986622179311809947830784614795190242705156974929948660116320588850426443222157252337680728248126767833805243396973443660822083183160877396598812851519810219453994839436491708064636881304474761382363146398290898394371192129689854337428315167915345747581756784399535593661791687583912135699125512184347734111118060217660942976994839576308568055417406379752707979238151955511916768183869980264155755239943643996524201876538889403781078602388729831027369772042034846643243465034839393124410274548162472911338793919933188565870423461652968075247920245402394525758649160384039286191581210104714675710936044665289539182043102491671696583163837892779195347180398952153204197587361254669872286262715553374562443251558199990277839849971799707295247462114777333856665033749315985410634761963001482348784153397929691238465848742922411597031012798510916134442453930048341421934264373645331982907359480295712824988116178613441082846702118996740104974423403442356797695838084850865838251144945208836369878913094955283438018059892727622101267161869379641084252672906532215748109325564869088647765788827714870299924394891975761706925109376789462693677292713211675648102813468394318981153907088995490154770922825070373943596636934479915740796753930643319231754280155929470411652355715548147625185188912742806249529961763124810913733527463719680951822771375630719471176021734035847611196799918450175311435524328795143786169342648574670375309392127020786532647235589649757161236505366165423475139510657236543102155083461350466057988431445076622128490811274769736726986180415053994224909536035180503580649835994244661350816179268943664994775286166585058443363299989290468094891915717490091303790951471748983565411279761355551890087650816634042967325792352719517378777135055811475535636736392447091996347339120555051443563816396512101914995398982549356953895418699064459845713194729744310563492517866830146089171281187932576276461721040160198366661717241006286767003995898533072020620498365637364378243456471492254960712915869277274482437641262223173759396511250229852295914541848719295674700024418466237287680512232919153744927787161945804813771443304027222768235137298855881419189158134521602440078784477667974912156147255566702692378713642966747262286949736767219750928625954683431233928179495490361673929945084870370637258026451396378889717014824376508162816901781693143640673531426668268191872845672286848725746939161999291385277202898919345156721444700692945942262196263597911872827319317554216492249786212904696913415621079730583381721747830047173338325770465908112114398578763787188896349974073475191023944238458352785864384873567783321225822664744012208026921463838336437871763965435097012763560698215931466251322630294006558414797435806259757205611117559186402201338896772753849372585021798738771878912662736621720102838748112034397545037718435447081204951840193271835813156576252773925722734790540871216719627774724177568074369180339537433663520733890533723521874727890255515394889361699867709564686712589915754499318339822479951658258733433958776723816005314944963925324570821851060154194803415558925848035563113491440180416666441523522148359874609252418471643733860387359877220478449343497446270987798411110098111006340864101259614520189337283638337975966216756531586676377253782802794238374994438969698110349420634648402643652838799552903370796218843470787895774486490551089676727208840344418995650329344193927894497347844330048838123663612955976566624899499511958063492303775077541966225575477802291646374262748529419204276622246664031889169981534170213538157116524754677517331747134187372324748078113975192341755783264444691844576720351529369496451729714508224972549226060382973140481096891870487750296348488118546975929239338799742937182486998848312072253267284564396796085625386369525927066342569101728657683979036813634997332372171793064046761193873608582861274721674489362439855308037075342810968982352594953570742496966349085825102168587893289432948266054748159976517095354331633487425512719063847108311210333220989614605968864847062749631390891544522652852610876897782424358375745862890896953760233515234562563269707319163284921287933316343460559371614005357766674819875229835546405855155238728111283252048691588445025679175476227503143736345440379388692546607033146926178321378661986208316901899652880648697177780174964986663283471805216163242388093431621146657551072240023227082275894767027835512732456538960793297238168136792327302810655794612356015325581121386596710880015151799256458596626195755516903844506957358197369176171898658185474696023983936977870023153532414835525543429171382764680044506827861146709533008213346474666159856731593351678747194153713961076923771115677176569118451715050941316154093585746199721577655907682673647766175433516552551383342729279852711920643838289721769166999651187820547631296866743815871482227931370288974149445419479293694225764476556499348152703645376771310423971048308338122337445821448916536123415875328299357883354223756571045266186458959563816580171677199933664479929395876335199410291138499315310854307874365998588993665883371921902707452192900621828006866602976306810534618357988877471645606594693799309129278351464695101555079416389883474903550755318491344439398942063465915299996745774265824345584661217992829099339175197634440275797113267743891622635355864506526416849