596741183169595972992569709278227936395623219582227726509649765744893071334068907203500491769656465267350731425414595956396194598408930491895172929940594275991672326017091956581334827785363518955391324361528829770584077297127481352542524544265005486259382168360433438627746790442147561853944532222007565021695706092730986195799525427683572977903315918087112217155907600240924062146795763564101685384233215206299972982624878566701585248005183731875605322662773774897697449266649791882546984604557757844821989255470498840602323942248172588662449626416365124554179860735131257382447912668893393929162427552266337917536201348114835513730539793575695991728044484738023268405914929264996297893103575397253570211170369410892924904243531657815072754652426410170619669486964010642645739649084233625910757521194242465826327505958214652780862799892100110475227823561331774126286113899028194729411359492622261721126135232489045441256596421391751989319600929714735252347846445727366711542170279170176544674365367630316357637835398911038048841362604472937620344557859498351781492336995569894554590117966595149795170926478549659865307681764447718112478275867927982398059368870998148647936326876674593313924501709803361445614975325105158525010702673677353453924757449654212711296343210367715356324272732266972145241278177694770373722937031911016248474398651626781386534773300600777427620373283746906168757216113286336122116840981559334677567371020548247035178615023474325731798752142475649681737316917271573663189447339878511731660728283642387790656252853444127821233762850413943731846667296835061985811682957189018491419441492519099399681914535293574657088308756188604868131977145141560924871193889570995265829480771643589187617542980546547332940539051729652638797339770546951474828801995456611585332491873631658179491516568417622167825499188415655021702182038116151510111865697727638723080173456458569585168526606204196763682775684530293489349253510572093103362614088937142561726092596915621804384560546395154872689735983656737723414306496445588961990125695471252836328702235238483616168962469556494614553816319276664218821076862257202249248608886983577120728321468990841443674049082024422345685469392580818856749438748946422209696242370252934619974543842435908564223669558019699271224981609655254602096998798845217957912644588628335413355136609389679887626421469508025693026821703299937249994262336958662561072794671113303787329542254385488963713425694259707442832594961115558681699956616431538086188421972589785517996798555239193288298795624545805226837149190777701415912634064445286196143549100741273843320763427028785528495575951673034178343247358076566463827604696972195336733752868852672592643521761543311759606979805812130248590248398044809901920491948692017297781850977489290433464591850478522265521430299547838372768305781804883355670478631551328972566247984876795658731104681228111210663553178691819478265613910938858527479605593447208143543927251663420738939880821636221472901219817783573557925090324160394064068508882489205745963826676283358139665021059257181771151952262003228945067499557520796411297544419747548512327109495567481802537269547123790340020078233599255437883801107517518873059904748935716638923841164294921554915892768620048762678225616053514598638651476131772766490120338904414024579055623939448480843480693548502134139555812140379009137883951556214698217763343120269657560226772662768727802330978817385308597428275473368522832688722740712624648120182731583984895372655573285787008623383607872524451109798342303597336215949934117564183233176921022919863696294372757774401077536520230734594285930438391649799099976735133547916212843607198576282490546527766301266496663385453817781943299595893555734501498870412592923837975515915926112058548143382634651849081923689025261285529572508218696267287781665288507639097001929757774322695121218985098725827316872055411663141191626900851221323359465493291210128195232562269168218777163937643318515355952570575528781882620468126151423485156313736083497937435763624327496178995670269276824354549928117088372803665634269514838976383330745971749496495672531651501153424612864813037508217333189452218996266545380771122528656615408814561567743441605859683647123929299695106232333958467483658805103137678447590812934296592628194799604305391193979364452408283564716174512466911467958769409315999489826864708744695181556577259969326729915320140252473509194189510798465216062798139552914458586142333102341487312373288118686593451167177795523632138800358153114531105951688072867733236904328894175301666538869965249700214426376615538342033198317377786112498390407118744166006646127858277221392882339829751648514651179820784955707459456349680971648863586836928460369538215751285589236109348529791863731592625739587415463536682120111089255320515497085386240998989476836594398158398804399011797134342432977420728984767234831883655786425089344161972859119593651415879542639771592979700874653991419187239293821227667113453408773347599326845375979801905671735117383677120981778801420143732954489781051519062323566501836126806145966652410445513711037149082029663529226438555765667364700336844349367475083604438828791818203749732104529458745628603383544764441442052721496940525022770847604031639229771148393741041566674419182391644718818171634961610632179665117829795216895834190386914661345534842394087625228921699779811976449592556232784869533340386928462111491249178985838435288110699174948164860777721358753046511185967131175347223095576226921052805711841319779971236287574787619467229895885217718581756500113333099470038491514855274194175253509101914473583243145329824333992101978043542638327820209192617688358151116534418738075086138287913755012657667648137438314700435187015077433562146314565920231195576304192533833791952138511181615811534030629014803853676021413819329165584617