864938916943359030626477763868476808671625843828556737839983176876742755217334819093466420470052559122503526643256814431494985822888216050427814385112729356469667404291615098343375640721892497150930095109632751736716030480759119990567698982681518419166665677340964444392009282572721831118290040869733274855963219794496677530224527098281976781833469755273168758643644390102940810740475070898893552449953918483726947842666249845692052168956858396051724180924437917688211139397110138967477764985748194272706069499701299078288364596311491562617721957518673681737777670655754861057914985219303960484959381163652260162663799262124518243761617662394583366671677424907725142884993630362208339321634162848121993910698852679480164723348476384924461209133588172996218913412651295227844959479654501164453755111359135115572285255594177036645011528287776175014451465182190522171755802997616448768759295303994360499944147583998562295867206774689262683211151920470979463333749598963931659710544410298282328376918341660390081144762045323436409881839314416376622727595836357189621353184885255174381160178026739602961934676026182345337652787288703363156872218943860136550829819697828363691460478025318774276633259172786563313442239282488959487588438311618383333176014705683153390248121333256358951737518856527076159104442684101331685278371831135529516729263559295685640230011204639477925848482046033328277073543000397911035768749391065792583956025978835427631359157227943147455833391779638047088975789915188070473955992984882186147020511626108884947010065819993413116787215140686217642453332814088665385536497369088465969538463063711279449974023753336863581610767919957397953063945491364170895133132089561654390250718087873138349631737861813841538661672227684515445256732131394924762257875330093897723529677782880691941499711243954968385055947208335137759036699176053582447679872069555990081428973826326391400332672807361145834158362846278088686942364357688673819569088712154362035566778903685200151994667244471544395537786448761667214765006005700341318292466818288564104911004370371345796334849755605299910669646330611541973638379389936984982834152003339574923212767557873295510452480240568992317791159683248257168087793712023625148563296203278973986668536865339823576898544207887094073713464953636382442905935920826115096851529838529816132179506622883772613594444136653187603656149828138793474647967989515624782243864754357013082338920029393644421699650922426374854732829894759822433951207896288609855733559490638987256670585979934277122347641369394606867997475592629619210576436388128505528419546127318353775301442055951196547265182150254679744476297129558322298605896437112646669128464822757447932849017157112424090926715443377597492394869081697580804675129233787975933290179695355583740390212593323526308109675399684705452245058060400341556048608092154427633200994767182900495009423314532820230719123439044463999967341168777916087459103994115122142749541294135338891462075892530448899188544594660641872664927712324411508410262052152778021735186424144553717262998074478995442787428557834027125342136663419414117528586658419650635561967582405780354532661447066853947876224509524881246829739091215221572977843106211422429785464670837184412124235208103683774206364974593214553349283257044847264097644634148762028219743734644616314598001676865584414577545281912815651971898174563590899001148945138123966217354235782917943954334358849862281887354781463676552140169632536256538687653641278598472460580745967823427835675868370169807849035598522141670765523848234741015681928946901952225739987554394104623352176957848179925777049213142908633300034033198471931908181803949917406262084572593804875792522897561064957366710479315736089142403681516226474527249517153104685211428613138626930518279925327644394580444297466380571296857718991663742568688014793383447622752818485715180828503072268082912860902845877867739425235562056466759888879681990545802500942665135195592221618272833555872460619027746224541519716323735709482157541631673113938804052522257154587698778974659549711677224641592445653506512988838243157953192104639439964208967296665682434631289628676970147726002249019908479982412806748556309933772641747294999804386148749502233426366931383227744271596165853839700731658783484809349332588704389176318738184266458585311702356168677818654958079417819696586272572120803741793709487937573858501323678272294839542037699643162187595166721261392374754488018581983817425728824753259319492285059182369215986918794632846678711662728436590329328144890471081554295190364369241763353440738948455432333385355774161776185416825750946861407895794216744995462211568207368606544767646591493001798353852458726805293911632552339287774743931980090164466127610618274429214329031510495688543200828918994513029155602261564990889337247824662518518171995076957897899918363561872541915518956820930877671919888147472748136953662164977617985349753980306667860302992737208553689042423435636914683984700695378387533564367546296980267375437262950648832577753106862828270593152681318010753836118957453883886015330920038145532952819565532820812652202277283399923729702244448331850583757889094226246051902699364746152021891586112119641567636414113296193232625993110636308667321844518338587427965537636095858770823781893645242326104515692498635167703200036713986837310168891312941028074750857466370201326199864178391322216357039477827634297935920559271990340595552398069805790212785832476559196703154526548288714120240108395840572033806438698435221750389945429677524852832272988435255530619028707647256378555315237245737540157394962901538049664507588139027144935162763714949142216187838885975421206740872981895727792243814504199896759621292201120047692924314169107587372655673008141372691160144015166140925055449902547214304344986856269490717897349008372157418806851336581339316539622592834228888357070665151509980