3177565939036876592857574335442165675576031490488705854414640196152923365159968394767595125029397151631728766832808605870291671944738974277273597825396777644575160260431680259182337087249065139186977749472853138046596067360547587150141299586287480294024632448552535691422661533341978334544483104454698595862159504829699647483236110663614319884269444861829437942958897854764250664478897506531774834582666403433435143376945480210257335218789850779058360688314528661769914025771278249924442324149225571160267987019942651971784726155388288070609756528514179913267776132748868181991822199915844071616570793599263792497979039838365392586157825392986813292971213191665286608349641399076293488776862366366749994432741566343848718445921789911753611790792138234677117879666046316612433691158890598981442572409790447705798116188935573466923586533521119365378603961679931849172915777964808200257567574737839565820144846922183267276832530660174766862521468929427255868277767063745134346494807845365133527977201409984164712411352205925727207510266612101404743281595445853293811145461645760848615411931949121854856323234542774486948116757171192303770625275719541140325903616728458392453522484336890212889169804586829327648474647632911234828872968459586591387358736077131743829278291871659804862982172710728368189302884119121602355963064058484685371278773985464893780858110054867495078554256409797397082458472012043593259476960647960445670843925446330653826313746857226627853834118275739637337806813198710109686845809532140733709953114434958904834500747267162186355271983919855504935137562270617748997377914885931768889200478098249110172165765408349977486849428055848266963058409505857625010922467885890587597993195142017260187197122311181870853890555642593502581462096313836174408804351590864274266270424344823597179189698450934391772800720792548527492783446443335874992837197491401556450437184289085087388402584419845531035624117266212975533244456566778305919091102778687184017571181970623251401494169727669774568963683861883583337328433201244756760994237900341933573870377041796655034795372702531348203137989107756637268483542475538948783995995716488297804493175684888329073108498564974465411816519743863140588729289511776424452268244738988941701363436692701695392972149391525295996125937667744332828612829291768117629296557386887904447420392692653363366637919424404230215814898801478114553213881131717553914163675767549270209368014714809803549978123927281259126165251025597780064741971518648848681029364136372393309982670782579705366233523446336551887246448844382514302502231515846635102867404492967167289785578286022439061704981028496858613056872525924522076720152514682602982385877909534579546959734659389389229522074406634720969755520387471248262824547648855538056586414598421878140839618960586869411829378472051825394071629486081625128986101187592657374465538522588673012288993641431694024274153792985923099964233246700201831535392988015778147980608495615986541264859979992717797574909792266507648583902021245624465618639752242773862071315024911508328537369364790640844313002390115094328139915898208299285658646654137717130326167414417160476374645852369456783585509837074396018704217548839777570342670853044082416892676402889862812393021209859924896867918855939514976530073603792544789183365583258157144466153378990678725831255410713026982323018502186246457776415373349424247348784656551924374913490889932966111764686764199929074315886258494516795939217272786918647644470104032809566061719686674079148177636252917149111135661583895964921981087400957979594733323252828418372091147951940219537448827555236472740871749051159094890082197811985695596254428322577889213326093718230501077454680732944727198846754646435847251082447678802446389172222814803396868429558762401639347895754946118123796738983107493459133438055574384723242631570809754784800195077154253775768796426928536762393516316940867527253448159376308827558692911278155398966185861642195275013328982637488394339145895167056957806872920325966390083149247677242243926621789051986225429703576843150173348395935597735107343259367892693909069919286764855710375916154729267438844987845536301656238138033881653258076546630724707601887778381729898722055791769328815264826600218083976451117285088088989299065306378868651913150771101511559164971858227995310679156829028135271291926559608534211455952724366644214756269438986292567449485179961197668445731555885494999026176057251883887909137865267965299814751876311967788474105283399529104755867966689426359467631076445554982545170753407782186383065562456595303689637346716094144862996514136369322442909884332389112146018304729873330370295651240788287738229245718341766671264203575893839358097838950721631243745848761753918595608339020173487474510195215138500797551709932557193073378018684346817775044198942562311723541538929010433322128909240018452575159876889496040339599777668937798630778714105598788187489134139265973821825480421432759138907111247125876979795967144774843160564536160236712592852852612390402352979103562348238786734515145537989895859698316240662766757260163716252119276520771661628447348508116716561016707725159009021810483737624997887214639187789123199455931927006637700572742144463475955407544206190461773955329249334862695552577916158193936476067978558794451066130329092834803391856634871995968652064864473351283444648184808142795831222516873445555557257814221676755127069877436029708557673936604311667670919098097564750910542202470413437940357762709526877376296175241867243369198472826555582852183958728471405572574344126655227578438129163587481132629333892018631758034366135695442443665713168541811284248818396946444143040840976448393202506984413996437933779161586288208628975816432454534683317275868947700043378658569411873799657031102943702283118892711722789695803983390607013638596269201264379918035579716207416