172183553809647271888196712846898149837457628812380964492043236265397146712409725569263803983583758465502926382815290584676101618585541441811877472750305749066627028311073387533571546347874457992844414923851123261101468565040239937892797471481856358965212696017586955939171403092904499195646255257872793629285951558905158196542942156358465383516711353771293112872274925238388105313969512028744574121629675447021201583109652628752566390996465316373829489468938481812530356648320768137219069304338973293599756656286430166438609882413983356306965842725895685762791741954883016936175454152041242033509437217254334943559332529351449195622473692568224405069652889852949985182474046724386163052475432863329021528157926858972435881959619274601618641655414663039131851323063402289587019178612449655242167885020109913856580381272578476488018429447669789774865604476176542420320322192676824695013294644957149636319318461178576406026944752974555722036169111448450537960845651987985958440921197001733746066312888344251086362925468131448153924873047595212043781722539946190137857247493141841139174762977869332156599615607920857515500015065224604786959827776798935294578166262529876109246143279541816371746589534477249945905645096766149617512523523521374120950671383539866645238889999188673352300301041426069650141767924428182431962117657395436624314313913771355135779391046630976814487819687007352791068752706501712297165660549989169856632266709314859960333704481113492698797271825853117454731585186278713913667143290576668111495897557101352676238603317411175258842190059773887218077471875561201614931290134042199125227665500336233767752394891003296087557464945144783380570087487487355773880714767723636929705204678465318927792987659143668283970541969274023694787985394993059035518401193215165885819416765678255818522351258338807027995958494017370515357474768409418737907273538665027262821622305339558383121790688604735049036534529627579298692121113088712536249567337944181505479598734042781623638832012847568726768894237667916926656316821916815543333768169838177145406472263611965721001441788828095743200753807509942589135039475129577781233865471182675962058851718599669515846742214588390772931041203560398773105491183846432173513529901218878572022425134154163472209180874660702522898963064602848297457514093422253724834130459502336426774641244629547062575952738033012724706158244798941278725158737470773279969153906367062168489635011142315273053205606244074693111819018085233868582767589630369416302904586579807081161683209259750465046921985744479950798614338098658952077598931794315179090265941139426891966941822934283540914333975193532054471929976228427052985704736611954159181246771641211230731113933176458986489528324356643525631383394129948273146209757338279306830856645469826803815963612533354942195176715936988735436629408085844593436541975780342666300155245895837697365918457822596880783436156997471665462477557336122473498342782982914551169181669475354866504785065966319758553831817478515677688483861411821327864694542461245523877229359897257383256695426797872905832513410185116271760708249498790814385281077439924601707943090345274154494254290601130866754247539276426825221883023469552277288185979009624710784110954336017770605770757939644056666444841418746731736169274791594275216350342728432728261159694748227547521827200810466958631102630181203231381725767749384045863758710478523844842623230767887881244256902327157161501497593408456871631954720550423061977036674300625892288316695593995146527913164999645472973808583542406158789999498596763736477914778255097096428649611432338564314296119313852793276337372344066271448344620297497904841185358671537809914172471677402662332888781782799705332431242989224736378486885608544527961145449954056024402761957794302452022215236325314560473544247987187149371247683544936339748831961122845597653327028256087952194946622439952031992794143906699390462679972604490109115977281673624743770129911460863477389241396969045926680418495351115580948196689870295278306921611508949267342770512839598836627550599686704626728684655297957919968488742400264946231624988976002316056839515876074407779911428628281663973972665267125209976478827767819484595023196824035792836681204100769080022551343947853681505908187215650376642664578911629842832629060241813379739266082625916377863325067227774849227309248481634830264831766687564414921938336130115352127783476850457064178309683516041680644318747599742763018405375631303658366815956323266429805795984475742497751091608294146694560507778926561480830895452075420753649839425450404684762734256067370593116490667819365091364655622236593299837517642936023047170561737273806813734953219333344514417996856982285766518411200482089939630839023350642017717756964906088877962602166485369131515639372785938295290616404076612679291005127651925906729765901493514828304107451886355005214589243218761870095439162762014141644862785185823993284584576601788160124885925720879914156703684498837956587673614875010484336841230425409824617076477497537916908533879369620679431943759541541256924171962023409521697463920312548057811574364723199964236454541405268942397472739726123147099368711628853185631968517649118543923745064088015874249683291028910942645796646777158040144477660525792001813480960413652374288749192904658558584574466125516629321494255138947924147764988128824396247588458119355408980929503388159753206241666056359100357360256278737579789738438644046556200620175089582996866496121334617375456350023422607955972083014994905424783507229412124949803698132846279940944392896484855537272826363465413845695426047290473231998218031363891151824533965671742534098653017691076562190538420863219882761453676657849731663196745181197134574858514189555241165275717483707787241267128189845546202339999660398252563292470293174558411352773721244609173336558195019079056521128979648242459041222208