27162078306844439776245647909217520153074335624137116057355011347778714397770156845164159816664934295656571825692330022824184228104282514485707542969536801793384044717996395192639272868123956491064384556771143183844484522422610378836260544588304502772499348312187754276982240061003373446536819843704542145865106351735056250592158976118060024826357740257710717862129509916230581685146153246676405536757286498933209760870907730370423384263738652551890639771257597489415220728694981019422483275988560646586852275287838978360914973239868792722189809098759273319433691733002622566771251110330797215011336776979697836661110185651272887879888762135171129623454881107293464267209546541302812340776375683943750610966610961757650937784994627491660497383978078502553661462450019024063399830955004332324171671397651240352845378928072785698825846341603714715815644677299526155347828943294507665537128906349068181923235848461587224516126426175948631263748976676046577379147431424510164052172958183410281720656026359989721652540427422786550102211913615015427176366775509067383435237628971901939050936207353723106776861447616671082254521308653844018423388976628169335189533730207684989236738808431477604721705035789869366899751272679794689183842335192806682521168106836969717663357373206742541623996125472834736561196879519558526137265660248621611470605766993727451530772888008277361092399617140427184652650719210101559262606204838954828024169980577344740989808270328492233422134890222688337982565799848860771353315850764648811972957892698893173489761497293440062804825965928222074782869950251120251837596685534854247380481687668173869512645435837259668785711698857534403768058856756465016142134999344306727239331324596455209985981081549143455789360642724151644879703203588276567867625832246926906652923005834036967103574447270373545919990693867967813891417196062905805898064915658883346092131362261027883315941596565371121963284177045228998608049564305941738880358225251121727141976744198485021788875492691822979747549934097881819857212171368294066695397597427544303854805472838439504717355765376761674796709772726190369767214625487225238055648748818816977550956612403309758728187686245841279939012866622471123381278186106475940883934748986993380490365474429942543485771617462963246123725077692774911633796810717435926401414430052665153666923945479866686532215908235949247820821323888101913536715072952988303286912082442438766434128076885027353591767296506141113654415062237227072343427848705192762949481957119657384437723937466342244078952052334236016394789086587795682796457899271985117534995285637355530833543870920374833358698626178845619281574628586116730712807587155022104753123063628543334454236403665861764973723465045329140733358998383774916800497905639213058399536188876007462350809377322381920242493865106755565916715017912144717772956134138201785215577789531634138479759225763645546146280641608334633542480549641043937251379664945694463267105721493688981206468774769649759711531515334300266784264318363890018880363648280421016541276813430102156706737728715239638503226249456258933673533326268988811419138675114315377881028233678629579845038427484339862697847952959303453127222546104689133544117949314471438859444890857862646685161043220392565662912727052092569437992378314837428077015213135818623597103131029926135795921977259869813913842925817771622656697428219665247018085076282642251930384074660100126016953909710983399823094596207351023508715511343492989268295971225551017860867147344458376453375728394913164424721284727025766775285440245435716579587854344970665674612675156310821492443695479481408127316182630390667917740446025247611842189286183510317569603457001086806041502098871830325973829929181960681541886901387663452247500548824354866729362178852685997353617028216564345134554006656537571635990167984068532805098556340901516853845420868863856711750479849794595883521358164056035214455474795546672879942498580143078178614756564028331926757452427860542514934378488611760815539101784499669782395029816544591903831096487292765450981716706654588351523307944583707628811828077786272211757252059791875469532785028036849475440446298696760176741211117016449716768796053768072743387715226170396258687306684546567119524423165876380111372932643558756298175377401300976814202930458293841017523278293962822922112617759013296027916257914468688373537094333153232101379884345746704181859949400597383256579573677699203057425415732825137523848073702717483431874561361210479882629993785692284533842735802136161821628564373365727501168815654031514898074859887162754916205240595454430689698635296792882308443553642494161501438732041102913937113115931521587567105754293903561937194464965849857395136253438258192808311792671378391947355087726582552319843948921895330416373081352033015538905963499444632519614782345549923451163462604225711761378971157555311446209737185379025947897471081863610956009197021744371527851048953605142283845124959252992268556278965349730684952290552946274725348899251510742890793233275560016742553843368293323741933341407665068350402891196210954938427687239990181799403676925824366077911336167738983626785297876871692683707848394254775697306832228259789361192759245996397561263619142467646759209340228745455712345828384442895263997252329380899620545369144736921399991487775915752987748918680447095264454376431261660461043321693411508592695588009604524955495551987822843188011943167674274697101008816423643611410256607432207814924059811168438256975860887426213977602786827149314792617360232039922947511437594109419740055574884985141844504803245332802730011854051104933981557711949135770837468686982112942073457115611269557646456161769567154256747968085604817179921457871842396695268767441346999258486498901421039375267319794376957490028599618666799669800630994334954885472450434149285631147091807570213905628023286023