308188002463130914431654673955615738834576916266621795269414119293263243743735497993518972239768546820324977852672316449426284484183525955287539246474181526423395769762485495975887294529026770319303113329194032456803595242090944010809170496228656557624132368145900921996675498357138257157057354859426595571278755396233563990350791014186351163539795274924924781764881420689937321908770128669147411251713442104391514880336240798587092463859323978182239213276313408915935787086249618820710687463697553562045683304226333085327498875103478280936291717852373743277904305045795926127288837779151362839540971279457706528813478550261488066611204797841905607151359674206227229248238876439429549345437184606395763452356847836312549828807297585217206745737307700454610669013635686786975938430848136809268444436557743779326594799542265024992383375440731474552817279143669108302940808553561974284906343493529444343658793541450973079584994476969717480804858712606689323454072982779396635289512596358376922920777456966741143475605410774993195678854949166827640642378414714688286532882262149778127469316554492666066654311658429217484243377312136453472295722169036542960856623814485679554724130270663661803741938318787186265113791679259370172644713174605387079091376361031628766396423243371682249766168973493030126784311835248344747639365667111532912562890940540273516771236427667375157623881205176356801956829359436775719515483330807341356292489985809223653148236357174217949325246248147851686272490914414463257381793456988987642613510534466754988763948768338994384477949975530083711298883126495572285811759586929334229393446771574693632261641219025985624178529832286793404770866395153321585092617501887732345176744434167676427246360834366180593437957183304935098328532634729818501062695875425985341256979445263390132589127875395061234195775731715622927095785591766947273585616668329623559282872299348558318364901598841556570335527996813563787411337679098793133297262882306084511647679058588564152573923998872152232000418151395802148634792390994265705138950425899640949586775254597033405493597116564634809928361491928987876238657195581287453553006920947459622438664312338291137954951704127458932256527197668044843431179264764395320396836221667168813718188287552251094223638245565648661924738707343491757639353580992706734533815863312192454516585669216741569569762794967765048744738616842212816284533475643922416357659949085039792774870016634953520015439946619009239700154142159637573123868292835233503054508170519713981571623424899723856158215656667706429158215440415627253880177956108414416275726159588416798214933948836545035564489893141199627437615772119668882929279429581642693866566043872887230841289953481831736616067501904837656405458466147574223449840196663148222077811716187204608035740821883018185661745142564255864453779192215491776245424565910844362189153172843585481204682194186216476786729612926343621256216222268913458819532097621644966947486834833499144282632699052341529030058691839922829865190502077987058146230473229633527581042765953815227050737427413122922934744324573740918800978666874159804371957800690350178424621152118306140165849986650348506798617079658998955534164953791626892227413291781893839338507111558214748981033457038228188532313451838556249798757657828354125865529596453428558999862441218807854743945712068969654589597103236955984429602885354872926905163453105877907238856074918769134130364820627052506132183336239438564909300633385049295505749545994479488609682162224471357889776903049923502887815427739460143258205302369486845472886883861926767157869507285033777271178518376958394759629987893755236892708128556173444291818412858651974715554160677471574266272079279555288215617262560632032941772949376543601789237212986866849051368666375574330386085503597222777301630321424322998046721762182766809943869889245526503700353675206433233272785832349673773046722553668024520863427787959249555436792289929823906021642986749908243187769785388747953983164420777304145252612368214610419613237371833975051975270770651154751084864062017999661879443671858662456483327574076115715574292647102529847677257779580606778218198038684199779055176923866623777185417228529225482772387291411235429482184394596625322295117658187254575687537617078677367425217428411372373118199195783775417139081096199081898085192571660256476565681598527611978628880902040179165179265972566827405192267302368562716871411432987881696868186092145149164148111515186104620324153102457102754996233857150619460590391665055107482294919418881830862283114611388823436687688619893151134815204668113368602520248870576521492745255580263183038479460248324395315746337501659121818213930676488823712552746895366860492648895349146368185640871508583721827308156971068674927379181271897344341558814123507877270289311919361817449249814292725771697475655077809948636237932484260467014918952372834129600699199352316949043792051537225182558275139159054525414957335193341723292630435594319616263467684469727722974497431981651581948485228908889286728288265511740845893381917793534937032734850538846645704651518867096594907987144924982707212930558173315447619089843984334227611383997884025160651410333272516348996659233318466143091206337988981271024435397892524655478512641151798193241424223896103661227092290855045575381548195016076584942257288517017659685920919323551461972971466263294660145929303449176639112504374752939594215229397392589454101959620524083827234983511724875284285422727728562731375792835388998239186330260045698283919885964472718307720326836950638396007110174605237936779457973960831076626820250013814177175066352584258920754575093610315167072390790813972496497455120457912456894616592567781136771524793720332296153107854413021025661382151357396733605209523230409030358826943821240101323810949391224454969052210412447418490620764404892339919503147511108027