34248866652984583418879415584265599331069614254608178442865954963312321855988721631406214568711888398211351618576691603946784439827623791135180845186471432397779221731156309196126300903041728864532908771925188248212851193236997279295159519576178808111140844042168853691979882858463956540165596664137636414770304279975773426333675409880887971886664575998760950691748010135162069594335347373244076475315295439285938488254354855509181838649299861784581769934493429081494975196415492031585967864538628059919838417381112684472703688741720029551210311204957512897540616928226961745269161772550428339720770262119717876868452932054502707107178281074595725676838405252751429826840769419383817250434544459932101566183783150443499602595375105414427834651150280787255414488297591961522949948740971566302391668522907047923585463513715933310281996203322641396262427154705553716619431961285632098678325969915954602119634948806835406327342188899888337224138139965608546364890971864787117104631829285105190892248710375823671515152599503824824145362602445475129166943366706615614148440316121536234675766735849141114784113892933734202441675280621294803742058974382449906553896278315312710391646783356066163111697740954088757513607486639059521442213708937962172511872079291464811490531508287120116587307170236345186657097651915376247247713722530361347980445843583371497836281298262858561418450468292195730349911483726534903087368677483953941752782270798483079452288395342844264238398564075360913997557506959026172224782608428634254180170659841944452232454488827485895852884205447372671419462125764527489166760700989916471446174853368270989133566891622835924680628477445223748724871035658241599039844037035365494984355045404515331083165453484358187935613828260750579354817252583593185574226388898445591499839959532008074467220107301724758676953710620985340175724889514153247815104316793097937527896837249482707522382489574305674662287114010026133296844732447914418499407145536277628638838962016204119551414611150865379082214435128213068353829019293833281029943679686313437122975498724493138935827761935551368804617479132115042851195918499370957925562960887755847638614430666176553055163537386389298166498755811540503868984550985464321152445636857133182914707147720430693332389464493486704467782903109071199579916316645172982928302844286232575585598842892228985607921249166223215672846777828324784665062296294973084864094982270638820294479578868141152386202597940812086915278397534309093602893740604477744092893574528268070927063532110663926179906778399729951463796912839775506123849855804744673855087346063842423521087526636961548315676555667393313498517525999027364758151970928919751367375999478839522145358113430213936015528457163702803556530045486938915325286220487673507759693451408758269570448282580959154323877575359446727864228734138270656537587813937698244066293243033629017738700618374123515300853092369025676275481454743263974423811001290469647926176282339124966039624921974030707937638197142115163413750490258913456595311828254010615576914583452341173351939653527354517396685866523732582166215695287834612497282735628853582157689823322380437445421719962441278084599271849882987311724493214676515641729873776621657417858872314641663081397919466113726413065393383674355057523994992468614423416635814194440626523848351845708928310334011566970995172444657462267721035932362272472977868637535254282942900378943106141870341240653245752259890114049849927160054338888111037773905244896936958386510876375375088388363781372898036055745447430698652695620433917231112500992451442967667821973825801470188169069372513659488504555999920365317295605719781429947485553033630525738076776171795552569649952636898685555879954659785427061807924620241825024961725394294127848466720553056252917806780811626783711132739660627870690866419517266169136454461542153506491077954377671484438510977035497830107496511339092748680431069338192483332889517559874644145654482847565716019993038325314573068699617954837635442868515263925461153558639861068779450897445146098621244462058725129632136612822835437446148288594759099411252077059716438309222626166563896251924402336441692274244610019558960518498955769402043691292816960709233669475985328946888994765264966305540967961277689682017674999714856443145930495547362814922964731237366111742823925386662449730116868504332494299760715367212037091201738195709484269591464968160958385259885891913555338796987693156151725128203335492379817492313435931372760864298849623692619351703026858639265790694075188903629593614153794499116286612564304269872339568996754429207110103262454218080483899167143912748239621447252602524112581343799855394358894690731290417412143707402476295914867701577544863939978712005446191903752492698326995287290754915106464741968813787414516137961117492250332583411669192919721383370197869238388523835745975327018333574653732273124669582280851464150185503039299438715767318311970783160139823452145118000346912278188417182951803422775991758615811128348586640892841848942522174427749975656320538681321859692082992698219622186620294008644547631492548754550292318404349514816641281858186136520052775789447711763753575355293072793676089659144336091643607417814533245079835383076363439274168184457474371323899010335008128717752161987776698173772412526630245310229722735929087048657171897920162903297446475359012855550653725257951912845625550827385845821027853442171939512937745044585867689980209815944052271715550664559772450950823291847738779813752819636675819398627012980555108133835762559369238397048969223193871489972733764349885079026053932479436925888551688110424509292289527156842844247231595149963914823468989421984682826698342266691378176955062675125313158341081907511417328542871691883143110974535107404176688848441736636972222002783682889597496315585859574288868047785694141468475583663934409660593635912974721602886