87317578512320695928751769734929513365428992647161619295288148419099827774511267364701674363584466381633408721880652676761676911854561071417603803251891541978827659931569565234888841187930210422288083321179362355969343793257109708293941055115696186155025601577316157124730789698939770303896954234051737223723158015083037590803752159398555122812498011111714405870235272557137664062512949156633895510818145636280348512274562281833338315834999057435671190412267570396832922049319870907205440133192913968301751995805166522127411119750861227716417816505365342985678354036584884854345022325189997193568462445866434819210717043396815624553183619519979688711641935794727321672532702024388726314622619968591724393618804346857131505683647114912512638423574947177266096905220375767257496704263175007299932248117403411916238922724350664617707220127529828658392248863148930894260136738438312173001195515710974171243283616265832373915501975603533856155911638114249383784826167336514408085419487641286493256713516790907296679551641272339448217949503697180910719828200222889402256155370107051248361478946272716824618481030624583478468882371350845742871266784463748757238019671660138819475104765641316426416722626936891851319625153838249600333573491573290288992409680101536390288284680342641351895853842536374160192835967319250224502777970148294131394399573132198373403514641418775176228861538637118124321245864029967123489735356168392751979527821435083342812706134442892121388371547745345007269339135977748187817597034239511796813770565379277632899409244173822644235875818585147942675208246182690177386337820297491152125416487728371647145129200435930129353590343704836455687197610857666133810890525491501209232491034552379294935134765643962635681289241973712487518358279929660415379578974367662168213009648110357284150896169046961135413084077947725456861424347184967883986973064403124423374354404447667381400851881844062786349437264682518753995706581362619946464640092453482243594721641532537023523940888559589055620082573635883528676576361450424313393459160627489235332611693108396535623663386631659798585276985387995373264796329844011282487748435284241805621467365811872753814768556970683107183988933679226879350944046428036011584543602064626178316353246585095071887649392239544111127922731829884122812418543773571190446650112358961777223411999889523480111490143249333824233116262915016888264356336515672127429165478764509195792715868454445912326793941680629355233927916493271732701805384711344501422684918396802437335754800519991621138653397738398058805262567325870267817444996925795469547273544929662593173191803975283283816570218525345165952490571469828589636131908831889263859848268716778861600424067111838640652443113942236697890870978824234296623853484654053565436123812461844764127623282530817335376184772709776229129449625919149462738376928602291303033965570648591088538996381286113515178554967619627185342390166174446487138790292868059156149553095421233215179075511791680629105202121007707720167523099953154204848557963733841045878084238125895067509039226708936059597159269695410901249147275487172267334851318448760868479401997607512207835201228019913079714675731591185249877742397186553815119676394543086218762118385939648999466256266772740752511031392556429309780930217954866524437089185636631782634186931842627788601365361384182456071355334143852040349712682177935256643825979285819383460913864135018201986769482931696051257266641391086223959117913933545488811257693196829092216942745944497881254154780553481616324169872785133030106660300375418408716497875835143692501901379412021456860666942795140116738579547530694669315694755001036288910477559153498529223777542826293792165075727071594132741761858615462271361316667919738993470936643673459191279938966485961173443384314762218679801005589893991676550753938085588021447780679950916018388783473857327583656395879112043224859968133306906812493603048192464466775728590598328820024171678210179831535458732755489532934143868502904826632774581285121195469424186430500837915888648863919795131053014345441916146394484306102379541421879794569405212394541261564324505417660473835227065411977516261832447182990489034581539548489821981702711942222587889485891095859609168743114209781240726794329355219998840684558851989933258763442019889847175428169790477393293335426827409862611831805581452511219862751099105723372367077877432077830180857316981185294149251825256084058751569437910373139550620222121874341223060274224922809207701026267567135640477344861454412413648490981483819972971245917192513654145205415656462582382455436911917524773697880421714817175433162436919103695119515287580385446948896041102276405766911347168964454651106738514090866693507771922934553824246686693784126166945313497445790122159779606486977182901916502760017771328173831999191871668268906841426926381300385094252727103453445764150938813717776347905959950329999714553431338589916722279354438689953706612539274287157453644173191717731531307188878556107441288279484175642360534378724967699735327985722277649714286372779126394691799620348989623405413120579312142326422224663766515080952245021584201620993306210686773950918678244383564180104194388855136095948137746456625272040381409604040565374463088674194217653183892113694507536389655787374208160622887397543792271603693019276279125652065226376703730107664580635379692305931692463942140858843331046477397298965440803723563274153978084499402343611799165410229625897841751002436583031746593667020151995487112042763768452312644840233529676213491295405560469518528444905294445660375982836688584627714696572643747983820957826114906835248435752459756411559867964689808917975833732722773886799873763344453838125555445402241413206632858336668599857237805320224472781744193522992676415979585735396992244436619807501835859533597906237577789633141582103751389256044831351017557428