396527752563911175705432277677191335859416591695023723912325224761751916330075735391717101935443496105223196486793719883255946013577122667895900947013767738589456556629284355561098706359585562551567191334406079709080309214455976449243388617574479391200809174283415246913256680823216347498232367622181589554266876516022149063519991893297567169906415101646649386104568695153345447894194059154316211861603188788294458489974949489623603828544640407409604015283905579929964338120531301560623169402736344165019871356481837642296380583710664698726370453380948493738425397552658443779214484976316510399813617609177158042704581011904226741889286606971973864622073173236584947526812759974086438995504824130481402252195655561635633258798187261491388253592099547512828368173564381967486173222675125548306691304352962420901636731171583280714416195068466316806883940932567514905292236007521566366174539876132288928483787235248227091556801873397541950215432656818626462851559379960062254315384311251544474209280164294203171311724557317034594360707046949962521445675627429237674134745995776622288315368673587457326550600868867218825780523856415564624493441728952221246966303683988833438828186895173456962930165735299412871948686394178415694375423147679234211160134881490265558491679987425078058125212658597573799043766276795025938278262223668370889538519712589116539575267020502663255220696168124072820923872050520036472677879395803770803290131906774485410198811235578117602408757222347756966690982960555137358646537983167133909450073689243573809341128613988116959271199855561886456792327149440063888615787522893678538071121422691229908018326647739721619195176909833287575666132332454780698594852780122002914833460384802179682673474726332897881567744973518101997287492184965664638662493005771945526738332985354571636845699464801379419513407268645337963758475883281799195946240883772683342358804431151761034427276140201565877844517253453273876830837768159603850362955592617087981040225965654451447160067485664019856231839294759649336680668696603776515411656473539029175739485213478915187153989247867349008413323975488609335777776559444426959286642224090319242779718227986612224383976400818588725732676325339187328946354909111905498366584981497236999482548115054194890995677656515542289172425455710548267192271689071668454715962152863593129906163143345997162441957964065712520189535856023249495993052136071178942762209720989451557753923327489884774883725344255159294229670259598920422704295842737620699095492502293175329394947167578113775056358974633286560422417436255246689216457458671850506041345215169868616390333280691719653663641091654569284699798502746148235146388434871455343230454473734713731967617786841123973154575959021061456635116092586170047702409897438079553438848774569492270345470862530111629951061006228014357744177648488985854049709183775893472378517897477585363421957552219377319920155054828734543249722510675178926452912941162363937116327381618146745669173500385669390115162446086899578473840781653316684236649417529313537941747959776700135626458275254802706646258632529161722799553130276415919836737954922568064312648057547622985985246852598513560335144556660046270540026052033875486749374315083685606515216729859545423001187939169785541076159175998192982045254650102314366963984084283886723869432867645750295392929186492867395703995235682393738628919811914289050442049806031446787786760714063237057596492526881219276626072675803160936715211635683097210337693834011128114856552921812609204560189848263574595333258366373214161697727192942225708127253633268639303029484571136495342167192604458495953771102413083830891630365974851113879558265359031144455881945666029777091774591974934394933410536143564592640433027010395019987999263531320569338595811604937981694066498453368115553992492865922039308918435601303736464573144756757274316332366632861780933267649366277558280462950224575361913658471553364827047445580464773543168193348911469785742416970448891589804977963235304309179893981063327884297531594130713484759186236329808969873120093144199635467351900573425967377293297754021375577748446359735891890746850758110439962735935705201848677697211922217322204434744679039579814447315882694153664335906449585277264133626525516754511047661832983821728816025048574752343852751663344065922988586262059609660174653625035093733566074872785633388079241161855474416135557659923664208528139419589485570510482604412709073107112370873323072117712534311639766243332272592987052272768140248753922973517342736603166945909866834415210395867612451838627533643863681846881717870436502911169676710698042429413323392189707858229963868628885183642281268657776381521035384617753113842549119829870940389313401251739824063783387064438863109828875803341643116550233095256866305472563984879753678419511265122029445816910133247101538425068228609432248173324275023664628143071457691819584133233392865228786695570189914736171934775966083659421462745775719274469017234419816021452567263487778450333865601326312823092564217873912884654345622797139092709810023972519376096489950467973725344165221999162423230896804662824863438606523758851884872851276231658788811204754077547253561911749131883083684469242511679755861140244707690163870817640237533299812983434192522697737218680993164360093412116620848024684168923091463376328535818942170167198526813423398038178346958229967366917027500736048872991326754049324860292021948418556094701337884717739381955509948854076573368636228508063862663097357941126033404748329180953115853764779918122517639911256650407249354281450645315895670210182009229153065733266036971741961637929204560073878702140180928023942812639862025346091825858268056748969796545089261497962037334601716495083317704771019225800105867192054299050894760869111547013233340447103185816721567654349135617677162312869918449316297946947189567333704388937266514771519