943088011265211751637011588443377191167238228739493686702989996541192027520350879168595749017231888888225566594973638898119762637730841610177224628223955585547702221177926242384217529807370053871562724768038511926469279030292456435784903816224562845379536391726227074824858976252027757511703396123302542662465492096600382355072336178780814193375161142346153763573085973525298255748209962277850629058352076308539776152326435394226537407109426969038727055512709181853655819262512729107765446286025224700725672136977823589316758488811702759037283060492170853236740793383270998195810596612820408889736140986729228439675379923232837625146833116928231228744438788727134153314706736981327587999920805942667880896246571245123290037689756814202476150383068065650943344228175740845717867320819595280753444587615886400634685276112481416675243530169015545483219048847151921653397965421932780363363957371872883191844512172843294566580641866134704751655042575554191643553219957497215954629668738193862105685460057761461386374635380378482037594889652446700894524013322112569046976231320412334963657220091536777831199599165299926285790776121009894588531501855898880827567841325245785948845969272883974750345390611863467898837972856023899794446825928701255469671191517563417661271623350304685701987495743654035735862691686507240148946639883636947969617563685316121789063645791217397617086295158181748752400946869782425242325480817118203097639711443459196735801854476682410647723356959456684808371182019886185386867153876093780537992293419518118090515885733961201690032927557424461225485018152012263783308374203981778294297667353535426014769560661051420562327226078399089188883285483627306408276211142338802145447115553218329119603145946858929619592774408198498487445358467425088153148322785135969321137607594869745255566299563229613355472221376989758234968567679961093838469662013284788947428675613095958534434423961830803614692086233591509359467334035929210215859531323605742234611830993683489250124217452460082175486551114566502191479818591332872039826214722065056297710011741489801768604616425248439178147890066771650803766523716236259129727859084783796542687756691620908223295310537742441627258586237128408099712965834941068872670343623865256693877314533197689985405724454999917424946624351529277514253778056658226356949463428251625868419782496637267674379292118641386194698736518192468899287454550789364687766054498352205841885139494450957555348549938001494826717359686879512388603308293303153135971228193352244999641518899306611824216963350373854320924442500957417164653781396373555168556975689227715238388662777863913308080983966450435094278579581602698569852651748622534709042740992526864117691619911623122386069463589346247992817542125822712053282338257112568179723531089923719099934642256801801612388019723686157573656140571764295025369040459912454883860328164947579547736589827663681924137320329692743927582557499400838271627307746605939468052925980143134091331489009235950738363498052120149115704083580724627960385654374614231896512455479376494936902281377356875349715042278404513357355375457708351645612070912172225778091917786543497477437572698293131932603119945203901774231904835407904445654814853790799836505873241492611805492881914380474242262523641013037727778275767511797912017261265786366457871883625389105886857244379771735817467930014754847264475398478650155182903491109803147272405211878621135179150285515619696198835271971066014314119851584549731520094926891985478119236849516369877333801916541594547018318929485981414432502047866390535320726202826125089867010258262805520806713368249392275246751298766984788094808575546637719290869506958253881785083382171375982452334013239640819396829340361409411469428051673623647557909505388773264723539012617450851985661883687123879572255399292812805184264350788754601772880572255215792353487970530565732723369219926308751178349233837164355804182317467298129376692954656378813304587346573214146832229183474258880963584198749675318150266821856622695808652530190904237349432847461238414408411478660807442400235209482866539330870682496776767521759981931209140622190258138372862664766335565812468568756064869095954175775990887859497044892057237680375875073524180789249271829303849476116351126725612299638988166623595224685813588426621273851238298046531223643528542188765139621760024233982475271631631819659533569569765465017526882881289059437870623612924499877391693696774815774120946546957330742984006725912115787605249863277959710656456679692250816876816350199824053134414138780802622513023433368547915834561494273873758463500358541955062895596647169195824879152446547184109957323089985988889552305237310826264502204113981111922020855072858088182896910885611972482372313188058136042101859789580839646193658168599317070496464599030441556935805519745226453946795762654364511252404263756966538780966996255249108590055340723594903223515238917064628902689512058490209272021706164098023559256159722986411686667379349487626852524323554099863348145457550217975446869069014067108597676242000123494547241482547571303461942191337432348715165671745163976905353808936048239236830272992887244495321758412683485475211659188959574120569286534713652378295253198924316404786394159693185933185427623396591090588359277864130846471401345035739127801618463690656073423573940137892846428066385065114296279983696599854596195957733473784232337529870627823846089428590954160174949874732790054925245847199477099732584447833280569987516546858745041287114845643086305992607594392526272885753776686126809839477178863703348451434657235597233722292783414014846720596783988198363487565776615883117350319729220536768851867961098418519507030918067889541098472867090568321242164313126563465624117199319162779234988551492782860965947588961862857098528568600540089680247703534809345232991178071382576097806139988613677904362942615