77217383486397915555929009226493889659844498688375887159250824932878840158362388462468627376559224732798776415684632808270618195396644552939248713073316681289940484499927322896749968955991399476929797074846981613886850367996502358456660322338563119084441337756354454765494728984663528720156759931862566578803838896914690362775858720721842577496474339067323399926498243063476129769271357629242841898463039294583183302100864128677021612774251797385899942129965673058950451784631026346472534764853469597567669655547862626851942401764307869297648615142307394017311289459743523049586611347046418269318914421630327135473347927769246188832480998543709206431670982987907324878753171158849072776552167498024452231941399457293796541078537685041241267048077209242800487954798656415039884202620060177074191650224801934796886518334314062043135270956458497554554512804542868063903872287839493279985329657744155956512294267896029162326531829733290631681118954847834973172994936859945345338151449972862513954810879494674350628403240078704384859136495511790575929556398472781435317841289267364605797395883109463757553673556425302639934154383956260264779946725195442343259732729496967334684358646934227362236817563137319083699315856445439124641868287852826441392142208039738019954939895018481809572494035663925453412254437846929846536458705894933313526425400881313733982970686679431839710924285770450868955129914852584235343943266746919481638093918252231340291285593723295353099470535022377372225921800445214802245758028147552537333945502840431275570467530477110116720117541711502061976316862877622664196935935619395710910742745360461903118137440839835763622036084440496637383243404947542699854970551115985661619354718789869552935442889884778646936530861153715469194236088090396022686478738792223154574110581796352363619632483740535877954124481336129855572133614482922472676253102563378035916150587632096519818038958770997847916057406925863305441445156258873311918242492967485492245261368813579923117498215588795159735380908360562182955701815518279140147267446478981134825864581743421099533691270731786840456249653341941675630523199277264409770499730692351959943934997726908786069926727285533651637741863508222586033441927142431888518545305934469930233147628871574072684104381465251759716079114751354221954712917996855093381402825119097825356914879682265881982150427744939474573695700563243372159036545945699394852966818614624748183220384351439248098657050393717766731693200577801091165971788412367846602840547031905375560854549015135203780418855936840577852702344191819601280734284230587026299506140674076681377588275994870552593190260352658359096165268582039636170528221816718806833632443249550207538857566684807639296948927526567085876050251674416182805180014563180666127946510977626132153828514836659859741455398196484033763613921073302567820744106829413770982323432675169582886389651169995947766312389272978797248982973490734301553115454409814958748461132985231282952947090907485557959960431791221671016390342235496948307106127988473759266779548267421932037557913488552726346337714888907837913279677954472885877509444850946997657911056914767343771878382551460617237940458406781288845649023418403255144743481642462790117463401557961978504869130051518796982060627497677149792816085100644552867704750410415059781603797687276239911394263929558310427970567363795957261306935218233560945848505107387285827477907915672941587235530018948671132325184709863151688110735536295772982194717628778342717311778446544392343719418428905619464852220869061052515108773186535612388148378749083465843166871721058576619924752855285849719237117088170431729048397398351009908930673033587400125009671804474130689595657251145880926263137982591624647730522846510183649945594033797178916354671470993894311817970341524201850528650928104972491026171227022019604181249886387701454148640549697232640350485616622241170153032973591478293904572941339386056340712885444590332808755701733764851601769852578882639994660741463662883625310152324046348961869623171445204407715610872233377542543448263165779571508150213358051257892302025939485833078173753241779996518880488502549660568855728998024089977627594879268881185807945605794564344489609153385038440757689411434352774498625361063624567862690687142753467127449369371481872747215309580524378645567228274619980808039100703263812991432113816143054978318824295364581782933329529145147522475122682609158716754316918447290713077227440502018979837608832648722317370181913117061188780619942774908826216338025242321673994601160827633478256136295728934879834468749110990653462585130392330897660495658168187638779762113147509345072600281249671670251533334223418183819549894947779029619296087878092756245385583700729971165808718684793357612043808789846057620528667893628356933928664514337425859469340431370713318277554870990696953551829454052232901936875713389954791784230137865656608492677695573536228276573107228498153902519428356841584432923400656739737624331673707187895284903055682438250391226880891253073989694277242600750190259390801851999779920872986325782910890558512232449238333219910011093548949906516546929747828680719367694282964236449255998421413464776904716897250768451434456782576466857276098384610367117951278392749219167411694316209152022000381873699216513323761273364303473790469734692332845909677292084812388276456726585242048949113489325065281526943935407371876595842812887974957110486248628550113558717386683201091282315040408239744571884498183495379438654565142652446090864859784440522167762153869878141841452240291811501630972175664595900893248228800399489034191217130711596685257356333822771379386263274154968963428382192728865477828862493875810810942116107832698516125510917045156939323316830581758932249794135941419186426461007872927695097414700382028166575439738069139844461682571420230575426776963954156