104133593148629357318409378522191115671170328729875917582923644792039067677207787220276654371238811547622556060316734999487502099417292968631677175734431689121654091532754248971118911497647157746775711497241696647403980177478009112490654373453810841552305304181484622696563727014825411724048902609919783768838308787860415781688430614905205900083178111735823049678413899246219269361411238062019922069613171172118095296803917028741362159232320319332371989310388974493698229767611628489283941414334240409433165652013311049589634748080416377934554655729568077233582053412807490388357279094352022645220979217385201492550644829632547681939427071166678555414214164233805435133516357604719443491457125301489287565555436419559229525911580701755868316141683760252214518903118839350254161113540466466602833299349659718527265652614857375962908752944845733792590937706272366692242790169088196662855923360844766388765287707580913311380580486588115672174913708463619898508449257169627424438470066552677606096358319431413996225585769636445435854429632475398689875324474210401173114812188133469485545261859687316545188239376782298634665553347752410484472727369061734450247434521892549271578281663708005891292917533674592356679796189466969819369595943436563816234805589777707703272131520466790514807686262827967486926942827152566081874256218096942918873427720384079153633182656487337921180511518631872963427036081994283731389143627758852013799210168253912454733231752957095610256536272439929689996784510069948604531411807752491783635599765136746734483864176606049941538109798334502575907632872693675531874114708335836457370021362341152733315881877457192878554911923085323413341126918360164738404851195858535696994429069862714564637233236069430697698852781112694105554352435668983422058098526711485493489520455829651850792011050345422585767523636154692318632441319895285474108997289082432099551203906548564332360347046363019526174288881806068844090211468466229200680964327721982376968934956645354354441395006398634976643480627166604638647797786744630558347131023336720010577816490030857831934938956992654181626835019881490139338016478520053003285117987294172620651071021191556438686738250834049711917046933226475305730689191077233832516558861861582505232331683858872234454640542225565524444577931246443088148352226275446054459700287325277686748296563969344471837059486760675599928858377456492133565794488039715491681846912866231220903426207086274042298054835182402553419478932679307688501468542594849146954713261987671895197080847418337751237112607658934647591658987995156753982898683863913220934171983730698029115996441193218617414684787995346086631524890541899188558132398141111313036619706597232918132358357824261405150689407796364216633065149727336975164651894665675157326457593499793952490279961926162858627070184702231712747375288551967788158973649888841635174472091914348172874847074281375333929287492374093978198493086649911641281110537582701421888091553634571220757410721772161157532641948833853298394255050148830842917583120349984574410605135295765195547056146470537367786237466797815813228429224875533264716341735250686217598530311039464468738028912622566384034393629739656375818851322340301226172104869435478248537043994068456707220036576244432978565451534837558858961874686627548520367511383213252762391594724472267442548703519773965705973535799650173938154020635323375385559079229376932948368256778703929831257606998743868377996187240932178359972735569972285817282125087526854711294957416775127179318545621629746772834093145566787211734983290085248670818742284259837574722713800424240221683778761989899503685061617332015427974993868540977006677320950283520873119013688967130324838010981043084341931451518597610855613883790743978257801339329105992859052906688880781296404897374372615251639469185590511875912171029987264449292011723556806965251949966205242780253948709287241809352386797921934279944399129992776619989638837911045958194409991350742261994971222657628046623628313256885579916346578114876631578486500299111097258810296768565234048738326295009891152625027579845959414556384588290721936362834217434634549905735174484819914846239443702451366132978236882130676255227683450188713263790482555881543607051606097568841428461427167985718595162459927358639892384229193571346767692418188613054296491760958217840490894744351815889124896582960129120853445754315845828789245477669953357618999928429457789237541612952612957002801013681109765368729583626704317779551360650864081281454978923275741648977559466534218745444930305999563365067687776708060245821303997856338054429613635544392550914431245078278232227163765330419275096469746278367863717253429795784390256067338736674289164809834663120167818128971723727695570632954640488437468728233364324846594917006290352366122947985120203160544456177172571823786928498464928526425624519362112639263814880358239819654961623529793113798022657389937472386617659311973832968058898050763396475589239408686473745877396983768215891643319730656658411770443918411084426113406525175967272557419257712931733988878824212879024058722423873669466843617217762491991832602961794176643755034202089452227396716133067648897112455957718824843576956201806106088785220256839851248219358773565688192705609880974013559260123925882222948697242667175611657949946433870796923304172292791276576504561312864501323572147648327498588854093208198292278936587971146549530707461267488301472786823121940276161542509312851204989638757139477317377784961713951495614685677448662593432440390427194187445711402578431524945479696397505182238386364963771226197755321023799373460019589677116716129425966353518344724460860063203258224244141546171420486133961089226874461839873634619845851224651872485295849291618111582427786252718674059345766294260672439363588777472582921589382969657758980342846315684101267246572724698525134158510