387821327831357654061845124354049863162749457097184150975534692823075103479411099365791232138356171748632722194134554395750782711576042836886459962021176784689934983191370261338331762772890626476563126289774234995910549840522480361177373674534901448419089933736732870674153075955136322665473244541324812079663511853195212888041825152264112376862438486825493851880427164973210312154976254817773253678906222136270155534033566874754319791271858939938824279242174558505946057907702564663624186924296284608945645392792304107664421792607773152888777394325804902597195230248328399909393638682802587731987835151243368143443716521035054927544852712186668851867202149773554927713151099407303115532219362782446571029419704188478679360172799335817711024006401562741953193886592523313157138966446669751196394293477861191095496852133860373265350222241931673395533963161181614957223588561354622070531361139249138602572291991835863980853245094363537366301770532484068691953777983414598374743173520044684353276827376972869062463949222772872561626373484513269643279308931340929472746723150448623402369433496773434957010268492232198957639429437686669955018583752193369742715743541172975665788409284714350659940916369063992485185890265423376751490693275328781684103553922131831274350110743978012139188887036122167573732203794454239104593158825102446325652723698076394889862825109301863972802951843086478680793319026524293326853672278999068891606046190697731164111321849948308385187926864824395935888229703704978880160213341482177966327073345468613472989492329129409535694036558847355466972730777863804312628134559269128371753597157410159159752724107298239904258946327358643991159995797103728753467481311576975795534458745727759638507564173886686150914313600426238106149304687636203911352179407455411695554438089272926938725141924808090494282325075931377102565713690684135558285181867443958046611267765044918172175255651361499424204257367547194259148465975577480878390440591263829230222139825546310823946873382523919851530530230636300744574284562679134075393963230027493223581128519410515662592426239393328836890454212645848842735656651784330627401656517965971961778562012463706591151700286718797184992658920907555499744973978596545329393116594906168840768223786195161133701730436367891413117827258633297728864656529959244540294712711187085725569799095783076794415311374432224886327015862736872760779216429773843192541832736779693999794476732674669315920312410726072106471017604623435668516436170704436506734447574585355885825599933655549883820762950777028065300137944705883285878468504884138391049399175316855744723114994431927873234248746613667151334981217484292980844537687593515210962659099426691162859638047386990878127709433228359325766314612321828419911633347418112466656612675232765277358401313464838188190691067325833613962887056599153379149141854829827472275537725264764874260396732396010973686371659565186548681694750784049674317312122186642675815442330949570577442251711716669407131655634604417514184399917623308349263720032806991065922841350159057585666623117221768658828191698684624339885926425855691967702735801623883003328753313646271056785180369970268514384881276105757337377303973334836215118395217804372791129431837028760359451944996275460635654431799262929353750716097246897581855299796290895293379640652148599470661824509131691117657287790863112539820839405014880948331944250225843737399130879407144055162646494133651567173445234322618849045538580314721147794767782416930111845801086274487651165578173360048586998978068209079342371946283038483675096819131889699204988942152293462923628784805586877431938115702847623591802201567966793884491516757520436081894959716463782877551850519295482692852506099763510214691510883340166195150221136263145800157998335733836900837256696538851116953330454184677295554363634501289845680579646877411893831109981231507687374116057028176436521552487482014337271626197793624697771146222398051659598763920977517560676719158797772212163978730632319378916150785213668613294121828246521277918680384031115108596397621921439787121324061134759854154174927318022047892739108626492061555271916815281281407343420589889167358977002275690623874765841481753972135325252521786539891381093947066812309865308129298121272028996081913484794252712154789819377709161051504667867881561469793434468599408916543319683631835687518389626475381095018695331773733904943721220484095416674247378006627435893488987396803654874096388618685795833163273235934722246878481484322651332626578248786861466144771493989103239184774152645937154738889370025103346338751873507786672447821077533855134980996814817314688255712017458229583834853896353164523416211176137244538798121530475249685038777688242229476096146751218347509590419553854752435535610961360278814197060265583175851460317522768807171810345934102139686389689128572032452038410349222315265435334009278967783835549948254491937923477335653358634804002646429038194675171528116253667077006229601590836693847212427078841876085320236327499001170928113798736535431497316695928478641907908711368006785231421366192992383921702119515946495822757665460715991480559626633609928146096782327726097501668737060678869357223894207501815642105109278389457158577615469876115368953528558994305914495241973832372447437495904063293239597179013871332920281936840556382873694949843626298899488389562997548298115218689588441594963447859344863713512009040827814899800191758583525632847712815852444676816497231335242901355414609151622897117118623912705186216095483245519499193211600672959896143084491947347325726707630382075895363106150943089815011361268309318878636929638955549064490969737467998386831775235059519062735677608099813852581936931085933251890672448359637657529896574692531391801947096668299789645848665572190429861879301240468110185662533686592083316713343523999399949538110579042629249