398191833427167954685388628491769357705865669625225713218964186486769848995772175680827345220566948991959197295372261084722700705194749558526192418515681604597017813552212675914705641566582776654287135897045152546616994669083935159910252129880363881678233400459181037806668114522276155128217824378143432446956881671583892063541589620549472126611602029318492068642345783469878301476263623503962361567190269445303789162688333451149568945125387231571331077380031519509373774404785245492068663792620678107189739227398752339768036207234652388390503945046127659970186106901944563772517524865263641158928387283393163927228723472044839418726844540105960227936738378397078489529672630431582718220354440767912481834197167024827121362777362779624108803934826728062369253031183924282061188410649721347573406975614747746126177211662543756344856047560686696145307570039512538883745635927445918537387212890034328918515027749592516992141421497628974771459967586508485759531279258475041384555113016428764054548700446298239833623965445521427430674914732942979937466401951368741700570571712538464458463103268509490611876525253692613276499550191869681424441991028468442581203367353592676435695572285120968411515201054134392876121380761468207366425431195806424243477779077463719617605825778161998635037432512452699863477213122041871471344048394833711439002036885027847177912136755435599948491896626781870525429735623014831729657525664991547473635899073528900416881378490804336926243611440793980132827272288460117704969546823736424367592457478162330314140355072427714730768621621790697121474439426321275630516098162638164565721241795471828615471923199468485525845265789723676769136709488825596693558114375787625490584643793818683038706497206319056177505165122440624916233521326793068701260024271313813518344402688416356088993387515310355983247748110266280053266128693863406262602564677046637390197271753786223185104791223752596317335581846625854852474936994581578934463175600753071371266047271707774453619531967295056525797391276263161712341573516505793499796593852912743175544315295681430232475252257065412101583573349718208999191243915441985643121310596078221809975631285887776221753749304435787830919970228685229590298185322858309647426184742053848299772709784042454928991639973752421165019836435169730823723102976671023796416675597532886356495937634083424525960836782167496372264208006693061201470584333581508559015254179303722051084534349292439916488435568961070789476991861457786736510644390705388763186599764785813115813913220794098156244269572319591002843980658924661149274177770969525285482143731169762150214789758297542962325725209285735364165965858297252661582793562323651236857339694046799040847909248240679429619266801719186851829986867537848655828939604829992554925759612259524833283354742344291564888198792162793538186322249223242151569617465692103161328644258599462430812265194915594503497492032377921222547455165045686242252073035721933728926739494928926327572126451141896221964935647287946736572698285509887584797233318210252571839935902274909664527935345342072167360193349594292150210323451181973616574898092853489388477142229036007666370195623613588612706268796282748271810975626801083172579506245479599153381118368319650579045236733767253793354309637211525027489777806111150492596395808861084939844641366115094596786989389436174463365287140849981555350563803938142068974293525987471588809475538526667369925887625606022058682237986915740475414878679276621664327345772458426390658653555089508598028537346202061441786113679492285738968559769745415871057949776588027929413580241272273314617283402660578891744573789636149597164830730189804384851745110989269706867227233953784584332463746870451862206729695212298716710396140447545834011383265554470621753550549678542143189761433868094684771478447095324532591389829739457132537599664285006221467639705599877383743889374348729142072564288154473636576200075611948690959470597195852043538895479426499813592482023386300178935931114027650775989222816125819466437833187290864975151707914091116272616532589301560795349725597937071548665989521872828231520785499169558718669607642515978154924747880333475321264125341107447183876869082615669281723744382691880302373478023614268747111599276671083807136484083069524957534272254375029629845813371838717804974963751542443495064077994275052781571992667160889043692533754747954968651699555707187477496357235677538117571365495773595928534419618099418977732245928206836681533166713266459322828744971942627731710953824151092344230949771059911544785617560443319125533225392435853449564259072325900889929393690085573601677728111784309146505463645783951591317103958313434600676925681798799512090549669272379738725586915826544843167567674206771665006882391917455139997501550347198631563959811442202905557626997947312954569607367952202505813377354112288188879376100896988529039965177869993336148610106767556655477831434902472458852895210923244119211820046103403682564197650473493786488772337519957868741597808501669725196023341331379861980515253898537838448642846065628162535014979401238527530372561630157627699604495652094945818236791403019324206176057586831908114596786549629437750585084124392963844208306664823983841532331346193536227529681219308229086004146656524364094447978277877432280272696325326943925276185601586811667115326549752233166462626673039957953795831380153389452479698255280808217689991734036487465633891264249581162535367244473549095057205928123821152098273453676221787494345034795831039528082786327923311888094185450283206268297701506865391099324218301288159532562691037266878508742221575739687761015188687134295264618464176691694149344017491328251834293658967786038043951775258531691517285709751972418643123673158201154829286465054503991084682229947727890220296866888536257948869423692967936008304296740844380262722158004655215951026250026648877767481925