940144813645953444881490536589096360426618117403509274688922558825548129883216031959376322387687377515817064630448899114888208264178311799581756565268345371616842589110560720118677823218155873891993077149731198022872733791829462552929088161643942091855083778760958137739952983828081670059503819286058946725443643761029284561701190213835295998719512768706184710803786555948805062663850143753056741911203361287163657863439896116674270668269382648942823849431575287142461575417975035136325465538415908245889805286275079728519188683629671440696799105383591856875694346424436056885377504292451134741454920215099735513783854304993967260349662218409396661226207319854543673843417668041932513553165613814947149653656612924767986746336216984601256562672628792041371092803134856775551748201793816110887849405958128919604473165970399140730454468004838894367575162169035997167868138993676454164886897615856759869287827408254231161244857622587833359627694071901368035974785668526319617854776773868244803483364781459441471467675167077593794669498542076954368672278453554512897968888715629957539753787638713633008987367794447885897363619932066328808332653192392233145761790315676189825329617518176540874254513172763472549372557725458629081788294956394317280790312026543395462193142753344612754066261890860286434490953148727115493002657910526664788360429865918195463984752291941675885439623711717731233596149831627839596223118437064798922335213863263406340664373325780622963689501814713760863917665658926473216471988593383990442672263274593519170907859016220314642857378921547095207855807711186984881689531904372668491634279867678417609011419548584849614474722335673208556883876391885397846127182602688285404795546542894547995470481460115582359405100089106680271156288016430535749195401798747708579431489140988926978971246486611240362217906900134853963133581824034689662046193597559079935379636763705328385335494503308599141975490912492588793420110417419992773181278523227319219474408678187176336145445032049682788972246976521551494291568526535527067364782407035063747318134774914990842217025977203180535287973518556877520710782233823239811395399524899642038691783333344904948563742748793169385011435545044354256089041187716791969392547484675688453797997850932178197638087855770650255011567099553616537455192245592911352472669604036934767150243403042772648162238391233543458171445976260341777023386914401352030411032244489784487339917075643103674573518214557345482739350586268981116098424952416959244306125365790796883260822248250788121463763477051545733877023910774970587535143824342924489147502907759082783910882709657411844759941782245963743411532115023053564379823763656492627857513787990788214440980297686228597705953993425533841943455978932059280456145843843026651767223346770350125454335194076405667461774935084966134897212053866655076090729789338822378216280279597791111073189489812774278551595588457597482326501142836740842400485550008883409499464037722969657727640108022327688996774125862990296781683725248646299964815852735786056267066575188978345404623790237217681979123935279575289150251722933531538874423050213887356014662784083664980355831788329116824441360460501689106889908403983729666294288559942331538930527252570042094432449874276745616765836968431170674410564342275349661756799167822788526716076642467834614845256442362394494185635116890431083335336901865951324981174149506144558455887027921544484483414683392275798559657577615874388260551350284788362736918018705118849933254183390162920464952183476523477933421765751716477611591162222197095412673988705156437324894104262686647295984821212120354654193317803229164854202346723239976295705810518775923961148130101179806277375448478635201172422385535927633939476051855405758281866699200944791692667289737441261391587737872605941131398068116676124581654833084032509818383615374982217839278737765456819898719020139777426427776964464498336826282294554359593242718993548915331487688390429606972315670273941189542828150874112394186312507831637382872573535783896017765252128261807714338830101399577058736586032679934817969620457073739713470935691844644391538815173471158083954441725072496728297522740259716303157439036857285146672497369573881711895886649678109888817111174503061710313324799152111373191974887948341741412729693879596875596826686952189351173053136966381372643848649221338213379048583484208249715440128465866465578136597533086368437719174646645525554138299564253873381461749176101922432010043351763438864245642357261956013512581227878278660263094949241803111727523583921787701909475542160883914379088592960809362692867968681518697366043911947148321657629242351504811431193620637582992985395576861488987732104752383526459505292205326731665108995990459069737601912239329448307136520017059295740984466829738019022787854326430541439901293739781734321896940221959140692591959478997198777373964577757985486537984669447836683856818465454871981375305585238369032337216578092291508438016455681547581139153572708372991823613305642659436133490472612186988213622286405997197373334126375251767583464248462043718130952182764959179078033734299328262383129767015871862646861216289986142621452331427227541825725583170653371523239188432764901413846999343187946924648485409204252525611410645173131045937115464896396162452590026971265993432214405396592138737910895775145191049143746111925567088147227098168140739612198916978243340216511249039841282811496982276403362248230198559879771711486098480014398155231123591773393269977408266932391056039406311723056185454761692795820087116073531345025673263198899726213660153972172678879363745893347361890345646239773219866872163017337162072555351944922158365907651515008942514523226572349604297824475472411270746295556154687276487943482083265731226758233765032048282961512856635868748458169408551306659790292792431961784905353107792569081832