378253388006705984551376233619456976617937795367186357726741785628263435023741795235825865330550988951937289461521457538127325402215298096964398290063667681305653959431923117756281180363144309858535372185478758474736863639524072794497392966734799079150642554314201529079507565851324321548535145610585310886989916663131226133314714367835995140968231925954428201538859963545747792657609764971670929769526167879841789214685207139664995772353408452717316913767319823754808435163066128111499240083841689877207822415778171072270281547533302842151879266094466163722173849074619622562627978592886516976740649575032119664619059756279982734935332145139876822591761306413053197029235132560990709675806638338600298020202340205536076356448942346175365259437447226913657113206068535311536890990437987143183610681067298852677805556381574375271391634623476969912913887387643425085741775453688624270761061245714382007867496031976376183584666531368560123598694498268945338250914845992685356078831362582024099233220661595425181571636669847225201304814676357956852118785010158712179389129454745849006655557215784888426963714473462044272687578919659825653699124708343234838299552997609336923849274964313460503038235684087483109243181163959809707855987537628814631687745553870148954100923666554212663688552539543742629602457090244848249907755031527241229165684709363989069311242275003760856394138137116463941091791081905847166637262554917573351792717304157962278688799642997677380997371175072440522818873909763135567176770226414990282272327432544129786495478563469301462743485899135932862929315563207221778773909649494973441352710338095844951387234929861527792918547936918590738423371579344547940498392427209955567224121892253661335665723487503930985189259132764394356906631322225680760781871731212122949620353693064566690351377658904876259586330692128274631280991049520694771013222324635726244476413164466355846526956635370519151251925153382741981986147391108972697212408526570911594320573039991393038471874034298698861544535195379215727744789565235555527209430666519531237203068899982078008772654646966647925691353478084341977959279347950695855689620614667046927957688574143761410090957891314853115002469264666102730845740631544580635553923170881528096839886485452714432124948395396271521972659751043037616209387888133350955749227541684515858728763890730081619196526116083940453868663596647739126708467607596992371445188203621202891324837703942722985683343824419182886707268191438277515459258857460392779695415363725496572637162658756744622251582227709164363527161469169877221237091214387611428675247770293835968411062544665652724935465342364764248307841899600172492596509652814851601548848623827708723138283998394046998277129490081518568208367211514473916410065578451966752803239407964646894613950076157239191798602405950306805489623277055370236046478299856752958224584346869312015184939516759254783540638657593668692785822157794221904204662430271421827746062812316778608428230972858407581475281928325670622272197826475225523209869376906307910453418233477911715061243308047397114501818379239762380342327491680349173979650887222055839385839856431590798689120305539217081550013935112701883726578551412034971206186689069919127934422124678717185327231951853448159994955719956517097573240022125987984032557448512894916384375401493593969328152414217861164990124214453338471769922914258775929767148964827301139926177728167861392914884820377347322444309019538782306488602552864176295439948799508938688810166704142398469581807180302556690418216988168115924917695288368973001247711135583968948623548745696353179572217647946521369231989092461046879563358733278035435323757953728244153937210485039797144041602499289766823113631881579148650302600117091486263152053288390852079276253070044324110784382713833905834504511836161239618847650661085725659246586405698352481231386030613213563753220595585905674281994247109522128156327595636248333168857558261231878879435910071252592583695973443516589987199128735396434514757351784711994872644279846817039601875703798715804263334688914283551256509344939368655388153222059675266424037108452255783327993132835268777079658119166719111858898297968169531145311457649771435934041291155698892191212604069448957348480726430906749344565585121779571192272078873686783547674221340646758895995260484671241157801543704229897337018344045654769073965312044946886779061806477180674666513795940934215423601978849239185883320248254607815544257356122289274632745339324598648803505600259973769549373334709068130961848738893330832367712862976380269617414294332256131600921196351399832438184270653587053509176125753871783480819652772515278156963828246019299995128517502832574586622950614491950414397789924227343712165971511928083989614247321597572841154907214179679487247128461144888096415210077035143648490626646579180753554345038948271749689552290343282752390929167629084123502089558951177565995429201187306114183034705119822431623651591470107796793631591879231965344121746951677946783759194667335950437714307491193205268596954947871410034192298081871777414661973956705447265212547324689379504825357235333780171902723364448261875754587068352551503925677344707564305748084022092267436081672325801658748829627604443973966957424545956865535724302467225283825054175309213969572293313595315260334395004942931543834241071117336486921841504878243592068142024547687755192235987958852586440395322384563614085014794863613976343665696618352886833744112708581963869931230903547818319743650293061581007351499556114475546322198657559848665524159328351624323391641981107630678499951918064414423213212227119055945113488906649748659427610190530830051988000226064078224185721613783702597968978081586053199553639444631639281085960551229309117671976256246976298839847896342781892679522487824361462307288325863341704802551303205108127656509465939405643638721683861