656983316584805573134198811962741108192393526063331826588633780149322443246156594498561072547592583380021011269325174573865629387349536358447714783967597844222935033751844481247259993840261268107552382341081489803291131269120980826776810996650251448242774524948635426307061112718493386953739271443643716755447575773464746623467580707897217855028134632493655661832094782583554212539841283296617649542076973273441955114459829425448414336497098086295933621946465641311063730801094268094591074293486803578258477772881155045308196155499125769671426595825753822153929128976248540826721615481129387055598572052806946249906823065506401265216017276928855951812795327422355606326539038940747117104851815446604017457389741467611603983744379286018142026615347395130443665338256033464360946267784727429238062632969195759228377034272916619994901565724055796084857410486558787086902968715273460332465127269678793051843268990079078409639196059386153926256528918928844186002335949083106685493142281669110284267922423665939145134681452249322722188474529688864181794626296779093317859777921794423450569648938768778571964967508335486391062039239038429322478737986458650586127558414341988344965141633386172823642003077466760223035780981099429926665240984155302004289091403394437796683714947759782006633534206340246148522761263546501545739320284523392863970358966483584713957905317951636132312443760437029890825620775113176233870396364564036326843200878723234858849255444634831321539932359663532759713347217997849782529273778978869024274438161675258898275320994906938745550049279435485344544358999739832389267447927855591338083107269183123306704410243818622825629915526220409112207020175740341410660827763570668115465403480585521083058453429247915322438897561921228202040779531066514147606685223206188139017671930256269808742223820554983057937884364094284927764262404888796165949735292957398616216796436148027252310352504403866870687575923282391456962540391949181183919424311968382534965527971963191336795619868463210533165422947470114167834719852927793709112678914436656141494404018234915668384582750367448258586074136655187977160415859527662973581602060412344485896835279872067820160173133563579051893354051083275465534383727623264204036200353075914119632638925361009229868133966460043195970735257282478670572401722118315487679394223754138513072841066321612519423925410915472252119025153915578122546337108258383892074769623278357545032841664729816975025681212615422913642019662876545694630398289321560912162061616044797494813463372033097726993850998775970440631592940328267166601526535858724231598324574291066094035941142231080661362389885620218947490870976233468522208496888449666745328143302398011575955395669678488986820293366709713981835993153495566819946177726693582137159243963812552543749120587535256153629573854510155969472647741762999193397013991325142345822263805229819563942775816519814374065539799814436239952553997012556041859547143409251491847880019421337977824874198290896384021833343988142377312168795294421232444966765814377256175549878464500792580912192494557564293986657623161135146793506215167431464458984209135502833629571226982821916938025266015727051269573638583165888014174479861257535768826766255181624408803824951661841601498428269105679196873480448880487855492619466157049667743437439948738614135069976747596089616150671913163957536947302557488670663741682735582079605433561097899520777541465951878383336988712474083634379611094900278255744134747413437182587995787518578431966727610935129338159341559044932192753281391852333356690465286816502959851364335621279645645390418814105091820329535966344641222417325782514879312239993453034665810755420525295383605352752072269399161493397832728709420464878534595777174001967341677483643879054804738754231631559746558204832356845669392235546935939226526827265174823595275804334279134453428723292716353982923191049282721665421243737986268128661017744994378008679975997987640315114597382878185281543464439838946633473827775097042207766757971108423831504525010629124666449439473365192605665772034692827288714743952483923946471743805667934775214931852736029768662586031509261868473672380452137223302716761833372741083531967946811280364970535786762699340197545461062499137700436394087528729537776051168326147788861353921401426759850602254324487641408368392051292719499648433253332672053445044993684153582649519681854971747032543134675911541975600911256538587075125805389978846873461079848709816070999466375894156719972841256905178527722319541876528374253334821757104631599239396115592959144196433193733375397308970652667704811137243395114060257113193388448451437118069995896315026685671890208625174259126856747929691572178702982590654648629968756068619489255875805456553592521123789378950492633395855391658934882572475536251174214512659633202749583829255848175787877520731858790232798175850102297869381504759893361620321434508652283182868968752768739624326294614939155973628576269027761821962637529320592531935778265771071596057899949162430235360194263094608411941161256584352943812952997219981661871973553556797127555244735046332567572970115334013892029666350502712592371832932604515433198324879473109429994567476894325236141686244566625663769134097321313070937518411233416980424965789912487031897481256923695634539629458477986380994849917624480362803862469874047088036490251575442914473791343568359303921762977646605674660158296326876551266797504315956188726508192056037646267567654932410065091079630499319637831863655285700635098069172585504924100934775202148762304542769824362662877268615545823217044545154708344346046840825908488231668314959403631118780814775376852489788912623665139262964980584444486911351958423528758066013821129134171923115349371623452491570701453198797267422798875438396226818298359847724305767243541404479008656659922256697220911187401911281263236896896743803662751339332