1547185168274663817678648834819715896498702469972526594955346784215699178739933510537777996121268356569776097117738166925858604813127548697708006407212848842619853274420563870927814319485535160984765033344993954075447196073411714772873554668764164081249198767778410227187688446656798071194485403864726821257275697667108663904415814461827573919032248608306919692634640843882208602156152775377224554235729069918118654823666587774110446411176613156954887875855161359110889593974782647566977702764729652715642412288658389463581981712415764516406123384392132246641160108246255533376462275870772346445374065981509836141086833925666295630666686449293370465644478683726775512938415668974438752447575566468456179804408245273721876700824631047390271617182149832064176353668887213828041642472017835726910107038803984592959694252941577661589758030111508219476094063360071039079829275316982166378786673372993346241040216477991952945379595045344348927060495655947519626256991529098198607160128052769104497458707327317977988446768292619804299099195507245989997338322684386363368477123554303214947962351440355394990610335537173575906922814383790081762373447016818480777593276665210347163939544022693328865159229208297599971868183279854951113165740942323186560424748895306678358686929444632451922917205754976058390264994462030208368288545103719492121443917156799677361204645301440789681960884180391957675944890788145361877938117826901533623326062221038447974933029305444223940259556924937331538502244331311259584111977442620165217674476127165020165458845365824217816894523334039418601507344654503673770032557635405919326762475424871609295783766968872721435291757776437013793771222966356092451889846112187410873041493301427577638706395459929508282860913851711413278582371707876501291185960763555928475613616187629611752456324144315727722139262158367849083867211945282887912491922410534347992545877588655722374116050298570981579254105942766964659331836346956229980859838834791364699170761983794685843716342761119073665331191824221674457356410184982074742411083094743494618807724872763847905341785309711340281276782399189085219659282224414824077050525592102336136956963997233638858492496991022458414951977333879437366822847685187228453901907453683439154986785598332644126684715276099286189351780821647615720762223637766172687302702645509631895237739441751587327422004827196294601317904982283737466907458823267622331538236265733680918478689672486217186571669697413312429453246367821736502891465346577929726153291395159241903822367350234644626411551484702469209446986478906481541824251722456544018004578653224394622939913646228247337019102491917829819316707825567613266637657874013784655182384361507427841119052331499234529483951285074174366028868917925785621967975527294079385097661433653439218438329147987262025842972005247444266084904970520904615300111928568107389816847423743975834872836117021470730218297711856376778973631719424641812138891529570469104393210558073372156630463578974616879094958064771886480686207218899956441503688357288142279220956363865781780981595433468145991375613794529277752287197142974719439522202804341716690333683782213543280474479541370427718227341491800771250891457741771571229953889203358614849698563656678832109184974757751305634792454711178122584882310482526985134326710248778414708209174330675654291581349709158784925869258966962247584299723161827287989393616215655927865335357316222502971397878923510662643272749074329098341131875993202594365021415870926385900940784058469520243642630906613922621262092477119963530119568252088979710492654825939615794932077961516963364745553666475986527437651225722968977504213916192388261861833729921842507511858306373926568452059789378736762527869193966009199392795127205907889384784252365617667678388024993712279671592170880997489908138310179126963373857493766734055558850716538937552676009536943152615639845430723888811331521309134393778527148870211983744611215844933838428081737585999129479090949799211457360470977084247787573386543191312730986166359737858723754553209861336966215213776063037362158600154777931880322093835660333004542146993308320556814641294274378433653703578155398526555911288496998337081288457119483861811468881144783775828321803956708353629515742919224524785169678128458085062156178862973201926636195735153491923869461735991286945724836590818462195498418503798256131426921883696992817639649631729701531928376846348861744176866356185378436100314112966336717604009331620181558402726169564543556245997540495339849468401222224687516819106261309014536306897251624148361816077348857932678519596954654198317403639817057258398430618792135130787954381471443871487288983431533112451327841694726156032794858129849746410977572456266223374755136736816575573774138528574799090128658639499059544699682869926517289875695269526441727997062915395361830512661762126468415254161268223850839610228669906075832217351028760417888891060678888294283708834977814864702202071567191374453999133560374936847951619758535465281521672716924481903153473112361125726484988186038576618541562059998758936148682454869979061135232973793993104619465767192842017839455486314259026243711612143203069216185991494714476762406140483746620397059698311169545124315320568294734445984390429253412686803675491849309333913307589794395689842001873585841655103343952741992266724846377100564065893357273123610488980952342319920086711302661873637518355705761868847093021832509294324814689757801583608096298040660273944771462969417542278448322477892034793685555568243106725194814793539868283388430796694831002892779130106592638783714329531032766667179611798246596283115209124762085268294406523855229704080473176749397939699231236462503801376944622518456443092846491240965564835241719219879029583174477057400727879003794340989259830854115946242183115172335225765960943893194472339045533422934545523486943367170916513312246662568229065