667354519437662704861471957264245024534425953201325333585426683692742448445155563227677929272088383522893045789065000325819883930699481572027363533658410643161503576406035477960418438740770287312930241763086359903639357799168058144628431430157105114986447454336778041162096143021112893354985462933585879217467219693776705141899413178514281656078451416836353758116875111662434248221771889814092298536498591604632395934216896264044933949735783294543227915281775768747141173778224199353484942339182036872859951810709080324806649484369457873241623040097169659045467391945797246758913688608723830427197791935868776619459258749399930404739056439970297602169972429426532451941419344905235364494044108426725687546839859900340117057412857533274577889637229212648188734435031574863412795484447216112641479922229174571749149078441753325074133016259163135503171910584686673793764308797151621625722364027198029970610976977165744699502370480366671152556116983224644340876269594638095788698776957311409907443523616608712419537262385639922052276541883791790304754770766579426456431176816329956590503228051598305283574563358160880622788288823892754682822796072539132276248833178248046954402421444059056576506146469393402559936905607246938711710946379137587599223065370213208576615648602523905958052846215217372038722581082995326423643349296010156125343041557324779784663721094423404926686335657993567384119883384227240736257761961352121211203517847172402051187037558154330957533926922567527056753803334274819947816832551343205362151094112858156233249345183203347828447407478276099103532761471371909933770149453669591152518829498317601352380251612330832432767759890533566061710482279631189383626743567823294691199294329508916879440518743345823374897569124031031928691151722370902973611396693854187626726247961957820487281623595520562031451757953067665576148313582598851107419368466179665467680394217269715176658206784987865723346382868955121588175604750660095475990039342079167192381819143867475337470447391892683808252917925459188146133497583574569755879157219561385976868073061579756311844943776880617795114247682646347813159931066162083533385812622889439868552168369632186684246585356449275081866947133414313900912617449532712113739441971316959945980382266903796851379235289869928983999866795152995807630187133652627570629648668687736445856017846328324379859812223783499328883272506841218147134195157468327643883740029073163850440034225250670232501867751322742393814897367172512186929842595534681275587175942385259990563158157864391273989195118859676194427237268062425397208303444250844731641096215673940672436966634636705187173292446896734101976418145716518574308689743436840887918613959817113571570844116567471137595823548997354766211214203443112981349366663480945468844868599149243575126677865737405453593315087234610437988035771438148064731437667587990255090454848753754821143247339144693370914928117862943519888457801164532787247252597956730157722005324965432638808138396612354263438815228014799628918365635756171446491916521878868454092185887757665051982432524779579349739271054909529153571426515386199960858793774297557059486772951781408028227070472250097606526054498266758420583976352680152982112911581503180027273533426744933028454415731521593235423407447883361459102931714589347858530192145241815264946467281536777024687232701164991946815544756392356637119498565462598275778391655103558057708257624844416480937878785775015952167623463773341589145974027704950898776262593866723708878109174991405949812844671146520962414191718751354194681691515565484642631664396735607579139630718020831111163713419236153075702178476183005341753316334102582119088156366668853144622484455004670994697654012528685616981484965136974470229008193801204112531725765130227406107819872652443395065609519888030655688323464627883368055911900428658316867190776592102639987090135464596471609048539440693624328456556561156988149374418797673632809813139750647692850355561537545603922836263623563626392228816314672984863452778534945784444194845619528511551514745695756288732870571723284836357281138411878202248757793555937429184177568809689482695084079792563889495213201584249257982045906099395821309523915040972132291537111206617797881834867390152269651419432651595817964184368225678697518804247912261768139495349953781940081441962110413368716711560722187641448138546441419265917886569572385798116061685569821385230172068095763127973809178535159109387422385398641197351946325738358344646980632871778692887017193346665592874105426153557176807815646110648913665207954554816391517582332218208581952656201815161017404186820571533884835743571156637096663737777555419175855045926675598922452056497878649765327967358291156966129804744872021456740130285240219583644624577931342987263379037709554472474374146259213895932971593475895257407782140681824880534831487476401281062325492944057855902805313305687436174178127360752682752719968538743617822442178271255690276936463667510585352197208375290939186156289486322341061444463831829582056727526954461667960356519185275345863362020494447125954147863557568052188622613167500163728156484757416175584397543222907868967362107460386026154684195630944711092249384812963169471268855389626336372624567534684184743816758256764143574652060212398817734702015836555202856417561236381218198911842515858970866758057046213044707586312956616754128777975518626275818778854648156606828130654093470650490616119708361494546243095406239884476624725395459934543505882187358469166931791660767669208938339684628705199574155766798581633426696955532098677823765994231755031858479722846092535617530688144232195273208771329068398391745447027469652985275523965427951872341386715518326597321376297145552627244338204783759626058220155269498271624348098733523231617381701731325258434217488091069951364979917240693681024371877878775001944635299846534182473978524992