05902507336906653712521733876164645376223120171547511675684603704170245057221697252641613982982058197874146185239227144552094733353216896771014152632120428409404560288344281755405242592576512762601125451482857040825725151441408064444750544158069476457800140648233234859226362961271011526406063182778932214665849667306655939992573946316513610170594005892337160020976602442360541974743531531517315975842918524632540033533074383268827308238541969335580673903166442823405991113473844278717019678567040080192245158601132202422292533358744486317527382963339165538658475412333434610419640306166855647584861329116561452235772340804226539511293471566801814603718991943560410204847464315322237321452268975918041877632896686394750127766238377322090484050379731699364125945019789736158034663120678905185629173323218580420957315049570293071427260073126247393672223986409642982525773065595226372664659680225840835331860137548641090058393281546506249025634751708962515905311965353041128534220725347138361958356199142181369544104053805480421756065113436302687297018823554563333140169197747394565916526733304045813514876659184514503600116463629792301701097235341755703795912387826135128446763672218219187993875839954536429733645536009633925081421923243061466229952481634374165594243272119784560667679941981764204720434698801443120626547321488632128700825783429950162522347272334834132205476688066560752902828827076261187346030912132213574870536832343872534473054531136864010163584707003176561771785973240160441513618211403252501954359173392130313262652723383033275458464527546824343351032842466854695267504112126941973793367590523656668422509655520147557317688740443246553357803322650949011410441159540243993230155640549253342170085349128458331646015515875190020260313312120412563849227519920956798634641321841050370922074583260324661024660311681771940006951114423194616626997636366556739543210556231591464814911648450680174890907124121409923647993553772624318921254501680731280552510500472479810132453321572558011124422911830527500937075871012288067940648322804157722105340659689025256615403860836448534134403446485103603761427000127624656312770006197569406361447674522773915857107304886060622041539423376774541244565063181072012090047792004536281620209272423663216075714289130784753035331331252153828355743366511267513945004803110487174230576123045519019088563338045672256175265622808063236353209628651297637575147350062465689102580685968961449770856117909881578110342844954654146932710109066911180220787896066511314941001174455881864225817137284612082676387637813364601619475028095047201011221841286231336117454487442066412922970612087854785381352294292468403051279364471937281237420077551226874122940019060480900147369134453920121042877609382812822587835328143636291885153432406515527834850699348182250004180920727656247234979042368855314498327266662098514807833888845437071198599615322902037212324743879127136942213057001831296167129181689836748590010460674731772249884320715115001277226905417111515595964639486690977230762827424107850010726733428077063215447532295206453675108238305047607487680223571507560328311643153970952505239278151533625079309638046443891677036214291051312160183545452838991427581510089201249754557412913345282514628669607791368516958721664711640612674353126154441113008021649760152228013684327222154844217948622338830473628799714485041224611620211251160307518962183555797271710617223183019521113756021847207632302868411475994182176442534785043211701456606904428763741144205232161640623022175090310884450355201015923314425756560021963184503979811785209462549369796503790026967058212607820424423381276630824288944111603759710403270660484586861440376073995542265120190337057573038414143041523953534242504440301787259889760484291473158565927273063212861052216513615275102677321709849547824442806483019419462258663115291441311224348800348511601746652740596105360551527385045342087228277404632901220381130902526375633501321110813161285735041699205984258418884666123738300105980440993116189964003348780295380402105638821677632947444071954154246159710289298681335888137953453523796927052534370390460104572119275667430026573827928114479700140238363244284314134885382195298722645689532203402036227826070832653852260942592020020426226934619730473852532581014231640656011828758016552318160450130230819866243801846680283484494077335420222766647330799091904384752010941293120168774121128766772116320115902242114446524545375542960586191311427128668136301775967111550361221787053285395054236655276812147393941579435108193876076333222445921989203653443354041508502473261435170988618948787178389741074902052069431651102850522492906746977540635909097703513887461006495075210322111300253792707161329141823122387124993123540758702270983728447197530584278094600613654465571203350059138655286170233942980718358087848939803422228787263481866442661445801103460490367772104293051641773213327766118702084494170016612300593647383079110953240088283457844465765173888856206420416117725349070341485355822841643753327636045717345495067575561438084457206635099401328173625921537531136163766232896919338764415624111799125724448787031503814748446907131254961596621408805922725934334117256621630129925225679141966826339250403603370944573181010005021459964621055093227918166872565834407687418834329213862431837254107108409961258436798531428311224900205324567572736508566447034174293729000371139694032012215110683288070804538692824141046056300331516622425297374720901552642702489512764491183736512820185798649219088486453506741335455208037624563006065618511149919366565213553101411113606632649339340360578943100030388949654266813583712996364013314993191314853131107571201646295407593773752680343110266496379665101806080902454453729022716262643786615019623406455120848761636529305464789449170182042769590083943353921244363289445733893879362450410345065436641444415141322481527443838164120878252363225158175123058272620295590203603084646522350423972954199618550025651436768614747879677860510140382520171307990966258622361491558330394201051320570344374554781979765726869027745925691480695405557477748260862677167030617241692711681502023762866134768360025197901200323806837336400500049194432104456831053156626016394349987104259615143346185821165532652550191423612381789914158618214005935145166238065059163705202581642487888477119808110200522527217363344074539353667406222501614761843594810683190148267872426763640311464242850783190084190049021620740375373548121534154207654005943936699705974582756883495633572091483702340833567221232280731184162546225823200147125911024506565835358238666332312481791624247822630800930541023372211666057407474553160324494083417763942069218731181150139539072387631241306611783745042921596023217791377236492037512802545321602733732015778231313886415802250856146373351624035301597925472094580782341446202171947833547941135441326121604913805797644255108686743795293455428975414225465091218200743965544293652954559865616472044035264750138751615503888651578441721457082191631411677516234418832258233382161644445144242357731337152010176110521194433739378710253921717247243942265657444317158739995353595505360600534043158826825501493013026314014536015671751543497959200415014037311001784721625220377155298077618003439362218727470395678288635067642554934981379607380271464621240211612239984992847414812943352621571841778026152148096206110275510268521405941195476677814632611293238402371175338611203663553920125486522284969953904110112255144251181063320268346594827193184762340673786693271844331536867881074499830622939223501437776539035130334030646267316579436362183481183442211221704201432237057848338921655217171342616944775670316040385110074208883212417733622666032167556168512076690037264310260374144007305534506151181636800224134039190184326332651271250053593461119110878549428203595457863463419497040656921374579483724229280051544183288110741879897247241764107372563800052584026812493140337845255275337207437211718930391587491282451158842716830506330936954826033008609256219792013145461105426847955079211982116131410937337105732796398670371980741211976273185335731128271773980445631398838676749523449275427297845104020931242477246167892766108115122238819468400672414071884186059292805954217799695572613115064805985182781679599606285743891408311522892831604333954253660973285816343626852481053170903393396301876053169841705983084600324861317767203018315778623019171377716992197294655786927912326346468618309250279466198703226430751588468123771327201152470661193569335861811296277041105734480010065044015053464236409782095134617551271689370713111353390102243651361378724903461701513378753581168050370521597853101612847271354800645226821379718811646420322913751169616686167192054216244263473067427806360220656015418597181588468471666145387211254381260270388044042814798518590092775032031413325800343460250221187375239491292334080122863992705553492406586432045083086256253176958905983465875341419886329005449045060127200736336389460624016321420705232024123774308175437588458726233802917054911623132934910281713091523854469272430188193037174137236287907112140356702824502377719614501133176233730637231998537056712745745334353782222630937158792783460374407456528418205202340543211673054120875444692435131022248290890373218113209691751115038766075317884721624314557065508485046430321187262723427471099309455267397344603266675358245281387820498216996554221514216245042903440133050216300424762284515557021386613769486593963234710603356021872663163437666842380641022064142724679613995116001921128264802399531438966760464110429311318267628737153449738262673173100749511473355230909328363651113496140118265158124925014939831153874190316405367641331715280054685356302988395343474162835215132188832379334789121622285602499926610838588559652915752146100790311979894012364064045723818548554881284747698969047687462342822207457502475939397058032814045008866216539432523994561345052066020366455698714760292405446296906582393646636025462679223302994629880803244030869582364983816369545822040712800253444575414108837194282484004081451720834800358194175194844106922029494517709784791901548713343936588722326662226361890476518732401792611856796347661157244610379851836341111903605364438418748266067198686142970697378830571401687313455417898478896244693387851150511297150073583490528395224875098529080047064971249007180887498644581570193902697656216587599414914522204962812797075163175904522059964174200008234762490763884207448737930055722641962241615113594333340184343597384301779337587848408933444643084472265049682750133620217577293342152389721847684574469311341681658810162573533204941437669452785219278208659981481167416134303684386961204004510327145610131440146839744845537881932832041858480292987692043093754916025495472618790814205524430774987371389730425554845201164036758748397782194430938422833490463406423154639932353915984215264617984535426180073203119251495509262387626589324095135402542096462654075288335032164870152701876829288889321876344392280745827595214025472495121164101850230448712015785667551642579963400055162226974445904109577933143740821345230322821783736961435087484368584703074861662664776674146420001492703311437201718321506310157930492786549198391257862680209088728180235815048417081292515810127102597331420893380113135611977806194723546676422196649222752924868234925872562082327828527467685261884437369379492592484574480445334418462125744675205600078308655763237497310657485419010431342144705721139414737920553042795232870639713367057032911171333769900010494622211026629224025189014200098917600888912689225156245051446947799424135266116554751587523631557943614572281181466889541750273635286860605600565396666874419723375566983632979236127612371233644429235476843221111278768105202095615043132093498137257182691477621778609795119279841347757350611647416202083589240237753994500218801429216066934327268706883017313218197445800126661091925622553330373835526004411172825888012963606599281227235650313127131992260234446534066408658314326535671538125587357698691435316388996347310516000247123193037969660401719424747113170409956507742651123360882380124700471276213502234290387162704789868935507886571002296963620669332296922971904541309032871942198540140216660152198470819850361172370011095628163003755166505810829502445311627384872925350681210031219936762332943597715616734492065269143819286376368259337818166471882182896865914952945133068240030647066936103346017536349875962231921400131733147433053685747630080653855438213933065062868749232706160781729719034418346751449639157473831567392752437331224576688416068891911676391651328798008890954777838430195576555422402174090704811306834045059694743133564357122204524534052350221716852430971359914110518070702945421649375384512528406205764535566421019770126208826293233341597662181710048481485803141226216518345668339113661345052572447940980177377501422400286662992251501280978092825778930381671114374771784053955190483508239380049809400124603670025834955554170853046120067078215355131688069343442307655733537302524502413171061037219988481227307210274811254702275264370511022499424061324011256405110706770712623384735004945361232015877052208876300516804618755806989800235007944493371933021437274698142231148619671393515915546220417924931232436661456276009154220470825552890842464507474452104652303253099136778595620373111287948437539801942634263439522225321548202727554035192119071082064931361556554601666266356941884848760406482344629752630258936056410879355736210486116362662233722622320430184037030790612129148162140950054384594306820033030803915154566150360280710310088484458102400252511167820719267472212483926102556398137532170057198410573885473017801365826413869947068624716056761430994624422370734256471737711423121682693281085556436702520626770701357637266589473985116154026559715565309571432457253844220590640760171521243920522602151423927611111212452891375541324000448924559183037307663283905460558413530426447279788249534284247457731107348458110394521715549023704579513600523717920991107588114112143250812768616776442122065374855365389304913940193944863178928056138111823864070816177126411005563393162372612940221266942071679492663746726995169748414655248751321724366445112383676475294533603511776002153865246405319282132155267887536566641062302738178122663684608564294271379212401390836152087139436767590287621324737957214376463063835387431088224148868690814808816263412233059196330811503153710602707286048931410511268253411163212800538347276938401154554201426874144419572016202074384334576648465132269240114557968345600194470423572309182987492499724193239077161586274381291702716291940597202825452307385328563283532710222650154483604087127280525552321622623384316521504910632301176961429321700667482525029225603297349493639796903911756076181194021002585953906159532826142993141864040264451035413240841010336955251302415745155330736953130974029352232158058685549349029668550607740885358933343638839887178436785024317577195910197024203642054728009952178224361572436332032893728325040142942385826418876371273334374000953319308654408646174362921859963942596915066414747431794552561894176820222972813058490011221240433169651273118522133164012232026096641614521034120005129226673309710092553734224462295735674015769743163630322349153193607438646141260424826849262610731733143843345254815159558515336177708548186520263842390221600785568034884333958781994842220151262361275591755738311150613511219154152879026546152220998076183477782349607942554207224406798077234809569864742066327744365334362247261385624741735888724075330561413542733507390543525945530946218822852224615210077955430646457673391612818649108706068227008329543080046028412678725310092461806832887048668605622024840452286482375882605900798011239240782926726221752423465273932475430868375362720353373314804720630324075235479117705173046066913594638769027226410643748813381531471163357817853086559774097755874159604883561878701288082242676471114442456352665665136730191051656211688742852334552514967223916727265342060801222152004610002134640622611075814086674118980345091802441920873121375591170091649934367003185750076142049223894772563776319363961656788152178023483931232507131294028805285447552484414465646446818460028606382258045059132660538940866323219963353112194068386576940455724555985492774876134817859865809412045617400480438211185958244750619838265678060122369761127371880999068437083952245004615703302184524216343081706322041726541977578082784951579383920034590241411148074230542483911273105611121338636852382934467714900010338800449432383366446239166024703985030593107413344219723865442202846295262338174469499460621432708842587638521306018931824235182302501956955227390478532521082274224551589603158620315482043473813732194035286441606620801777256098533207668519660570504395367369150530776283548171803276772122937869012652601287168873297256704359635684195339414517608893303414797532277243355151049502505416312301237009312180077841228144770215298529293020884264182491294602054575404303709263353570554991398683120090997060165439342978323651291628016440763318102673665350972046853813057781492000468568319324137015004082360132563162090526253524258024344108745766628395122021272486194538052762541149336394612476457501865056363426916965259236778421308414021184662281566263823110598301049115171573633660510137308620430714016657537589402688738855038122147473365417984318323524623174999696835506374307236973638569660527280399563176721255770925573430911403948102972041564619827045859039002104262417296802756951217612180385811845004221530858273725208566247363965878132221175445215905665417943494814384310290018032103990091209199993402014925663884135076623439391520232433466836470105481375495945734382087478290083226330565077602673692741388893105145747694705326437687364224246987066760928668811204794762774447420521037922555007552390908570120817410998905238020967574654627952126479456045255130082962726727200482660106150171407423533105654667094870425341063456578679444040267470315296321320391474494566053334685437415814534825816017128911524707870434832219247017467487073800752635050071078052567845564652202650590783407860576265346535379416116181317021272083229721886851325165664264819674134064341646556035109954564515352749291657072649101435409852185655177574405981571508560522545127768412661575245310251103483293983191202874406645542123955641624703312942143905482171661545114129021021130009352342616739715526906102145251290883963302224943918941877540795859307121792102994714490737017415991802890552615819236727497091675008738671928725210880334550517530942327838162929333193751614520567453731952184463530973087008020315461607330201368594538337595273547813578278005435001445732423007366334779283297618237561462450633012844544159879647877055816130598382634601589475953677792392579612463290299507581225052855830837966024626121292682231639419300297481073167648437249099562057874485286246914305232445734635166609751223609322455103087326120299782250819447323564561146400087781146215400420693204179062230708520576580272241012388035997347114773257199062250433619826226076574113613630530326794470316278226144307335815124119794639231052251010412645717169638673218832301798180289615032770880038503204024884901588290563814721457390396555740164766835205719278616623452208706483210023187180105752112476992100440260774830216711008014046727290506502585618838154231949403346412246227252192478706244290307158308974421297644402047592288018120896027672315140400559214154117846737041729064960195898957513339392340117204313526212669019678764035146550105422561800453217128226620433712455913894471457883329214486482436511163663166428631646265276103966458753943603720604014331526295885857564242858923765953933507387346445188394075977027193813169989536107568632443080613125429420928888342161120352206885606425982016694127087512538430604663911364846064440252614344033178675562248198417593164120766403630008715030307612198417769335855808059372730263538197324642132250537218242118717780115184224995171093587024374650488161869788385635261472923180324859325316314394379005382083623213620574643575537501825349256024334197964686536117041183097509323758176871454771164481232136363304520271244596644435509136403964963537214840439609555601439154383179934422036973305391686911112061860345127211681285430680547377410906580682615905420802503682048200084813053831601560530864308392890373137273347065952434136125675485421100347867310735674526325774642802995067567207910619996120404073379761421453173219125412406239254326691421285319599663523682876179311122629492052101712901212895271681660595712184351777489593827063138517851462054423491755413148242890553729389047163912743236573230602129043093423947452507870416232247552573070241977176371331583004835982516927323639502109235930926141151653234140445716995023711773162744606513745983027173132761175342212521113431606044793703581782012052533351753242198443449554073800355809692742727998744223316423591652462331480081486109981474292251155194471234870855405410637557640954651425949753742410641035753202752143394473556106773242179447953991027847917651071406190982331977502720065764574185935049705731800220009603104869434182411030440241724734287163398301424159674515213591737033261749945207625092184326682961326016459563170247924622952742680182721723905926732612880011345511941647437637142843020411396915847139871386446354456866092336271382115734549539301389258328105217250444083614032950169391870171635926201207125817162121704367292038100131155629384644610836767939893045728678537101021818864024946121737766834215917967042276318368489634974535308008060073651609122724040837087410634787702280057515139458411016193126227311107449434945004505618473827768443372030144216833301307008846893934965613747413001809028412734546151740561682178916148703304060738438423736610732489323160441468810862506977379693714944526453820325206205732924460478550720749231500265106861187278001110011195127024754562223192920154422120004219478576811235955275607382433465022180527176217167994085232730107414981235420888675298512217040325479744363031290344785736503823277348469167028330133821008558171748857440826321863993422698446035621642252134441284797754840540184549697002182019732406075153745083108757114029251073793136365055767962167318161315354592869503893327664336113218068766255451031153265517227936242230416581307506638845124134603083031598422311435017741004532636533861115812794261026319441784300555623396941368220503103401016670132432347172461845316006981127026348141736427515236624421252741324160116931559721620309393472476680158713210087910013188727332894544026456590103496254819785846290375139429048500616359524692479443754442741270551592855919493966081152069120420191642900284236893034205211501018315347513636462652905488037601331104433884924756301741346977560344799168203359188970668341744160981973881625313113452691785654220674860250847812762024712025230704707923591180057914355017282097276191595265204895742208744782912645910452107616344633322428435202976222659945840733112300884413514114428185865138571726817117410140799534038977048421413330017394151879211032952217316321997141674618145924161011479027514413469606865593150295320626464555582576013066341876099327225172357244624923899100050623755367833691459881208309025542115125225704128284500417758911240902661063742464494414461218797485320189084046240061122881963101570822242229804652943741302731750080461102134307117595510028055205060034377126678828944050006991748049052611773922745102003295213347019466646204988134683845966185624562230090862621245592120404414317557913181326656480342960013321135757434924203565240374255530420014030102747197138204395697828464787330225968755202330856379181422907271519168567309498229700134414491003191911475325975301678248235979549604327909711267668047355739119706954780481386389273121017757011994626380134192772547428044951883629300494606028063239204379584290122082301189525255255745874728126929213781241546966964342173101593591481353633547044941964511342562219042832759629506667795762444640757678810440348117131638115483798163482730430635333407106538923208752194914899196160835072759826714922504549070846711661730202605262271382039411135148566951142793378510742835932418730018860214507085072056512282839616803133128650881561788945156752367251193296282528485328217229879093572724047735693264273901852685386860407821670427197300165015036124185014320132746033935436347657864778594867522515839707650974206342286083620659418090025344245579154213200317975072666151236963115451398625171541396958122602545944310865339284966633810702482132081224711472974927947410852341792760823012075419161123116886536755722184127315331712093971633528634263750230217728014748738251346842818186117112657975552358216644442155758239646717686162995611652440903124875781252251022135844794536537981177080367977667979310250277852543772072514722263407212652995884712415780177367472335417436450313130344812501906036701660817004561006814185022101927130783478595157542924032710174872623075291982823885215729529558215737760247550531225526754585963073504793368022309153887297786450838235351532151311044174673252806207473934961163414641871545028125897730301754102316793112763545323918309221476632154411024611954673141889461000943152439473344088943126198514797958718290761472515151613224233534056345101461482529823156521017900811307526943123311933096094400616283098764387820563807706355177744011405984304339367194312331203544479504372774415218451420749516366766067462481526192170308230896784230979532381147044156327344641013291515122134930340372641285013326711841537298628302703377622415741546878195055223386510714709881073742863702600378094758762655166929304948509109134256683882190782608311116492898178930514126871026485820320850420127940103094507585929576064185829998067578248634002128184334166264297263240146070055666364222106673553313744514632073311791120015988365708037669712318465450446703472334831489615871495811605048568520596522700924394630107222555764727562495612296840740919810517065550327174338431052643011853043920181888112205216832974919046456974923415220767172222968431227187613255142719378252840820505171812274864206461342951657238669414850762560182046442298021405876744861671324603826952747323372605463099210292263614881726441848502816490675067368113061844389920185436061258826550940140963332864388671363225021273678049611078959610747686292753787409233428621041095569628406590655796108883737156608876350714855458368926168190135671298927401651515086772495438532754805845506215949797333158395236571044794514534359432895115122470750864651474951911645862355856213221319335768785742172736213460628959015173003912424549377920233086532675921713325162410918911013484634235439243564806932094748777542081227301407181902603606978302169461592567695807485696916693905164891643010265123569783269721149994367685090075594586969101128034072951547172139601308016441373521712434822340291347037958222417400055463112154887919103749690181489964908525746241671337350166108541032397618579174902828361325054483354513747724635907464780780459166685473507144266669512722031405764984566552051662522570560631967303836141027373083030390021271842664504581908080311111442892053076712366920233901937731481197020654217068171579142117931725018221512047099161711174624002037130524991117820082649712969647123236392233760434965822027595884557627637304037707309687445236122984054925588053992289485531109046230007644582655737983198883432432695415938144227872114761820160634610540530789911161193293644553127707644923324857233419685437022937641361621411919029251936060422480249684688214943948263209105618706734331408472488701926233349519811161635463654687106513784076069131677162392915862294153167622322178242578733061715268464118603920223183672095943503694796017286642503623089626833403963602998841539510152152717860728840146959905293946859226337580928849172248303403810324254587554649039369061813545429393434758331123118182680297915621253189527074154151902466193856411590723984099881554215522467743517071814079212716573323427441213768601878484914041548340421546944093527524805315453823243263466203102421360939309638670005076273351524492387470133241413808154082402686858210386957243316801630755196433913560344626378612486420197133711366148279514117921445909978628464957377366312590566636747207838002544200004936687517057521363086396302017207893703683025192585217012463241320248393042797657131646650698860773101115057168822152628669012110852483442712922749123410244124957936383154093382202131611035986442182116848898248470249907116336481451678999522879440321731720396323175955240221102841315434592761405080355442718313543121752333190967011313382348130591193971753565419843058571375865054553009057396706084349951745833611939208019283163358374011642889529420783948082944785399555581884377933408868271882167377710510127535580079910189334644210412495749990152519169604711323536263747579081442564300335934861112850499745345411663010477364613213510591929266040403046824863362068271434613611193212182135793944672529811612265454245175034420199971091233281766121947466645864775542804355210325014282075767905697813676444920504104021561456222202502360959129973430693221856558948380007268586898317839473733077444359675493307073946521232751913046617086461495792690522153201803162735066572174977072274128231401129340402236113958165711115555657958814482771921785558313469873192423120951141360794553254558200927046404512141850006461817094384495635456695976376899684257314633906012546463816436904926731333227416756597931028213515023044427585366157185766717487208336884516731449790873626567114535054816719346030121124751222132562777971101462741802877625979404118651251489492530038809352527772796435385566272056540119429053581010063559476846630002058424217098553663842235781310111059303341231452819110601428247811468814692561527094366148182957426944153742722931610880925780319570424218610037492517467056636698944486248734053177005901620039127829176753522060881505680014685784576267762626170682720745384705995563157321264695153574075181823741484522813893235726545303964809826464232428288604411783582342291200263290123967756118539858107434826676178747675925642856310641872341797461628608568098790733946605582177222041171934810575183267525972998278055898820230085769079217854333419485206269431742506810678296149659355909617709521246934016230532915482080821538837176504737353492639707857833385342642253782474711226843045396664552720456366358301301814467374105280662632233134588205979905771420145132670384678081817493118189453192800465376198666084467114327730612305982155696340874513521641219403963306818336060413248925114759423351239013758040869447920270221679265553065803477533255046801803843813164684374204099018267061633324144911114794702261934001155279283416453087257966981032944729481845801585919941013989164901457069363647405195372575667274957106652636634292834964111651469595682033535313777569291292211343387037870210331413538840731917559409782819359137390733682843977136258694147880497173178234122342351919910302302343213259437192097846940905881301233142645395531112447266777997801469145643535111074976427081841030482451720513140299009464396435861266755854573335716660864223530336257619838126817285899026330228723337406317306729345297491685725409108167789659424020268622579311306332025211252641906268067120562451680285019702889157831541405232727909608545073727048932628755168205916252316845380177293164363128390044539481835349753429316681581018405741524755585248250839850348029342969228692530862652838400049115685949455236591065413865113496458141708377016110215083237772557799092677037040200227836082436052227094171974727138179660809902742727824707275429221395575460255460327301492341534162106101140621851443407237296652607832390033268951903091270029065318754895259631537345430233244282501376211887686371230767025284665272006579045888905562166078040548001173764675505101747271425407906165632731318358192381711397515891058341513837173966119212155380281202160094395002769532844114639735639442605388663559448511426038117349517369822486379421188166817987972316204122339871090756020603665588281654046318000091650203692997408369091001378035284936433279362990851313131836781289120381650388104949924179670626238241733031829231163028889846973076281687341077817541497510562139773505367673294380518373232929511072515828543724137664537119233184843017617247512327844458395410122355307454910557612522579221666149511501464939948456654260189312494984312388161211342710607579830832535652084561431171088922572762304867170126668372201002511618559731345005010480693531734371369394748675941413742685583459731194486322191527535829249953695712410184265528271496181512913354306020002008435534712939189278778754453027061944328470189933560512924522370170998168990210510127585540390711161759221203301201807658276826908911390322243147426881427026079872540563028520242136665386276931756501934043547060028126244776189808163266502670403238695460307822119544235778691487938516667935434520727362045064915181122083154066667529860154680208072464963926175060459263275642064832766595241806902847742818338020820378618533716380664045746519609418171576605346523046185919922691425366269736540045188262061859271198795075021236626105044171353394048226699127993336315622198351171065762707121956530155097866370822498460241507436458035818690711711074899825341610405734396211427988254070024248980910428575344176015822559661735819062408591842971317856988688996016854730405349363741891773762641546189381015161584197382235115290653391263254842555175343484677546590791580548214688709249472803622030668941053367183246049419403161887348190132202664013181268146343011130677762844575798513162111595215616133892454178235108256354603422291255691630601086196706941831673595335514123715101873614988645165049298864724834985670726418165274719008277131242098094047521195795229706220180306264692964670552970529655872175025022237152716240142918340172421921946296237997204219041139771562522601032031559915143242182306384862435964421739316027067068310446368682439843725869771042410554982431073201353272090394732426246222711906832826364318505044662212964121968208549334583523736953083053712207056516623713801266399064246472721747263920419695785376264152202102153583282872932924134932330137246196128161004605930929322191561654412432539730457045124854285180495447464362905081829714705769749037585770937026250224112735994932493185822444459318618508063686250324075235245091103376426725212113553593350358417011323956936178521336145957703171844870055272433202047687213324624962014330393251124401829189793282664562192540272225586731146603587220062720715027702214957769254064478705062036664002910151787049954550369287613007448755340743219426962146403626308297047562804789110760154697756771221434551733665470135321334274444244477312557238053337839906190628681635410703918998286560889946431295467154110404318732839748208445836448014133235565008946763596330623847776237139159405810277805753635521471900192473953552840913602413212652978692014204220370301819800329104898641210937531421373722067115390301454308421080299640389601783978314433082204484498881944002845942446733070471734644796672143316333413404137066575332258136085781521885372815700159747131482453430466532314248938722111616650333524472072835463386633626427686301018222740441331240286278878721894362666504201538183086478280247413679851515396410460922330742356047585817119833048673615593522010792851612610546484601340655327363376035835479425270142127595170220102111803030039600002306434660511483768557651107105605154525654060435649481782912206805521598909762534597617162347134629911712243430887210215595459789437502520008495225736332098673005816991109485426917231215810427191277623728534420422353145124709849574990666623171885233499711036718291960427529693963226697590548649395164390023612701307651521994745959402437794942285761253584725871319180004743483361561682779218796153591622594652398313309582007863356537262091027465271911608419298341083268978504882378625058968206617702391836407305117318393463603585456923195815925414162135970801360879818525085804883402009221616134974403152250036408730153382308253447463296250315309034167444187592106006775803129834154683215328520711255138802376145290162975714207195083373011676968327703571268047066710091403170420100465946311941055180817052426271899311827268771979511102762743494141315018466053013002041237552241752119018213522994601910002774677235342897680245535278386945636563533012066139124805607831824761362902659488184594123634436186206119725120232096612014692427270294903634133324356482370449156225246314269748445416686947439312594071416438425061213183335271399000820394619177837195312430423022687370332946932176497332505180287231185675423276759096080516574115127640492482569611515351134133444642204213072691471402336791653700914312463432751841545815753644711543623843916603224472414833127887332430435254501141769665288013289581883070665411335106415809813496343026547605681257908798651299074502699523513841017202926944062630633050943144900665239399258802222529619300279854090299654141619237147367031202481712650883557838153644833767788251693786210416892019696220452072512609024601915056092601320278547591713437573109651358918266136672389478086770033457012201242821274440281778620452719481151725904764722721276690018648155746275301483300290696660795581567176478418683221018060977507529622114951238341817096736193050509173002166416350065893855512856202896355718477339227435635120054424781100835224766502239128439125210371486285932919714885826728147413479609617265602594142369984361654231918832988900606631673851214139455200878997513223370447709428212921592317134306626866401190009922608747833686018086723723841572994102803021239619761321424128869834540096254584551246561735264549513683957831581116377410587276502151045392404615758557186065266553038549894051535504681346716952344864367974854017293145292278649268439141572765825011032045714637218283382761053183123607763925658428314160653256427789503440182410521511276326344818541235629091837140545427549051409318950292222121699751343386360692835555218681368172565772439109584339204285390671671191904601500200494471664068503135542463316816811025602637806242916834647774462321193392969535777633470348248601212188980370009620231297261444250300523244561030810432423313913708504021176443041683941700713674732647061391132226260911566146750791932438753199127343042375709252325515498166652570669739601255805155448295552700210438532102860066128776181447207396728855813434413345466416603565446198019931410718269380174594338993228457923267161145713242519984092726289857971442440063835053278591463474028471681515346507416128594888772636152154738091428508062485684473499247698918191036743407613201367247070648397992449948616526036802156344632620193038185585310968642587209657948888111037594675059515166057095955592020532434729254603705061339865171557186245973155831879087242992572320933988343273297386198466530197123646476859431628045296337038143054410251244207163728843072513356309601731686047654305880380653204631416848667566937703227845261114611205185266067148760171136192602928214974414129863026217301163911226281567368473343016501621474041849674548941418743753403505641887176653308637767820431099161502294351270547914622671540808986283230596374210733020240224019654972753649904598827458005279292450123765157281463031837740243067196471214980470434104201812913541353926291958424230014961711253416106348071904512596541269954503312355945245312315302309263696594401410525685758741311509047119652304272310305461838274301126092055372010176242316714343034260524879110914414254923745628209745388196241970721582703219052224785345443956184634650424157941554405549332218355256255946436871470593087421331752286725173826464987897391340264297820596136213037175184327597767448673432124731939845423336235598080318371635469299660499372942667610460568280948894445574124580091894860789659436537243712790575165033551536395574790349428334156631225981395444956633779252262352077235226306411657756601184483633231869359015325048835233594260357670248803573568960746276013742640011446277346582019298690059107834015497282448738339032457214279686762212431243597484972797024865380315426719277921417254580522904125520995069628560349911442061792418001938496937513745927407905416980462012003609813229343692395277341324130726500511085590358050724582860010877549114579303192685381824051106215797576724060808172724112978890789210575382510132409673282695471626561346047546750336205816325627732106223125645021439989890668982212366315953569927634723472492638150416031117800516545810373144746821093235983222644096049578431977271863656248267933950057154063075614705241132358856282311881305941152353315781585904102106191350327662654481074308665712038243351281872584449106120873428744841844380512102365681721912606320074965424042821985033911233392168058250939832483546287371671614338434644429227902391215873114025831969712226544535606811070829768075590505094423809603448954545267620710326239927735104806606127810437868632379612932173852824350574860387464718013917808147350990872379057463587182262247803433870512940928212627301200663173380475933694973050711620928371557041198117929956328734229169913010274105929765204998013442396263733844844174367798222840175939056212675841640092761915224534375324963451470863301947775277722441385205665121319102334311715484931761851797596687605521986994042101423116441641091121767777698331292862151215951876732196213176662512061678092614732092733354304839457026909835306454233742151117408420572229263132807053123855266331834669242951836840193624312901572617121924462898208772154944361661572322342065217312898704274174726954166070471106041768542599906462054557398861212311815632131017033114372874157347923111201136055516910502022842929068483111559948110810909024551905698374281331494686424989800309444433514490783273496368744683395155289180341402497619085007461146795480958922510136720651331786913303830136144915406051319173238141573311120714116706638036123075675116279306174033933231901552317392525587421304607854690868017358029862455512271583663533633756718452038593805962373776151832389142498465502490471790256141970032517298865060944493446236333116798635829206888066678051103993933722705304167950013512713683088830615052058031438231847939183013768263597250954951962421021887282201632612003541211323204142840425334599560262976965560782678321122745405924211377932674233076481595626730698988004157861008878632724210827058004951402859700715193343703583668348590420324060373257710187349662793551681609685436046127631089129611275183241047955816540696610203975701630750203591365244051105613012538831325670176543809532241474674569640195706236100940868174075411133149399487248417032164493128926637144253326119419105436315039845970566186400973764465140552830920550429034253919312347341766348838253873358248668652252914803722346930500754917363135513355317018722273097705693710853840086904495676644140546741015483806056315899121011741402955492063306117418513514764116490918194616173322796329439742487117723249679924146427365557375127050339562740203173214356858441566613327981331741410839032838144304171551573785860653771006846792341164914561251992152456748845994510407325321115002237137149819509701339313885110280349297219226034824805860662523765831522234052620185190063349236420930639382270205523825960382669319162451141752295434803762885149105499842217731964286747650289593059087300773413968713121313454410795919621070465881982740238432058099805537661041485062779143358762191345003469775015812196332219037115022046449365479265096454831430155546362490389108290165451875241371112020207204987373121871662164323789683430955495689785117020830281412691202259018553605306247689168432693725951630847083636281311745709653534284313195643118926519587020883718340938522815250379067951826361433057128006605931600996219919187915556162996458888078805161040419977132756455407812806503105504480247561160584118823026305817505390375616732451350350838425019500074268701251076276023122148125261270883111890282920388286670634569267848193639061392145383326722261825127507479690453726255780644838727422751540670634936838516579921468372946239213245096325013264950421670652246757243194365017661444605131096428867502416016492110123241611650124240331524278933396538177364238845398924950488589515125122185225152337445394259790477252553752869149329205412015418658890513090132482670147410874260287248414461327520663986935437096821242343770224422121421977837112237870664728343493240483314641157612218038749838962671751544226137698852568865710317389241002163103423813732121677663047276542137599097185603153324528740254765113611195315335257745984120441587158314537352373212229509324192546352320501461683480336193463722054789684226835528755430231964966504523294730891841648874081873156374195206814868931163797397410683051157632240295251503532614603377614530933553929251887343334835201840847124306175128066984856105672976154000472850492408446603206017395320808343125026642015348873172449447021758245825982073121108410565851523441471240544091526624263336599454235945026575384353102000559903790448502667286822010198750368112451353387002610571954094143152133301125431186009623647863645040787916110527454177010774130295601834206185427807989058212515704732359362836161041268034809417874421584427020878756737365926096492227910691949231214600436563834456761827685428173161196582950449517846104202802717690867329304660036549157681031310361012092677521136448856613088712245416826420255635231627340308964145822714643026031565528836653471239340732063773417232658238171439132024198017601996253247128820984423116683965168779329129325832672667861136038173316249542469759197731689918467085976107524748446605143511935226193052415377484135239086643828107015521411293735944092573496567862012401020504083346148087412135189250146702535230607143667744180554134034379872119299702462941593845240408226712440129095810430966679088732077518769464778135115701716700839311567641713597857344874142328010160840150501346176653741820356017273294655276393833052908466207152745760470406780101736810318161532023173855682000833873852137110631229850454611017157039643483096418253305115814115471932126532934729831780204052824122035464097635097459728134164482109027201994170141202465588614034100252565000136710898811054547931014805779753629385522520355365511259132442619254222734039039267038596082360207058155264755395720748129317810013500713782437158793258902732784750588869919286079278951086382214706901903981424352716248340903192864427324252501691425916770524090336664500672349664643457493464297177343283112127349908607170025398745519812927532763610569603560345347245012142075853220820368157868006894624116213763023792902205357173441631224432451317112960826865193508648323427931726304161081349526264661868468013561025316423981462381284153538216129447262011743323296666482202317408874656365626334217062435439071339865748951205788286208029012848632705831573481743976740902872569582889202624878287108380262829083353334054182184251192158170286721776015142103697182827029946766100614064411092821665352090029888444553269963164655904336185770422156925004540042522539678404879687194115927813358890869091739910272090922320311570337537070296263851551767951928302188678491044147199911321074477722325561121300652911045272094346363972974360830544648832732097031397446213992537300942622384790376177334825937310228526629183521912201318740840534469611009311685317159150310182461207213874423282491126478389014526050028186917021209719613573155354654976716283701201014357452959694448448595261110905226806485202773114139168629341265053540106375097779234412178081212054864380889456787254280738011717231857068213649792771512029791024994686029466692159594466847109393070820863212967449089475820335605547271982969276878626100724217950023671059407734555315114342051460076705154927967563223315206612242183463940242595058328507406957493145653594679803525582353966415328514492888601240565194024559914144417262402026000701611842280740384999440668466550404572374365948701234506124317672651302314985450606239439737489541358418216276491621763970051623516593735416973896061643733292808193096311685345127045111341492664243303371672374375056039034651515270675151698981824101059116843165894389045207199137995811005814517920325650391693052827152548779330249609019374793669473830633105163145881173510646464706326854171900455523007306142205815129665556302301236504722844311241157054475333747706095248302275123037571174126134593930225066287307966904884511715149445595853287435004826457766459260135302402476852929931477534752869252826301326780812488231622330547067881497099928990083413647679424740266008484429156250767539171095943562187584071897343853370111311917674511000463822521426302213273168198468943161324582305340300751352480732756649210809488188562564328540321711964860249827916243073569922193486836370890740646538821045221422813568116173472601031341225726511148305847844228503297590367215534078721170469996805871979534627939736617713514381191632598148472059982165737551035545843128319304380668430260631701411556390401433525241791332542088623377151226738141704384548745332151673740884110796050052574483376002127392234602363393571961298610260351510060249507016695255143859437688920400359039513993685110440296501790682065055838258856344439336831350622709066246442651515471384881752480244014331248254493957744752121226177018541120479278396432539727524203202229816837451618430643790527411410426472964194397650872103632870434581503701514905250742387200235363480703494820862944937860291271606400429021909312017328441037025809587362814931077118054100832047141849381080822635315440318154293123308772129344270014849335380798156764342875547592267406094427374277286705095361662725486181623223648798449939236754443287436134315407448293686748584057812316455108382434651582861921540241212554185512183252333331934068171162408118665832488731313489961786459131426666155155253932291375298908847912105356311416172486684816646609739040061901607859630086217445248655512281687545731883809847857192139646411278872630230309958742160361065135044829308464536935793085214702022584148875502297054295489710774304543116161914125690426811029850630115869334225428788616020259070303004185482042611701839166575850766759606096203343430679334685970184894385371142450553535158711318289140504325753961814144622950398608583165715838189723495940883576669117706028418161817937784058947857744542376908129234590221068673298217318129321932934805700521372404278824853185592170244916841834670910395024984290519735266792215556557855148783577893252420612586016805482296300411126482815190051042623045425210418547575618729625881017111916813915050002071534258944446923816255911343595822467146956543512945828380269692139670033787482697473469275222235372832730554284706146107044454233471759099432206346321875260907567184916200436310420617091457583351784231586140476866230196907144241367490610325919878466200555609393540572167469430242121797239470450239950212122241238153903179884446784624143419115132319166363213228422076533919466003132194700134145200294590348635990436222715767358810619098163604884497733671230120093004861225415270815105290750334286431890281100034646035116138892529104491803310772958720496236875224068685337152499220531493096788002290429639061399051014766668459202278347501726602095122512112723264716732162591810391232120222915221052582698920810394870651137683172874164106146867232815636741761465078093810756012648335325398325554583025000453115688297155754640518599039236100025168891071368722014445722630270645303429174060731736159968261906718619098494880222320037200648334711445529545065885906096973277923321301135467036453806676341813415861942145233633490064284167214522107471604115089380027113627350013456631141282922831940480579525562435319408037677743518040322150107168617074597737395662249115844273548277352959166611951447326279517893811271211101354776492732663216542274111742286967920582534876174613613881338154516687126800752061666940300276531553669878533577112176954517240252645213733163538576423154882558329878428104380819218452573674782318023084568141228162595119351122114978941592619551830413402743808580414266654381280711739023681470600396411518024222083987821826960712540809310258131252304420098486053721982192689644098383928044651162727564501390153912681591119470502033387518512232092166510269256701029963341100027340077284192093805151300337409909042474886331106208019451237882291770426647375913209719921092459496917034442694836596346763052587043795491531033432866298887571116007631115764933492084920262099597836174959285641472638029774153332750684109622358663645512595327972415122376945263443073483023200790958075045119561223454221753163478031332862376492172806687135460259965217602519382128250556230489355891604962441373728370256673352562904304662722311578680782277769219320765364007010368493615112313043327660291130119998086187525351465491968765454247689805547264955048510660040616092020174880684351620895843295966579210184097450503995424929085761331283179441310167534192272477468506795115473870899116380660291769010057720114921037441039457405235292002727268414353227360223915097478237456315527532089776760298571279119746986765845030803821500316754816709727500995031663100526456088892534361731614462976224170568350081586043647131421656748042137154689235352204563254208594258950040107005863393200178213548269062331190148648784014682755701945191784019335736561543256103968805016120029156986712518023222297456477976455124746066815210125668046227376258244069773081001276352519747642226107269453565012829831264795184053777211017578335833806356722601172818336617888205719990970347246712984995581500623695859092144036470307341138804975041254301331575871904172707620520430214265459620127315633065435964075335418784330596437900908431272412916176976846182378784170847019213797038211105620041073623577357268001214771248321312318092353825250525859577124752749596684743414672535011259491657506415190084984047313325350531177625632278380165212231510481283720065429818390404173019527173806114415135178823637184117800647275900701492759332500582094077643270516093781114480603624507784964351566050170182241765264361316892130273580449136143401111995000501300477627074230122605488920265888386783618334380537745693640042735602010770312955478510794361130158246706332401434154328883203833644529500563112081307035373660607733519624244486367867546428248969140398363538071257501224168054997428122685152131364589413217976775115336093235117634039499221702077681162249195946874885579698056120628170400680100789625331637253421091055580017831077191072736046305745763768597451493194315772021938334525151520052769185019651828344897067350107111232114244345956921322505495111388148339733637404834398809586531257458521575123363237517755059755832482111531883685504986867362926185551097885160375280455204515381320655918071950486047475578682997145236422437417599326216343236050783608119255285274286080604011010424162911349712653273979073542889835273712940817642996304231845225427277740644333273039064716904501441423122163882921523050328925183997887125695332493596368690353216993729475481181156703037320654688289218630001171751694712125871077812704902905114166918472242612992388553180172534533385575917801818449476402069121551546785065186783654041924567336920572412726700720341710014177103184552279456542088403018874824052682251022071552071809966311476550160304267086960161389258562561001568623375315774549038894610331217003426004213784257970900331145979944607311515873536862337776926789441177901942261693344760729263601325359866572060231401692599582858115918357357063769931073345082676355526424361222381168419352994330602963619330928143113151304309193584101252495949227088253135614670552087242321238441012904220727275028331687704314753298857389143472994480950389321834916637432299513098764105331670764201063408330820267129324358921950873212253172070373114314078314784081581131785363140002728245011074420574829000022954987006822794471762980556116661282319107071151379719856614292173280403544344630325943265072826905255575600256376173457004308596621862843992724012115366895551447569483589249852071809286523782009603437923275670022527075816184178936259670811349813071624470679408433692506192455969610562011425290100969947179091251342231467356106112288186173401010506394488031131686625109644010618595164353882828032894017128530054789046874191860491914392202103710480018087063178111016060524469731411523172923462234302462301140172322046876912106811422338556337062063476415489880480049030745071741969254712236830745567193744506710422510310908374334654087073247026350676540240172734867019121774646720174220995440212365586736033009433064121187621318191652113484914299792550463201371727557480121164064310631497227607588335914295867149117155968789555885580370052368675917045827362638751446752374158348242318175011186079711906321334763265177830630879642771844127938051735113509586766304053546639460322553654831110820121460857070349201155622752734801176853483592753970193984333980684423123918368652580992425896067758012424197265519717222034366664823289060220321155010139265446042619284818204512061298953238943460845342854321453129158511622586561997144321735046283835941586493499278199019497147724350289682001877544062167473014220314264518802795368974483531098134889371056233989250173689942155555651827960005651173679680249137379923640261943125900615531150240764140324666707033216512053154556249231155173287264851119026355502403023546520793346782451444015229802593260905991078336199266389345925349675721781719463551021225054755173416644084924643037021145561307442328070901062253662137817548747749135176315725477661207154065502241415305620423034907746770674343081343436925239112449753324527330214939838071302257269064782691817481174895863356348038126604164414477099836680901051276856767633913689727395469740743888632867243761704616101925573105220263659281231011925292731088438604685863060193972222286170801688220667155494231991445016605243606201473025186430354642209042263692080129473218612484734121135362414211625115066047003794720255258278001788007597096058017055811464513533851546040797555288343214431073212164109327127421186815723117029463536680783951211726007595008552904199408253366130383564148181278057880950385154410873232156647151490053256162905244700446561502600810868399002750047369703674477218826017926738468454697915903329904970744600613753066028778661646163937000132654817086076837170331451022033849320030395780004668562259976095426601646284113814174735315159172261842642202946055157280534189911211209263434793568614727282550344401192410989677039554421304691968559209639354418791190195983572060070613471841225159911451097687531148632650022219101012909696521067549511423617776776775337786069656113399514417229522231579496474356397620458270018141668502294300285638105843375093470215210102130622786013229984091711133931716203234537103037127163206063002033284669047515338267241570023816247602525447988331184243942319901356310124033545637273236386049032803943185323018143058280856793444132394508360049007220393399197204372517627709328364118600932890554288528646024233047833858069853882615881091287357477864985605744459009310599037728757166911866798405915783679679731375482630404207704331653040583225411050622429808302316186984446128920085200429286848010220259604423877548066516509244090803125059444725933753512513374787938251694590183531672062808712959983511345410582365528500582507726449406985624529984850453051367121431862135747014664946655412014951713762424615924693460152591026465813116161872008613251526731542065116102382130922434327240728140641008193538695152833118606117616712429529405741476123027710161246374670577287203714999260509718134477661735800462088734031170726730649071987545222548372656293401161093187435569401470675339716156915045004160924148324563663432088381959470710023122775912377660552033021345021996131681715887906313417497448034162066785671512645138247946330866187066549862819774978786451416605342817296366354306504323420730895590364420992613860282485393219434450633609850903744530177302270853720190285529106991701252343852102415537689270051327237017090303258939296524494085851956193313869715314351981199489486239616903805000269851910627541269131013264276930232352653119534838066287599586775034235014175502553178087003574649115423408338863701080046238374041007492538353532813385156989961324140422091248181782170551296956481375538816154222960943183721973093356153250356526375631912491430012343689352112091527687728010755302098309716661940193916051750139545784208505232290763252030054884633420246317504610232189044042385618956112629786570026483173449876696797593222211196252639563845063466493212175444325798950308326913834945732024043909019831003693278533674475225596586427350955023345204224499230337785850512376776575331140258873986670503380166493623745423430996115991121423565271276839915805425581996372834278717707165374723481073607301920162602852326910108317560812944314114540734493533919993347558725265598632311841603239232888407228746641611928248365123811711611184012283121105661697834105104302432329445272355674946356253388959113394335050336946094279136728930112469185108244723160671400167181487771992843579972553490270660820345756313259846717755133894740582483821606296324540841660203365883930246720676278330041236894331372587290954132343233149414781040176141032970555040074837810209048450106119557522644160567592212723905210421048685351670831963106046338999112026221573858006701353261205671878977415756235130493717882414458084138990595337371407477703427479834602121910552695013724690921808251256722944430883127114493297116079471763178488759163056032759160376131461111360924760244334037957922461892272443855609585395134370034909641640221480331520219637863809241275031180254480554891078962712131157170554113699240814645713262165974672930355275546396568643554052651524411751080013008101612643200185522901021810071588169677685915883857580228442244011244839708154413876704612676814392022425169163284929134066605291045744779212778279074353712273625371787655849267399405175071542343707997115548919707402570622325305304688478620580685423564074466267041302770211466943030254682338745538662726352302505772728742067464446332819434650342076328956046201004022296189347532336548083452740777951099851513733061328718133600325932856052471046943968723375014239737610132075077101394931122768656672333740539119007012203610619919752961254057268520158667448173904292740012538039580011201855662356859887452892991423350700751873735668628976033211507402601221592253923537828473253636690355844126012735217321265132663602400360523004718120637991877145181559234412163213007701443478026259008141524583779649929124160411220501151366044884964314711234507741728919837163117450077331011881689898739390255999545758666566861429498280258383152383570094577022474168319395899436153633405538136651341157851403933198127172501428392908568508090612042030599571115959994675741663760506617534416047618065117726511136090733153875767296483038353306003650817119851053652706008425197270201496425130223073421378928233429624174242202481143282427117336561149160136729733856925153750479604225214085910137048157196117417953762561776132522598671273018311764507277223891571580340141512098828182490832765295137758510388043702120698612492346793492500421480427101159428650684113659671579341916414426720271897843895420362345545632114238499317216097616161693108159876587715073394740520365080476852471103353683883279612210108490012157248237254866168100518208356499453443392438808753620352572140129524977419747520683450889212952772242551169288851156726146047750644428273333068711975068281101888755063477392136422541089176197833322458170666781712361257242529943652236812143888120598157860217649432462302127573904315416512511664300089874168109170142350242543916128482722700199381833426592411525116313158738311133526142332159471981356150863021929729639069187610411090182106172553633738609005496770467264042231642868653122724375572802823288531023739230032327166194260319658764050569089170282112632073237883877321560693743732137047102659104618783632088210054513990545425574567296191164958055124008004504029542301864364014731451146962066201310003907531441613720271995840992494619371327037326264487737887381823021120085029328841604952025660988660059883844111897249583069137532684673143500723177646514312013851540461957386250582387883061260951370221887532473241064546837165431776150171405186513506760685212030578522551374312119539512441243491645594285023921775444297410595031062048614778543218378781203574538300907125736276310852354879718192118580236141203836823719932255966253378704051000954232594705190377167506104105894228117039371366563822267923319700044714407951191301910355322163987930653485889400953029113434127057030292947743627179743507959241134160163284353483441872738221428141342046971205854797461046648754465951434905115310910245136099555596681816883055460589226942810460997569704442807017354226378036300005886911137852537294089793700869156077607530289401455687115052848603806135642305425468605547735654155222740861636282104282421370825424011352183528287343128158153098742733535486983342125602584557909518040375350537601536320146452087001526856642830213245330845272427994327435813958380516226532718557601213808580416009424427383221029112008503620939519789122113124624503752566123027384695953459367515704920939478183096129492703677138164846206285657743255720045244403756105100127762923234267312634899474310993832259011108247719616744537115235854154111605189950534556604637138100036605635902630646817621526240587034329967777140161972970351450580227141436285741838053042629202747739572860173041831442414123146442840483760545002141916698399374065829597672558609237042160823731033103808519591124922223252124405623083899412116144791849913351970153905811026496784214378781345690312715918591685497249513173812479400250527569657660237541681467045179708486131132962915036484483879671607625074609625202242413730472022850557197454750303576257849712953356854857126593594482255007763898119364267879616185801031103187559131331081048721320343752878203700263984030551840028247276890084166883841079355628573213340344613551027212248234399415716292964439630272114646800723152123378612366151103463407633147159465015559842012940443117232784594547214935444413784853079752488298433078501795508491832233111703566708212457052203646702158217538673228505622098642833025291116381621692250427987089179844964772277801509019483937816592327858724147671077216196022164087160417894033092187587743068665657276887510860086986156867003626749823144883933836372034939825044002538162904415963600755218723017124569182216411559910492712396124620898341655544453235149843853731327539930997033560611382113287884182614232436329121964325101564935902259350087311642172796441607725553767005580053535127308052668548723382992105523522256228313522496012354341207171490708858916726079686323443303232773960693474765162431623010912132004387153910708111342252341653231431143004285730157446921536402135172484083095775892063349728685323327077979844108143142155270593157928040600671350514502296843668926444901086224316490114288430100361074838419993871135327435488534556790584351711798477966233356153318665684466142017373530241953524453570241111749675703118590549904649665133751480317834093634231794129307773023952350055822289552284304795521361740272089455304461687330430812098213381013180021671532179904634371182720607414629731067673902870124411399131446316590704125053174971223138387065586395359733342540930663765477516849476227017607042062786179230137980826737030434620248120442220605348534099126579737104711741043098815406656946629753048343012098810569233929696490144654486057936760957201891569008229232324950699343463421117242437211173815880240400118134943144046904332903848283850856728411407394241238297882118743629973655778824554849561792650777935406467682162427261543165508288947664522761420737572074965745603026108629571425184396097439323241042687078260624916061389856438035200484332654441601022382053331235021702574736607006921663656782143185064521051844620566701533372013110316682569166968321541008697557981733580710927996097854440510193607604805697170471788063103264834006320401556250124103605317085663368972111739550679323128830574467720237703137346102051124597033703709722591089284404011084687378831725430795857433691653099184824647283433402571792195889002170104269156818607519521338443941869605703316558631926724817709900698807051746005578735777277164861674879433818230570155616795417707456590288664520024492048567020116625599744176130637243483776253633155529305134334889253697275404228104891442330263507782011757575412722831305668217762126634180647227681748403612972390555107257424364056045655870589073418504680941241543505117503576543120996126071657253402228042082251015937118227424690242758701290324830275004239745120204107980883962191192554665141642360896953391582123521213475387877684178423433563863807235266743473084509189476927519782853343626204662676966217822512897619825845694965893246723977122028637662365753243317341240222920472453163925847814475697212390579412334443344008557115392398513218939804647315408251648171740144149792823954382295728817929502353631382689062051751609598104048200468192337150982492724201877011751212569199341205304737254424611847553324619212776735563116236962235474246574889410069422686847963727609311522084839591237863228450332435488364091701646879287076011333268631427808137439640303767042303940248393862453814289232588081193358367681287110176518418619210686220056532472009430830456493501093936996537553426421011943237580110669508068270682112527413644556271027405750053848212889526434176400620009854737456960846226332455750330769622418112223500208649776681332170267587171544228006534838281711713502574245317027681644095373583292271296096626209361385808396001972371747350935251594759435871390957534891265142613699677127151611045462992213462298734928004067582282483211663307963353421090234702174369106914001744322634343366810305852632600324615204486239315251465892247444950531524193030391611612205545263611843464729674079011491426793916954674415291575033664532765597379901418387355403824529680917392341421196724104904537111156593486301508237388489210885193062311246113054763404147223915817813361570296456009581898523757642255336495654150719546301265123449572191207750451055430127054934153227165890777968546809357821310103201874412660913739711086470222546600844078089543945664555158371910968621464831324221028070961892298999016698030461621528354300442235387830610587458746220286042045526321515812385623570662421047863481710609251971482181764215857240523720579233943843217678383911925641056121443935245113459474713793411424567663946431578171641544317012112204064827871197583943275721489056932118198389325625563880457305478714874844087756260953036951400162035371092484524108999545305662171408698625921764991416899736009336386433225355442018956664551371860119180381465851416050204875908444415584848162340925340715915320419018302602755414258304736142228981346915288504218311725023030499048549623906556033242187287825691258006833275505367225549971766778834678895113708159904816247646720364157270665171945679508934921234137139758213005030222281921415388931095652232211760134831710220909612479245507973025507868572077315389140547141073085517833988609208194746377768700488972332401316906504798048096993292713962418439416211586040483141770732323435970514161063966453620645893056568085343173337460302188435139404303402629571106715275105612411051239886075373686663785468877411826761741155930808708500013809511260919485518545612094930185405418400175418551295356462978055259771307323001482098619344416167482461150442111022369258249483762793487051504329754498543229208783899456072925321429313254965760222893310560953405048628191925050722333004914131336319942582085409045200116680216933769042312125226922301703522656711334268181895431601822101433862572521547112362407103244699200624067602723618630036680869909912087399357260923452878543496445860910200372504568518133664559324370011667002956926227283475217038410315477345940217642340906925018113057938055671686296179616138443530625716458211126033906491510536444783240711423729684261671548510407333262604464633835132870355703790242462729875672948103073572215757282485705222678973613796346646557715722065287698961814549439575007965725094136586850243994897406926765094176131471714462810203881234335103827335290696951605833535362835412856719126031144282992110339998093337087848820676388535602811307512686981891148114248866442790627323257678081226613786161534242949623050223025831124583257986962485761943159876144967065083317869136408628742831704338783125617634360029014120172235370058327527417211237046807108695514450646451534942696306129839019004552469827825277454536120010309394076723234492296787667248332437574652526420416862963983661338302017018365062784249243705659863516183220616884845246661507326123429738103910102432452815392479060160349837570952847515527935157047215789942807510075210403293232717482835347895980937344954753136897838366773062221343683976204380489976616326503377380841421151781211186945924473111711401139819274816352974480713115454623871613216072546662014701351947792684417306317624295815445134835705333941428358428911294700527059215711067411461124114690353812899475164512325161324621573548301196079138264689742856375890270090557802095890967913493659641552164198292602678471186880683579734603138896972544755873434995722532635468681093049035876423614869631306745534343618331603701373562952024638711461082209532022229768576796611846690550996522485327018917912931222203037506079014471140234990387833568535271669797098909020520837779254093237217432505083172882697538711412225350921514267353137715183534206555632436117160060033027093049562412001551323028805739495588455341770785832526982023640372619494263900617979518026975726324978370463454983116731413921951907150033458201816774205035623991457015376340057611744656329493097138324049258087601602968560039230042015295144991468412885521234151258189808353720497966503826248774264961719573151135405041634861673014535662342671844706191361320493341541088063705342767363440630576447197241680779238040931367599925315668050206158825755216404215118303080426430995308171641114647776526277327550664795843279772756281675079196551055155531129978451676118549465425815560200510101418217473760628183137142718089391395008641154075151009549565967977199334977335563069024745296221460494111877655343351812877232351643442372186822963432558305571673899235841510532312846517127372863887083236103359434111380022166503696523849532875353860226119172747152333316752019977165932848172126335625399544709192225376922395234818979807196077045160767520408223069030725511233905872116420757283080349279321398899447212668160293881243421706412179115862100619535383076265746750933476630506869354564357901084208652039261867344704054072010741415224514733681478502248754825715744005232931658479794122602353664962721264144840680952560762737410442762662296065777975473360372485279952077519017524424446958872401149089556701753733905433365933176855083255196225795927832503637102107972764646265021101125536226054863367738431824951910053924923242232418341921442861246120016596519248579223705738861292081517085803920103572687292378728347835659483793705141747115375209901502037044101404341520472911980822135071511610675514036716113647270186446857550402306610088009390452110675217580061751075134600144322174183232237332440081983380351308508316397527192533064033896313730405368071231703387787681226121619463455120560288421386716804872704433564141290567078534362064001232885094964242501394669855122242615595149230835354206825005006473300020304121385521689235360750885083740235605192511362530745437875643791748172416420919901345414580316173257742522357118365781149580620219312156788434931833332038473889217036360507260579774860373231193263745154041564501341557472760138091030101306418156320114022584267263791437273046823036169612603577254667057941069284551321817494380534862102737197603583964449164875059976313291555752871084560370969422134166415593217612114958435334803819897261222800347996045011565706684903331625745137453718074991001340553260669790026620825903461741365941893585301597333148879961078640212301844509525541053411708727532207447408350312321841953923424532198315269389436972100455111693882802660951824973704175158725222897475232733288885574693246043503210691070162362822265117447716119750274104102609546764899816606280298194196713670786713686413492681984203711276879598125802201927315837284682353382006133841241095813153536524573767843151334202814148767938231146991561075770233045530232153076400839551324510128956142155407774097670832482451495914447676617346174397335639094390150549683904717098656768847133157010972422046182684686911425041324942440633890206440222319234863675733335071003166259321370269736814761384261362138515428405905341985900325737427491074291106117392196450502921217326557171154601523307478044803286674228316253154760445493212947737841464550347014630473148859057013613263432272150361611207880622951013414191017528464408047809704233421177454837685055055376931880727468445326109084148032962916908429260624988078961984261976035864370327845615507190610650916631614171073836498606133722228214833161795338455790730095059593957553419402726946929119717607470169334321784015283815266394046133495256572906493147536256938063926163187952625228401990529203353997780486539795417574416901460318122139833553163591713415467550743047526337961172410644334035545282112258609950716356040802365896055686774075227622296135718002312109481103818357218367266622418885551991920745605882242733015624381743781024975406142540748593181418538032194517439124050739471242848925805598815854132111259713778305977124756037091199130421594204337912551617616487493260539872131611431676990270424580527432242202532526376204549175130520171383983323147534517913297513070760422339044723327743950527428114739111531250663429937808725372626961047618546422483254891787876447372615495621168993333067214891144978638371592976752404505824011444431397992118286683156917312455663102988242111362375769535508121016636099119380480712825407416058006429185356366366479824202843293044372056897213275753834403468042074001412032909360313570084223647402180323732836973174675675615584838243412431101099390135400124349556374225380192814188808341181839303835371902926242993254324300755142850396212556395049289668518177347659422224831216192998343535054921863344420967373073334797754413432008539232192640215146557337169991993185336572641033897373934552882613921999183613086669585935861038250121752093674664614814167647462538070136848385234403169682703653884192665050521119372845030422014723250517290556260900651375085208794326129270132752121228244622380874675585145615128387866426048536227762236825489668677944172372480439397441805460404595444700035751839237657294378792563875490751823585228296214997028150254570612730272334288127201560811799574481220188018823049761454043188710188321373552931616024323447396313559168277202772004449153231362370585735190272155310925000200170225345029608619342971121270568174806845721610816911684831105782270911436100422743048883102584835776633261863954421295116505135374768556364653348604831731206369766147943850611802772031585147395452478280400862331260450517352180027154423688453529534482088043543726777935911870258526718962853009142847016979636264431636217555054896339049757759330117754974402700359724078904952609977522452487001971585614457412218651613772430360403840721246461191551164254746988028332088253517187631020905118953505582479230232582621969007236240830683975907443963162381455939665743699274864743757010246820733149356032444661273359585033499486532239891898928521870847004164743707284045325881745662349381653824013572016518234481092816118397566261687405523303332489065591626643653838944789673200336593085131277416809499476780488044691331541129431479213106415194629160332313522036681341296055068150350801673452514373233637183226970738671651122110222111547231259710329090923665116842334938315934107449181629788224666202695648101366435106724088749644581050407222056476015746190535613355833646850614341856705151814646160251659745835558478496118500487742331104298670821864172910475818524411243265778045101030599989898004175073337633298280621249349393473977307283581148445866315117553963626032632721868691851131760816631212786514867115073770626761614216752202124700382251569287580615186050625590281551562091543540586109331080235526802354764814611173548556120153323531235901321591042791380478085338753168480733387360537762419104555102018099668722085706711101916875232695905259858596246587436492080330781844601363029474713751728884221297393806599696767229280422118420242222640136412016473227512812394055089468403923531621427346790242053613089953641182162045748792595293543947392864836836418406658443099041809183342044195985737543922187761109301417383495523997204635510000556841342749701525014217098618969319609726255011277763120064450438855882844217746515052147357181695883791404234911934372702191670974195237222523122330509259071013237311007428925626576892551908808429722960106282082968135312636044399737031188825908524187195582303908868424168702250501092355888700635042760401614403122458578542841994341901975854673569605412203739524650327947494086043959256376401719324323633600334546294211442092315322402856868855044012126523379288228545239099773819229656300378354943298417614809304686216035223714581750391311016549246022147903173122756633219648201313533522286884525332000013919720342362502080524226511129568378781986980500719383316690044144451360136316950602532306490123246210459165422857092202230952221860782258532572275059752867064596399820803547114743702639265159030070595861344852542171207495174470813756905368618461831441490190013603865339808840145250766594623940197581353269453425387224149491313506902349011319227178275861569330361421147101630516962872855937704227843305490651683233238288401761664244082252055423457872534531956080562471231530015728302363775702577181241039331616281543409312837741993189187985263691720549515083017715034457026005186132839678123988302742437079262137228488777461711634987083630150359439931677202670487986274725300882071334134687836112692712012469101838434187567222328101693970084543255967560532449145606547298124720313760702741670884691324072660051365876145094661708145148375342593455640008764511576291280892112113577517892128150687264059966977959270843511999098547048811802251013671037340147964743158573179132734361178555557103759575004121811421265215354251341421268430079825632400899831366016467395524774297136564737754128257132931291406528585755854664040642310034049120438433324971317499368929752207965596889141679212719175236637094427143246865775031412952721975086125288443174861003042641323440289951832420200538901266151180532282178284425286396310297153779141370035010254361071265954481896827284309809071379821903208550454623144011313954297691395464186309055319256963980616222600716689936928700504037953779627924252494881547477155222460581059827529853043140367728932283083785267101420432238166141689688741254791020541765793424323578742512533849124793521533063582304010446045140333080123199221581147279971097155274239410070478325679153873955217212348574245378634035920264512816374946836547426592030389853293448635262217541511724550845867429577844161434856106647889646211275512647351304960338459252574032723011682051808327869629280444517078575201115723008814344344765000558273323100437894679444519501713235426962823229779128441066023925364024306681139344570340272850707984762691085406472681188754579008138461607320122165932287802311527025226621812286215627062839647080833241162328461728887744472824732767481334237522533037854591710103880101142289594314301557764234405748113889252612343462084088948470970144141155251580941666043603889351640688821316761107219148451573050591412458334003881976709272415145625205800051808245869124291925156221166155752283018927774115433630529118998675556412663010923817805505287561759071002030169672051248870477128270360925310644428774580758743615721255108475835031475079212314301542410363028618720105080430873512421106787913478111108480385311368755357547730362123751430570163920556702837485224265971962375285738727162333227567188311734721744734230640270794115075320447534493802717586562631051630943594317644329419658494023063837011671882123006424122113760556412710430075201515888783297476065608682164821476595569511915262650560752227496030095304632022614550733040054911983147368181112780866071825150403180959563821761222838416876112411878017707861678930310854960703914494414542296608338957527539187953252059235442352565034096013624130457237419924533225671094136726813583225532510921041055027343544063282225163136823288652896171724631020948358724061115210475940529884110551093444230343622911642059024921279163099340618491829889029286017702887297996570396249091892420331974462256341309895164059384592296980952603630379972841776895052954020289417457841242644676823195311635111160415381157925218512470254222418458620332036928795653062258210316553463323593395821078114786378110582413996141714423433373847426650940314135701436932382465298624676142013383887385093278381453326333531267396993461915413205186963281912670981865277178420760242939000167030244130979752191390027022905979995239532311506723075272318703186551767809336941620025457793509314676706382581052201503201335536643741007026785416567601443427166054331931905365094354468867016443694284797985424604992655865470389169682450501317883184147951541000993931437275135765110000788056306573704660490645626221004361900103740168890281576315514832425066078161195403002988946920935226304531731404806296288783897262484444892999717206132157046915119944182817614501111301657198631379574869208766223545484135491151430336089760209033942829305338584982833988911988166846244655218215692215051562317370845148707055920940681391539694161017475240389497921652119725398690670146526387852143086947910113264541448356553001371858053353118020665131690841275276969246047824765325025503723529356566144550625805415955165028646030941036953642722261394152816013630726727408125238472179968150146763188718232902771036153614013049848975027945185932095902135705030412502904707845499553125596694925934374407018304236220853171744057791300002322230038983196836236310418998194495026858512088518066912410872445425636136737238238488041945130726344989808701425905486258470991596251733301215531592512325735810478932189454062292902562125091304161499894038846564043245567500334703403648348173347665199148421102312284515320025645234902213001140834127606781127492480076561454303101035325912263397362046243628734850304670184194197442160822423971430346186368809389320331471542897274653105908534833559173820400427719337255018515073333490310640840821973556242063778226648873468130009212585246662143430610301140863296511640635705209279491615680325111547407778322371200409000144122068886222924965850361270217061241346105510169726293943506210328734826495937081305029374569335953511129295853932460841605612763661228695904280033913551620258301644134462240065616236604096741235163925043092515470980626499408595168452441970269345676901184322525126341692304505191329099751634364735845610473899218511192089322069343135200737054370647726003215511929364390563684729493390627315922365344191632115398622057485942813815267794751015496255682878940323035160341011714669542874701664881802111330361900554645627985802101586827100524424548238607911256180345751471118642012120570181280812338469378751125209158406646227212058441450662612358367852528961344821722343566498217720230272582538817531561166529355962196070136707582726247264779924958099913769872594929447896205701123047021032986972632919772224442587413145064556310493784454631294244033407618317583963783633189366519483045870005356062139372350050362261632660593124277232443131019507106694113779125976598312761082913155854862411167510591891743827618640306848463180044062263241810703346579247672790342029211957550775910998332290581554963774226059236034486049789004891391260709248883290835885154525804412106803491128926045608310201129545440375310858612760870273345487135048828823811258960055086729913325017474144354890127532410927302958391249277393579504886667315911224852841992850081429900837204690353385080556625175472557714954318682543388360393761544197309440237016331614638740823515916458141018351501741634131494340541932133420370220828443767814594765550237375071651221536033131332345305303421792424974210429691767542558525165530924066428667692122747175122048809329707710453292465433610222109316526830941295247428928260182840883228223919063508316307866641019300170401367727793576229693436340643443558521927311923028375718062745489118640317173699387171876111515683907443340024360921126741434544664545257600243100184723590200326050204671521072344286820126366301385821624512337941423755868351121898537826166356792541233464843822401033370732232237152828288790374983617520000744735743259323344719769124654749303386041232440066655511240563410082126526102721464171964568219505482339217040327491260189324868752641313994491758370182203909866407557113086698329280923362319258305992253421066835195212982262871118660810285505098694448327705915162122613113033245465126122609136137496966914090445171214985344337550411280421654701461936608536506446829346090492847378572266037650407325417060452199451563254816216617480759153993502810235067025746347815480093971980096238829251928530400775331121645617343484107163105100076681444492014972169577364088233623352454842919579565291551650174143743901153840641421327268371553433444272095323054378045221285470868108271310203980561613316196669087736756728898387066501369861330321819254888333024634215254863185374068971027391810722632461256678762822813409828932150126363175375755404610016851985110768564142638530513675244223303173370749941443512021858352434328826225981443503266812634022142906061695618658995080399754435149156432751591224441184352921035582205361436575137304461860646883093203582105722398442271703134142390416604539415810633143033051726124065149498812732293263020079805791243360728139151554541086829428272771123400062577848637907492628467363179407955316903359412323531321590027655524689518752940063289320426736951539821696732340387047705929005371443473673993572874913624411034413215553670547488462832030153441682728179497795275963469002861043565295021541511268713607345560347742431045484265281920987417365160881743251534353318507450239313925434038948972733329631944675526016537814363374282414402082609117329391571775544590237407743816081454032606671224688021200721223092883304462564780820302816876825243177827328533180770417272573518232649136433613028281272261270404348196855957150349530618995508112230061443519171118794164775858612563125033290629596412225967379332116356636329932649843232936088469063822920944848404512155913553602799449438926023620941777306804511313339151128345776370106516262860860063361179178849753052521349455325081460934438137160771209302160629389494808902420811767232528677588274272508774374002956797272188563528917798964692280268509784602700307230187779622737207527278889287743239251637590752971369447129321716615881640488325736517463180792502982415000631204513382052768251838862451952505457896563501915241138264047914348854828592042944705780117552875444605512700984054307475446691316316774968102659509063752301737657522861772511254433326115552173774137277429634012545913646550226366737723021918228802452189263482266024760234165912624608759034537621405240770256774469935105317024358513011180440263911621397032326318227900175073502564398828420341830926828390437492231701757078561838201562540564185231616227180301485902508765228751665357364021735066512064664084412745257267855918139486325492817275525918014702183140039870356246372752099947423230558587662849646132683377925514733537091729678165383603812893038371431930091516576602207421310372758264208745041051091646926711195111661066658427037420807062083437158012099442271296450007153794631191882505075995092091970826781005716871061869682431814426181068010868202063927049034432668517916566073858492381752167446972917264268498204711416789664902983384100233911961575249744291625331812758547224330680415792133642682420315219542407032678380699610709644232001349313069876319364956932105303985864106856768499362658294108004266602730647207003102220586191385618081260432463692261188241803135772049415971000273567919564356915910672608091830227952520962605153889181524543381295212630005178342659459219918269645672490865750818681849331029145993692439030310031107441370431255029829114121227500969381102214142258909309641703084361386912623798903989111174714316343504429118641711012299683410972214518686122401743270211003709495506013301945121654564273284128019523571243811648374152771617384221387143454262820814943563528232000943961202948433451515716622252679282222617414953090324111792832101215724801956081722682428813566876517293109726204679046137552509144856818278140012121489143188915182840757378993991578875502483123504879138879072635450535303233361482940696512213087670809419576685783374742910061878730530480217312614814303266632787637254842705474310921736884061754943414877204376563009146511304270617877855293432045483194826811540971304181620935275651510421111897826064091659228060296465013243421339717631442445068409302274048995154704768733627034212453469855187139964565458628412906777359361453572068444030766218750860827020289240209644193264542137978981294015979114619337030125048072815901307001964396165331903479755602156288183402576904865102013338730126636802258591899510354701250651468587282449225822668104655879398271614001522686150994167164705533616065242377951316229981029152108193031716939467227625189703873533625850269219881434092542242196774189584628972238130105765571096153793004603043218219212861537001117271233428103157785632933398086501108081257991168497926958349145271111995076759916413943859401350037395358920516100831284688175029670901170350585549371603759342357581674224168990789261471615870995895221297013722034150648800554375994018401197637160021722509491224552661576155036955166701654591824254315140372903664541306942882106130867315964469227550823571847040233237914982010798024313823984347920290062329558206130941124155157190281597590216298521140966051799512383817430454597277545915432476132399516648769040243901264087488830612241745052725257137029017628872578351074704360637940317248901137774458056435133205134056963505814598206559320673732939153328294477005720156729118151322161391993820034151481644974352207214874771193571288340921123409054925652626358213654201875968601499662406837355135427130442672593681367984032967360375442643499640370516067554719022269093222662661792629405783696300331564385166263911521365966913285535696111037471423472823733837961329666738495583431761733534250892516403503410765888310831961126141173194535265057943071491802403620164319078024714648701244836424785322481253182638020838151540720941706585495338310834333297318784262607079721021971380193415761722367353563485461069506352217180629979285947769054130993887501902213515668562540169644648230676651545342604674256497836495159617028645153484255430933846461487676482838500444218520312176879012761693873964241730112860113452352704281430371622906452015464024511262818592428170763659843360802867770411450520681333473221664815327110114815103825455015143183496786360956040044122632367148852075536559002535290015137359411434141743481908116673535242503546752052886314181467706463432835638300712371854063822921072339378235991098000923349084010010384744824319515025491947436976247147115538428242111256596182763465461309027697406823856489157808082535238379259302162532641186544572427665335852001919537532080305651378073237034588110582872848252601930435620036177628188249210751730451025510121235307850186528622753064331286497527747917159281310000872765504204903643649196015150330297291135382226841092467316870266904722545690203167257045088389305210988174740042774667697290686337138550417318251215142905117753153378219166267474155921390124579237320520636749557123043703106346184581150335320312737231801508657170422252197863299772440994800675542105216651402404167062524165493737308983621411866737832631513304061595043181126291163690280348232442346458387980086531655918900374389851402691340672482184446228419492478681250166113570124909569910520622279580114202703207660216215353605335193766429850782111368727915524500029113744566393252643076244554345802426007847381102020541865110167206571138050185213146658477103069814813182496192337367275075734601350119458277534319726654764017917625021761902619652068543350351213520511420449401003431146978637109320714323617265165764171493729824067706137436546223839246755726276122032043081033345527889403313873712133936022665386297910520560102062232104040090161347857682313799285824627675392566132722385155195475396774717377734414154562050722690560338332618349389034630550214006492294071094520475908103136629168480970625435440520910030403041966384226982541153552650193554578677726429792280700351785369785062352332550100243658973056244036248689013639716214095332382992424418063063132018388254863325122630963770765601292892537011904693210729635282574404746203056340140056268574114300105326388426660161018722209374521602002063542299157764067989492257521830731385878054930626857052297560423077108563407825613782504361514146115300600179608878130536078712551375773580568716787171011444274039922710642427853076590189508530685225273495465653713123587458572295629162701570565302427126708591692136595874636278630554937091413476977547000180392913144507360834370606208124788348620756166096905014700871614349772663440100310737003613647279966187012445594391661319549501084555147233258273162436872143455913022749752552704694876012670654825385241561629318267599010565600571634816953023305133455514577466461343319891985959553115094990361890509235678936953302446151658350676592132383771217207721423022742263927684976623415195911271703674212500629631108888552743223287134834451842982186771109873242522611133308015222366564421934106369903447340413210986797152252950320634457185992840225606554390129502000199754040184267585337623095454842031993429782386280096970334081792457160247514529141384098772029011628193145377577823565928661062212671508353096034574073637255065442023522713262614200049612568876920375119641210846832884353114776123352653014190499582448755824115065692598849136301274149524754109822303845994257279329230452407544640143367812671662377923896190118184481615321135033234273205871163051559060565971329233537323743495133033866112421456117390990894392208903747170841477745253917031241300843495328322475297161394133001603176047879930521655423354399302054050585381858924000210483207690983842861674143807393493848463886258785802709405198148147611837266316897095029225517053048032221762052355957072488457181662313471615729110973531720698549541040033821515813971105666058420552892413123639822574241885623452102693613357701045403893275388814554003597518483572447915130197292740247239901479270629690832831150467809224554112151493777284747714862577710657741429131770126560165081227450412618219456915931008683308510812721450471333875250229788673518096523689643267240320858709732762576710619343287162711436127185125107702126294051910462384852686712212766619890241760207930491467246568070001716631937445627517381897278816273093239907256768335867321035355202296943602231776374840508405151303034746799623856638624663304682623683143366599164113833860648044261382706190402209561888917344021810318048391515428232479100500671116793136322344130836185471827142067662656757001049643696822694431042308960131241809592327527566142455180154045391469013085962920373713273970961430400481207066568331771573071917205717721724964803398792724642408174124492323472327873576055024214408244516434002425109377693559475510137480365009755092383850906374054617231266899405863923562338278921724718955782467369633359837923244101647949908737166231942018267181503616227056649681226206779138267898832232551157580632215978316571723219963383412324937554433087538734332282223064016916964888773286798856103714376011570276228050233737083962493126254146062455411295722341077363562138925761261718417294179082636404508152954810463302440049853024616664553389210032350084480818199899763174350765563964540225392750422143456399892479476820255807154598764246649205314107002407947460755434491813096267794849547912145449704482825543221581042258133988242606188258949902651581336252708150601278796270476022244362489511815103697575642793155156910313626780292352469173564750785081924276268815527123897541455393194998131470883363421687253525622599430332458541825856853106014286097217850114272794471478772273902048556818306795268172248979122152409513285193066640196330508613281137185315680472482032245964077877212271327562129632646882635760632227421555244352772826936705855417949157867009046706020421093867001128920099575282368183370155590722530516030428424595100969456409147365509613794626697370976782729044053553028140879987408500353679823244759398239911421307153927087070494558173653781388113622179091264850716025861222292166523012533345112851969763152782515929842559834867291487424974040225064766276003281206125978634303043818450276301094368283962403310682032025193310781263631928412453076267332555391141776575226809025053092225484182060852023854205323091845434700241103633703723013088074337902647571258042121522705582544435480715341165541740643451794124372226224884639117543070659333865590125822004563544430831239124217487506053275707129593759504505908598349510417273415052716848581238197024140613339267451346123592600286104767853292571237614612531683251642809031551216093190131866342308637330030434002794701397028895328889726422145991311917217680542133079872441807982242171148173068362161355025799263575125621211990892741539726302866063131297276287811034817975037101302116152647064221097816010850658618777569220475556402529479561036038409497037338328221467617114016422400162848326318871040584043268543149251828213606092629298723655198662792396172941764721333033260244348603631749415648314332088643651247137464103694085225771429236157238211324169867658863736850291996164336412853867182071494236371182744282817516390736445369834539576295110812185241267891890923454658892929344151205744035621057581442208713426606090510811236664672119813318129765376282242698337175821853027467431844512086154461285349344646892644521849812113854613533860259028033751344567360031638062372469916745979833670436251302190638391129630154726487618716754649026588013694538510574740704845351911955231118697671653752455880924898861318092308613584619646279814645125996186633496502721216438611132570350982499896654228504126368281339447151566005549824013111251191871714970063873419865151865265319319358612216442555214890340102064796167216893387452921867426274921547146276369539032283150238680192040308324405745905426916378514445127084175566883870632604454508743225239211874300152011613430575261331704552228766132650160243159674950563946331542287853515609768570309495331078696413042789964821120642084353247275287082177419244468405561881826330513993104430029481281229536616945466113787401004258469051497974851440754642501139745142113519262072984217403444570746567798754736139341205944849297359951641340507350852136651939455208891063626356647447481197447879882730135284034775321237168091318094524309625417505865671119895707351791752400042234426121421404339315216823178701221530067827955979893336880070153344175427653540722032911985371064045482606716867393793401074857151280996281288237663147756078920683291528695337360174132222822192150931785119238423722640073870603035070766541792559317496279896951827524994017221644553483154722291219839251805065326321853872297230744181503013804311270609624654588516308758322445207045992054457717161627732581837591650720215710829111984414673683478635680231814989178554451050539241856584512103396721234067273867130909397203462884928254017411644463630230497546203405415039473632234287466715469692957032419694703360180906550268811002928014660223515804066200550725162311138697472906807610346127870996048037428430757209185045612950703242361672526194852579851663488181941915480314083493074313035250281643532500108578570641887373135812543077691815338609418771688363842375048261921954101059503535368184920413841051026860247786182494999808628619254246275440305375651339546451234100339570761831171224348316458113162000184023233017611211798714346635714354394194314697855506518666617584110319681343576898091257614494541513347842486782108986887652760236989017934039735974872137800930167011455701658299092132575949714944065381339754147195094119683745393777066040959141078154642159791724348255483835035325369346303152321542383512841772099835503473952926636886345619144320446506917001990359033003842139902419213389314284802839327367284943191754161855750877430244293136405665694341258230924052042012945501234889182261856843650702932943060545170472365012363245300793516244354800017011279543493134282664718580832406334675135400110935274365691282471357622262418190881750454401492827222388410018295418321370290253025936324904424922333479188085133164034903517069575471162232964096206412152221169605664802381761710562386320616320191943620523060055851117141642408531131014329022411541404712426182524276397801614835592171013051753716914679400412026653905268885020344389530017852175648317269344177527512170634701161925587894851654659190566178034037871135636077895601861865171364567391097796605461751567391618307919910128498348049600956267210446049234320099728421895756510270532331778649134457043916972036147329380689606057251033637000592013486079344720710054620526705685503524729339165112459284652360102635019499432532814397196264805555670916740533721004613702120922438071545342502423452503960066949654696946473406273571377320146131500991992887763218665677431326734507228059857644778053732287567313095717121189973300129704315274586287215504770321222464517562094225643150174811412648814767449313114013204993349410691117727378308114933454411232140860191964344855071881523757877909049385868582474840137191162639594341439886519307470567848717086404489288426146544334956651374101758405341962685058838484610690454706234049072139075982033852032095631589280392764404618953083878815032476105877758397707556743381082166131068179919434413420176657743079627452857451721236472232763679650801126543640333744147835138933203282140791533695756830081000333484171433981521821426968018516094746917557881074366442429135489223590056014326987390773182801556200530302879547417831621993633547052905304426220933694845031732361542007191647537043811121022603141832122478732255151993675636102685609423275231336109227254784326556055811274270643599307804012293115550807663700286676178495532053770866696727204305431574884515303049419631353033160320458094671010590552717427447715088237562300286465380112231999744710035140180433496793497821696103031564101609926465389345400711671679374843430570243546293674621817546006765352384830117538135042769291127765075072403621283134980291527627338180692684035885766919287120428526132402353053847162290554013585313860503577585941334443734359718343770370675715353047518678644182925518404423740089364050274333787768733762926424445669136284979691235323058462457191428983465009946193627332646322689140613293550127397802485277756783991709669912392398029631849090733161312263137787261632738331594294959938226981544608258139287055691663349828526241250661256789927593130815205498931154763764845407876471115464292923464026670432785015394354016075299645235121718645718657823639718994076125184446035443600039142171422957213613365541471187687433384437722164305289131852182803642721214319724318288851198801007632545636150004853723646849078459922210439437435585914480800649672040184050090450267981958614220573757885154171253550910418168260506164347489680702845532206537028625122582408996146670981541743311040836845734676148925595977124433023124144590727427667119798276373861656623236335527316001465792044995887451043153321121014877432790243940862107167898768488866835048510394661106092214200184149627063531458611440437305543215504754138863161298846931311046931725032600106086131182917842284555078636222079416528027811617504509742038480280778539804704823001358110187801105531911125230859802059726425919006693212334846375736270018955977484410033751788745055231511558732445817204536821523269181220375252583158964454870376764118412646171259553951523466662290020222244126798304018513207131932011125587062491102136306178022520039815355762062594600488059653992582082950017164505641372305620257422031292295162676509666196724321222893520219987741054446011413984382729233417266826128312709038352475944884342782548726822212605378314010339726848673627568037051410578125591455477614658715552753062499649233272691815547858494195373057411654064774244183228723298242904454919711668291444787750249532055769211688660591415314361158335196102860054417133822291904961432868554982106158667766800147036423227553651619599000826307565589229896022436410833585191517335293982462225225713278717113114226756389315217494541196705117715208555436324794821207156918178113561762911290830019560573600360174434519979039220546565772060769740413775236197353051691074561127817662311910007073873282064068124647211073894218834634265495397949790819361261455213352276493637996404667836213785139117242201411673080089366724154812024585832938805372254525345832727651038863351418193189380507232571775327552110535857783605056517492648090038868760875650316551144130773493630087183906175234401870730589425963156128831770635773001132646971829706069819187208812273351498439343528341123063735122824069886809077140310764850276337092635460939332398826024201772855550615193772314460222194238118015706348760253832552045206893854427711863061726341214468446195158243215463688633250818722328006071161231874217720813121331525355367864969624702952608488552429005843105860777614636374203639197949732363614434924606333074096342718324603459142918337219926542442441426268843477656731627755257864396055380122383231986069014683793807686375214900829554031440195452943810595725519460836466181884431656736447163305072911271735245643400025749086546147393528338353377192632385193244173549051009291282553794461721210529640905054675364039588443528415558097919374529665051114550250413050507667246891713748539144345725766838521409256752121791309702059166173744972971084658000883028660525298753244218907095349394829559900824061623915333659734311140831854111926014196747583445582432314396134925314230450325536861275700965821682937761108929352631473057140516093014984465765784522328834964863182120753092139076301682006222174213033992990022211849458863874426245127816209938402049718547025124217133395471490781584279273183085278912594086121733684048596521245121208733818143832342468901038273698426627501027881962374495063602135047185566737024017038205069924569426616580532120800714495026100637113761244399623842655218550525909190688341611767686056282129566897094157524635077570214860301851898673280797601615299861646242502160400143955364629398895874244926232701269421675542828149690971907607786938203203507994862377866357834854419904890632381778005026672380106837155414955151871053607175608264140139588253941384466272438054504152182300047667382254500838168270020399345824862578456862697345234324578127144267385541616503244835435944681857699415120031753637244342929421345576870098846850324045339036516011219448135329833289307830212277816057653987736658789983123152736825737875243064987104977240760853026079642648702046432335380988323788158254986744541986478802019703068977721340905027696728636892405842133501928832091307141420116133962203747523258084033151192568113611370428128342377124328916307549476239989646511826164283916771518055334274814255250521522325183315624182583885536036311505210744458776043727026111677170213243500008171484364470103867506735187482625126236415511339661129957395267227003719462778157249401128516471271772234043849420232400320159750496437425232944745512729396374313206572753746793980157403106454521537706080242066527898526520721153752615195304198941157245776560511562301954032594822326637293173989005443753168012043847972570847225056461058217151464323979983692640275435448507915314020732484321535114881129268823523715345147334043001063149645591114535305312316302431729260751513450140081863345053921926212303239357904373751872784392647653338428824857314866698252101106128426901176599413184264377137290472467099805444213465244352387771172973620149135765986124757105104596899124055137926038713714073419132486612863651375756152678203260699233034261121730159230816485399416001831471489402443884504406464318112956722193631618208614658855636242319655066416472319315470534782182301475806544761263448822015985440409547281826710664610708435132202171335172393645763798309476812223322335913857035436412025720090325506929419400228558396930722206396587841860926279220289313017471166842447153269156872920924463098991577604845122029404503272935037289540094141271359260050390070058030138790323500971610384575130758720748527173034363351674057255368422283947618312097291028339771143953071412654095733105716337306508241122361304072510185925028097409600505399535087627130865964119043923710151532026953710266604158818122035403174940803441480110334695668164721655162116787921006359351680598426753616054031092789259070556713648610511737281964006286886835701661094044304823773491061542609180034309487476223079143453633310171592112329465700007847879724124242455326332956746257518684424897680056855570021606178285184632684733279440027318364505782877002285495087885082435059545632541817181643031826316386271570462220806468272140234651733461202063046685332023573398953366402185869338214526276875665553822720626540356886379804118302896036910526276172822340807412074233481606328121603036728533290544092200955633261433541644620750814959854718706633677544408267622839953151447502626092814401009080052924632443347316568233165373748866448047832730908832949658757792662302781441239097910873509571059475035606138614645225528148752622159710419749803718802793575138307657152001826201110300417471134829199124444300746217700180379924800380180160438403306813960263916278932344505423252620394111627518989224677582363050032750745445704525971724351443151681320207519926315576710483441265962658838108124470453708982319910732524801464645283011763660879824814890661345268049365272261883100635325595338847024606756627261231720888089125260842176369131765444336847175526586902993982660400212541711757667104550243071913353605280583641116688623352401104424813731373368250922746180090143791632352294574464226081667566047238136764632817005038499813817670971819051013494176823281292139437159279944186415601103080250422828513142665107274308360023520121590632431270225812113513982825658167358835375603530185686032614904015449194568328667852144665530838864350043612170927711218412051398159591804915315073803003719542976130342097983590548560827176525871311942911573419013153637935055835689914702261216522832243790553280963272690128645510892418214256240436033073167912153655641994638869042225450620429115131249869700635263042488524100607567491689276411744326208353106950920523844600506179187626411087715659417614473716110564925717931032856271057776590340165266335807530336705612011898854285463619834303755444262678463172004844501868659535508470061236193618832362561274474804380597281933561570423799284073941201290071847583144161518172719222592073199205455047728277055100415379376643912078013112637207421330812319804921653364671779622103732848551834766210486482512681807400384741085351896646816740112779618702033327180535874454274137596222191623963818211496927425647857192741165106215403363846205888813401243524272504727896767020332834339159313730900968843936222455042279571070356932693532527076899742720141809852965383732067513168660477790881805783678996999541203592275491198033790387740046511043821048964559457685397419611077254463774709287421302642785114553920327581180528510511320346563380608871708194552223652127081305632691855981150301837276711944218914543374324217471731064763243717978604370819126129464424203712968647525245417608454764065022754704823334161003355336661948520556136701738378521205935961520421391044801866098381159170164090581448141739635269327525833189140880118469274153673006175790686758824721737343760086741093135816158162051846316593792175242603170901835053822796082542336383611610554262258053702199239186470338461334222746577182776040649493893335506632612919954059188882546005133712682223683327153814695805343150149739942723656428115435606665295411238469211539188193136123381243866794554549326207631723667905856663224141907744137463657130109034811415513247824629740514556238879057706405146726808303549209519785415345373475768141629270414192566315274141021309580211578617918440578352035658034522772202706956640551321866871616253916615193184082278489371387807383933137273110955092016044074584065889191751348863345604900614107933411568420530606804185482107572090948428368391866962655286642847059188273136042404386516200600618443027064799192468452603965153384084339551457785801882413690037650174948039769237068180880500610103385052606651266147117660312267865465383709935180663661332972351959018523064277711153111104744224638076404671795107307043811035562118051325878235214643908310147448692607110226900965341710993270052211821346071640302200421078458676206454983939983755472701111044030185010908500318129464003420819563854907372456912172532511349314338182847137040278664408694187301362260922136153980689815861274022957776767384822583065477323064952709119701321447318337516476580565736644709557545675136618235482563659222563812156924146178626794436822658211404340328854558118912388510807878646180115209170636520157550223434222360587546952215999135375404547710424072523765561953464234232512803822614921110819851847251504871720753446128617989047419864159074932668281454555535522379314635208936478329701904526761120736382181394996501232610490227669083898889677971514368113765183833923326015915561657869428026371797203570418012145255448391916710290419492659676801495903308324077812211597295139727057130781510760286559062133727221337468323518870427322323076193816773137149578644014433335851094466804126672609233431921313604154991896465159942554635978238443462589881972745353506623205172495656165716697757547322521251854218220534169843451346658732444910136113476568525615158071125429414385805040541843860330784042393155743561217775549881074943664621547100908469266013142833438147895420430213542402029406106521722148414184075024751163838309394281453233265333830310484889670598770683665514732511831252040985612219866839976994126559945746039112131068135499817238313448449310416375428763048259390366305192172136057279241729772410592788529431719661500375858525051703268953167054329056460246968860029314664017927400279221279590429422267622843031001638298824816503228722217944583943133551215365201070287764048461455161144830815967607123218677808203288338861758220450237395501200921902212012674244467157877651365217587696144276480249262030980427608234210360507077947461873986724145423125944162478553681074115349987057256210874868369098585352751337671228279064908188614563461920815619970968462394564801714906006406426428414973544617220689371391527934306930649864322114790617650071388141616155155311053065436611993403002752152232596791837212444043424334885015250481952254673585103888348737654846189502432355351588807986115244116511720915549235701352717963428751256252614567559371438225011104295735686211024906193096973407181449433424416034771418157741504693037296132984824355285119863535679534967438831610168315770139610747711810534702410874829636405158875820924578697443668666800305427039825569622786347307856840310512353763588443673766790828632198258862983127689171187261735328503378980420144735934261228326948042224680677728372404330565674302346787553766379617011117908495155122594942499112518525346844809783623948523362283040947039868977665018844136524970445921651849760992557501502756267531942913135648613020123662351958332222071083025038644006269551145104002875866168609245813002624064312532592706970546215422105105333907034078091818811507820355280283814995677392421482101385431848224175095777367549849434407198136150235323074753167561482570245178692698005331037331667531229334117781856047030631592783593622905146518247865052561723424792618097260858211310264068567966051418967039989821059839336684226397004236587170675208443214953694342543091072209683952512367331898564750858240289469414392182844812706533414067187595432606382936354821716452197021333279081657970254197720746397638543223130358818785720357155702043740112515672761682044300237307604486442856456911461215162328436418711670447145082354111291543915634665072898962520506557224139729356401047757182647792255450158301119944990728334048171188097514011201126888011964869491505204345753928717287174318673151958350122343045143444265624022590956032733490195132868985539426921444030202325013599871055522742965230413965395809915532358958935473293756072580889957536632390254483399015457747610208242209793079885041342513053267593646160162872472812706066041001104012560183116811211009968197192105710126185711937102313968697134858953818710769580381720124559411773330446562338957883489737630394844304330538147311060634538273499081933517655239361592949919370279622976244560082302339709096550113042047380065037489926056139041602219160312427665413718887641786693267401236102130588101023543723430211564289990609911291245393285472814547730780037807832641174903429808706436964903012927176221944945329886860973865160552332198895913745907363418421496854561140575137066933307817104452967708243680003199800430153387156799215568187646046024079951993381517141660705439031230201328010662381624434274946274811518032132212968049172382379081155075620163054827922863229881634360488452962709663942227433613691418432799127187617766082239136392173523161334796331127031483456341463310097881083646535153819966034332850545361592498118567733733173629960217035984266468599288631235801905212026216454743834035054826725914636373484231933513238775558125273442111367643980118541452769281840953591635297896409453088803012429353395580101482922638369226102024521623851337553838141691352522577756154277878804477051578499599134041877278691413540244338159846660331830051242773372891522109428471730459287325311285035868051059724185027197752213961131783616807138873837442769307186301176822357209970216225639284238750133259807249168555084922337397672285244026347937711303120113397584697585512782342447515976676206874629215207651300886852585505555557703590573636342724297797168920754468644599356060038740782158409697839218202210733345253649690467854124531692651853722686230644553448122382202822901741177503217154211837202423263350744358821273554981252055162447772434112543625467982438565016002041063108542093487077578852609400989680860728141234621828985135301716213058110288845269935715171390866499201221334789542210730306500904724226590226860095736770262017831613362357808026031309995227546895302469321922506345585556072511713526032152568220616007203901730444251374058230575302747490591321415846090700454631560065835160252668546924366582315481402564076509425742413842283916118883024002219110496238161109470300218485491420413804298881519860312124507164785535329405336645739581718587221449195201761474967125412264245391885800705768612859442156647395589441344829930355651915142761266221883746475851543379439050025032321108769724088014368190259933336572449139013636619230386536520457592257107918523141905451689137162195175082303351811416119105131859201832074356355627979382117344323669749327428705710685182325748594919955091971723289426869084611068796748598670601804237799983569145239472047248613963580374111492615121352730614673211362091512109125156370370713526854483425252868680721972130658021746522285009826006425189509027401215752187281342962832938145593754383795077946838458117962317161379021168609325875917703540028756855404533321848026713296659058005353257586620529302511320911238327087523611575321444147882219222758923340493203007283321411669744650759745485121886350885317990762617845667124147463290181319767622279711730290240775724745274037479425122241484764364470665322634017349211682850296099419800447725352294857712150317308735048569662100331381019021540104700580541848958733285494170319633219494195050319499596201902212693392160231066761619316625087615012215490437491200592273828330345732742694839221437026972232055531895257418197092426595357761983873461189823146831401832612503054088946225184504080252700216331050491575700201771165031159416911842557220914952037692201263073172922703050757804212277110657860113706906148766153465226602932289181134301345222582621788378663211460138235313271037324408326544692154822482800323614236216496092892197193737190943514117321919176086079146542170024187265169600100299405106455374477185531329307477402633603956251748521539856277864346343887322339379589511728391624541679017402139151491167607317205384355401330159913078804371671321708252353117803115667934286551737490262751741599595620044472120497303330921329179964206624173448070819188430186603270008639914190210162088402830295778436583863787218613304026071744572334558578358602556912974610628299133085003234928654493676057438254076609210204880971081818042982391219155674544846136497537971509040564713984907595049621087059016199834978146020705156618402706978444295082813236973641759237385118628019167909420041809022461755173939242197059259559686815155534089269412528085646181644433068486234693415132238385823632727694785265503644796981406114256319733446469692444603579457249135440618049940233120605647821312452285537168416290031365505415413658191553743781843380371875129326047050046280593107259214863151770250504054114441075376371253250715232009161308318836920014860328129053579668410979850358850764035962950885305118156978919204200350315859184605875433972674272580530905172172860902130621075969250085952519634748066862276721315022503797338492620028213012138573703334662873423530236503013324647240748403787674228751182538442930404138873613641698139957656931953231412195907598593840254900198068237985567421642605327686190514634388611688728697927487692302644405359809859421709033254095253251252746431367632916397996589080895898063288472047564214647659790819298543711707268745695683120040041276299523515468515212741043935744933721901644972719247346368757711504129088813433973385450650626923441864134727624575337370760011004507494041229582626337068628858079915158617572400218650121351140433400375908141051115314768970498911502588866612722819098384542321847140225374169210264301717266407130641703140782583605942658614373459568410027043633775543143914955460226796028834837483451141443930089423369808863693911485122607205010129931684776142861923466377011108237371646857414853882796647061036855550766117609149317303549584456492256058841252743341430260512558260523271942828037907142230989945500546211210902294807307718541112559927211236738977187548410240092132433611277086786518207318073505503650858047781234887388503462437445700824213113177310533041518703564848641185358501321936989765591285234406675899598403370301590315406336329222156873750839104774022251432550713700833285395045664380237002445867099984610360956148981008617428686745501101945354551179410795235479464123822164146145155895542403229150842450385270037164710051551924102041150928519453644670918516633874265091684676535719493451810561203457673831307616381114999558269792609733470244534131562293764247781362056387335780448299333694547821864396511828551554376972898118803761475233279721311368552452249812177334952242514563002345550142816133079614625443603295423349508018262734599300367014518523727110862251389013728785763855136974418049977357512017383682623518472820369684334139425128247638202930189661018089174233612417036515020534012611304023405256271238398584449224936549963566450518755412527111452211482123341633624258175313900092631480940410519175661120421334343096120080595752801881176000525697553275840137246254041276733032320153351148529270935416314900115826297549882797670065574514150698526129040340991211833039566915896406119100418493851818686035831755987820497120600081214480537792371203051254441414533603771775508321863408994498749416721683802717851043231107423603289517715587234241707406102727777240591474159547788095743343242133062712069622734747903637150404896924216227311121249828030650219650611746066483345241011292076181922613011510317216439226913322381406597177937093421621520036165362783042576383966377239113691061973249811741524710949306759485010906811732400139094251560163561421521880222457671023409725968431815700287106730383473821572492104380755277247771390827639249361984358034220343694147806912322329982082138257176543971281112083495531905009436152148878405438404114330051181772541180510517000888759254510142482936999056705817723079485316990326417839429807502087333070191660203514386705923916119364483197807454716116566831143341149008091026897557012351446749344323833303342793139653799816641879143194116133336023033247530403632999649502633053901515483102696397563443039069181604286153223815832391093835444939369275124815541667813901431005015102186827580163840650684176732153333348740314289132491527800121431954653722531464034331576445914772788854939148235091840971284035410599853555692177447568224378131101176615563991269606126988989200456450692488673124990003584763747361090627610390136260123842519056314712506004265999258462779103949640710813777630334379040514013232011944849880529493176129194453739949783084211027568886363753571332022003878980070109121281274404885670806270573025026800407154987854884724618278358191526340006508588931452157541712999315694345981524413116225361159367500581618590694331146338113031505408455613050738814641408059054382052535073597447187661685425662802544273693762239689309805705961943155070809510711983495971627704217645786401180223018224328706984461909243066847877533359380169341919899788187056342238238845896445063531035402519534134035430010802190164760459005416027714131416436041639606238156868831209175703923087948208592855016827171145985251304341006304374511088588735161932646579128000745464228575927195526321543326525672341557128843111215610780747577303030426129776318705924391287539232090587945430221905973872295731467012068036849500503353554496047442420780882232109869173011164864532394599673002654166303445463602621862577245212100780961381705138431262367809614220539570661880733429529222305123516337830013210253139346557729812256358708591654971662648787741102753526323716850711861190523142364643052557634465513074451670247468116086081055828518093925700324796777396390219591258923159001623622983891504651101841631431228548886205278151408665285552735340572731647415566428898727933802094433533615076369581429704547422115306215887221341524085154044402843683413180002915472271561106311768119108060820576731191110727230180711632171231405152939165031977188435677781411924447463826058863772491357365284053065366570379186160454242437392653325198956141963336136401806333403548973491291610904484265532597678479402520764707407861546412578915564460868200130894941484738703816341438012163291733124423644466150260319410559004233700456297242832214421322794610966524003202101088568712584369870046345609562584295046426979905146481163577206921775812865129000014380242841207285266800435946104825001570814018491076081802403320438292132437612753027543983446853471270825154938507615396111275863615476681374903370454775630056616917858968512385390596485364263792515237705440182452351929253377680555522230267333615673587334456332385537928496797674163034542147964547471238171743270495922528873628270258574458611726345116027344811509207651974033103615786034150037340995515955147764368824175210853062885318967093525220226040893752522417242748859710462551426686730207422827838266321833224033851874895695965361573021006132267532772983156560088969272925107016028311344094571663757320392969452372370389382959962620023539631694227884007222223842614238401473595910975899631689342639338443593433019815718432301165668632584346081423138464850994663805287260156716579312233014714213611140672962700796402954059311326101018391659801373829151225468778659338424088561818398066109691164865244779080527849100950553646906510459144232451224862168084344952521650920827400308031619854860438988273869401114344887836862309722091953069553542755424619372349753176002507697706052035205035536537809524286836771439796007279408661250735721312116392072567424200749916687224052877987897314540247622415218031094202471026710618696391315162862511022126463526336693337541903922514446200079581993405380367786500796344073010747026250126650964194308841530110387152141501594437326184928930217075265647229646767483219530341719173816912413611977737697209839224433448278974603402536986900522403169268151378059502791062563186350904621380370402345642471336587630183231581095105371837611494554131680271139510726281331918270442114632406924742409649641806828820167796131252455536206704187641950841700733332045501091570170652787546845407311703321571901094923891611540247854700609567370535123777822791036832119012476548909112304333145583640942221249859350472456620992640360406425297204870102871242863611533429923178898293496629322135440188210308813127415414450630183093530814617796751071623840919429263806686740264536967146563803284958175511526994578462013599312810967227640526071229111576912601354131784760254955062824106125363434068383043429283674234771688612335150301920005615315484495377540166000746671825413143018908629640326145378373316445406600103224816754242342297940577268161329742953916157666867233112744926122584171221503124611557812886209600573294913762613252210577598230200797319243986611584426081887547422841204574949650020768338438317841755777321771520838999126972593454719203637273296425688494273493216486472532702541966025663301287310940914939058860470546260986032641136154384491912115762518735765124464002472651100406085541133647917336261961006832712348494671548222171275549353377215067955077675195362841388166464267230191879955756169236774059970729908637283573045025224091791614573200162025560008013948024533548955735336846962532495024561735391440759652801091817557663764280376196777329970734511453514596226120728745904626849506822210398151269402946402026609171320514834978843086775197826621002942421934180266310725142128053514367903821540044870090063757255956500310943036821699216674602324102768360175305309623793271335228387952633203235913157653765468661922817195600544005111418445609005118032498113221022751332948100262242350453212345840678778124523696926184053283991493188306937899516790552328429704655338171234585111227021442491221711543720394748986164252450671763086209738292209594287199028501862722309563533100501044322162163052464312807021834090201787660452478840723324190129802451168104964553025266282532666954913173132702275143644829290316642821753398216289681238516502073655708106110814851030330365831694313344948355970823027453277643236119635141851913312449317907794210336723110664322268886272067133068946468476578202301950254701611106063442931300131633235448256102807236064466099792034236564435386981361736270772673438783074455056438214079189483692972605335151735184335667273976114252457310989991448624759363020924661516858006508480376200737137490422261163373754222109847569482169326372817344224433603993536795162338835548909216521402054948538836373699312609147138919525666691204384384546353847597891692983982173228818732882691923500522052994732944271420322511792310438584263036718212205841222598792888365386476834814273696624903292930243613535118805847637375459641299126107965050866584129779192082592112734803520500513345419783167121538532610157767400568929866587033513921841315793093754235109309848444643689287913927335244054027305801832474658617918912472705739191990572004450908118360964155111251037181061234512302134224402096040187308263271322228506368451516660833488843522285848186760781818349336669713091020224300093906181139321647503413828600913781405016241715750131306109685171282422142794345216350190650991996871304434405488820189902553258235349530173251229964639236556345887535742033874629987478325281104914105210781330819532950229227920354263680290473559583832178935183654319011789497030631943343637938200375991539165122118334107237141366686336727135955375002628097642757647633268420343197379857667061530312561022177509910435033525214172060368394268595930113259836680948781344356917979610410242102601676310120622434606254915969043467310356831597015958621522597387601349640767218700408114400811467558228995371274283222563753333691497127730714158814717800532755647746772824996635028526426243761910420219632069946657001278024207641998892168263139350373631314321644030908025268261501996213763911993242020310039451662901036425917705319221716914747317679183565441235195734340375165499134553964657539152151927318041358127346124200979659664019033756801718610345044836370868459806414296089450365921689096872152011444770884542462050518585429206901111075245147615496893657427923193776340635440003553105593904393040401842158968094850175649650331539036542533214909100348753810708810202452112154123530380750437335010515006789587237394965319616501450496285891384899692250143073355968077685600417960529470035668376462399971829658145548868777139629817502374349399141727393112930149642507936490927537658227863755714639603004813581626181099500413842495676187669113346039758401944440679956347252441841831026562888184741438351084927563499257383064574718601742446173114253127316432740766859343888715449036349451915020111830626637183431005970557163894377587368141760306956632824009407458445148534726986705189407581412230434017719203438663174481204264191814013701057719929901831147772425078353286606214839352831148335279235783673821472726261164052463463249391297165145865220302084409407162999630796061402070165611054018333588574105808132080142269679409035791382273609583722022505340309863411444016607032414517645084584412457561612198417754210402120109980162624997226400874506326557159969412263726435817056710931580549379042259567896162052576196438059251215223673276768531040056127442131577948420389096190499228925145875644715484681684752645422617715772157753918959873713512337234604157379307100484354885675927277875670378402405383424321779863266222991138379627892117314338978809893291294157354689144468779062095418419788954045208780304648388515930729002004848246882458361801143472172559722026995877440724031154971773565438977645940684699604144306953438281438485813169913522521183402884997517281932573772998129102305871493543621432797224102159732603322496989677988793639467579798406424753276085416224560907473598814367050411574069832826141295441016863060229769874994019607021444393335788023798092603488269164488231266615213519202431025525339722000865229557491497852974817516524273397668232956763863755420041235029260696181164094213845115839368129206792060193000313114521401687606116173832448430334332640320331903493388642023275291654341396121029601439725316365557638401910582911252004813217693705376330234966027311411878414963911957129807006330686620971780180122311060625544283223784739226390153307094175512365024033683741837284444197637705061087913539005872124195180384405889770842936448313412708592811516315073880897185023653228069088483075676637721493796391067684365835787111574423933110102212211987563637140754536859692621456797201918465314333069594949229473903280040402352077394955543590096172199721313980819222726432868270675988684159810281001523266070228621107880037340160198079385484960276094359073946705330412254501646841340430943019750732497150580373558936325986008461554074331696209698091077453500632519702651782191819857526453326245005150854869431886167312457766428305118890529784160129539695180951447685448173221453593922579440987953165808491393500501472517829574284283575506945709303239356850366802509358124981610307402435711616018071304668616716133430781388786172981017050397153333733036927730046021242189082251244105524935015752331281503301041387182325328732384700006069333001981687018465522740942460015903998262204225066186231333011010077053067560515406087021210701069643097015916381281541522335078971424536786068147458693325927151746537269735024318710233568174240631526546612826237415164562021507369738150682250709559811648663020329803862351458260035504226450048683160835744828805537804231237722847539980704715666537320053930669329229800434411380648901551263267842829269195413343492550149720439301202256020534149647760325592605081933891338838765475334191904837836155844162597137164310420263450020388879228030786718284013354171330700090114213368489638133954432089026078858918548780911199587328774015970447337343325907220723748936806135996607713069895422836419708266728254124336174473704688604565804475692828267240661077700715865047056845468576106615805583259801205121446172142732163730444399242368838928367662731314429876130215725951164308890192193664661166846374109825345800073516187047164265526168246414623313661599442353442389855036849037612727167025354274375961062303726438360671033620333303024398915692917710954215465252803889766512065202599254262374442744593240900112886755312252040159274368664261110290023368102580899032712660552277574208094111504076847463433346269506985292993366840444905120546548294262284843511647824459268999469440949895703645021341979978430034847460340313927898778586411238243401579926705957806413414219110104271023175648494405269246198363046506918845062747734324822032527327048233956603402005240534084173684442010775341761412551032517938605425936512764480632494808668273901476435300963830179388144505735055525429657238681950280723993152415117894878058312069110481000374425312228353253123035822735763887214071500571983587522739862813841680490600904598233487466317924377007578612457080430246253507461723438749162271181762449593866165748121436184598530414884337253065256545608364511205773822024361858148061042732440585119286041033375246075812477220097793447616153705355053832523737035883214163240013083055302822049610051344009965756252336980944598664500475938835417574651232796959692006974104840812342746000917117467407473435396554568628403533236059607085703416198221824102613436915595953954621255464168452257191134354862502275821125311731977827441904455174362523861178307386057245699369344446202539065643641660732544505608187432285424523507723151480438419137113856334202581716932982125988041817955308470078984012545037107246089137599778722369337456455138293932036327620542315732504835959903551285819215567450352505842318977274074492467043852720689289104808148579659103214425480912430097294481591148315863030552883578097253965921014355313152435382342414135416072564229767514351541025409261133764209082953119072725886316619400662550298976222284260742814471524131823323348808389571941660423182216752082053484439579240579636207162122534804323205207010623380811777084053971898929200463369034591758666121081918755205840512463604606657823708332008627535429997041721110701512493319910819753356128503149798936050754514963026514687827364461584750143417425426573823761354587843494829280661555416053452920721437378333297904393424014666791890328276553702801627973609042827034682992401013294544270880686698576508877645062489927136832342315780949829723339321357051372817316390624135726408759209914323171741355491841828056936863706283217090740011534231478468364085061493102500223850570052536530619669763659610343400611853218264168421773682119781933418542510934299523546435972002142844350316409212219134345239214315065789367194144948798696808821892159680748527025813191352022691791045753087836981650896707480854616611674784613430109412767129719469614482476389292265497901478516997127196737118120438858346336869234092118222436250011440419311312342344772373655059116560903775082172974628705030066953669419273402462369589867915762703114133236780359330022868668397201994539269712531128343084088273796760031651691185186378719889582802850364430378518898098690717180685664723666754010623927540411024695202659611010375248313181701361933552487583311393674302530448252137596219260740197658069423171432330209107648072066125994010669285310056832439527300058708550776270410978628895014757647223242652379435351567456653156528943084258508516352501223789878292381114446243258462840622288134060406212521604347418680958343119812272726098465492639771438133792293931593374107523416997122943064543148660190988120219946684384017089026299023295305308543099692585859120654645530100547915882316542250010330865689135785376899001722045423511386612703605707651173517058140314102725337564475758916504737724856056641195723163529626229612513435949320204323311070033428021126611559495043874247699474319444878236692156441532370606080665881447613748256680232389096045887282503738264786454129065325282813221143477549237666575195245111787431115211522950312778266663435471987492279504132110614103576726765785487261662435118936131931623638965117079397345471098726269219089989302339949316551481469358369247604284160682946442704250985302082712760205204319531036787641102563684247579022254331343823132690731006087019292455756905468073840024310980435874416493333589520586826541141395423521034712036939213631597463483687355800005964141798130625519031484623014368319045113147260321443089913335151414413377570319201172011114337126370488326618391147564403424003656030140420770192700131158432201204112435667977954597410268911863919138061902503404494912705411602239196552015701847144300982503904504431019371046742708624955132939875283910110821369313130504513814219592555235724153549076862400311459002369199634603187228222973513273833651902516403123186239586502857154395224594122812289547852861645909747305248276027141672358220016069047197693064248481127224820424373207529222553219512937127341905405002657399522676203102158112771552346419091323827562527485596045525395117683674475858339944528319942667944897472962584633104223195662600282291610120105468925849404310802361330501798860753352156553031108234433139914459661692093774434547379725303368205533139525828751011635119721402833218924945543069204072427352731937930430976372293390418017106026778305521128131213105172941514727921812197235551977325806650705710431241226277502154199161377893158172013284630491966885752385694409496605362140105103291988901745411610116141554583030323846811789842343444114213213190640104212888220168504505081120407047228824325940255460420828252304039577995835981342118051813643413844851761518370940535059543921163462344028044103289159714964334583271652550404119746447627809260950270563478631580230290583892305599001143722146031846134928396008135433700928648628106554545459009728978616753456462350774414903447176243762563077374045260454263678302917002568854734308311883262252288516176470644520766864958299784210177990360820359794745946101418753308959908266530590161754616283399249448982501989290248960153551642339052740677519870593626492333652456985246733433121169919399005398671405369412386676088883255633634837130766031184542684309241935088013116480710484127311348227107276827247561367205179853098421092600202080622052927589422797283680370123278895288564809072151239676444226165468264121734519838946761238811515983900735613486135222427511875271955233984072212477677770218158253692541011103344835272472832113758131505827933296950286221034495462391563841708855123939381803536916270142570691610209137807041780021095210713444926378274834526037144950915164202589114823368213757840989205496479063831578218322843718081361682067207361758139570482238533955377369907938143063350452341234254201047499781080543206615059665306890945182208236436103470211608174240530612971082025378028620750802750357818101999467290865278469803389285700198905768525221743736611445848953510103652742154329672525486762402313316082254314555157512851518359639759345128973037147897306927139655453721942685043064145766708292162100898030680327528828150984549444392989527714233689816201365218835802112278529388032859922361315317121852203873417129927085869940331304724128920205176342637896393389074481304551433335303238992010549401096725856484810803171436594777314930426109567193037198679447438581413342758451700820076514571722935207042740141717463126796811055702542486301851818316191957940319749456002320253645229218544116052756796610370422703909289909100534408421177556594615113579305515530863120232910254861208510704758305586927442427212421191179224061442333281456018091814663238802323799994146247790285484173469709192646775277548093032762912616635303852963202493614263472426969424278284646714862364613164512440028810865538937476149033924622188183913691505301463163778952313594815367996568080360145616632494962143651620106763444175336071024381643235569451864198760786097775738913556422456022638180780331006638390421057151676014220310151242171598024190582811762634478956248462848589066201481649958533197177641865950762955466940388229314377422980841062264362501261520551901887335188507413943478315424230383082922107526713675190851721457630241008936152415761176256062679334856442712230335910723477608672827026767867204512300769636373807916131943021407766216036486746183912597466416697308974854732630111919663828242215180860832721133829999372377965706397126517151305803805137630138523552708656662160050264282559152445123004950320666252868412341024392913965593006313439879205156438135310120408477222811714008401126314539181615632437859635929564169122535032398741263802637058514361193746850245153911796411792842023856603364141569795717712734139925050049607971271612294213391163118327256041228640487287062744835124963907069480031960551873070111977589818439358759769376855702399923744377944200743328370627624134134072006531015916441248265120387261402963440978911091801462330408333823887630260101901919942677132339951554899796353835106228066673351390113572570164823436655899976686139759362165421457237760728467275036682218857349379508246648081295268783376077283270497897539997258977131743227228983630438465144342827330802826478131415244632684535099945154651403950127973003041274990190293440164958510912405560812488782422011391011867512003508646915525940401398240638990110957318230410024509634382506446214713118066729614576757460073209373448689642340401313741612057426414848155230887598314222147078454998093562943223613006147320723478753437892581262330409411573706441233703034030929545771935738143503176622658780916986908136662829201681312111648377316370682567445581465785645323848005883218342886625354039938845284428431820208154004985911101780821165437181941738505603806421591239612146535814947160960766680609929396424787031174912149403296486372130239944568173460007881309656716481714400032501652190531289363327403612697809432175501159798721567527415338377597414353399817562124662265402866554331958252468080200460348475773311516037111098682377358033882346219355842077913871949293050903642276940302292118906129768297823711974848303311565701053821510893079537405524784217937064521039653375524335458138232040017886295437943002551059361223936296165175836972758130010576254680864379021067551322175756062215893127342820696431400801859189400228463936951235040029431521640636651447815790074763391704281265925201172716205779624019183199407694745321022882912417016831537476938142020580427037785361121533377439350308171026505638607509140087946820602154109490035094604297347474594273590054304089625644454596749120219528229043387691515345335056853261231409802372654225231641113161479647202763652472622623972919986253111909500581220453615109254303110273284201000325568619365832640102008201138351732922462342719117477456659358512844901716146431515452404610196662289243991857019556483936375925228267238457556443166547387494489148117694705728282751250582565137893110419085254419652446870248089235367355696926026373380362334397740323176305691580075802950255610268026616629076120321522291834170310022527857806055263242229396410040513511653045837179722100441936590423186336171020134061552484701705550415057511600197153125039155063130134421934321647648131255468257891281689148885031660294822017601589505058862155864248380217358202264039708872227026510743757553868647413820025343552260125600580171178493058740009411397682024907784004469250831491595698778538822093831434422068539043342154101588743846399076105697205287534917506316025344145596343624474741351006324689151416687649638900735537113621209942988419122931201950816650205671013094717250242196550288898939569996117472994371436637270757010625052998848465058904810901265503045017521710903452410168401469353590360442341767764283026721923260864739970321326692507114457056776701105014621619768403242731339674053221613198177010084236649325506645110671525296116415010157236244424147539811526107263763691221356601125445231697640323486081476387030421813730726806968707823059612231752220159049441564671484301673050545873756044956231629868224627039740006803532406372411851495601535616459611246076030580384463435109328281520643688164541104534458639476255325270478464869721515312648781687723159173078222667143073005303362536727674206450021291292197621340116810242447471323618293155218064810365625724726299591608785569364452101204428628687293728831171088586757322324801502113445209461852341809778491649650128646209065503677869155440110421424530386200644121273870615872418529511583219655379663898151552124359016940389957166155135001832860324414333393713022160571723136129942234440076452051927601026105305792212773953037744693523767854907451624505383715453923639008034540281045033800464599557902204155954038662614851181300373256975461708394132299602983621040794715499408476090214881169239033766314245924107639512663259061595286178902631701595618392656956884589437781263419827698221659470626967756291815322048041451212307757625542426682598554504826053897637504363644906431397894438402538051220758052857931573920673328715798710787002561431721686084161541402475806129889276086995333710150207722634928903558718278059531121983300121750580968386802196384753649325458479688374403282852002217514770211612893013034009805256406141961595007230149615132094541530341013181355345701006362250516071813029946623767253240486032672565961114783087637617928324748105031056968613882088244645195221960341233303687035124318745053732232731425577447825138090600218615158400662963314855948503088157749909416453735781131582043933481711116189689968256097585551524474928418616143155237754565883360585730256074549507274811816733721831165402318164163977355342109420694030981602844013958886408461112165135712197284604510415020193347002103495062665172616449448358514902337667541093833121686354991017211202133246343341039378743634466845283723195715066587011152852202597418344383440386266752745538234619768679217906814006530353664744104625938405969918783715711325713382213333679529786926583565207228430550713273304450244855694912610812899519546783705327482132418343228412526506119679764132190559851454570053707715654589083592024727291697227293754908807122099370819275251335374458661964934274886363072013565700357855237163437019272430778385652457905150210561104176028014532617117417732040337452752211864298517784172007783823635150761769726464947350102996263230680927943479786330887928467631816219682787633407831321223142830627530409672771990102582474240237431602800792834719969516074704820716792155014053384752062814952599373489974269204992571527998173606583796941712016409258283786704536802257435129190765260951425537711371623220142799032433253933911605945661656129803482569138733033378270094724094177988210628538880122386242209088120219621496295066613334621606786034275573050457017401140468314583386873186970231545486168494303841458443044853711705803780397421177259567104011787943157389808341534921653330424232191834025149296904916064868526330245735021382413232245968181576981162141941935919345111096139910451610937904690662254633406763119358515230950444270615475286055814537819202535345913505016577927950597608653418416941104543369081440522765375113305452301433017926018870793528850291251447181742133069565836012038213509957564477119110503349219840212850142458050709044701884076004519918185210147221926549212682270014049811803239516577812809317331896146550308130492344030337135816349324410890890321160881320511075528419031816355159119332313435278517441485924835710923226143214437664210236748601308201246926672753303747602050413084056851914702605923943342735260660185712692747002391234964976246770033010041525240181715889139492320211556313011143840385865330470000841080801856118130208732645454303143220212034279058347770145471199454522933713412878921099319568794883255088409740364473635616410620095305090010057337082709324841424090541435726552261379173902348321234830838921549269487910614153920972317248932486355800808461676211067444550695601543344327236271050769864168203413401101400505756589068674828484045006778051558543529618017334422205088573078312948983518135167182697475806322024169380811120995060191415911213947554390556233332182755935471985385760335488912136322641342711797785714277134476931502256112368579128343549809910201024575094970786792851666280556351427165311007250030780976383801573600358723144771513751861054182248479041453983800303753354023164226013891093451201388613328511608321465994207946468343397471113943367456250039267360007359948901051649745253241610747477087688135429428291728321726642045103032327982439406578383175743126509544482554739491836028039224278464895312262373563798937988018419450654393449185151214099563149721154232940335858130519617216152837806033233851329595726505247676825168144013563291704726572117972118041515771076214655902803243018710189924781189883505451309077506003682203102487121497186740826234598995762838673386501427546910022401140631248005265815123511244667298242212468942009203167687354320482355563709180503320034906702834621622715650409827433155576346613942116221691925144749394945909710493850681065658559328873181523316699622853222273211387913620452118201221591721084740784817516401038299892728506097329601542255115641108955493546819798067007611963664446072032157684888166511492361646300379175621121325031352795874426645912741055149219304855437344677542072249391736483521481332232758431628263866523202369138806462941143321867770226043505919672534754270009947599176107620623524963845746253222213386567674856212656068100466581544585950383946279491625165323958768309580421963049318818247940801328529107598001434451124998167308150110063516009915408550429359715912837657355227340790081898564358548013031159954788679618397005489053434433456211166029821281414430446031625930391202858627823899896580007816113274413119152470707885061009564340359903271616587109962600492409007347548203567248632827538080028313996766633158050172296769102536638180745831110972321849872159951702210416341482766750275112156157809134460073632165431893783309932260434300320473192987276240423525822261130126369624968180311039558951013531022881715612184614313415630645650126199418933636579638523103773389184615033266941625254607061217252102571598791008416635706613324438774631621546718403757340616949860220291401584577213331867212011281110233996880318983446516620945654420700396249934584582616563243131708956363536152473163373387950299264417339493512595859789121481411547618405221315074823905650451446858942464260619024914623498994301548407588615604183536532907833104160019976430206247564134076511175810134792913428264056751989243949131390870614460649442940830898806230395209913571494100339370950041626421760201841757235264290763525416532305599336400634809642410742418322365133086177216956090673751478652478383423604453694943964810519221159842493105879588822423283821942372353870158834042382199045607211148562008124470003325523094050898078615949271302340787125016349114544587711111280142502939479182406843003469590531835137394185789296360387554490076339930201714753138323804733657993904743724590951818656213361401451401527232314919142171192742730696503994481001246697043650287462795788522642502815812452518698386371891152651847151127782801471530758026191537261163651043963183993191982390144076193430740189542153518695723764826103723981389353149563213190350239617182611084331311700619614877307713221612055627391264174015400985347455620403603199446039410687541639867788490914772010764505188112957148546127720095541691512913265874761634096337256555358683902792839200031021346721256407532018826293164361151789342941662137752244952678535683370525166919270437497165152414480844635051113518560941980285010483810903884610707922126231298597615295895542454877069486511974016011416447763822294262478602314556549462068417605167347685462603965302327233128006884826950002947332320428826768187493605843416809470716079171068912459580146051175253810737366489722201721811405120424352009232143220073467245114358600689316721004024030265524731828963202616441127295828231311453772357226751711796546168131470494652409305940774687663528497438301131631873625481883605321102074252947782513011318866875498285678698240159291965721444752614147647815216236517841231209291913444275761973178103314292082038040074144223130620840798460119386440484323204169039551220542555633585163487128176957812305652740661034381538316134571454444717540521244359052585223167846923808320133344636454236369018154726499154461644409035669605367874330768177226651702426035687750571954434508310029101464900652849050098756524372150005559921805204484890085592892807738730537304081465072231382761342561573932486327241386313935249519380075591003246365078825151613342619860064904961919531469317628922360506492330188585251120229131627421837686339110595308654999657224858497322321844712297236402574004351763113753068301263012637813118990957012731208388961359121552468809741901431272337617174831149157278237287156429834303359070379525353004842930510485835045231751450110734168841516682688397574562963854951005131720733988661391581506260879064519979211325555236198892301634238924489581805821806084612328812981628840443338460135186024298633208624560645205951240891810869442107342460912166658713911349344259011496244020536307016568007751919631735938962523765637531213635418418811249661540048186418051464781479338662955711017758573357297246211423431016221029101526484603309833835558504204561027210621273890975820076287055298595972128882652722113062817693162665240323888284898720203041637939083265150981731374054851624671862681391111026205725597396138814699890049297165661057181127232372951881635360171047778647540917173810367923392849181374997817776857606871753327739178392614302682580866923556939261211675704894328992183063051015158431604574937028256557102171338963036681645527056332134334819660166379099970642667652695390223742962807738438673198023077322187557097908300310574010536238108059779350304427500435352879871084314703210225990774723053624267649112398460621800612181083292238010889154113193259530771907496457844631013058303120949953022736269647033619024091103751073032195744629173430769154575343764087131299084132270972350684738231223649231137904944069448144430560385838132341117199338331919332131839487745882871393066923233548195318912358624576629779634288735151624924022673313085425922310916385461923407651136063257159715130068269146054969202022081613342145130142269111878659830376860132282662418576865774860252223106925804292252303992052329984191213401684961664519871936230017358680155955862001021729149312644776345223551257108315221197213683521391417422752348453377725074237173021033381455031541431105262638691108127192937712701725382248321728425486236312538919242625760405173864470610161065829204569972854833765165001041037765823001055187015642291447068550182507004341427172341243926972792500285911417996166355064631094620944961542180642254584343112426887613846118563550035002358144215082119757159585185024120562712112141770414194499038126196645240605290725467700102805344643344057295034982926031913604187521163341676517824068326689693241743079411408251180081845435303330381014787489401043966582626965542166163639950092040219980748722570044890341469235619307632081689135346063276523233398112365164603543633161611286120210682010038154438628642503162890764455542210296931502908023355105665747724057110450982865247860605923344405651546452007092597626435130917146241725345082307874271273357783807470824364777116222177810659284571003216848207073623574746668524011951030310370776910512768424134715955868471347001135023258089612904577706296219706314739656124436220786164273092599755203791166262060397033239442388100855461627902012946623793056139139184272775620322749742324135336832672738269534537926876082840850189480506012188370651993487026131610238116526630339168852772045495247481854882308901422738464161026411446152347226355664711596151744125620008048731541675672566182601956834129732602663267732774857781421156616257303865577614167915120321459112516684095224969155606221078602273282685175807405034063153263034406013422502164371073563286500679653758046768592575637133883501408114033718373614044562277457368707610277840777414783966615677764227756652551490941017635108490248254006651743017421254370248827608511152279645519449951666151498377014870014668023008573343611114952848749220790475834877052563268230927021188657106128404998791548956105243997706360829122596218135956074830503704120712040482436049705850529351821716433771925631622144627918802523402919030050840202078562398209186182980803299197374135160943222343430498869250108351480905015242959716958905305365131415095025034692339173869802235104450060563114863392590142959541448365808308801142109309221258567235108183129122183325996575024713525577160672314479251106602142348484694584672397258554210812132024648228148415770347655001172400526622763473314356759539648183218408451917481094517394044926546022281760922727432276278382932169923792443114244107561028633475867306148503717071243212247534361529721814458569338721746513537330187502205054561219182932798197822020142895214624623729510069248108580500370850243344012701866864724707075316326615117420654994202149336424187841143439017767862521455159121747305779566180662634227958279735228120663823551709539620443811962690284055212447047205574104902075881531927095304421395546241130289717469768032335666198720492838801164238074540614218111182313779181470162188491850008230465463600652295450811932063609222772404334893234048651033325479613053613631886698352324013588774814771023116503544226435581931193442176856448034204547130137517771535933434744395720784102660413493179205252528052814190040241854290045455332242026665209882182642014808023806903342931615705439199634811972780137124493373198746392867628235053063157825222205958112430620990258884201132373533920707167430683687315868542173508367565406081166139581363920465351802657641598758555359342286051398044608781982203714462148063197295713694891386150631325950488667533289021107485754824611380838754114729816694272314284690260338118252691438448578054344952143947133046745720278303377414183704424210119137301519030554498453103589022462958984820260976575847092813094855532452142352944529017555991683286668828077004473715204200808897051559005627945906618245515376243970121703551026154022976980943127777930474722717321316877787802300358040273558001511560310449035132653177674607762007107336004691349463102281086574322444732101350521386311454651911551724406863743062197374875298282749594712071664411771526990959152684313412368680141410014240857922948330970425714250224744508247060308870903605908435376512868566482145614949011649321236319672696860457128875564354443589261666819063178128423474977527085264243028615694324358330953646946072331192840437787930772412708254264559250379463303449241549647045106465050789931053107454025123199286491749422485349681451294949110276355885322987062403222032619028721524761754661260241144911103402542792646463386809253785394917519213043826130398404826202117603701082135699125393190435153203434160462950436399841297895310656144403216302209055548972008070703022464926704460057301742229228850698815242211146335208068178097644391755884398474106661473218468401024740947956027102811348330076427863734914412240722052462502021946815492447587341300244759825196963724260370436655006399390278393132435311403442726939775015517178211403054127563289209465412760182110535684544801710040713984725469891619814870975415919501184117590515725238497775299850131295396257190011513554915143958466043143030465755924746325240865535197502081022322610700021032215025660763081345273158554201022170825761654526326414130782007838670850278741771499342076159070234235753089953512711338436191168232170542121145851204218403651033224984855847937059001435633373003422864715500753070589191737243068078304299654994967544415124486877745540285042608054325060900339068951433820235088006103985632441646647611309458033599624031543561983068751027527689252855127010369246352808539889705331117145433761389862163854995469931622304757782773331967957399862714093361943831298141453272640551222171723522631543050367733918135515665349253956340524421602134477541566015072304803605599954104743797166940234895118286033675074723541414375036182731068128334827886952649054452572891674260211619105872169988447147494334068971904466192517925471491003022220979841202234841701730984334016119084499017110211649135557691780916811605259266609709252472562242046146350697988934573258633528530729916689645923745734225151328443103713824975754071564370550640136098052131334805132867104424688728408920355707453197273254564056486311951313662525859911730286214724901214953850988294459364172494127485233180082271101817045053239539401691136506515234118633179650961831204289769000253738730197869402045494571372496873329109091885113143416873377701498327801332401147535874856005369930813887935098835052775676289427647289221694629098509093726583258441143643302655511166489272885916206397337673941133119610261193814485601948275041355574138512806529246851034032440083545722102918707594451584891751092810904155629044168798492048660167062340616942902082279058003888726406454395486035425792039322027101658854854305830315891232841420615244402801249046204646863699631372612831981397673910135386488727785965380806760534106302945876741502344629725132587710124125356047940683741148714727093232836237200881956572581098903948012315881017539573944065568896170827962342130200798172600519560815172896258895113255781222890782504414735704435341876428988625440577307000127271476618726587310362349201855100362225103243403728079582519595147300050200271336541130044415263347041335264934412989727543845073083472153829057032146051808239785757442480228261928821258472030941405931405805780649757217845452106618495614332115713223570539303910453550731637087084566154459444581966740720413040045348116597721393544550449980127334054321799530474825027233718186338046776176380728525419227282179012838247713255930830874551952884477045840167633902648584510142623784363858287371581816613648282764948912177436122363768550285475005308407955282471315704329743614312340576011340941042011244504101240171447204296353072636215639603731464395324674799646507521024369979779153541050455294220984592236675027041593174904228460239260583940103355253833331873114024275555019898071997024111366884480745032051751208050991201431957060248112871536318814206219029251114371849515374689217127165190720338751347941151001747014785318451565276080084122255433171536277561355857434647004536428127335174176130627770496372577054444685424804315025612715556184989455343925331606855675470497432450156070140055260633962844061308748251807497475842325990652839210851146337453845973300842733503002874371017013264296174002037260741765820016047799632334752541223845493482086224348509418082180558106583071033678527948683149073604261424344720111053162040324346296750178378954971121287668642911952949910429475618441739143218524447096451304107788621011814061541721864567441168082170230911694064710246069908871023512067023563497160054763805081538598959858152548103656066424844696273113820233421528791119936670126717025658716205336827806530587732826232161003788605171231558444150937054538432530754707569785222784437105888541868326217300689387337304323889846697410115138394587432914416430280188159287448283397012870253280575409117311568457652269685057604157630691918093037331705558759312771495905001065228976881882853665014921434722712133650187277313513482813012293400025925922324133829953546452261243382013063145211310225334227763355410354262425291013055176799335698002140949883821583394526731539235343054297065756983039254161048455131481514655450034349200602860248432044010341057005312014270395198973749547319250330134451909986402894688895284330746075525820280437836043312884086001377358123515726183452085976917288431030430208808607895141724031982241524538810931463213660432597013571397386386449993365162470087374981188228249656527901830833515696173246185528756806045636320553335281062358436248665039502901385978454996791516548284507244473450431458197121676562822602286345156846090467077166344148408286216179668511191681156644898288816538674362775253433125804485210030013022469382353116671821225321051734218355439160220455022233307065915675440681338302298135723638311523074443287541941150358950721409882260665168154223089477177934767112921693204869365912142111628011527159031227330327744794422306727539968404809984271151056618746640084031651641029310689734441451271922975225611056144160478714399509318823472078774384265730722334439753775390352537694008175612055151812338210915177068368231340843024464187554438376892970938193676036381218989109794395680477361720126414914324292092432574280218882717123310201436732704415550548242165091271450009635716757086872281964547104125544623824454533836730263753882845060374054160622533603294752356176411744684085018594824434402261507678398132990780269233360452356641568126165551451756090891976378441627904014264876015534279703733104732684119171057817343417330202710945938116509062175991564477920889243459355090186811215868393016075412369263112530205013324003285641347237276375268061938965902253288211546320311798166298935206867140703290654205760328134237771842182508893915635844425244323514824302665664617182271985269934055185454872975411326595645812245339008581545421728042512820977491074423344228634546261406302438176991770641317418862341704119582339412255793865396305124401648765299221143144926963781877722419680045842636643613648292211099073107164601605468340690266900637157278669333361173588527948643212862112893874061205024216345373400239255605910656718642810921721778834718579186947120006763403406851785467119355085445743004233440119323868588704775532677307105585495330426442283353795039008140820645997153859408422328210536810032989241344150110264895538070910641653365282454498867083021325311606117540674466674923226727417154574418618847465313745259397396730360276372924412360276330704814852898206542843706005180386745177912010938384037960366277111142065337056667824611583336037325826478160397610820670626717137691375947212488074972299101746605572114906278444209614625216607238635063791560924595977961365183905085347183962159961853565555212684485602795322574706185179973718128061895910457331210049226387733824236508160317236086003312027767134383160840293850015419354748496466412770554404073867411842861118553331923358753670172531955902862206433158165176143101990308098932575545122997085210411140196437537599567112749949182358628618667316046597227337203532831392240537927844418539034634043569540040160369231746169363804407856101114243666363819211915809024722272344440632983981725773604646039732566531224539182081121072570196359252136153510100674273741075552885140450915820979932868132514791669526925224305780791036090727158811096135792971236710637068313630164622600143055961103226219703661273649427218046723146288516281510367193021163896650724020088215534773738569599984142431221168611411166744059125272900525345154620007801841792211310298935280352235711436896629432435543937834461306163703228446301454311156144957527335633074678642054426975165086658412388143349106651089263657631236735607177491554861006826524020660610605930703500045275193072169830232836547495037017462334248744193979707324082637592171709143215147851770665344441964546734966446910229639659348919263508803948572326654323809215182242675260324982872869218282973319106656249427743568227017172334785621552564217129427106358557918636673374259995632336613008373975969355483544302956325750995367443191642061322621319152471177201245106033417063886059623064192631154230592801877895175731389367172751046687688433465300263136354176437326272169842040452922722236204017634569526841105600481960851530322248490532085467618733363037833915600638142067136667062420588700441638013943878938830843012164028097273514164804233742400577123854771015675612643380220400896821504243710764321268206139816615390268222916494951591303620006674623857587604713190701518046593102676040594382950669038257356026913434246244820830209674751946009561728311688277965323621162630117744133754176200112626350167735446398815772853650045881014932896242133123589196328247823105735754419343135099131601962775846388432266526825830463776522168433596530974606492844385387024515829653817424357479760521115115788560314632349172244583151114054977668390216176425829835466358784923947643613213124057564012489815388716850919802338869352355018971142849332192325897419581966196108534995478564484174341214610941475571113475218368019730621386432102518674200732209507280690615932654153037099670320746887529304491126913099841727210752393958316434053187383144657951626565303764866740764315453948168606257863986512036629636402426646823451220159305664866900205171407255317910666893206516556051407962593823830907558313289930044507262012017727637826244579150710435063774723138809080392965416280331153292397866114819979603356853873971367234566449106457709803484335029814237844036525300959758212239022245501475441656349284007333000995321425166318354582213289007472030191520845229520907736232560511511899846887765678348710169175302806595191037859570800813491986095100190330370658374490384231257816923430625729239159683321950972522801238711971310616346365726272346000293172214184257490161902683192077515727373654677835621503115299461425903258088770202475604072031944115820773734011571081916268787339086934154421174535865638331923495804122129747934517702105691514686263664827593138939365692496234668389152816054109413843783091926478210347422690081532064168381628021413725598290862268103849435277201405055831115621938034845099859536186433125756912224909713803719513012226633803571127429730662992375881386286421363807963323111233558734102275622401499349013863018142253059912054450367323581373844854853014674700122920732740694761565542480845252253417116737942148822794891365329349395551295980523341400753220642713156502940992101468442205508681853026574638991216351954154016049722118291066542433667112343644511976458811232833292471735985852433806851435006032283126067972726875155448144913223735552422991178038017566289141913017131232503053960600381091880922784055089879002227039637009210703768574905152342567797975063136592537371768632173266391701236820604610322006796101117651223590785316687022828213803691385747995013271909793638870147715659339932853271943326929640632389040334185511394355394086078377363114602975179106175852111434104262201602645628332288922190267120522464122824672057529120121225454620255101284800937401456972200305178508154731591369876030772932457119121432758596585101108566709734677055180445760141398527714357196320635946708205971912038280832137522846522774371086655425503180547008255423813402143773602348031059873794132087458916542420690944362763403458659891098196289173638282292639836673329360521426250030693050876759762592722223721221130607407008011429699111610107717091125810281430422242060305363593093901029176720138214637447262777050121933526536182157025971142006400894326231269737146164134267254561709102584149202280685110271016543224214413408851047264622926515285905492995646339358912348471814223047076437014515103384422845666878456650117262783203138111485195958742314395174747406697031353419401121287194320886301883979335163320326434718143202931917781001963032228539937207851409160851688331804238838251852485696725484689221824093573765160096475753517269327206369130168656391195188367223049350621901876609213797686834174539606138292488003102484377417805211823651147344565034663517216323882112581126586152265107927440444083093804051948593223863978399000345249866334630115352207802911514582411931515509405970414176084281167233105091597257233231298366000476443141252545472696939644654423713349391289622957724642989742898527188531402468744710518831170219946393721419051076225520089778399788624595298891994151655383907122141330116867625729152483682603707263310701221574153315230020034968148812445434924433481954986585918607181190850139236245590946317446621615249669133040209895001304125567368872335718572104512711110343328210334013740329932229668477669157112398201101400704920370849297259448915711912522694324997666919734940410618112117213643441093090661025861156825250965158347425715213928626860230200818488207578284273967085600273602812258454207402174963229623896243705380443947926263945271983651087557508531021347062480265061937580633458730252756427569777841881979663283580434751006741617132508704746429417765277096272331427224380617688552275261217584485821742669997174183423202230073816405251588890299176190426346954069935929454417037334297773549737119770160545515047157795063892493600163375155566813693680132577138392153427248200358202271877697542351251427686906224172163417626876150397764931853088721139592160666981670550106444637114060010453469420419795335695051641406648737230882422838893942404061207439456035210274308476665977344172724709054168471811212111716365036971221326875247009424964847846163641240435012183295139221270972971056525938978225637878142954319877954222475824244754330473283634810674951815243394717140126792941386052835068263781308067192366969664761810861075718542533451657234809230101182144896636015863813352435994781588673166041772238662439431240262427061343008413342984084262837166120429874554985893526502728919243328830430716054646003792833658586108733670256164241246514327222180243180916431209822634544344015421357774960584172323736155587923013651576930937213035490133183094482514931333473025662133452213220462761669400281056396486847824073051511848385110629981126480321621548280422964073280311503402611723081547996503294799047078728088772935256566489735973352347736677720736971483317173249075823364313046551607357143374166545710429363571313721793127021355168335440997017746905812566101526630261892427803368824866899266040177273300355893164827364220375782578563676873684004554364433369248504861529787074318549855873379575178498151237076320752353315156276349272711097729572994669521357602664207927011000558710860543548407202751575630110038049746024554465727825745020616970310459746165306860009234569912307002858311109860432936510269995048406293777643020250479902779224306863612032911888714164834701344135599661384017335109437526133264324680402561922800431847911490948813511743642539312534921275512438625607377009484872680684951643245445113332822049475234242270673467826134693936992470432649348737995477396803093403745136516163000075030026096315273381742401037306375697235738234320692574418337339663933157424352144838522575327932467376262917957723658824104448205997211013061216087189210678135335000453870673306479413077566052495948204570525241294970017662601506038502643534133953243235901836457562295134421635959586723519728241249126224231974494194722068652827324526421171134460790924760185340798693769434130484527644683402120210473491421313844502848056715083776676402608050957521076055738082577582364225419533278181859311417892941939928507971411204075830649484700444285356123882797212009804162223409512389410605759225593410634839025256025099870841721340830523983884656342070318233507273819317189434772054198623088381531095465812156160763827309461240670098332984962784038282747362817389490419820433151254160309827806547574030345848010706090175464094943438737658530341737201865119380108811623746855294555811000054592564895674270738378348902018394202436151210637716728179202491702867558004154481813817596586459458451007544147774666420669352029529677314923802409042351392078114006470848783084203153057705440651126605131326736275442783813823027302254721177757260382191003084268325767220527884920967653769170916113317640481333158492531475323706777589022327702680256815617149639599549229946803804744511670018412003928062485280319032866831899606508303116713895901953301702420691056832225742812833975620962301822216093566148090681309007508039023442220192816377410686260516668636232026240014705607239657804304306358870321620162686221219310516156116490327585214084604311559797523838761372486132941496537199592901827042776623640638579021083813888811738478626012927281114462806773126768162693375214278907818143167776448193002756706056874735713187515432935237423412129184483697779704493864503839381295666317034032007466111014833619791307400203026362144448297326152832800021428485647415027501592793872174883782377101974758726825406852230202587142362480517863661592791421863022214818453607236561311459696382467646043978839974223850039938255341128751841906992690144201783879615518362271541124540200038943403327330205042327885372494528222279084669564258142126185037388154016377152803719437122967679389677387427383390165954215718152764779192599668770107332478556307751304731440577656620439235356511209017279637317113300131611192838851375408560345876266476153161435392056683375145189210494879287343747971940743346754256197254703370259813728817129533844828655327220552385339021672974742334586014417811317721163295323065483904944032248192697417925266032283271659728069050615054916059528136956508418141046660593253618348608437215039257412493836905028673193721306742235390614124516964780909699523612251520703141094495327449900166264879621330251075762646295800370454034403511445457614482454789892511055155070098516615104745502837087195038558633178704171550711994766077200612478477432417015068794094334562655350845874895334283809483715361614244939924683767327329073121305294236559648208536655557163283288464284280331074113299534376994255225481158511563608548266005364408297741498596270654125755227862626770853044913183837827121330103927353590582417171083681983753021301275220410421345420936025401138902299303930910719233845696618520134336481065421262925225403562289692562347725852909406568494248673900785416458326735114235855663168197477321641874013320640360983031673415896570095981462772394071367306687223125522901216585791904810768735505242264816309309020822547381731588131816306202807411297030126183693325265461547101841418402942981911944427432870479444741364132085729455165545301565757704553899514194861204369966737248342914304555465687901714984279661452914803247876711508578815924802470270306953271271295081716815454866180647171387712548230706801330057843302120171450233313944612235031819624149536494991752408630929075545568021523851316300411095391228662345344718433084911681178434270470545033567444035502530909173301637594843194443990710130664710512153873344321826524415276070382179139308102572456610079436504295532791511290522969222823885007633337632174031009567668501406322387501716714726308172917150635712552906817116184221894492587586176155409637238077810865294465527124705980691507011086738421668139009138590356881329356977423135243239397364484406213868157512191844283401481167463131361321227852688543637272896457739602713129470112237242563771202441751249766661571694511124804241352362408918619457345912792595079517728905427415827134010823461954509551698377233171350466351038126414073937838647233726714718483565271074247860710257399776893859593101856021016151283465142597444062590135145845615850417146691205239505221035952007428709371254210164119412841405457023517174064723029241632033676673276423213615096184615098200212331504164939517222111446252314009112587818316658125423763458283373502457983292673076361199414444260216029120181015519136173255535741246423284224497611493407052776407254164620510287447257241443923441587968612484891300887280940175982811528454186324098723210472348344879421453951266056373342604295471620828568259242414611958087501943546881422716607713036789385900279143370858283895085963154413009606850365731307497949768862220119895466641004354271459528966600094335122248486586328582206324445956162115822251545366681337890405185392568728852503711628560819718922517325355484392768675263574436404190688122402205521637759380496897786136759651020541133746122698276064640584331151457092589348787014129418983875610607104357326051633979271164520342660334413321310840724496640155454882283958000438707061756134452161574072053606383623909893683743487528863785817605041183934279720834839591070728874461787047251271321975049797262413021573601161015717532795568851471420513122182924986221331583286592804809857530818091301599999534409671173123381684972641778209873047040756663264675966933481474372979944121380736194891603079910822239546651720930749332282153310254095608187132446090394513545751659317840738342932481017202397477684341415456717949132355251093305731128597668702531033421490962995753505305539121593771287753031013272856392185738126508713297756347991048622007008386232226935795970884123924886150541763558179432771661426871023316185227034200276372202644070626746545163544863064351937640846581640258006620250717610072822523923278794562282250346128566430328626200449340437452710021482722726743124445950396305221146317286149521407068952176239933768177432265794676317786351149088127921051856160269120344530012711104530728999525860311649952264702189172725442689446420936956541229823532771385774005766931306220888970541002269325867751103646051415273790102522931561922154247482034232533176842465727630332012127636347372816162355211455423805402089256792204378481076860338273244720211978783628764195214083351130674513117301119940366109466443403449255735526456202464411325102617986712797183520513181186866985020172007242829995322716068366886646238226618225494167755037674314185711853483355543803233206423894164646659104634641627014451576607195296554771747657226512735049085050117411062082495316925043621565061000760574018017128221003417774797613704843667834745294838515318323274252074741392524588725345373612155890937061983852892444166279384332595490945967139896714287782329653587818255367641329875492101253321207723631559148891187595870630248261704890304273928034324522809968014911803444570530834251686294531963688424077700392621366599032597608590591599269938769849320653527236644300432201402741017708331240668204087564963566327945079743223473841755309390974415420397553762085017394892342389271731850379090827600675024438126412350394167172384148232303717256673234374571776306032731910155906573480186675226315270204549000113628232155174402686504262500295571124125897126094003087944667020433342204969145979690772620487601349059469204668834249533827904199069142610419174607844481713116713984409941953005396453054588723517931573060290437509754045597630124287757216452803124233403647264010378695650031918641454007289035360269630222072329580845981033535128238781542790154372612915758016691665612526014222125256281337385995474481945763734042649122542511652822315700120510570208210666731193153093081541371903296042793869329439426115444354500400643131856534815669098136331930530393627122556385101239615612387437281942628729356540513420934005267230326126639866363191820124752422003659081017570876115282523382558091052463678148658762372699476337081811805399224233057615719512104179328496642669846817648104950722381165313422512494880215548520120284230368050444029758997831883120121132861050420804592908613566564601140202126014440070302425951120030032845007949174379454277566367234390446043654043175864793558313006256175780370046648820144000433336152941994065770743787580717549485725356730805506606913548313106533341487063688273462388216103133764568245154174294529793017241548981873122053967441221224614320575806686275017377205858539899303423592783681050352538133376521128541020435558411643484650005005975418928695160596615710924753263479809191183867698002338159412610606512018472052833925010767241750882827075552711110712276883371461003725085044172214347009482865204352546379738240791566252192292329110610898375690047860199555856848217328481258457889867259709101185028445216136356558998932007439770669463534452457623599862347281392239215009102476527577039419128618413133125105189671209498217047524680383038177173386268839392322274360337022801977882918296542343025471166871894812380724860861186181578106962134842321868855908117701026604831146420846250714142713675726932013177734523529110340616795859022678138116605604958962632732750325358411399172074341466348783175351521185948811343072199272449648612333144364836361742978245261928526220086227712832928246371842152792007008182058018495884186236592342781111600836413108832742146227870071647768095970157055080022597616575898402177631537857368310008083634970450232301455104214064133117725351832083758839842254996989323085192611499523566317328809637903134178611521766592630934593753932859075383442474537348941018232300481181051298863401221247374471719096144764974012694501066241196520912023276663480485332751112297192239208598710507018571407137100942758620961612649228002454923825072318487891673729698345332755401968010596290537097704145410524281305750901659102833856433889468219731002021409306416363616745591317603498665166675456164821970706975594061627370752600378350016081403122878900908764578987744169427063888235093426594400753614629061793900548769836341173415606603380230524788181432456465330881311988881383817314351379984068273221139207224585292989235332489682438336020057685424673728875709295644253304160526155576964769753105585365302127835549911795909475998692516246088333289226111328395625232511631899572113775015731552200802206774697470829992227479550938019988187381440403365104650577059911712941145339111930966753710955863972581791868438466642321146172893704452711047666262642137784210041160095838623508314497386591770713718108830804511245998738140692107057649761765459862750211331131633592339508232137149751603703301070247015029451916510834345996231257594489678483017884824021637373119509544450082314220472437268107236223770350767341174939837211958273705223527390403864440873125939238517566721340443098325861114615500922731157384222821460447967758865342133924615115551676093042558627308838727744131445865450014352841496533224630034873950393175064632984817526349581796851630844353238868684115081278267203053287529472489425796850303819553090643882059871404293558099143910476469158350120188274868028174913540106034150911243031680956455061589116836555114686619034437900540906321002227026655816498735172428047303848130843138504766248931323464650615331403258735019013290924620114641740120492047455671335750123027573654884992680894397102961233980122692303763109412127092624170072304053216053289025270068171349376968759022446009683031274011173381259355405574861211749082380913681261584539915061210819001549417534926233159154243522621278916142513600427793765474003736810440559815197104306150905080149890164638463102531214570774217924333881474393006050063101343121527016595480774561446720761840090768021722314860103470068006694381769169701106144119358340133437268937101449027303614985521526515946585692602071151260738296125883765420500157237952431226880238182592013846473615255746135860057092345232232042901532522691581660831825408912001350301478314123820551661406838326321487623243177129405381552034360874095253692873524131847338396344345025235642582485067545619917033999375757657869543928592202043317773274873164904567311526222258602184798322351083588835253626287250771099004495412757003629322615367411281777634973397238509410694239746597018241409798746218604401062547739246429830430110134110033106986032572727157098436324531913165929416021508975324125389535822370430833832834414853294199791171437159925162657761602023368406611645573315211547334302089316237168159244208964918068269253737644280159197200429697348360889514055259286601202712641023313580103738377908468325798419117361819494113043883319330549491472811836525040568216990580433955222184222055444116083143328141717048712335073929833122372355910861263146154682323382260905211331139470721115106201985520510720688689397073813020180635792544014193664458336755824703959272184089960366526324326236666844621527711906243143450524091464254806116647958324454464062214170030993610022255080942361557583448779486051369225533778988174742470291724341181296913531602355453357240106757809313667368567273863371839801645916699210664385824604128703758310754208297032949551507043653110695904261380157621105588869019433455186940745352194071698279652802084385414433346927016791688613250241588511574813221510358068267550730283657944651493306421017612834035209768093131487402744731004622341702734333036078574370575703343211237416191938186669418580043658571866219983237676513069311116198489008757196860680766836213458770562211351432872999959374213016320894583605407785910190166694468934782850358187127914173545919475685932491561204931169122077131654134040708478155234841204513882423715229530841315790634817702052925567636105516910051620645206231406984743407322260436814525636153181174715751095993764164305495668125978313187224696458745553948110712660866790512016395864764043247976423316243510879623324368984592438928134134319892731583291912641510551521084086010622035365143510083158819607470763616805100275510945803401956095188778555716003031329166582046517893419630674032166544584279028917021672940046219414221664456521363442140166547282691031376010198327899850716700191514567053683104350743906177391863394473195438375245449453653844812867992277812513881197957079291224023390722697027337195876662227174545440432181032724506139185206810316402279449700058726224647389215834508376225841465410703482462109190792822375222342309564305937629937865007406448080229346380151638781670447044406683890004454868237601173753790209190120155887875153103245153240815124970769568408078606697458910914545412043905683061150621561104338048516271643014112411528099552013810406042003648540260304703847717463680738588510488679501922958639464993240937739010923303314175182242762921685283367127122407393119613747183063683414550956237499897663431262034669751558241653312522375296001190257929835871658240675517393700587726530341377299375249031286512361198321730577300348061934106498896111724173678712404753655392039528733303345323639496120215616341744891373004536372215305111053792790044132411041319833280817334172125896704401775086230924259881371460975841954393066217951640526022225666205576459740659595229504826252746948086189123854673493886065985395669689412444815591060834104020808117774500426214737564020371439052954275127148057262586047219141913978720903858318586570852247501540465161457912170236123711484716833037210182614172805001341787041915880369730348706175510010633312593350107646560934513632129952056803032417462059207332322521015439746935744657943975806345733122166502899698212749221616156187154920704542616664510934959071502687026126415838016047020349837172204649096754371074653023750336207568437214205390271285902390277469116912756580764930304842680665935238587596833675338112255777620120946511286110584160185724283404552658772705819308540025551206599312386734694533215343822091415457157691886488832007135331319134667652284478422167476502648649261379928092426087540153747404571756925471983038520807252735651404077169901674693050723004330662133266906660292894670870283562315391706503621361224731053475910695049158114008087315112509722410546364497324874086095852675135835591095718563147883032842063109573847345711302383308131260175296666288528232153850085410543175711334514860323648131462328457077257852773277437295720696661706863391023054915136365348755500887722804204827037234540374855640619411318030362455572440900571171078645701622967000661863558054887045516211414500803948672391437893467595792511976806398250230626261000211126740240302919246996504104399409272264991999304397230405045307174116112226913937406725811349804402350041639026087106136830771407421449516240122175174217350401534875180306733331686158764235843275801714189774246699687039890932041925282816114832831933282757231566537869662400429242491212901064969210433220517408805594561227101571324081102640731055820515924323612602651297167990958529650510481321970083794135377472199398957211892915953101460173931202977803271231964612688825064974516676031045516057818093851464495954963276115343007468624501872437638642856176148552755245301065130911827012874123972141136740219360739455255086094452004422736325377322355804346333177470310847455797949937134771066251179143488540720942590893165820956619568835093704196672412250323074262111307527188000777236148913415639042711431239330938599797312048972433162457005853025416197152841905837316941549024717477164519864020593776048940031378302
84098292653003054252338366124960529753470862574452284094335996510849164385957200747230385918003001954664293820740453173117298763437722987128375446057339563590008479310645788644943454403003204834498242528519142658174292844257571055134277451281930193589195253971061775457193656438765397375570474257228037645794125162973142760015226851683488374529103854154437328478020497586437107463252868436418684593297871358360352376436513244425236199741834068164054326053932597136034098886528152604442958125847988918407751743291897055876437421461325574226467514031332033381349314044966245626272355273631084322929547688007132636704994202195070800769706741487498235642179034671339582799170536078647161772126794034951456203016193333615279432208326522226123547392620162054622870134260710961831962731788310364416370870678221425073027180910429705985562795940653797101164752192390755115214426939090791527817944049574954164738439587492702717345253913423490344951485201634006484079429462321556873904126440652661333069042830850225319750994086107515398267934890153377150498111613715434548758339442147005480583373045615954926488654840663340716395560504808682098894282764248342499292651712160654597052156317931757072000120152045281579136354693549261174318917314756231933739160296963623534485201356981013131321325050055232655211065009110560241973452678591306178124078934710243470332644313618161866290323304934039396087381914426331681630467670547466211853448156696027315626941212823111433336115192910512151228284295759615051172341308523117448785640100977569986722647276625156100401231772453172656448731726735795800787687121479010007901652409072343331577820344321382406146253259116082448642180007248706683554644842889242572761804399458701447609918530371331928006384421914702866735684932072601417169125475049004251329949130141949438172715202238837134406669090115107059923022825817405078113002343523710562556882443789172385157288323540329195607001923694394076257009422258334662064485698330288313547195359227133113467154618117939428874016575163512279332850025267435920409915852105642477134112009974370760054603191367091157453253550372010196210371983178535612626259593554937568138357624157326024110394594053539047556434317023245338744934114537027979720968705793163811293018635616348343898147510366182726617668252249146146048225253127896782854995170180612715246421476029178780315216158924108445228033904172406353496720528143231542924791627447698710564499641032077535235615585080518661462151432047345423327789986937947418779955707236384325059996322044011624784660532614577815321618269184496399230523903244452890035068775516732683789027195555437557577029382405133872118947777108030536040760334627042168756039589013759146676019009929520147850840090546020972957104692667182139378944653756340503114644243262428412145559309151817241985249613062723652567820027891143273506672788233265666392996715126466529241380084676610366087875256660272051455762744008180767889984895970102151445111233592217276330711476227684599732123411068262481451036176804278821212017171565182749982263713571922536811552137701293546099291365664452200574210770482399339971815130245056047174773401341807333924597320184786735052992789838845386839228358017130005270251489026642700605842570166424416252282920811602401442401371237288929531040346184823547385961974380117348277386113662708137155785009226050137528361900815314528175084745487318339451444087167445202025892131775102380750308243013252652352042411572624097812423551465211950485592525073796770291058693594567811155104934851119387138458506798324009703504223169391016748426015117234030537450130103036209911822049234392113475834613721367759961735860195843221042535331555215134143772265010422710879809262612446961165642956176341561296060553098292720118420371468518646434322726915489127590483486982313430821935195014021135567822512900107353751336489240615258739354869322438668253300256604144629448452717776285512781392529962544764618892007473621476792237166180427550266078300894083148321515353886211591411219556016873510302693811250744319161724361178310327132516927095815794040029093181770065116612764200996202953912461621357167194414880603413585979352862331230721004495451686352735137863104613706601253304910266763354943172233328132241248034567717099724584743672340024024363166418915737969313988475401446417821879537459769030483515191138351610369443604644271475223354165230670031513248434955704866333266479619683231040879236097211435252485652384057216811891686578161342842898625068708429378305214920143103130710344123220852616352321523861925223227433050714508810701491806933701491490536415162829181576043222621452236904096010530536313882242272217083356025427319059906251876198495991094324754257188641343807069812638453330829640593108442079046297028355175372774421332931105249776392528640821919963522764717248746805049861601212156200633537770218736416181454318254878568559430412025855100921158223751274223181464537200839273188699336252143125609093449326715322153494231051919733700819650819176740558895313444824051325216151303756732157804929424418451992561510990961334661003274049262480862216242712168670321833019775455200879275591805771136175156042324662240075069045131122987424522565102113396276370074710193716011124336797776344379055401781608649043440013532944402813411798316314165500268580162675752157522166745396874760032341551207485809602375078797195817466441051133554851621742213581657360373955543824666912717149155001354234170923643639636132147474202422229257454609694211260135538477850387048865681320660917011043493659725574711362223923775634346419451247637614054495894302203397310900680219691297406896952651000245702437105084603638961645507048581146864815747715318724093186525411113656860439061090134271229419021945428679828609431356748986310610061843569129033368890602532810015776377917230173914321526059445622890344365391590734547623381721660384955382756650713670385104935872321626610777481008674441327379612904590490755375275629151925012507969402948135093761633225530362489419500644478828622000087542336530046471449807648341437410315120045435052001543120942138502305819662572378103561483154742831669752753827227114492566127232615201604974452328724156174062121399409931605467861141124936473273289809150012372740881858257734146627367745779035531141913210035582323780697333551303162234345334228726314357411111527350130949729177571292187659145430834371539137033063247132459179314133171530117260126889598335657069216801435504458718779909680627236170435875080134392551013760224023311245180733365436907679192655002330748731074268317827983218153232882224083971363324501031080883665583012208470952176347129267908443103518335046694624415387400502634379295430980301068812739500300823942679721581386736261952520452976116298322606507254193296434676394596853372237168859216554935433123837022618305952815212417507501450214627226397753542912433068804320013838397392929201353493699993224202175189326024177704524803521759275044415775134741483354484026151957258128871248187632110348451553219394817966169258321621665381637742743118831635558836711840268209336945543875478326755260127269429741422752756694644667495642184280503696493494631359462070819020924996866382948251025876983321225020402229019582393522900864215278124767683924781222780256579093071212327908101715712992355484069718373392535795519033749202357560014002552175380026600178084553931073011881103373889718445531145204456254583318424339220978411579600124601888393326535897231508821623891140381384856443411640516590507131564405770406515297653522168303722156224763130718445589160217264762218565221447784169365463393262532410403941415404924527281887252748597727952849061272342782628560693366124319203259414272965298366358584226477339800332912333123103207812730622739201835990690635495863849310429532775964804810611607542327284976407318160871857457576362404540195570380581159342944945776171470243306337545186752879458125181236287235882027016091847785560687137859122354704024343707252268051368217422102812921271320250140690695023232113076896090742740562206052536651707152744320738097321148787012603784763263263749612029202788683229814694547512225926012447382601153370380305026614062905132392932161537225643832805012890544256741113601574297157322157313749756891045787800712943307873835124305817031620400663715593101594675523108308545070045276838025313934506922167540283865656636613695396993831154904206317298631134662992743550116330646910898127381003272234870233312762273651791181380749790233821263013523838451431773906679198827529330598330129852385700724821864215016289934935683715030013580868422465300648123311220456106682489793749164711027277043338038330521246178661591938474308156595352152387121199272233138620865788352539337481248556023413895152905762450831023922072133609874021184691299515410566368314322641357234238738701181543931165022424307306023866960636081418696431447886892220538733704344919816134007224371588790409218685116910713600529641394086934120659434756400972551852934872399201653618518386985673219171747323818221263047142170631263978197027745026347787019085438144982163104500755509318206422132468703618063846054527436128406122673281498306875731263321753041912141017253148241443207721274192521048211538918790413750511611047604476985024411920121303607594050690651409764129784876192500098389996283924059138078176580476903448603983467078882631876582711404694244738626145192239324551451048573149507683873139888388513784965145555726179873892265877745438187931416956260101796136449214197246668004333846492699948576412867937854525720184714683908018826793198690868868033134103947870359741530461851125852465032918822509701488426654480723676283305969503886286722071872744184840562615645609852572436348058286712309114642195001680451225234154759527800155350291232445370744357360343029064170210649054248503093076318060705982625488636767151601424579255775701038931310532691375402522497291260602941643881852592134616463527475877131652956722461101540391283939737194827372093277715553184821538328216634002392912554755626215017135013081060354477155589679008445421597411062803717505936961500239065129311120424802434813447979305081576218508293137105953338115197410614233683469573481168391807301024209647728867055153628121764808494496353935160171600488435970787427215301640587123591740583044581843381920777336732108600136722549905514899401564245004004344109132935222550960414083201683318629852091384623233402225011753441732564181903922556124024224395705524779558660623101406540797564269667144665781793727184824709236265612956420252458088622411155573066530954985021114750314231848175083222773157311200271128925725030636758391740735233481464274948513331547380645140795370195332822331668520911669616241615825971271371161259153150624112124811847190942512254709283229946903045979936154508371279192574375469689012629050669354445124025350263649251103217605491911336065299336599542835766061146487411584436082024524143889925719476140104410937512972370539400874197430553477162281761694767895810827098181170461118009122041008719714442462461073522961130293378609587301987244210722408154410436129933030170481553495698441031886259028054728675146292813028500988595607414236925433335556225440841973698539286675562992281668196110040765507232727394602744135319398971130306843140951089280400421189941890102621659186513766963348627090098126351411286238300274245475030799034324415937782179971333616704015588939910101907617025607564645521927571221384239224024972383136722506309200707504985625367845414478807787246018448502944935130430841692087960020801436260099429476577071901078854208010586396920141276113832150164802121448463095239715869727484544107018476348482136295767638718923010458649623307153193280357417683373126501226420465076311020512462385095545348590868520096677838529951894790952927856661919513064342367505502178590397202524730112030612243314988589297543011208742040095705372111081653218492382372293230412239191802301671879034902437935941856646164270375507302804721177020353406856758044343614852267301976763203263611551711454873977875499143615128301200444113713943152607527853289693158940020338348283071002785299280142302227328822639917681473811418822347093901189761271091210122424587103428828708830370367688768384807455709595865123826836483619487039107100918080709421310517371954077136690130611233829222008324989392610168864695087741920780003207469013302737342381127711020416142310623733341432161111228100954127132325506016368936799353352327441896648907141500124811748068939604426332832976301251369712136124261488060335936431242167856736214940290264221252088959340442324762490507248249649574623114716933107790528606697650201990309933269161080341221124574597423304275183664461950410709551214477717877995475952845619009253132564008120625025383427423084338550321923787276982784132644233526816699670215958406853500252214018021751248619496244115783311484715613089150652647707522109719896622298542531214245607043108218661985174273069814128761688228611930444375111419787019950791692876419329171763939255892177208819312421763610868301177556897692398335446627462487383887811271884705564357796709151175752097641775629672213300573827693386230514215051210485976685461784945708761664675047799123384416241836743632730162574902982533428596778461114301456068621387108596064020470477982472216706393307503914548305749325174251625142575488417596398221533244108463222702376620261712551613875198051069706860325783259496394321413940846175926613925075608240225598343003340933459431277439215001380487352830732223285020694296280511158657797176864780370568515142324579387179371860850123145015390180372930961164089315950140239715293089673273311895599026443731129430422509514581531895541304232314222932231430231114423962196902170736010931455115581940678865505493673079965743318262894566848979309700314784323692649383990607461645033460216212882445771440240535662288141795716355434299159511887469441439327837718673578186384152213100229421545257541025030396942674110307381218111986468413242210259358267312752511158462057601206023108233499926903529003834478757089200522431891474431749085272983623598853852622944621180625123911496073061894659041605318176039064188322898045154915301333667394033724138417825260109336051564602050751514330721632446718374754877169329484595786193466233908844535136995301307167810732122463436152422876636121829235369091475605921624725001539238567032890961101232755375775262442061220573956016410537901759632117501083023183016587750912053149312608746759496192513901037598248338786588286733998451652716161318625301796575123731506427423592200004720225004210807630857523923400354498809517576224191059012584590264806734800033173329119758211753603729091701175548517593021936415407097344343665516315912885619924431511565072553883001403811165205020008513476289221549374470464316603130544063179026788306743712301423361004066832857407823550026050415824732161984582709125087822693644297554031544263366146965926274647141141441471494632080911239222243113441066854401160156851573212778281427368110032079792357916141499021829565228461339297906194237079853857033414102381832848026465625389046680351249591747729632060144666027053024972510252969207353418347228155773825916813465282578788487875867624480235076839387822778906851475728333807944779216313630916909445201315734303264325382270236832399974520873360322803357353232175173140738539278992854214509755152083461080362871558051213239745005709976348912411820415830041102170354777518835188029978242565698467326454604347544120470673841159392970180447094617218027525992765726211472851120679155254293471255264523517652806184171615221141274014309457484137616430586474422004406652501147155466381687572444434714740295200316019350898850936250461634716746249941396324234639904458170166812931305324871908589747630553428461485075281303747779810003178757227074532865007513119145704977250316026625125879320376124307712022891828993130647401181130733313586356653919816368221731643132163913449205902008002250155174480121228314911514623938882397267347524382813199507747273771328577643268144576422151183002784053936195112637791367864354710203187794123322420681041784174997585009830273825431109665730065751642823219520737808527709237889663258630016373201845101976586041655369868795921144313592447345130554923537118520979695419541816910162433638053543902760256692383402516668103618574035441514558862112849280410150669566837386599519535448162031352246209462004207939875430770862682109000131561917040114595447188996991373689353144263147252272383022491901012127610676219955045732038851022906457283828596774362774163661147237065332417796484651168950497212333652720103915296602519400852900855285226424413373073614377091027532705515371287293916631395228113981767363563867676248219040402771021477349011125705648013333101357272385930236886327606428013354731969388001096202439701326710329514491230613309879165983106371484856121024077051033249147316730835678372433331127335312705330569481091126616415200867793732643961950446411282132698756390683494937258971851210834904107708979115405114901502895331428525292072316146426445057601210339109000823534160608721606347736301983517937621897036304224613653047183542815400699584435680475761489981547909403117835061067639499021043551859824233172905173974623560815671913290488220061653336621602218032500636207087091040768631377221335028915190717139825175387121294136885478442141669289662697313159279946112468915870781281133961621852129532810007329096373676835057403114893706681713124331131029472215607242805257849458109196349081206313707006618492076112904146241997715732437109004225816802267319234068862911196761131020669201436112753033120767828812532523092334942486535185655066746425850892015600400859009320983054086811814913225563748795710539743009699524921614003510442421722091719365231459138018366166116317411104771867708105236434262322836763813015092749071939462740285142415552907410412016414299715617091400886182155521101669552033829347220345313520113924642269415007210771505544347394844590492507416382714330005957374627874380411916321756454348784726258139643515500033942265901162671149517134181442261025773292523508033780752932616090223139540962042865979141164154455875610321209224562539276734853134070023283017532753051960170258316142624439738619370395164825136633522969830028335586341150701142911705833564296463819942692492894083420591403726417870021607316625219089048269116205016601297199593454157666753156375991678417455093313826333326985770977942741290641624757457074403410555926347249217038635711615074037129469264136171849227992215233103237945415011216109942784100743287201923145058031224953604729164605447282508318472160337150645586435101809431346163249287907436885313491073638378320539653631415521832443396155284287121905325638554362477990037162726783222340762376446338366931551452844170253122820100722481257468236910049896377236267327357639246963474235374447124949666032975373882207277568110410591273018916882411759900960272914221044715354055392774505204187832880045742901547044495580376879900217629025552172237072120590216113273483389601306491820937609725400153493762744957661993706412862484748227358742820285170101905221070036646974653002320683778761455672684012835288206170166052431779342151082530571324031036298201499040354044519913561337065972650798410732136163288897257233424151833043461474280776443351417474223266615216602819008286705320092699350622225179733221497982452474415581455414231141547298050576655584003022264434226280735709699462674875570402153537954307671911870903233316466309649110685761885133259239250182437802401642976620601562061064486438365211280312933415921417364976438123475141831141669146246262672350528512636040829012437553478536036743041463256230742354445650843002965273993301618393631694223133115440066112273427242318653174811011220586913215101110210443804131367554819736684970084652816611838189211773132343574015812301869632421337439140390182340965006526340645905436519320707997164282405835549233191059491130669692320100526130837145491422664263836363402666306867828705401637650288897821515578454043305414761023721120838373251620654788963026610573140270241435713310901608582107108210637395410162438171642401876668262753313319138432010535492618561083328544232685236006443301515361247703987355594121713590030036468348733165390424818100735816445065571861023081875608083143738039204484788311914039216455749586964419315350095575707174114928433555145851161158629514165641388129676842021496714773795263314624319547799639114623264315475664273355167754962032889061006103279514621416434934532325560356192354700026870648584745188400106475341183728684884090864245737996504227104502319337410235115348161477402133716861191747537763175503244565621795173143537560776136282285763494947391374990816666532522476428480269281048123923355066326624580423922882097113036401314247791960079043358438046761711206293001820378926147253232456844016931156264218771457344475820530413928237990012170993344461649242762681250538455576719574260021712482920071247329077208646767161299898183890206125700447842702624125920144542159350477318625528164052245202089050964248262657847603520427818127867030106824508805962854347276756903795112890277260735375457571564920386293669211950290751530345417537921259955176765785205891448051800132434785004411534018264361632319204516873693238732683812436329131166667015241316613236286992963406287310358474786057030589922852746926511093574047318417193513203041442004053228431414065252031395418443670897568869532944331167046339378132828302054714233874189834418438542707061872656238016672125336063232012136004871621497174974371631972039218260211805781084032187146684431170536520462461801361727322894827270958262032563665210984711345424416181332955802551722276592167365062097455387526299211926587069434746460643422791151103040864380801575998090828553240411811251836517228203658746915730299263167772989226812677333143016949323449022620359289024214546479364006653154279534811449279850730379734353206012089547407982404812478203002334817660085477889994786521648578952002715392607163746916613456403762732705165196479838312312310501111923701081482959474333170633262909193172239896371725690532432641879466002489351035028682539152764156001747421153996377401944864758844402191458419512459844997687073515211533816634981811940410449036906296874434948131740860941772534614406159096056742307063106456521173444248669092410211373010504619533712634370851151681580304946914901347581564052616955408137468221884122124411571644343315599834356104084331179511843508963378924467612003540100492133008682963649718023153110663484576704160875033380188712007773665206520524318845246601981082960495274399105455272751798191450960110213853489494560551789754383320357360127652046551136420843605744011152033240763670277972868312098074391150916864718073881861010124360334372054917362032360898460315375723632458853021784261415338726221821125353651215629978082138371067583149388113324117912061631152297703175237334469706372971491817532085644974130501721609054813933120236751755714232354229357093341192326659513562927313025320031154948160169404566345885871016139861223453182410438878600245361492131274930060012595825870947011517481282638122698327981955054737788750071652536931303774406540804287370589354413408725133200183200452173203632754125066954092319870429621160358430615791028074450735824024630801715029353311022189494333970287694228252304787832516112410541856439168471119196699621307152598715833943055254197944201597234758992812914286831171332439455621422604011057649381541253039617034481056222097590590700642183533342892010641069111032818674435776702124416454090879715545654442086422851243105647318793564890410732005455261314175144369574997969896052847861248596982961595222349731039244796627103694818376612724480599282233007760284060119108194827071824506180258793731761169437389632745242038311952201270880291981215744333112346438989052973868373811802807255759511961012717572596307593386968760564520414442754319403616203784743250708266078270643218763653330140553915191706304510037126122862056138538056254780307962215541493330242797161089508391171912954882736721584516700150280642561238052032146065918091245107935890015855545720443138361099795024349303788328368397743762228728969016762790463148055223625489256160469901263189117961915938536242317237515050403865854121112898215459745840722748770083715030414181472780155721425464892026395731025075624912612132031108989002842689835082282875881931636667152012926831612312895320055162947474152495361525666653613216765837883622870615751497875556786687043520931826290807460144600517138035503019893337294671589184621036059264183299281781715713485392157602308629177651367505974886954540737806201273459214227215272142644282890671318428705732217868662278532901281998256027681833185887012403444611083651531822341560376253313837254868328738846279019253336745975403074791467161094820918133032272000624706321117256957525275876036375756104604313207078210402842017421262273349646169625150518099673211574532533134803155420032878511879701285499381092631060249625127676125507997140694426747474010054488131729488169771223248492848913942322601267690844152272098905261334449456741768025053326345176759496765831835585958229453971252162227192643766483906886292053187088340711568335585478543751441036834817206989656943569519655229088870004284505328484408222282844325362776668245524603833538114533556887178980099378395824407731627961173048229280716902031132470629692703629321266228448042456630043823747768594441317935624115554372547359950887633473436337417450800109729007113275445096627813237953049608645354619333427061686823741463222738951680722158032201511487293665237425911447745207721276449956583297804894201114291333562002211132672894074675853676487803755646617579857395129206117131121069420634828115074476379217369181789859442492854953420987816210905977421746265294871113845733512421737759843529901367690777442096144461458454341920653111845464039934293902119601041530019156216927661268650974263562176069756421242311433090063505312592247414005069484568787702176659030128997934826632055331466144157433183173049815293387738882352041910923559725072684771561493775531060072291196744860518428531977275402948174777125666292669019346641846686945237196447901557008928506529250645299225962113051256632659386327570758200256327183071812121493163572424975230163984355017220304022931714141449759274093165143511720136071949726452775640961010332587301017231201400510350675321744439511473411884003291159053743897105342205146031531018891599185527001072418738710993953504951347245804147413744060930666421204893435555400267445960165104747302503339181544023848817429150244928270046680303234714207022031787239374470219120896617543400262709100613371323127681674831582070924406519495751168726531099072456226075658118643308572425097121287024367231938419721301692581353083409005668104856486218175420273730075620808132312909904405487910897731094955218558271890396490396787621342287261428849815252100031027742148742280375855112855826690309835587165091279252543762362449934378958947539951442634066179438272083566235112857576324112134212619521533684920482855714330485227669084132152433405228805374667911383033696162855772790598319648148728158134490108321139016861457105466282237530878100051162238562101419323888920026824007881532740081397184437900868268399355293437831822043875719667246183030122356361407705228967531087931559014246261365065439691724110271477877845742136385993007954809727888953774955325475254912256587013357194010545054613701923866538025231164780494466265261096876002545943872992352912325593346580314532457402659638826588083220548920924367009350223317752854041636890624381299145696121528311242073346270961082813363530645352833256615791106960124837227684113301495433977657321655306286630244232205281813667341510877002056756305362991756394964724950103166471374362475030155443147847212337211156350938878820031836256662325065120270650196296007639769709445150160921818016484270507564291068324971607316105384403554893246323845408287930902503718308461485909115449711467873244863625635110776205434076470929206331308121013663508451134591483586706270578072454756257103736233816897565635461696361325628983566685871504511049460043160825884812556343141631341433640553028602844536566282030293373120327495573832165118633203189164181555333739025457553480632152693339463209154031978585462229991200314281595033336019663034181292108291121975927418471737465738671624122907252420326838343191130200454841610176176369831530976889027411227407087256466102545334445053014854952918726315375752616509047884184133821529750020762646410112921096441342558740548619602675711744930267427321813435440258334918644554821385058843343675267162786387332255469378816062075913080126916145174744915432024942103677905282449134196306660151918414132687315968621150431536216530204944849970117615145687156591171108253324232629487252493410525700916940313957339009258669844180750863018163065806135107845574909646784069536727261340666174044656960525532216751489456000753579572243645623635111821355880255833757110831716254326990128387387505354180650439983218008592510434874121130317135220414740637740352985702255032024102966303111169137185912456588737327429439046225026709006963834401051414922951413091131420534654402553290374546341914752414567241087953362213598556149331465191991873791295981627406850020738847764639470610587473983761514068679043350510120412218578594070476510586137495679048708599225592582831792049501255387804146538552131895338540900418604123103500316742352836195606333206183593549219801526732582415322053257236920344853772360257008594143281282491373017954568510109086173834582434983183221107768878436398764868404842002494537728297122256060866171385888385654132991607657877977234742013463787992359469577712642976839099345358169727938975381575026328135362263450074630893264568480102839015471252108552136307420831905633842871042069926545355357065664504004619471127311701586972509282539613323336002165747166906626994074586866263038822366716113504428819711229215327432301212329312869450409212006202144677237689240422925938270158515479736146034475458512042880661132751141418093309716118647706759726205776532308836065111221561904223813270517264357243129115401651100512442366132965609318823294445812474618020965169418112037038428061621702101873732014930960328147566180074492720550733644178920409598340602030030950013658463283540669084516916370333562313495369741486540492040241661967296786114520071637150518073464307185171230735012383135530312644519277148746865454724038001054379356661026655327918102576475589353060220333442170326215581517672133307294451843497555925452339243789199336954590657939886720370032164425981133924241359080581877663253220374406034287227337730542791191156181953310485765300460736931923609775084353009095733020876434973566441546610740881478207285277167136177497061056833270075060533950370352424153624623356627050045646352366687658035644018111493874684161216922430961903688640652922177019626186462354158781446494207380112861906243317145078362141235672411603796424225874534739006451680302456876640240805709133020094908617469882359608311083551723262072522780763755324254974043171808125929214438275409889708993135113464138513172143323610283435122575469685221380460448162424400652369767606688084780812271105108667684871562862232718314575879381521429352371541477788757111053651232279635587892154101907194841138458194244512001796414982912721066322042633765043330708932924521805730604474081425450414062050443657201326412041353533475281203642246168146059229057549221157961135343538571852704887013971862461217304333346513540150027654944218359416142220012060304640750959800270101597623977941993122022682861817731190094457270116842722504077613432021324581171498531518562130831766730136817816421032406346339162009883711120072698713970234347548834260596437534465446532047497050602192433691767537952713289226194329904101024681833221655056371426232384408803750427270040097874863037688531207468288602469155771258583062366429536542232619726765496760537480295963184825360294310552434411139362461668520021388058952641117550636426810632132081023774225303462662985243578996104941314482127431900501314993127201290830216998886595650002540728474198028676817967238761817255340651852582935890909372782758880768750192832671760556010073017812659322156928320179457066218493592319793969786626447812782925434060856174197324410888766811152089626359585212622546874536815924422345017602055377625436311010128325168730991443044779909358895414661471930481952389215455151697134416935964567520901044107217152131823513321522697317432881611948624974585172587379235658484205086228738132141911496142675805617014428453453270720886352564182274932830753123838597840945694974923584584151243457005056227944593982965035571129863063430453645093207104600231091250406562314259469222632436770216688697112617068073901322409627156817173161312962226128428436907929150267353619770063365204329294904539381877754110650961014773477025544761941509624773562437584124600556991553312323583676204607311455010818407414845899384620172712394422127532070393424372123722784250053166073902798163493831071831059956979626782904473630130924153670493586026113391054436923110090147314374116130302649954291244732223728880250908998662370804955822646105311777873405160433145374676648828002530972568850947714102333419542151599048091565483167501354425488975200361052229563835309108070081716963553234049071975425323345734476449200279180232291205262032612143516115003853228269621639636718263105833346403817217043528495702691732983209346218596935107340026617313822691792208340155789411228340123147372951140684943618812238150550596730664691882824617132987902663617256588229925235005524209473831748884741393068125515371504101340665274257108721309399298915205243765168306402664486842207947123174001363134850700131592174017129501573201307583184023238347801909930728894084310273219610313530911025329711328970244127825929827166886573856209011458137778561852240802070791038858820173628475296657020425214851131817393615113560513478028353942932191663163711013464726262730238017082335013327921798511318491365203820059875257693865123602142473359807106043576011927415825976266563036921747326762243442396945191765400974938356266656735659928076235140373847398476516470962126093678550016599832713806821823442194775190763801336240467361560263542598513411313702520530538032093579503623124220614575193229042843729873707248207047096611172754835611201400342614712671522632858241795512588371776188445406446640582483576043148881438639434182050117005182504786511897950383301603075097945369059505873390177720202211321747711450727768562362821385412379927205947962663745226935609932513671302153135597989818224784055246665205386990439144659286685067057453563323697726343032135618159633835881813229570336221286634489131476662523245615527267321765085360103880909369655350509506689749011423142058528916561637449095541264060511694550853817961461760437971086135483419775141125502028620393149922794242324476586469300162821442145082397566287314641702185791438719226720799229585101254589591568444616272112874609691535481980915743555610313112121405266817294695531118058735051034551434929518265351293329801660354596695922239197662249414914105258164646984131412381835805046124533260685771009643447886639346339527457891032613306341165340778141377405453518741610448411872908537637345275081300518949304726630886146380617546336094156807623952512860862164711322209467472457299480917089453219095899020462836793713934520211965436850304817703500570913901106915892181590339181593326447304798704869745410245077864250597284082713394751961311537011104425851702807613095283737569945184544824730918567048228296539474323262551322230085510190744853330734489100252458890346731385069570626684452144050193724637371510054364388151043661102637572200528908873374417254350204325029472897243912245477021924548097104665236793237642532274288340401441496358638336345233781789311406177785317601221690314981534155467727908939438790077328584301158913111021252217505144378540782081294540136592234882684606582312860513036204784019585027520037700638170531433810127110597190158385164846442841729234363071841611461449095934701349464690945530585154551471997190171070960274615073638076202544521199118869004040003457202463013425953523038352890988150651197219154591525573257024955793758946613136748968721001276277551224600428580217247505069044158646951804903973755441750132588981685179143269080011212752504617252317254464996230954360481545035331926695194932022145238837077620510219403856363163918729860241188367413882781547565322705575365576675359247122680842740009689532111844583374750533564498518350561464920654846171458681945149195300178142893784669075876918829367813767823951597453518110710432801831507740105986143428868822359206422840087187458809866572932855732528738720171653068446241935686034462295993254184242195915745071538812316135560564669452210250538564103477005206233384666220361116124573538304853487970289543776984421338313437381250928780929907970003266154282797023690707366266866366342269812742300501151483475382492726679309890345850120228709256438507718847719011127061868856847032167718303643793582207121853630547380427398928398082933007874667891452201184522422374730612172172463030550521757749264532389388712075315555407221874444510111138262593635157226723302531324545753112680286509203542236804288030827521281815797911239041462420207828092761214132900321806905212806497172281650605947774487124607122008315482987070738314579915555825819531475202496650815030567742556519703029860225154211615355138684300083734397005147292015610334967041067060399153361305948764670544702911802223716559156233562642738430972562243173103140957590052111717162313381895278276954474003607196221520130208414419961554674069302045417248253713264084780636314072168214854371280322043449028854375160384251422654714473001359530182788407428359612132033822031351041643882703838987123320737100258417131418848460924283922961315610295246004076392894830741010645180706731532973586539817549458048213472834189438313064905161309323372752447580401045277747877440232484171031393141445741718291953404811560838305660645420602164326701753698209865374128331911072662756506453273585834087562583051089165252225517116506603739739204756829641791308117111255211399355298258711155778734972355639967769466546973026180492828883531033316077399175023133024008648867173739038463540209109017567205000472052446322490717638499466228647406131060947402030712521762067806620521480147129933577221117252794768221104725568194406583585606634726347650861552226420519665205641001271975461152109828826314886725707273010142338150769025928724701637436320262526074444411395342821401311228321116345266928551411937568313846100952248083490962056102358968632742926675321146321131113604823970742650309937594262713414389083489307791397453811472393205384120794133542844269456571161225257135874664910544138228032615559083884108120310037037494674426011356223774255201116019861073159188940363751962694602912572949019741753741739231150090176403424398268148722645522137512346361403561131882733069221912757778763088692517318298321019803565173507063285221942740556813757690636042770585492520026644793595378525493759323351057780214186531474151511713341390322532149448138306495105312618655045577328441191011721366412615977253473359370119141926246400023807192942594526477564172209852418334736961255365837493401686635530594395093816848228044078469064572075989048108105512437651917099077609468730005386677234025255657612150630266002465008189907313052248365402382834221606700118220616161162638572577953627957643712571920556647614251110750174132746077257350299832611402559029355441231057437694214354503142415265029099122814532095170655371122773814153066514529204356068194845155266186073234022501169149718622453416161384301481715571752314652822127674566061122526653454160491381743256532220334522027414332366539311778655153104424395389901995638810240573478756111209751216206451440608475701858071014221060774913674485042326210517134545925238173473329348243498715677353026631840029570951703767850238612349771153616108134003093685541398155577222160483923103752940892167961242781550256220969582601700912085420330754285810028201707177647624567211171878870245499050630742209004912231439318098831011287131268848003088274101062572324182249137987216080456770456943004102618578749233198448434509851148280955132882120864615794676507014619115208765183239003265569110821041072021178210780125217286132560231335465426113204652828952239653391706634761207383012314250979650910013137012337139664845553510265245524999428830585264828156082153100644011227122313466226742612113105001968909256154045759437502581192845236820335683738840051353413628188592153896540354494478439067703182649962381545319525685036247964604247666127400556382473103477854818135619484763039311578087903414925934674924978835462683333707335247740008105676468616127374215767375351450742993665284664503765188815927732315244373688279171291024519894970175170696260354222932108249270930412261145672343232569564160367625880967026047244219605135314535286181002591654680906127921122326112817835558143166136416151076727126696192233818615221061373026149264873044608041235001810821843951306742830486982728866634237710101716147126033266110255418692806476153429161905787517167359598232036052421184683298544427135156031229560229418904752534870504255095888132828938790008209403902683598320060957818582543988318640896939025101492103002835692130181765818946254237429168396397124153907566716192067741973401415693547045107846772560355227104039811025016206150633666665130786748363010852625784076427272574053537155706244145234632225667770651882222483871595521811183035302915517824978033425700571517940432400432567631784811328875740101101101102622072845428814342038003957702159052916819708440220138138076651045042028679415638245224505019199690952561185504686626503661605043866109027722658957342000714692287357701302087027389867230743621216011806362942320083591544619526341858465686878855333611319162217804214403710006522931536719071447241497947312294092390115148119342541999034140627746400839456168213989317863448098036169433801235417957191176292574524509478008083867289701020537168543754066816853923860177546810641711503892023568484294643871037960237382318710009224446541925337368152043848926299350402404845944919498371115051498117388906238387372684850139424622108173817119026438346901370871293590761388633817115225991878313672069301011827542532971121835205164164737632044997149298243326653235433130313459080485566470714416462290337501823400260383113443551747410860414504808318552306338469532180696573208317820829254090175944194785780341978624019727454050166755970329042202274203743833057110845024581051518036311186472032775705450035302865476678384510732671687760154006453813276056425568898434009886310900371721089686496753973221167544197543745031371702075056177150034334105082132653416184312471644576302763352726848646973993674027305835242178147480193839642512888410255992144701939613312755435405031363202728535704126687097504568357808312271340420805651560232022844312956660131358786822044142811442182366126215261159959271563747749693226536125814183746441759199220728835645402448988742113054094015419160354243082787201846150197493207915485275829714150302788571042685094619535236909102873662942390794709136551363255053310628703794409735039617202056077047358227501653534047875858420203540729266593719290313714896920332499272451031286578559577659282482057629009992260053760567541907352470343350311936455256128000400316121580751014667000567750967784943952131645066634903545938789649053101909330892768784158011726523640169482663014418462178333938693262351599048543317313442827199718186100797743989494954603753933334843490114615974153112353353678257290325265014666484356081072524337977412891559019428242439660032078824697106051796650472068370709780090312014493530006331160809194028947200528117231593581887147847050365534159102729615882152722225162797203322783947508939649141271816496905131298238289726372452151378728823777848700817359617071659561161032551491330334187641417393227433824010491210600516571641200536155374552032811129361131701443457377542827018710503850652313915765049468321807742212206572824981518765314838992421132497785972504689141758688148773729663203786063424151221225291443611074933574317004771372714734821362248487770259423287442147197050661697117233185281301414973417613323882315579979194351550818142889926007463551943848557453214777740497538022721104461139335459901653754265654928747837765631189166917170028132773462771162831132849768510353672576840922451697868520118939722013918320602736394745475742812785173746144198612464647620035879518502745524359501466737453794670185162249376497822971505343081435074514210671993624836193301378535023297147205579225338126023916681853695800709144031768116104612289636073006849520304843713867826605592301718060212170138112823561764399425012865844829731663713229884927213055803427142017571653278952816504199431436035027347882677160395117308938241434175811545278787489133188476776528769452444573045246950474565816254633318714646330230449083579554286300786453974821649474259049354682193389426855438556885211657878868911966376256936344749266042504115511121107325661774395130776274566642252540782182055163280294172926755751191480272283204415579449427213679474210183503357760544040601029699033126242582034532114556610255893217026550556735696796187482809532173693119452435602390564489000782217597908673040949885607267759032153514714354437002059691839553117284917972792485211189342561366659064602238482774441361828730254911210984352063722651351393312575866554230454218370874114160776352115202961366923741931851140080235013080062506081896606071363022053401809613536635551224515765660617827161288882915188101264085901622403930127717396199411816353822616187994213722813207434379392083202504035470577978824823878346701014056255153048990962687553871904653562123104199257421481130117231322790201033243630281422355286431912023165347463754839999123298262520946254049673399727715889763207931477452533795612294209922572119338293289471327487579791114323929339241590649779986474129555368461842960357516750064141600883605134861527113365025250735316341942171847962535342122772547281163605016800912738067589126827504311359845403301029386825252101101943952055285021230222787087274451310446187637112253050345870062680120035960402979639132142841735944201116226170313284988499234245584144292704097227478499619143002060220621042383687215171212496294412645380745659194201034593371720478717534651629972999663315424320356313236171103305595243048613587772630267323429647611224447287376497236335150345095821692531827454674166172248751237502830401425481836277976210014144272326500668111587118680063038593134886829326626322061273221868718605471736291131531755116246380555468135440116836860901476530473922264633093430581501632446618593736043160772210122565912660234132025391213710361378371251330740370236590781625199015129410112010577331366712881319117174512438635907523718831209031817550778811581454825442416192400043530017986905256634178164983200936131282906727656313042891753023724177443057895857956347160061550310204490782012166046069426901433020727504226937780251612498754673731945248251018240177611321528515172600083411978420720120439014613047516956213904853366413015669047353353563911942948482158794207217599959342615408618421608224062087271972373066918153249081570139461837380437384314292246235538810358372951925986437193476551250718405646944213112707493216604224450042345082273198999110155542560010896150601804931889083713030570614276875870331070557472146051297434371220715305627614753725193311793978011435292464466580018142015664320204028737864284955345903290530337520282539183894414598875116783033550870211169960815450807011030324161973656975738707972338979542222052675802050071030993493765042085681497443487283604003511489258452730901102590770203294062005228215165687084188472538771427891494799414511976444835821990737203961922095936721370258655337559373533349702397665632811442788493959082327368617265010549523289247166341458224831553213008628216027968146283606664403326153271952464237391686302788711051672944481628802335156091660340418915944640264340488524820818301344679870449283556637078536074263907322744407197425961356525643607326976134891459205269362062670152206497555169366984650134113512032343552510607440264366544462454692853694252630935446690688033895536115971554824823721942422739502535191520407142124851871895405966757704538692023765144788714050554303145482862810932542212540457863097592715442035228522064947141047203101573274553156744393169482339251374541371086615586852579311401379290291520562184212707146904056407712400998202496246637418680081396286397979177898073697086578271801500057118600113081639696218247876396049346789241511434435205771433288110715429520842069709925251376426256153628807419316433155744176277186739333820557619465298232170480851294137214136096262489632484191229243609630033194215026152348069361982246292618804590806227527992067632349838064320148171685964669361518270014146587222009703468751758606661337219472725636573739528705103951241697941714852915289725042933413013323932077605371394435306017638101315233457181235850459972750542746448753316932531630760985003810800850693569269997938844611141403655572034123540077890533353551118449021326688090917753569768851665506222255645207073802581755970023351103575460119475689897360130152528113577307528418368466576566055128601149593594231280584338406897183916749933691849739837519495964135136050633152530725249539500574440696482150510261044190612677573868822831947498139991058115019945189514389869341415506473172067170913429986964665619201343848647258262402132103905768809908184234104522619283513818467776350664056464743208526735565460493522530708811284444903080813570141605319144207268217049185755440863281811717666328065934227834511101804167437233324660008218320261431390214844666052705622531042151085262257496081827073355883383331227879229340222249129985172567652315627717316154263117821148746857123360786624194865862707031028855038927360455160790385053784274124386201070914922152484227395941460715205435485620532090374999166141270840917882130465574572852974993611961606762100012759166218640033224131232033383453602555499320165313029814994021568145511644641641488684355441424674002063672655345087261391416434682165216266504066246120735282828737351888171467227951462746355246322084750275459281130420423701661276459004065144660425427265921146693174354889115095166165301089618975044461600344513607788353452104451711024140442521581443933384515761579465891101181187742357742433524800327650758181009004839129320060184084195956127955144074528274869940089654190142752812943456187154962599780303316927965392157362321190529216544622165055575551670873802842543766725127200557603359158074729720072324044539934889341032068823416643725348417508514593466152017152657732554035028783926230306800478313059517116535560927038202070528523660039087877612761942034500919554113373291180752117039113533276858856221161485848011166155290462843785445209615352800533787902252108549182261628590981102852139727879109263135574584023181896988929603461511109795146535793964347648108452697249146288297211001172061923483931514612537405747568300093024067706947220951607948340232551540295120352598533317201873247805242335178254237100404101652433572284029041737021859175469169348042316692421825633701334768480363753235311050763034244971455618042146203400518864999031784297901814274548481180060519011314230115061331267823551271845767737181434828913261464808122507050282960434512109786679960721958772686353410253274191213903526666076649613954102057506393043358126577156502811492863500017125412787472690500395864183917984756302341516548038191717254966119617240014804661140897351182032111598364920802817384025599162391339260815151325491677625240887948018073643921409848088439787297635623599100636087450705438252013395375411615193231659183998211485483294676694168424833548649423536925148421333422947523800111792127514702264634280193006345994428620121405327519259894987126325313681947133431938271764490381407033665078052407680218169746597222101403585720315582114008950522102559329683936487036723510061145473639597639592234481869745079113504593916858712507100555301969570041274737472458762509146705383108287549497826672415851317407780988782313242770066230391850650522711007956165847634060990690038421153615611809987048572129297251572942517433770287253947361005112465555392845402846288837110634464412388146157023649912356777964323204244953597915271721200562252219848494636621371977909106666149332090677641136654487935552167531773542019066050124010926795100021926650439807678107078358836521966667177603308811253813384303373360760391470613601640648068512348263393837028433870503543308790437035795324865601387219218824521720230234212912614534532364287183952654330732462547031903812844940265049431021575722318114489730441555281252779389909478025515390038340334306404933120521242056140470004675689313233267274813437084092254287727427541411704419920024400762751358447237710342072785962069018910848500614507182252983144040726599382573970008992651914358169516233632203122709523993741235154629186064396623215184039299499274068211460445863117101324413083375557423790199417239298459312958538637491221353769821460614627124135715591342727053920230923137156797089500026430934418508659236018965814289278045800290985051090935846602826031854983472921330013677254746266285541512023144826923943260922894353618422222915451647213978918327137180212383261667320206430864111118635274711084090753125028363321643390145575325682368784113154250026769682757267531554012295375006338973534523180292318668343064958715533658411113065225142231009913254724740379441924266118104325924344001710567043512659239571744417023423946256887111369229157329006790431788864009197522576992642401995305988610238186550804245179971353850382948963253703917256582320455278740226344390537182310784948866179579683811154847626699836601868499318181047634770088813595821020012601884814064904989161262813880861331273090283837846467082213498925236314484904228965527065342295111536228403778634833798254035038433499856509339562876776092246802990405209522172622160377522472571565111800212438901838432616106049957554483650214487240925467249688869161813142804346614942051102696636154421969938887668390969396219212236570378151811533961257579158039817601673344477742884763330915988121878311845468401410087242541927210641636017364045940700517957928016835457321073962114206101266320578522597219595212543763317337475248945115622160795100325510653694382216221103148845295618200752061607509504479017990847245306104259175642847872301765855704138003470977417311542611101660162365597116271199664545121957207814074021772172534500044107826383868256281486081137135243819212509173233624619133393392028979021021724239527552530440597101236463172503531200710713322764942276291358502713023483251295808166201110083610285364426107772217753418817276545112123070205363148274571224762352745486928430473936794556526575166148078376874478644106248125304383705506403633309446883000270007114111446200809539118611788753330857871132194717574427546381575797041025831051527616317033210033812321499316164453362990183450023457946172348137112565613936515413042232623469436613373590264621893969804899395167404543656511463985625165347362720627844451102194073163051426221695719971169730912580438434958258336713374825450938103223998419492382698316615442123087933854022735341618127013063136642224082299573848100007526324125231280701298154524153396299066892397380613195816356641239996098128982251698180447470572706577676874410657003165691031187169775826462835575664706460606035430050270919742864824329287753734678769944687363959842940811362313215325240309342510896550097599744600682363389302045800485791135794479169466268734461835168241990971001069045129127132726924507887215321104991927518168326649534390273794158930257425778689656889019291120459127277869348310388314830702328338620800143381700182299526015621063667497766815669022144223352643517625532772662303953178844077171586821393662488252700526437670795408370713411218496197162579122124237242949024875451023744325384893186621335299520591568387497406511020329284940623747899000521857218653835268523740593080871716819008213883604411988001313774790830336324814902711114251367732891831255205410080120158075529015601797106289111647007254374888663931455930208586176829837495732027507772652826279919423082643355297580442399828136523583610069115838469224754844835368913713166254476814653913229475115169021688661312600076552993240323854415827281152913571212258129875121604459645144416264964240362547878402978671038345330274080201263148333693524272432099100631805287058351172167111665035404151153827024141269913306119621437591642952754130537660123520217576121652547385337808711152581069664684135731222196309420323221072872368925862788959478649157942433460510059141315142870084578569142109654708818500293215498223335319818245009752016662617108537072081331183449006678205952240454992874774331858650165531135008303930779618041918191739553933300410481260787336004146751132548174750342798096500478285277413466672835458160998616060953483206506721839180561951375628740914778544123936832323404278115535650192268560415245444857760190104553719671545526123005242021071096135961843858388916158131180860459438705844114474162385756233607373294247140147867298828440480088746412212703069880079423497473446455172308650232634652984753851604051061022120652840632336881940340188678917930536447977483646003862386270115075356485918866543602058391985051571816327861982456214385234824611924582836913445010797718654293340549045092233026225126941326281234242885470800672921860588040160958647749726183117108178568825605130617411461653074092245820548161511108912720343515466045317210302785259336190377739043243295173891274528681262964342597289922573005568944212994311353934306812313716169191391322135544504048007037116244405891590484937050153005737493986553803019870426811313019214374164731532748538580740426991235278745878701055911971102913941882240183535211444244413928508380791401792528046753595114471572578364184223383963830343819335248698211982105070447231611541724632815614424803648761778126948822243589116267822342218599316721303229625290553835499399778701701992246989460191243586781173982508421339541038684066600004009550390389247537428524306258315142316767115182031253162867467361974965250920467508899523507737120023204673768333815881123825204918129681832657114054658944820510132890789764499530360406410385090111666357198815568114331936711521692303310889033267485781008808292504117516409532948180723644488848192312207707805247427730864623203754878399280488574382123224204666813902344730628455535133478755510123114743699333311143142793361426742445764341582206129804558224503199169372893713654185968933969184053587682202975209369622292936597956204181968384661730823957996148613326924553007608418543357621066643748117363154372796708597960854858058024576911856961749149019815063671941130937458671201118007513223319272058671935800429501503036501062238335774242866143250049315364210403157642331139359036280147990679170252288122533287198250952888216380293267624511334190192295174143550301354512044876126134677583268510553855072334089800519100245176790025786921400901443409723261145654146550964410826797380620112061902382004015422337222192205070006981694189407835501913518922268050371074381508014119555248683882568932166242418332453334587586368685211574089048862539023569970531584883339123626332145462218885494382716017165242119268114171560318283826477668837946882060822379884577497243047504178973984841743615421226770997073000199680266807512108136679154010561368468212299301003311843547131227343755595832306854364890500217240339264826073802115898815631945436982868911491040663285816767261184632139207965132638972733596314722114990524156502021955031831703328402311896661822657173310506260012230320044217448543390737372223622615591091673879493711404415363296389129794454643178313364333173937094672269312997719393249150774346801050797362656105737350852713551714552594788205515702365971355513931548541018766518287485140410100518013520382424194169780117774328457610862264715543460741566345820363129932110037453117144159841884296415214332626445380183446531731036297916951661620928901092410691841136310642709004571959533203399025969429448703061895322361341815140432156013228059542140046271861413254358281700023785744610113417920234412401955164591709092053515032006163756247956415160797345793079316753709225071710600533682295989764410980954905389832167870091870283915226222021382706801176288404246352357153638124606213240555620230023521627086263354277836756090870016184348786411022224974555517582666741840605752755003379062914329065650523823966639720129018223371119121336936452086510001974128908146834718422609284476114118026705055712280252858224200838636841350463436303148299869671362419825445630861059165206969690487940442313731490362649115924865455991090760254748388721521623433308185068314906310278715328322945120135139567650525156704324077643941450011329126668743646054605723833271062841670233390205170720356598514332509256039726420083453020507325175151799683748125294340952105204887136262833778779152259431382349553039540299320807403945722706620700409813249596355371360582488962794828793421544452315142482670966509825730582474351237432004149271034761437251088642525115093392864364000665433722163911196164736234274171203026569283131919205387123120458654021807505613329197922524772260141395237789437254788186369413090233633275715162310730336201702647052328531378511270899615957270833524248376508232009239312663972146192532107817555513398116800263521220099346314405276250359130361820396455739551480045239014302921071339013542518264185901759185354729100234061350048987724552650416256141824314773586244416006491598754975294700057024820383018416108952714022853849498781562930987455640001249368383295386021074604216230830538714070864420308776963150920721286351925605245699174635023124110902271207822728677417248706881057570930513164377503058690348128122018614518939425571372035281390780533307319449311721210709400224376396394227029397235526750647360352139458226438015403445991778555992622457663032926180657822342600148313155668638201816282656064911947524953066531914663985644225380865687401167155438295241344127423059420455792335192789216080231807545916720191741324550705295417212114061240613888638244326693111109534100016481116290745126404715018072980548995512065053402734422456431133736368077648055833685204941936397819614141590694412904183835361098128984580155445593833183438242192251073748981836962216238050070731839844739069845365955915415245138855183404271014142823982310150649076138280821520282541709348041423649106120596149757553833525929977812477225575530314168545145863493820520486452840543595011501808721447671507894431091938175053732467066884000019028854306032692982064582312016974832511183561000264543134700803524961846203925349382410176944380593497577801703182103374659856995593521273864461635805020097117515719571888492418343839882730661843071815249530344674520913079039969034703845312066232220523560073408304094421525215192615764420383449653601071931151216019767234951662941387117316205864280357542639261152453224203827498280011334373366344026320158403235535262758982725200372630059201791485701655235323818313835902891770220317582923074259422604962542527618825454816164726287780190909517142751262132136836521096792612009225438687231111544399851917831118475743599451400205126214717741208707322820905742045276151750449334531798601951468324964034495117240813529663886504268804813802365015100398333238377636652613332455342203587854102428165812196082339357356699805176775664483484485033687013165831050824358031016416381873477173299800685869578418788569669986641221680441013317161812911069054845695622277636390931812388387909614236249683332383310994563736775330527853928171944143099024222187505614645756763359053872112806559685661286900000988825417855317427720086622662079666811427262912392338455604351719217389946678649454514255491704308313031547881694985797930157828595614914663708693933633190785486047263048086529724004174808591365296972911705113512009351277542369879077470356118231197174188114339919056191385002045114937468267355315526437225806753435124486142405238347513643812012132826238251420375403832376247755453019814581043819316842813482243606114583769126133408327637104160497405735600401615424859068214723749581434948938911126037446992430132436856721490065876522583521732347920173808687839579858783167176312067129065544521585044349045742102697829111020623892070103343762240620633982935632595456396925243353044128655080647477636010065340552903624726674086831402742587775822913937640153468112536865139136748649190016323556701575151697153022541776502230253051205050022334448840377263635122423433303168183116704789110541478181205926680045719999989613473519063800930558864414017132348708146128140520612332417510548349612344302157666342867147199664444184841263145473367259928337755095331316626170755768613112477712646042822936792659232493518054647034871343142090427959620708812363263874847477415708479543352129418664100114523514034062554174021219093603465343452798782167203163198460592362680138618920495451130453714977884850384446091005736661573302028066651382245035062461742908884506792372421807713631115349221438275182953553205834419842108078593772283244159505680103157740972811742282321215472504166747545588791325096266442504362261898247744062092963056332248422729518462676532412849302926882163549298742508485663209761245104370207231940622832496508436057185386150925134556339584916852853301510625834710106325648390406657074861283356190942760638873017376747475149342516720107185554165818784177883241977088973403226351686216825300665174261444354902789336326382125499822402430824026781408301582984826991591328200021415265315110168026790861425649337153727556019282467149471386092040220420702950397533692148147677546704518249660444201770505622920263424091502026122446767669913752375679186045127569202440005958247157957852727149951838330018926726324120365691155164186989587557655673104131913365251345777172379190776496546611326676516296838122563342650238911443159064053333956102176975502156062023069571116820904321260582224244204721158127823351250431871578162260296133236441922751821396414196961334846716774502291683307499561019611888325031228299194634903517062303467337141204553298762240005949845963831380996938852615402086907307857708810789922973010873705876355451125052118891163820963324174455809455336082304596109274731376782874029917085508040759105269604291589106132707046542590820156606161870006837392266216987760810171906287089517753671670585874797415069009730623941678457827101753378271630236904417486953772172403311131176614021834463007000507182472570081595563331024506391361610313921319122575636757906634496500232335566216969037007915143010914511601056387001446704467806631168263445557564434127165121015136104054407594668393514546280922020103151116837001327256842271910330941657476349305411335363730393912335573578281706539291616983100580478124262132241391461183065412148138306331009766951536630070341233717922209466844606470843025758304220324182681305450978300394577333519618125906263728275500425014873006029564937590422522574806052608935295318441636528312641668187941486315920818968827565580054360625713269392482371053232295077129075571769318345639003803874136214028061115710934290384625156556469165847312723781130023367262822544096173820718261519174262299045374701873615626032625468909877673961148878208590908539953323013810441951039087904986249720970203509853244510307050204124765803190932771777625707886850526582770556862725897120713250820657860056055733091682653132726155173160224266206524787460114898350063125320803160835438412095066214274599172317030071645371854861419092312403118276268407468094354246223790276422272413406955130672794952312922755305963958660120531960942317655075058275978808904668563944497425533362940071112344280856819213028098802359439172466872786254952323430363600571558369302512002296609788936307004030558127201402363374300729527211536646731006993631693419734875590354522060321271027353312749380626771926425872019402286462750891463306202846595971828938978358674786313054851194273569794147448384342110387758302792041587426804154231948809398129931183862369422831200028030395776343471267910722710100999410692941153994618225122403826108052117594621560721540311904582202782876732569429905147614211952883361489395512131302822505323746362824466811231161150741331720261661595138357640921402107017242124111772668333061272202473163224312756828853566387072692434686312238275043102113109701031501495618052747456402885891429555635306470938342808597724964312748883665247032905308971213699700112169764962502060822725379014009031097402236134598311630105061628176716418739804622232355127430546425166121464316060523415400814988052400086296656975725117336731312875996905682744124200334155159176022745073333037103292716672588655077763522576966050712566211107517638307574265533615691012164633691023200004632478667473570081822106835853900176345211445865982512423033158217303318949545394831511937489431807262809000201064208014541258563450400438572645260095425558886656179380281590669197784063137421521151321104753920520323162430412373653337511103408567280034658421407327624087888707199702954967356441639535111011947337635322906651089027967135545253312567508716503648004376215887593751098150030312049841422527990527861205899458223322193434046966474918252901298816317290768731339847451484857893128492797240644354783135273010820192832900132024543035156424647832159639133838511871466099701110408214401228332402830959677242281420011214120997805540699672395750904621871295728717207023736978113031664353227668272847010543305243564428064432021104637341186303362472239388551137457216080300296082928630457542596771031112926243032902751267775201895781058251492619342673086151847386393935346583813130281532413177702595003418040005573378978287434470636478434136270059147911508570725337843665514503324766355417737401220597268617234955925960217674837666272383171884345420883482436115687421759118511801744804164683793883445033365162377479124146246459904643081216125921245199642664098025310745357638790126584428204396947341141369885244062805778036109304031404192655149622290796465087922839765388341589677453599105907029458822385441270554747131323334042815851453514231613518308562321565517078476110659637774685469307421516320379723552123973176267197611376017417376362196508265058837136511807281704858599453278320224286326251143326064033533913777553566888846319821846201086685132617073220419768036503252137089232925754111822315656503317513943085882141600054229202171547694529311920900282263939045243048399835963623526533142850800410634321828790364378878323605685100963857367812562752212956583200167600617935636349478498948174849903057051552432412051704959014053278006455005954256155233622711193009807070011606057711496547381110560423744651655274503300662757232742774339251291195124480462144250648013601157395105459964850071784675616020185862529334344364320638060278225862839408190994935302713080524581822974344402489239718131409224190344560148440326964192484377296414800757610855166714422410011295691801451021231280543620566550104863592264558936009705568576961556569688213022275858230608576444010482879912013616378321105963483614614226852519128261524664845493197333054221282944495050248968228196734326394324714722567517115938142242627070302498189348077738426712821330488308096824594401427822011441432540237871443194796092326108517505319454486853517135848537826077631541050712237254112948193390215484412366492510103242027067378470121742030536372707687810425114952302872022676617662335085364649680727517265390552391811537780322010857681293913407792063871644691642831111204323360851831121115226100877787020496175625584199520542107246336373739219581096081111000908717052546428346503641189362780628055186452562537320632139987352527523410118266301716547587787521532004383721634027071951313722466044305684976875761531857357942980426051216925192908401373755256720287221140325735149611458382102376302631836034356129662873508751017006184028057895922422872942617311697677841027242403627353119089071423812358020111456594420819134835372363540104051710681932711812997823249539325277188384118732269167171664489307021311961958677464607182801921227654897097373661401520262902154639963610014592118688147413007008550482750053945246073786761381976750780613830466339000316309792860417145060742903036518259516190125833434933911689130233211558109965755232915464382358411756285174517797129846894433111680763540102855297465775322542560635306236670068980170405530512181763040733829939144605908283265399009250910671618461025327428804762647736461337075158653984652343313482553654337136481447529327110144543358392075251810219893098997812877714623579582321691800219377052884977053649252084660644621522721619043128753274514160816192049065600045686863041591356226937753452366024205169950223333473496825319054674318200983872829026126883280595808780720101247005001260711434429422692772915533639936826548024286395580680889930701252382721751254646657571511550982655256302434282262651536578905275363636787160301225487674838914778525416066200860011186370166926253507725807471653900104533232544043348062840901700347361556817569513863765306861193597270772722385390255457421630168184210971128336721030462211931113346272668372272312447027545361228842951337142368632734111373937153279542055272442474384051954178167798990483921992518898365005491111190734721330293901060950497862126095106400144337422919363784112398912575271539377489125623261204844171222466557544212929981269192786217178580352742621851164010101697120518283913907357233582559712306070736793092380883375094913977011544380543313187202806028048712757624531258748002774524731008412913006654732076209944678595902101674950341572258396031859970645917612735755707431282614442735044001876517687299899382413172750101924533078426530814291932364120721684439356059348252459202623249131141256081436294467231216563139083652891200110211511347328304870014204135302493555864484468131384161166719503369094622228363813823653253722076347515029126220267243615324300398908104834158876060319393856280344772748444293462758371723512705341934462157891910684201491956159914711993256147021425207692039694334930695551604064432861981420340656647726122724318993347635414102070277482664221921169654919684464656578995842627946104583476006340755664619901703594519146162487514940832755100122242843676613613908682672702041485421192320654255109604036327057624565114012640303476924136030143424132960652233341436264181554333342214913652628608801184557180957562292193655833233288830748037651847424984808754380919056589406143134515435442035365493963369728822255135245926933058239479535297214581281644240150624605304051665315328605810293126031517208995353159216068412130712489787127397103182190468515079927617460007322940454477872586584107502361354443228243286714514430060420140518901103734404020017782902012809027991013732972898141423710953193330641532112058114122274072657764813653088872632726259483406210721464736124251478708107822911236016800448363202610281001144610581406293851255381402240027470911935321345757279219707819195841911428701181347961564862634721816713192718577698714984693314541228323951219932936713571332538677025814765712647439548527095549291403953614112643166174166102172910354631458511784612445193160475425934540159474816330613111315126105827148858709266421905300835798064613901437393722431230140637206177433890730116290293124991456624069072995568699708430042639049012115051754155893178657817934250104753248271852585950205018554495849789268743691372529431790810890175374572683543211475097966567935332122554015636391138180548339876568008736535825054145138654341596735214904069993193580871579832483115736059626502506952113823271387132172744229964150730610427148072509511402633667262808117415234111035324400028576766944287192910309576030576222807489506092812583931519262109115233496787127512701754482244143414216486173244842146685964476997159526789345107970259554097568351834458148404699481116891130616066329783627155012474157726328121292744482552490649237173026343438372430863239039650361627383434085107166732309012175625692823115472757002598754069917628225316409758484889208800338617127104381051783536244581312790490364731133588634522771640082701159299289318166536238967756016737920311124190017522552122745109616923992436928098872746362403178174001194326325057135651822020538253518737249719552951669567814622419600243677487891043569814570243301320150281514645411574253392650738032004300957331853585345535295701882225112746812949447104903617375336091571798020054559162899472579733480268174824139664142296571740918878760360385228515632536581464499591024198418598674172041126925704159922607850539497578550653449853446698272721690558826514172611383125223038502506788042341148238809628905919533580746312976382735273732249693339732113441378325573643972338535031780387094543278122244142314723243182068438052231114377290275171993034682091945766345081971738065712723920730570772374367231827182838923354385027926211101756856667421454064000754630414002224708420156052411882597267030470190043598519130525176264623810417718174750868574713438910151152461768038836713481912843054210537001072736644502413510360614162421584722403681094860152544266845283554532740388950170645128122882336645925241682577638310844793646909947633123341113220324672379363364231259551895519153081636981635733127955311916008848254367755752260984367619783475925024894592455451422316081911395505128510823549267241216151074188881143105032887340177221294032841508647103330819513242535506340486112383572128536956827861382428516470123125426274365856293267270623791326864832048811916511343010442563574735216921239367269435879542753039182371614220603724293364420199195201335470238912282477573114592106062628452692888554548831006146601538184143991291626407627795252427671946245458355078451744155843272186596336757011457023163601393407457878913461916421341924287045155363947060530864616633637530155663151723352374861302786312948125572531647114993535969400534436492314586736394219662888123025481501124130055671716560014878650769664432221951743825462315197385841961602308468496199523292670785451446645629274889129622687441401922635931411821694311556959768789122093652862946121031942319095626936630980245712367781166267749054764881448692830008066617525327953946809776234627817346576080313405981332914024860457773377232906321292285275877252137261801593159411565494801333196024135946831143428600697354926025375363149580096443821023388234714201207742809394117535578351227451714129304330344224648000501562851663828316383174973035376745743131513563002768020511193432156209464498108555610705251097789214882731679414110703509402081890441340310161181615134040395485098670521398501587985372950725425251015633311455607037867384674616532107163817821709877209995553246756331727013194239774840844055012361129379654570768583699926254129473319296857275389139082325708824693327068557992527480950406625910304723381503126042578404888462289352221491665337454323165160293117403862366245715093423584215888630544921754890337583696546157467816322532672183212970000197591408726100222560078109149352282774124090537160603002881625366263782744986708845970943110681532265895723009146105621192042390487674530112295038211184502577660358126346246669560105271758034097378532703250061735560167215130322668939844361846933580510669760087385010441185629169756694302633035417852833019374296104218136426222087736169041955519216307382470144914944504310464371098000064578128252205637215162784255312118212128656613406995414117483341375198955181021501333573217562424694562439982478343916106192105110276699635934624469622517159100500270411865073342451720510580569154433807640912663530637461776638755524630631049242026547475626739328016533689895124348127587740823457808740579473909476334643342665011574061513838212077101774744807341453388600521222279431279297605642541363088090354239609623042242056843149345553942394848103013728047146251164531562554524599812456328992100306160235423019204982165456391335131274627259450710204175828177662226461285378360044205745082405715117821653833283051702057172460347068153808108562273103319130397470132814926204072978672546031791771268177514630767199984609543132409718342728908488451406470618919161470137247230045310327051447839312267767193030678474933296723541977621243833201255612587465241538295479219446900431857913991836238432124553134012710247108243314963821316262268455198432960154796258071215773403683146820943472508719467881579157751705261979465566669367186674474410301516032700571018733196354443331929012354814136988252283224772643119607138065545583512331537854058408817646655805483402045475412235913963252516684476671594064486698442245857210578508165782902376030386290573040652707232816913140501141203165022040214951102520620205426198091466174835586787822111095632308499441277666840726972986361387358671058883103108063793171570277035291766937031394152362645600961558811156069425302704935636747181575538197749491605623691069694757248715335586943341921153018635617091029344629410312387390363313340663632564773506000133248507895644516296399270130738263450892674474888410430149557738873376129311376020506060225180370041615321146056141232339448694163043564173289414240601421771128753972431087604833249872280251531706466455456190364188913319584873915447494965685173438710432616256073819839081616280295297455528134829176849317195693509826173589944834655295200441048077470133087765164715284912867180330707578018183352912254659310413840799825400038845177470705713208871139367523044611682327856254505703924746797600691594824641028405326097102019531313195545696402050105626182452630915144723891734123046819638225548754519083937147450958275542158691950598636962511116296231235440394706092539504421065032034959864527058458981121140639410695428810935432537649716050320386160226008501219087325081273020183914926084805442974994319173108933553511597797412602237762363419521452288166062326318713782260566360905379508415621913289102923265885322742115295276782530932171553512032772637582192022963037549332223443907554397220733375271690239362296729716308641921318918030129771805892581354956340617775250132971162488413345211157085136022418147821811810735960514012040623375482082901512958881389333581208160040462033135811476820019193647922256491525747461956328116070712672647658638244271712930150265599914550233519619997425285701130435062033574762823068500512431454234141333140677496324914849691320819022177540630066547751734302110876260737252544267313382530579253130116966547871297302829577011546735301456337220976207715745052571720461598772368315364719841523563311949689400186854858622603719715215028912840510973146765050184977920172019793449525396570149687765302208229890813446545368706516159953014378253823063087667432211346280322075087515191452520803375539014540070816533647829312821011774342314022558422561731239259493111278745308761326114203371296420304189363159649986918463936468433981605258659726965916708758516052099331442410721551529999331613243801116024152583284964754613035926106731106083622651023932850104369418181126550311737176423472075449151236571613153496861133998300800743958794457952604505459569500146057084240283529594191605110377109350406900629015020256935095150935223999461706625867932348324564890832286764563277116060220881548336924004531111363714860821709616121149505015254103194147627795571745228021710504161379278034419612146683377532377315287749481842227961612970121347887178238578117726507075260219916635135677666950155408837091319381337711203174554422933152773751760007742373453901012901601621099885832804721413052233256306300462854219171463245071090818248026149706701838293976117349210727234854112819184978102754420875201574240518494334671775930072727636213764731831014371649557336329474091101214216935290338956864890224998771583423640729629074629656775211416249344388307718870222161908519883181340525219585230949073915890639537674429487276430881425687190709218658718742020356262667475278514511831841403257476816739762227005647118211972037636475422541505305084664235669539525235484224674573463502397029002169360931196053805181053620180041501376713132834313108776990075167126130453032981669997720351369651702520910691312572172223140494524461364241437665132603684631458397512774468232355549088042872031118353846191716079460957612046039170028742171584901897414291951842903822529941135038231905345585348363317661102468050512300144640862558448438564473906870513520782188472411373623343821109146411553483417039952911752856476635816744512542225711343803224244968765076411972190593259022051479114849938905525161780349058353990024615720116926353803807069913940919214287132404003402105781428763579646825503728357600142822062549307172190644256935426326034223004607045659410682512108757625321176904774964558039129500640779781495121746753491339143586986861209141935949159210631686676266334908521275211921889315487303138087411347465652070894057671564083973645221530501371903856224318130619905575668846672624365194953206568783575793175733975157329015603742427636233097110185233765725564017268895309833377091022844467327245223272281621324296913541532190543788379190139244474612024584239717907295793473229438327246372973276224439302753572833942662564794612901647501130450251005316702014271305877600031263617650111149811982926814341031182444022735102582809130879398211590415210599039502312440344094638389196241880107940683274569162188853726121501581367091399015654373633469961522797607418215405714011056707178292483955822995616850583817552642660108091413805366290423830701270785617209031104858139158963209786056811120392601001046169211734718731156093113131274308881940431382825159051192984383479501678460302838384129110610112016247209246808581329442129803052832693522550385755058452628405510353670176113255079224642325035702523330468713161200544981443291470643633835333864195314610333970138927512913544026574838175247583986217279072289824521503792014349011926111712116924722557421880976653181526478356714126313092824293099580124093262123187426472483407644506136292981632563129902328289941607699232116764921050500172352678283041103362820043837014483810087519493524374313853742911713414325050229283027010475997514992410774539407564190646606321561984015924164069104590945635234268054737634218465875517103913746832546741431262234196595952674837246331909061117891658311616349865356865022681395841155531791211273505219620604947297407964962142425891932173762381864659573396217105180956266057576059550671303121148671067667217027042725161834760463151800106276499572180261724283436794603508589399689103956840659231220476395128530506567625214659338895504764408330100201248904362233556567322389419590359137521029614677598180539885974737052527044030927337226682535018652834482612271525446313719431354533684069616098620656130364326758970718049066214151394004255366521100233505956585988040141325355245133712535138463336864258545513271116577276549338352607191207116874108529606658392397610415158834048904210484084960404203969614696153262136000447448607110256930156460381145142329242938596061408400505699026414370504659202554274744657825557030712372946514057882088930225601481520792217089235979365227693286237830427485218112112857188652735866468350644044167892114072704470785483041382483214309654846128387387687899320861738132951430304248873680741213333202182176084313387348234540127771060813678254432212301212675509757217410131408325381478047633330999061220417571252333454075201996566050162221000562153594346149051073967047007242691022775337316525850730002549001250545333655415745297083382613316516146633631880514532729034252954834772642943514763325193606857772327046866911102773317386210621148401442137867086089843567588812489408001144116051389393157025819315365775217006291653156722027609465910191542249655406881665709417424738415189910860965513350210978125607737990851566239150402545650155595304896508173073314361612534870054691712681481287579429616253122732213379206082731507612973227086136963544055445008872463589276693241778190722693860499443492174026190524650017849898421094274741667543604959419993524329432215001681311416201637241688865292011320713955900166051028176422033371078881207466083363468276626458346582398602736863543232115346263404361671908318779679906868607358384796262121574025782277317109947481603604468312915574309902824232774678831730315071257567774797156326274547654443144480514835010621111682550310672655985306296473302066732189349839298631464201421570345671156153755411470021529006978120581937154211341337522956300619627120702041813592246309809639057873335215755375394142389746058719673107737873924203705628913315012193877531497006133102476861098318574131449870357461343291547210458345530320175518846126237666758831474707206610072322806023361861318740352450280970805121218676683455717117963741441255400389573113075835273534220088438260093817690724917166571419272972830234398684025207208417417556831973492420687313311872109016137378523698925301509743532871788017867928819319897212494204385655344890762347349341213349357238642989953164861603233437953224928733014255154445508739258394295538764871471443481270653127465112679750133045575161624480927347404051436535142382522310014414202310106054992342923328181291906027070863651167568031429699284460738311993656518745335864299140560501709135187688122635918711362337045929240920403908541842330156157958861454353568078534023420564409726974105195956339757714914733741347662495810236882635351150916240247271108685183783620164229452442787101646865352323742029571051921098150427187835765004743520762524282670972068675370696897654104395261738106114693201021709668418435323515694492826873610888726607128101600519620819694014150108533383995177857693922058381413431845903535364756448767788858772015812693015903416362427353498467006727431932174934460932094951209810228286907390602553495350770064342647966932243872234120532102361506634454360104128781639121866847621358901320674223025821299177412169360041402240430212320392023336596303657663860036129972591193370441242731241764259603495042743138375266654122482274060984441411416321606340541084354509309266864586320052511237130963846461317969110802257104323530995729616309754962312983171652674614832337141555914114730012079611481084893410146701335226882472049760676023115648178327176675366096884672623465182596305700285347413398702840600288122425989737485666061874729362382325345610633954278285904163599230932799114244773823714531324341491239112255562727130471447320113813382173612706716836595121429013072844240482281072696884782637978185385441205424224119385926814062701176251144574104659593873740319670061054421763060015538936427537011124595237830016406343253934569483975004037121753097068624666450218654290620993870233162171484831040821144987743311455294604211836069481312374324712699569355100553400084871124039737473529400120727891123348360276892827937334094582691630305224039320215431090692284492130323381099242021315712256347742144804047004941500614142272375117057746624337485736544707498011508994319405160377457991448129518338447191642102346395182550565345150815571179111005943045194983582346145225399687293317905754324359345672487625471894440492916207626295372127438192488845566623882443268821722102290743167414586333748566631244246968211294396147819436247713862214853314581355797960140712398504009649796165634068899660975621481210919125476485874601454517632248892824906491038609171506263133770471409514107202687569372227143318311203420418530383082751101507093452293031245133340534948214053164929354585664313742732144021826693479518102520110181439487916816940182645213327537105052561767445151315058714106217622064185516362318210471035430701131102960635048367976253226363830118889437438330391257778315906354171878234922638955811539782596891907908561142914370853228403949090136933166530410514224084647106060012208701233125412106007518012556857091840230367585572553062544351072484435388157307937844839053617702194711461958221689213485091011085869438983077134757257558063513147231512701962264447506502315717524044249457192967222419300382271355547012053778350145080645053015832693704701871104277700331301784470241263347701051696998844774116308351082313122141732062107819634136241110880084025752524439045131671851145621188308119782241355832192891110451435466020304187132973552308080145882509440843326702124213243333450327230854004037466569289918302558519518802600182372971772497848638898864855728211799057210814733516277750248256012834480558085116255537529318058643702316579023721482913365080045744190996200508598986298052878207843359715630330071524331238159825747228319612012010922445327177735250245981764715951038790251363436178286065743020611445605803616006307219607117818386853005947984473915351296893003416624738273294220980868017614259050281221711907976510056861029616185544422816200771130704503726315682332139051303401599630726435512929333427630810312149284027918423663391867939621239124515413458945470483679762133468383191891263469046180152738577552685186032428096991453462653000382002144776522138435172674117159107622710416052460341389824858112570939404109771322253130985754506660232155523175831704394722521004142951238243379615317371239042815560064104761104184695622080132543963430554069213270939532272979701909650151762442105812924007005137560585900411109879971923114193812996035183186266449589934287493722548437303749151777843651268164086727046206706934347297563012721412764450754797911891694950401728185178282313239905831875627937384934692682018164850801736047381743764441039572791774807946123146074159730725415400976177871123227911350811077411234792034258942745402741391766768046267720168771542671763060996342198381165511283015611951747208837512065341459852355576004516140450044654199756442128304941050883294167615138882680324183743641614350421396240653240370390545402070816338582794120009196676742326277962592346558442623004901465502832434664117117008778876138071146963264880786740407175943017069617056075458298017117690916135082014231362919046522152934066786085817826400670235946065077219509022670851333814556805532743851771348359903101444126431490083487211661469442471772250859064522866100283259230399231026324363319114687768156924154759962670993324126951464584281632252053369730231042245742896522363121115323384491078121962264079026991826441571515512273121043810780548821818675516176469830533245381066597644825127811426746550221570330235874314264197781315021421631331953369925160120880602849436213451058632036864039067124514054150602626182454143780974737112892317337201300052273235699066965612973726585478673330855311465377198753223486248146856162957240039246490456490238166269249803442594684989239315140146068055835110205894724001012722588589576333736770311730233951599573055575214549718933087349344166045499212042223744607268529465664902634110299532990547948815069886184986507695741467592931028493626682111330020649658020952862095331198061786984689782459349387358453422222336353384431743510173540830922601334516117645063763652578512956560154260546589449356730626343834305121031862667808111844537340294407128254228393257924434988401494483404521489414331006609996132025468147142311688576774202165671698085955870932304687676114103292694642515151885967648351147937363228626017820904711302355392713257416097359922096773163352027741414486357525313582573121161189187658441371177078427569811204305942901311890912683764035294503480142979605930083007274506922343571767778343260222236534496690311341822779842355020759582924441650540293940702818532800466971104261526920373068425520674242653973139565471896016402121714830435684273419306035612792569938129708471442823061252139453431524246434636775501622252088840414114147837427497775036355250289384849641122743362417124768400101213110036135673856781326832212755208310194030268124109247796142321744211667667349572921258780747992172294886321734220001624430672007865727330979471369250444434924298191601135207529853639620561987102202785429838900800306170227577945129304457894623228672590242964178557876203991036324032235265119310686692138405303516057067248181714650767857653101664913217437343741902524614726577388145321013265343779360386984087502903236429006072272519479572729417555527295794232568793942156604305616460100257143332852034575696109526258209309220353371350419154011131552012208647239118625869810943697845143869406854531472591929133112507811211612224825814243198640760341762263287394335626082387783308206067660372933457649347442182932119285566981438433081262501129485128392732432349195535219146932945814193152076130200284267651477968003915522194812710759310424120866066958320413002089489530537334567819149802538669142371766490191172125125804956865257669831107224537876260692215300928168933147705932561667641640080662758842513993525305815994399500984090367370775129522194384557272653969592555062619602047888213357349301445421942270570135174397628232262584932841565419657703333634509275331111317988960268850904106217035575491741465751921011575830663877311052282634388503105482061415700209277354008421945158770102656879819788305841297734651661573329243820773294625653212792916253707492956613011206788606809368614301348108526040227702295779723841036590159315361401611335863610695237050111121862024187701433842227477433081714524198633725542126551547240272423405314391449353042441413036246273476016532421804170840175180574714182479391550636703006725251934319825032903683523002452898630437186310198137149518357301747011551242347203400128675259126335137287386558793689150506385352722532282298516437615332484414118912484819351731123352362503056521984547241932341256304926982028362171713853268290237702483073437000406364797037446184266331323024553910650320118114040143213806149610109382664910063018693321663148819028252060511271531592243302308557100037115520376764704463628496902047391152068801511459352067880573132134107012811872230105727867797863071644970631222566445210630716655659543789513204184764059628585942346006349742030047669170437248800456031425906058287986100501157061806940214213017363029215357277141809642385420826309189220840912121802874146029126283975732037012289422608604007403728037911502051476320236466789534950314721123912180830358067453123105635515123326244106245872509551691071927769334397501651881256225850035303858146596044005018420600638422568721929823152102363337652663143499652811202644672482762403636354522804748210905411186704426162271224204327164133187572222380008209120892751713268129038123703345063038595808444304751310519042187695121919995489602175491962943373742907660515620008117943671590187361339606016561160375884173042336011349113711223190232671821156853177111643911151592120779482374250807300837927605042226726715819325816763332475570841462229310450322049910168024112015244164731573197137592316350167405215101567092967307336641599417592356210338710272986306926516307503927689332107501723660095440724750355183145140599922785405025748504227710538738470423235441098370788646802430635012776146079282700530085369904112341418957878429412766115239430016650770902476950358812630621186288267438496889310056526432308210880808244782450869703926025133528047118671387217290179356249722467668438053771729199714966064812362402314804232279726406248665673239634133678524444760000354991734223804809391097118997222159306764111054675332660335371220770112460365046536030345951751657383618547765065186184695478119681757608684061163526140423702193710715401035132545304424122700036315431242916296328084038809367457315270768906480905562488483800301841245080340220684514604077691406726099431204511512752073411678226846603035737262970245859194701204191355521125554405410551073730465924124741691759481864437054690526724420332425469519733830240807786182002014874271478422171554171079239671721378815204034413705406316117252754655896126150090250731798050981812517690828772768934316873100922681182705227793345462412337754017204821940070931126787274698223496712401115165092250037043089925219008418831095845185006942027220727343148530513037401777742823557529039734275383357435437881012230797710164505810642545345197628756039810255829452176680250025445670751967009293877160800605271804679234936025159776007286523851552300172500524379724828847411235733153690681388757092014549250565187173953732505580459044584556764517504245108431901701576910702093171501002602705317443082290739288720703729624567455507346221601841702624357601432873065580354219707685580623247141914218855773531191372303512142234254433804877949616366454385058770337120566657021047544433786820225718907793119834707055307321226676937117501483803272730127741960982647270234171306343858740363429336296930665684294624217817487131822102762521165339920304450115224338569710504844753783420179063284205870050842532399550098642293204370978131078900424057309213821104489047444483922541525414876437733557148134890051005973370280995235077945823148861393125311314770369315166355547121764408200691546492407325042271278326266301116315800902735524260934748020004833536188353677142136053236258345332074127440165402169516178163378464186763512796418791814701065984951182477703309205931716237588358027456132846691565786361858586526953532207044800907272424379103925326200732509107530447331345704176940803105145753792022293136981201025562005652025341114178122025032511144509383379169458694616188091715583000770655340652256407900561164189073142931956487569358019343721504362346405212870274340192804581441640472982723530547222651418511593675419370747735947003416477209717228681740276423642312078258160533817191068466683603809166953513101852169725225997245291402567784824120054055874215113092782319947353931825568499017687407668326941635724241194809393810696618767453227245026617697723902860772677742168465101071125852306385220722405177507403678962390274222201539525183597445328130953521190108557231647525802249365143570169437151178654743959444950251771050194152087029572370328242123502199245302723418215721462564438635853491458050304181684038649226104736562984515875232701010270781804747620677810127941136962921638683835653554025611809778502769081771795017122433203545347637172405353724888125550348203105139276594301127033957568934085463011536612257706386563341902482031262115328380145182070732181857855431641241176046522025147455916300834485784279512355103825171154167866025078446084646915570287147037458108161635675570083114900187229563649610702351008796395675523856880250795800071411400925862465425259403555962361434761341302406944734001909749103938131084597403212381303520164564044093618655508170274373561359757627419819007163147751405894403118870562512193524158074936871844376018980444780771989144855433434174340643844674824484781378074893037104942793600012245638702498795008236759423433681317756842748813787919097635534227190573856100054054272811723413616123037396196441134274566988441672542884195579964318762049440685229571018711726743225043232801989389912148480360232425397584464917303556882356914130743653215626252415739444422081017071494288178103369663030311559620318356840412824250513584310577905726835544505225218119404352298864264882036459752127915721394053465557934200015234460658594001113742242063738631002623678843343080548771191305964643351569516745311124135200907815033614558942820908486935173600312562494112265809106206648206307549951325523247002177264583503132821458780236768172024019608663135437845756832462149449778231188074529931952093798487937852866588564310926413119214104962530822247920297366358351300790575394043170153077304668825879661256271259353829426965129463446206215212423501046794097250575960000411457576743206326280165441739334093004190109452789239018436784851233039960443042505484941841679522971954153560142362455302207412568848327275281041170688742582526586528554309790130200021122528547200128932185367731523178763036720118865020162106633315628481662384351534369211493332791034584920587307365528516352130507542451103101115104581003121725181963018980339456394174273713479204637680356272225723190356759851018672356462571465760793700950315040079121607257253863910410141369116013088289719515914720400447469748148063932503891231120315122376363605255362092054881690589036705634283622355038609004450339494462198275075089758442663710832117767005500111371379725167122590489224948630850578644866138428238521221755621353541872174594605746566962300556298245629364288316500805680529541275441433182475564587142206728969358540381253253116052941817243191013012448244460010814164460292610423745192764839388754298127609045832824852231995534518640224054984205934314253603442805753863258421985297540101077611814528139923778000253496745698504112445148271900533996124081772261115654330857639501120920998069600546986557362311584963115115211194140680095615031594843430544869522464305606246504040395415715664071965057979750494766163604728841123286023631059989251925144009965151084300007632550684893942838614456145013062332251419381233615426454799809052073606388709280849177737501803671625850398447495375614117878012041578620022791963843115554342416601165311414271625362374582630490668223465021903703581897678230174338422614230306517618535321571328002916076151949172181920354341418184485571277162448896317118463375085682920591067497820218513832143212460564185509326004732119824675590489602646864351422426945852471144814319093603048562107543132230858438211465168228367412420104490469313826634432958503205094588728833526386122000039874371251520328041732777324420461639962961541104679292923469567127160304542510154067633156229685013091912548225402693117282883376545253282306379503291341216225237556930884520895114433282004860506410055135379810832054044328053059328133095373223169504216080453651890596557491020761051305383542596523720448422276403405119206605812252787734126460276875591778440142343231831265791682651906015152810006689860291334707363714780046722691367302431447929773256549620109967016023334554189182945772906671586404137372611694881776004209831701136203025355145320148341960220099801914129197526327862407404364849695160492480092528697502241911581510718653811058645553161625830241216634017412464171555368903540523265151924727484311766548959954364460383602760895081006066621080641061550022241165175490406613637811315333420934178519574223942113894378247120448254767917440233481339494523421159358532513364181562596806899803746109283148918560666570255546153447043234065087423735223982453113602509646550884511766035943673373001507116087133043678472683327559536368530105336430957094094371416066303159937768244437092813818409703733896413533751047569138307728411906414283107314296412724564642390770708215043625581118721029651400429000957707844249172326594613543010400660961229133863076115394006915115104794650655365616556023479549913321889489483262572952930395362435504730808620984668504255228623345819563553006192828863839298925657057252084690571595185308220625155569491756452006335003302853638705627603105840443890457330798515242821922598318711641039711474362001775337311914316263040211129531434467427645346266727620431589310936329492311614752090220253343141654221497224954581652874361362013056361275576254910677943625560272131836717273178356684263214825303262236991504842805564146522880937552732818153234512259350239769755602192583722230216008210183063967671160367250149265333287932002465705307556337792203044091752973455391317762012944330536650040410116739720533511455405863824741281027845985695854505453208710563737005935060323515884514307642453943170333876667281359287072991780285165063842892633934369365850858514167828486366036398115022300921552762422890697132864011690498352074789530279691101147268694142020046445114062326270341156323441777019362520631394785377574190226279015239907389132638044935276222282714345804826449899456630719415435457570380363121048359442955374309237296262861582333137266842973061556105531181002404322806566833479150469179122932471961357586313303312737964882185091534507345704400426998749543828971771537009255049165813732008201361112154391126615967791202424567051374664732458641328550566054411654473141861133467707601362583141018372937969274817862455076257455266921262767927725472573163111323763258565066819221860394293677698331473866193594110080308346340197847211173855915156650338132604131889941544525513829999282205044440140668118330524932501410678476024808639408747406845511561165918705281362393728040430342754493839773719865511863065605021275784804046251854812802802425863503015562437960581247224003285799511110824067311992138136833364359081694077742482417936404132524744138873267849682242668785018858438552453511102356470763342573131463483224597827184034110153079121295470707111291987857520110741022909631015694889701871411521076165384177448208224590057366526308824642119533164236910478343433201017467764556705752290546082861301796565215240250477581220289531329700518311233841254907370397975582867114788776489261131541887893243152212591164283573232633029306480995198634343426731168611456439040132705269150472717786874738206853115336778273135217694781335458783003502064241497504148254197892353061826342839299888088881857606426811242828365280000860769483534227036039215220651193003114048366229432071761912285006997386026115814941471372867524185835145545856354476930907154413782542284692363985320003305112623783410841364208087058325919060639201341148672210424061129437753433344162567745957662948480506816609472716520296662641819352226917410816130377339452761433591728308083928810889023151372520511591164768557192981410261036636373168019344295950142358026160343510156812182623221613560567538001268472134264867840905013110922350625235035963542309760539018264632149671763563185644364396223685187747435137510534051601234592106317838723106153086358133988678646735519943604811642974506215370546961215670972984408762345484279187345256740301372232817295230037299511234255759352124539949100317812230750393350669459321969375027826210303431848663396540241071542284271155217117516163251553349869976260747537420242617521412351044420617912758762829674378499141368963049871543226142181183400559922192414174514340265551136332916768491254776356590274695801413816833740151473322827467312205359166410993280304456147175517926781935153074512324635954139359331214854305616522260376934965364779482929194962443205966277467859211774210577654910293543470068500290930733825851726614251141999326971079464709286155850014801353455306347072275416376380929243691168854968880955077382381291816550827561593233867048654569026624363008420298839172356505049291029147967621555565887900901015534114114167540725030717513868521447840005649668273450029496286037009994132132131033825763619852253910581296950551432134542902041600509503228118488705303714730589905421318354260703154448354521391232081107137607326047767726701553351438172218434125514896893168551251476122913142121592912131920879383419167579290882872916980056880228755660481151940681407435496802911198378032393940417877830176975241776214802421255136632418911102971002360387300110293659093689569469323354370306205115885176783571830116306431457754369422014692403741325531482005367622113512368315537064503845413291290090320410494165176485042845118385492604894735858510271646550619003225331943457897494199627662611745789111754719405730359190027401312037330114368976421892285730212561381236354065568055898840890671659857146710145653910122654925111801831145621544240993483525148046824270049762690143688212181040341515218315236103875835233894165915939618680845622352230819073910302555096933567363619041340611540714218253445093581637030156629074122638991977879238367507994057566197713268978452267536802517337653270841501515046248807131832366529086633251621839431082111258526740444351150153374313022209447134466725125735848471467674916022039816464814492919679621369155341203496220933078022823732152339996203713635819856731497894819517224592459567178300135900037931732954296280697058544160338512092248678127711153447065766594674580387502857054167735054783114653365306793541196295406011517536900645259456973616782333921148447575265643004364842214801048786319253337248837128040929426114071116778500200296346248052950226152927420892572322524972712721432673420037393244029540581463681285172524410970451821178870731648456756302852611144427900810306403655361672227686522566278537244444687876913169604344198071143926760642214593616534710607257688031709579192381132007744215193761874178013400586965615430748701581431305130491754354058421612453587120630630861962372175166530875703205778984752050156486885986645692253155136118726102744111197529003472162734463469890390167544900183195165168574413356145347826230251820613265806326911791315454347863027644741037170551940187769465012003441464394481237036858077147964189564482658633169330388842569912592333523406687031266109675860912216548767416017112482503556424025153193761980932742021502063071307197412158316071521073796281939420833103452444834143227039805539919908420111155876140450267905173542113645105857047709639049307329241060061219280219813476615427859129213252092871975336678325910076738007713092382074906708711422860006438223881541204232496217424673180758875663972794403611043873103044091661280394946078889328855889906075334396282172989201718239488964159274596523356593224212779065904331833578544412385819075896646643014465568821323534467960280740822412086391535711822553085671784379194593739405981960505226550130459370174615694342702761127542178380681028307384573435037152355600235842751124613660936458762287672854105629043646524034590851712927352265531626759066311633305957193517793804911624811456930164369458142333646668271402816620427737753177487224659315391566538491438931324067966287602047837597412112664705131773124314946972039243309641515220105851561139060579906762517037621201035275433211300330836876068159522163425977613842756534365457627349199168640145214161764285435291724237961242945408691913415125806790806047752664056452233401061465296239164235404124557093167080337142080639292080358720912919163492403354703810362850365134754301855297830210289510142164201127601424961812377846796173192884514168258146130000815994282203612293919690279299325927430458066531583039436384620067655465476457959852716202481016971398877136475997218254562241102408579797546815158478632717645922808280224596170431311165895628459849241401664686262015791531352515948454306168145999191333651930751394542731621828360678364651112420122242355039667976137513655796171839040827234755300288724493513057801002039443457421931742227394196252926284648384756426217760715217437591095579771368614371645021203809969882187262647201325924953598032936062661211031247162121006360186881323013358908631591822794011082860362540921719137273390896516839342971386827364292725651415871604824442357517074052116837482044174791614642114124392416304573662319450940687405301671037217258332167142325625368022819059232388181045550622408915744424976972696630427103163837504813407486438145360524810680806668524321565859010074044164360882090235725973437650662409419833057459670231409246581384741253556526067337082445314375895361136640124349329318824545050135005344526555217826899391549504313926282255269137141823000079428311319456440659273583678723820424373527112324422844215692749133725983423402579433336335191039565282184929001135011935391163096294453737320586816894152475029840264410225823742485281137361301701522882519205717796737428378408244625018678709902032351233839530837153352444804703770614472477502941698488624622053657951469183210699394789163689045030325935317122154893266401440051612739463566287898710349664579804188603950482999287090331816065202862151923489721261483057507002804868784705272574391147107135815833261739631176797219126696776435737525912911834772269165365440525237099031006703766544057790648329548343701301446993500247229517134355037233242023459706332107912135034219321703090450986477763203691526003672280353478575676830685407580814664538081127426536025225312204647300514411445995412418832451929723637729520981299089291345235054375300305629853049394717768511637763595015080145458142635946592863801056396262001375622806473816071575391837185611322914081371581274934938167231773010095880034261403081774463311263791222570994051037279916608046173138924669833722335463605261227264394434541424792271896110801824309626777453324468583047075237262985533913832804117136510222662095623405201876757384088068264124156203314241669615953185145774841048299504350273598511223545317253027883278353407826092434598223325020142931891617458163826042234566116841882180309750456314757321137314340507772864603134614188961215704310825804861556317754173205400214675732463276884083135990652759024002862036502259890965188414267032675215019481573460420052897962717173191290358772420204506654224511929707368773562884414680924594475116409603611037469735620446604911404242022790293933309188377834223652446022397996835715020360639317131816099879695264039497993911985413037172898040041532874695090222840491559431956317643583894077858720909089481635643138028344304077222999621825703867505218843447846331356042979609101551597291074916665116660444742428138115283306792759519766723250512227394445176209392224921373918653852556336390712822534323294804414638312049022244030988474914722271242462864454108311193905312209718892336403184107759174762038701415956991684812410623393579468089034958599004736555776978573224049638099507121416317933734017063021244517248864089123531955001292361045134887179180416342078607063079353332479656981463197150869049721404331130880097054538043869294619381184158244957600321972105176615684081540505046732756220524252396062653172653710849151123412130451653985011613413300129436170578555413821389405121074331447422623634245437391007762068602103352817886880290163479869438935464708436981653071484901290564125452248079314470161134047035795727983291967380662978670157192345293021276745434729381900951480125310025982121705043344167546222555369051063358170518095342137857862641573932003172433247502722630918031118324046401101046431361055050476883887433186131580341308526799751888471854747301408673054458425502510322781400476191608621087585001024260152968888246135086303021537069959757461514626581159932654666222801975329168550443320985003652151205243094443325330806416041116202443855403314875857505342041394516664409019917474446656464331237502314031922601902452672434799300736768114878106012293367242430799816570977000674584788507214130454599385649458174481363911177600844855702351924629036124936135161423792551210530480873157007852121579606756407996850308993978337754144845432665209836661040303012540766990466059775573116619406149312334917334638165749949414217970832936763304018940622553990147663621333540080600686550311679130428296239551446707033673827433901996370808140265159357242470597105934399624871454745101401244888961650602167523001137948605031183022046622731520293300539782671155863943601105553255423711173388655495283765403794630117939792230055338544403055146199932362573701022191499731684688131088545162676353102001821720461518351107782191399534432365001857323598054717935062137340042583129432474052137195283670054326624220534307046313620884680816671744730120831618471150648202150393321327715303856383311206475420088969433044611465498984163140791173538105612255280177330123138638061292075130895946831243442435987193632371803244712946774023921701515801158824163412636140703214996524381618944601931048748226214496711671062144479618437528884628381182093883753813089279047420722062006277862501045747941353432214228541773552881704084313178679733846203724192416550595543582561023001812298997386122103965715455144072580150531410432038291188985820224102220369342230193513077884215838263591641724171072194592256331336485521526757173431280910112468648199389657342266415203446233203910362904741831046812770125815223224632797851014079303166035374771203461525205264127244697416548133722847753212924263520312661424010875444877014633420602101271450155010273311521242138591459442930141622311071837367721429472078328559852004049442121253730366055686511151482677244285588043457132081902846751325191660464471625974781130730397414262487131937723497237096724465884577164894666652965778444871542460002014716215045024325065705107974635268174740120761320133152180571506101193241664372029220122436517429791641357315654564122668230450093139381213143958862708480476401377534828325822123910432274945227580118541136798951251934827073918707632161211071640600023345732102961843538020100733550637841003157471904765790312021527232769401400249841149730520083183965713135260463782132242454262973317013245343526432345976936325628142926755807779452626361136776816643458318073491641290158729742488057225414454504162332351308573013113081236011807521419582630009352850657040785608956634841394621531037179343442675007479353583949048837782273344335721397639055401294964951932681002825278298003771607595938705453721660846559393722842671326088941439355626074659239133379579404044680666859200251133072023553538534914702670312590923404217754533723186914284196000444241031033138449228904289792051263942109445976726333548270374251557300206523114608105391166731804223829704067617444203493998116794065239392587358713410501112895712233174894280021897587084318515431938149999304248308271200199256216623593377161022115590254266651183627611541150903818115361111442972046712344340055381050084316780437621058535350697623290024900860916432110438062582003749360958667022759676572336146281415154403281134580663844123356848991051826040078335310852890966737353106319027135766239029062192110327726894809130284551045216529772123178072019586129038001464838495367751194039054086562121675500568631920253812103016692874225213033618751314876800129715322012837000644141716748923624965076085618412550032494504864354761371183301516674620221304623101470987865787094986323187666908248722919736945612237595120215853299518510127790036727162461363102191365740082640489707756744862281526436838522613439809732513943390544985503978116653860662140012859039498475488202461671134266716521270825719403014751336420352261374753991087879382535281761654940262174820833521285458009283732224221879706555688023219916876452347230568185097728834602391400532670196257140249314415206114087841171668841710912352998668836159628007620287027222383703893196211717624547483864816092181401503425733268958122302660151969731552621408475809471529045570472873060249966131918640575614202821283123135580046287102839995160641220326434618722264598441629552764380755169960719750152785121477911677672562527722132968417431938193825276402498392714026717591776285023209891973624684692314611733743411444844041531646425323687833473265618070265181857931843239260458905089362391823861814389282054746353309738450805468906142973360806425314334051320301929477284152802065682013432475895273836123112640228770432418332212303152224565807413094962603469451473997771132899256236371792410146859521010092849227041665058521014768158263679431240647151730063574725901803107595255625208833069269693599095872148966772139705760039777988766476456696573673963638004762450626109130151135563662300436917284265413237744411700623935796410434436399295143855419697855307248471204257917297095016379714065639607331352071413687072118196003993890236245680088006281107092802905385486302769638770949366789503472579582199232246780181683495497511297424670405621426270116221414125058494708938504522414001466691604914929094911861836727803952601213799035975201649242084897231717538216383407555413029517709548963604873231205901985228828910225469737420469996171271761813650470542427435390165434753362527210873713803334165659148155588102491670344718117225353634228021217032405676289050592378302083741414220646471045844795412141512376137960338431403259411227193195445244876402311300123657721735033439308353508482436703361311206993824607923788324043522329680341035610385287539909018017541481907043003712950173682843627252979234781402312219255047794021750904133654104922033161645982037360852601068814319472524058596713790246616513494179151773213701340041259247722234377108852265636611336312093636378121478735685716352714501076556928021382836668581338634149848224944628923549713582249435322444036971824525709825607168365227988229109176351905259605264517249506751414214078279338054317082656585107041751360542599252274212706998187891032794034261110710295431018470387809095292214754181947265407404439281074168302828959400203210017990785502607449313495280385741172951934985686502542102783202725157963694527262371135278105092033192602736563635181802901059455668492402426538566113763161480167663316755761153077985390312735552687150030804422899223182879251859983488717162986695032062807547732063847072326309233995111226876919035853149073421221844588707125082210348860405067243377398231847309768919531254525128945675487673405455145177540499674775762203510237303872880275209012486177514080121532220003387526985512714130391295776579282544694422674066670519522577334684042098251978360143047134643841111179060730415535761548312827318388417351348501642388677111495214525851846060041188624118371211793643886153882027530493333117534828648278781804377501527845697636439577661886040763415513819725504801437150327729626236085809629665911557267304191522216136621201761305647727505387721444421921890440926525419136220861958440755072848306105906361704930190541195129068957759835811008780843829611893448501422006320709825215011092180954065915543743800115621833905491823491197978325505770995646700025917840861394215488970974298581451169279567004460828767802048120925713275844535163736886380919357814355567621008323336733367561643176303032005144434455345103018593885343626260515289374415596420182710554212021504713961377189657475356345903055819251390464632494045886704803455156406634619045223870631652168654122501352543784471857224739745115721534935622382040845081867991576601807169233045979671604326450372880038540001129045966040319014653818873726352795290501435536431342124602067824727401045081521123781602859962726540729954008361363110030235623728394321204252721041360051604814434403294905333126571210590476786564212659857576442304515448206961917729459801322330398336829075331663241442376508129473406259747079711768321030418690322531267291373581353116148319170206471995106600897504902820641358250966645704596484647563549621051059183921410948104861972711522998435644373378245160851256238296720624739959722002789711307460414291154772252535649445019278008355221230400613671122884891440518172564786664546849463176958153805370255304132329249842303492508453273417421613801851141223262820262729540551949474335850196129927053791200294685227024564128444119151383659163682635854669452152894421520579715385282837522830148183815217414044558341782624530841276910274380220400256039072806769103198265160425318482511029270855449293122334583212863392764429809768365703837616536333693942331517608343045283136211205365938961173397292873395830068523450551441307731906154787283953069761195623079436428017925137392157763279346399120768544297305192572385302951148886281713816027511221531319907857386589746042087049657654977481255346178750301741415211191236562194609365918803702612236654453894706571438547091394918993513714408644785393324121915926420276583443590662571160849127245930464273947542116236745897166414637954329459909278204332216162722921049800092499688461806152496693759655092466556206463526175500150564897844444101517125334230240936374434150335739948943775296658149077801336154425070266266186334202715653273040305526142488426575205134292511671812706171300266570367527295351808444386229236219592923652013832497709644305144478135203453171384454603006801971924228524260790370607491293531748383829632147410045472187654277846791156920882304275606706540280486862437123409269632955361635222853635068490846778713256937663020551856210286988092658367396209521064557315648420870181758354734069839305921910581946036442500582920438637332045766297423793355062511146745345917956239560771313602432910727788072606299361372440824626274405927981081367180231528819513265152632474819915402158028122920175779941623144650652767058418202077116634155857382549044691655021083153764173151199559973424459446399473809951637008327544750404582123413986718581002181293515225138241087111902849395913685176462279623791008245230543432176225271459763639131023576117203378376289807107955067826256393310582711811674859292564666172374709352418850452321996850958835207936286816387769542086366126568500975561631678660494211467342855669343246293511254158347393923115031087942480481780570776233677648589402697412944578978079411684535236357896626023411970885178968626720036216159172074693230034989093171566169130404718419236608611414889777542325046440210801360089449810591269560595532423205498317122621527225349422349428730039601914764433385750123089675678617677761841613453016782867219504468923820463694831101474471272375667648716243156888250354529671012145384152010483000943584187276320514327259673436116645141456910686179206969596485533288053086665465013123975145293201521250016628850492703173183041487098157498655072112203355474560392547163353429993245670856320170904702112736350903254107378966058814010857801622204439660530278224619818026127807606216081506250532773500181710326106052564975134456284172329586136090315423252043632411150685020613917477975248502745345220420434957692413554027262012125606356784988899051785864309200776383357902352331712676397592983134435806731394642082794449343664367311819857002066344239222238909302061505073729776045280555735287464126150287547362190773053319259286289329911252189845086640153649170415256301821236058516260093219240778747457993646033468462912698621646684820671314745595802597533439575313973129152001061140405938421721681111065676342499717968531144360444600584305654003425205993379931140533099038981127302666558726130568197035533982880943815117595348720516912463035407552712354324535534926281547595524369370529584020130922044345492889585012572724432152782359353121519735575231036713015538695943954132102404840809640608077700573811942127163462817803554935201464561670365839566781724297403121236549994581542275012141568526566392711343193346870884696076939041840875595061170888630919758495648945695429494161831778821066543428971985204220077424022953233178423323476326618841526851502014589228222224221830553470913914681075602710168565988812814529174564297001163562597307531563726498491540125409951310588228114919020817928159304132330896204326903341897659522683547706011229797534213075232283791521404918633291063852239622388105416478410673664444443692149586587614880183445120167433291694291304217837131132122297213431667689477908138289475867525055997136165534225112580637720834233913406003141489982476699271006121373699780085241286135218956371881465292647598018227153952407187004971048501831314217664353400456212341143571101984065497223006464350303234884043295517517844693584922642613605017840052597236155666899167084678529418893632111170239039171693353402589212537649122656817765594842022834968000814954371231546775554506256920154227488024605719745932112409623614839425497062626226771661013794027274750028193624974851080208608024925515733826856375520579419218232522982123847429034893582731791353104623274234206188606317765584044215575263344083854729880580530993046292540709227534350290647001064730285206087098613271257216631023450144394094418302851543526722850291833032540065428493901870015901309518128261617503182563001893531344825526482138529112107596122661914337048206224851496066226145527224174045070799180263147126112383283316113095511955220266963253162777931237604002303251723636311474737128058612546631045292120013349174429272960334324173020523467618860701541604302483955434852215482528391618253129304083488520271129326865461325423654580804650045354702748820961886954112965416568590018784044851110611643979969106107113692002907404767754540506621049372758291700788225140353373764762422803598783068144770660149422140274034613426628793868712463213250616715457030527044811123144640355795654733242378700030561528246390854840513075904420486245792605890770626157389563594571212584122940386210655100701554444309787184021688690403038967455188920136831535345009176193630434849213490000606245025786088214342047220107527098440549648434311608340164606170841736731221625941577941578261483661773384199033654325383477850899844210252093204300494307742035184721073255586405323014812994113008787145107561048371150564573925110863933690977063844912100106342575737323654644699575352352283542354324260564174790565113162315505252925710591034941502713760880790920456761663761090351785627164062137085469752358584739063735708558701829341226316754537646557766872531593349336817628076051956542591140413427584479638998337603042811743251623743993940855992192158499560689227356492400511773794071029482521333352190382231216440498688387725103087979708031952162305160625552881671080293095365013077965494736731847921989034647917724813641084643603301463823394348841452809186238398907472128122728515245063573178840083273918505256759545865725309087254212162018163580809312206639473524033495789729458047359242136603864792608323820245912953182572686096112721848976774002034501982449039330467684347654921370201976904810906043651663037585146235410342167415138830042105944591023329501593272022518573804129624130781406070066829120781269530671324553611129627081449683156240344851556442185077224227138873602080486037769110969224455091817075192613049802481473015380077925430344456830275358873209570840453655554685227214049401147932073233823215501334915556350616205624227110007968820694909521024692613404626168024470823128113485357744099707456675825225304113454544390357678134935716937710749428091404360861043983612531732532484363014407931825370326193278112126253779373445594282237384994785029404759090401574483813100017379218639110517548285060240340917221661961421160281646175474387186508373082416555118790349653803126311554794306283811582033592456033974666616722771139225761968894402163539077206339841343614300027824130478366534561094082037048631590014054166100182161175754253165388431500827431712849211548148862281031044028851204233459641866635391717386004252213530730205740829918084162166426943974484922014330463799739774417091906354110143059033069663253031107571802423424606852280347832543885642154462709549463298630627102726563502143074835187454292949405651677289131213836497021567250354328969671705821532162224212350412696754503465512733873073284872544493629239176456253129979786447243997278489046963171250383618567474877210676583694360772206702062651518417611205654036382335809551238077482804944525954280050553890104488931598826957617028157951499737025639472724684189391844070402300154414909774502503761446736602883509715574476664113531825267334338772458426508378886212559013251158630415809914250961895301705158552872738991113727046321459258989498058974137835420531684397171645205776212939533701199211504809870507582606571732320141733660134307841082103540785104859306977708059358166141651582578308267680453686734973824369105247618663151160745654659020289529827570215792353266860361099176001687950445131283636671236889118851641111657452326931653537382451737194049999768298363932554770643162396462356733587172372936541180201961513735544581070635292779808122856840622515203460223902310516269027394605263707715540731728235864726185682319080451393540614319006930816373393191514923690662682109936951215503103173158742080101914633717192655049566496700367904037095561728296113371587458991430133342207151000353250656972834161695740915174572652122081354073091429742173723337118055039421100604908005776577455148207469561912474933291384272143772486212011640585375123131115303363593695884303360454525374101382220548454707143242074540831411660217636914479507963367165406608151383861570478701475380852232170732028113422963488075136668505908143714050653876585357244312093800643747555358397398184665243452187465027094006606539422599386361541774025434024746934826908733396587565255310706361887816125792673213651611440443237596611559417111624033278263182648468328287998599765838708883813410472642446186174394186815097340757896607645667871534722212935845255052763549820349004043618691511591311875895051146141138655045701745841085360843043411596254427466117423023558974616895612889545158467130464719340560775541379448103137860671367881481716685000105838208919532042851163004775281021420834117405635848362748909114200200848807113076251513957822156530918379352801649141631131161680164253113410479944832814122827736331603731009462041710123312819276535848387010329525557865798324679766327084301285344936389936679623068402986501380673472679619002352952749279451581589153470449071092126795151193438914016408503074263270331182231199467914330237936365381060304102571155117089984280427550952142055323460716396244140989221860689402368680176921970047110789702288003406336058206924108126460828836762623514681433886746283063272682053616208718777644242266834224128826046902132410844308072651951181652613735199320108318718366223157281829024555069349616233193571062540649634212050205111850945051728215407385426950214522768018687402673751344500166313373074084263559980041176958664455095404949097135222034806322427357547628490864450450788071892609203168198609594349833846822469014248231114959421923915366591403132000323398541580750108405100073267966570631630921374246485438497501961203623130100003220330159471832702460367173296627637660305774136887068695360722960533072656351415702201195364186915131486362113910495384153424357712396311648140141129054719371023499624556123471865234211827221318858915048934446241516835423289792551551899382708479381506257075347643011689456967623148185229894760923333816014694069527439805631335435822269393740950893550594441353724455245019208870567315587079562182150100461225810521313630001113582099260130024605158252407648394495763100289148241341221664733494223345972532878158732267536935457608701534120731779986912304597444500264303798164209410727348087666833025769191277809745235227524331272879543390416347172144843656905575515809390964581484304255312585012073373156362294707117808328798437294881716592932189293781149520582809276364072823279662489007898438890854000231046369301946936178059992119046030458456572774607728302083449600204100472471846052174957584558503814646352392512187817052247022220624272187762249375877200135031945617114026272241923381821369477610875652210132733627009751660378307182675631521690116139735318645220475321515831904549265511043953092819491688031084769872175999110135413545698592553556881440273770044320596875230245624622458211882304759318470096150532243511031516310286884082056475882447194008482732637303211091940827653638079142573063002717203542727806295872020312555926162332200801572983891743024583773149042161401155612559017935340028236410703646314901939778209125004404452996554079666111981201957323592198224438751830886743480157385960470333296199530770824555553147096182373474310503333765760026843149541957879479689331218815905826185894460531260652967622030033454741452295404390606433512542517665817442079628053891110061376529603520338003287322018919973373229432551283395117085287875586782806094123517965716552689538005681036038719854096593645211327120250019143231939374454689763511110821340104692956562183303915616323199161545747422662266236812091830194366275232296535534310523259952511285271791637918387680180119800614136345451130124516529323662478906809083582914534146502883025466360233000271728316838352854221923848300338516292081401333927463730367101114426943725442599648922407155432739942520866275655009570706139525939819821094111665554363935476733521061018890512262639865921620514605159453304562129343051469584745285603835357162551560219269372847429026801841074037420385110023519654290301122001072425356440694544947008940842163662752754994819055072492013942757740133237715866039170288319498260353321028507344166446158434735154247509013080231101570002492426512611141324405660124292064299133346218147613198793841735010318922095431855303898824611332014485876389116015414426056412020502541685062253362567973138274814783438754892470862999307093708506196556113934631581167510429703910531295075315718582596154057522983895401651309241836887257641668280622942472208173978232726288348566356800684574614416348276828934538472343853191952509303653129796838162736244412781124305321707753368447252286523362080585791179491005401649327097080346388721435779440825112638901133964575743749056916833162856291124420175465365742112090116874303313425616071320675474540381524389618223493055748522151370310501581653517276285276208630297145229355461353735664977244981076105718141211853244103025668153886140697012862733189593404721139211122311162260341716280615305169209909084780341910254836945361602953080141381141499023500812710215103051143015402650858805655249063994461584362354800924186036818292543291847727662027321235384305464905074397161722557940525098264436232744140539420892484951812340149709714503697146266426125555652199231131081607330817175671193458551593441861252197706396334533577323655890258622197904981289905831274470512303280811066216001523526247315124841383872303271232975651725274018428600075121636302443379635536973601074009670224040480734743584367132212904491464945773615242483694389166587131244353360459140712731377238749609632607821133100765234319447021821174943268495993802586546360630098914701506633455552878622323102305906777126834352375412406070220752523147276040470550620041569926155339655626477103523023540761216188497353689073391686163249189874623472224259420522333782851791945493081750463102894575111917728678954768091585591196779464515368040516793754627138810433650282068394550001186913454362545199331316091581864402039846910422232504204411479379105791107946419231906327385882465652941487930684517999623754675601646042870962577277106312833022076023096111535203497184472198409409170789643950500980073641992435297449169569653336299224236595150587742828237750301834692751353640765201569855899505888924008465316562988371751177974600244810812957552058029183715258966630393220160429744352986180385301291371141111471432964211589877790384218910613977688109932853148010348047843203015431321492729426861313839342902204140303735523891432130657170399090819912945496261102495438333591460361919095310246563300776105090313541412496044048077744035831500636208485415435126259092874623268422253758539014625681420831818652813912323370600653853747060971203364339467425573385812565731412427416376237049519682892563865660799318483764091814419958962074891359541494982644412494157916252997272227530661313063168135751033132877457685837193194043016133024168324432317112127714441824775907403522946117179271470462591880421227496777144015058369663709548405051610139460367111166901706035008685682834527550616556585765539807131220377461640458571596703066225314216959040927251113473080561476429290209939615020452510537215808083376253744003368858719118490773107947786501560410717473321021833763400155064790622734378600116262902941065471950360524950215207217133868938481774594169488546354853733151291461997377264520002132505239095777503780231154241143821039856825491745285435033913472318615602165513039465011273720896704231944122156635180735738444568952540049238251623316702133601610954208250144645122320233104318096200322179557301695506713766413429117313131122996129354322419470663109000624819053115270620672247938145041583181305068049711945458347476024262115608108666913062851295710587999879080385275421537761392938106711479357243715544088089320830236145405619552090046755781401374227957881278224496657480015200172413868050594449441651691250137941815670736485331534401470804852457304227102638922440334051035115286808931977524204616686985163008349157722533145183558721218326530051103136233180531225623311210606419368898521483572352803702887628111141653443130755906410772238945704259530606976003451825606348716986139606492918268156607218663953486496340739677207620310039714237266315723102416129619452688451802701432663709726469646564085678871803861431320356314413221530577619597148182319624008046190309882609714925221334241779376789255580034304697094375701124251689013295533356443512357688206235959219550049060419713129159701311937100725347354056112386226341673041281180369659323863440812019991298074181430430044171163161842352362293349920244645438003546803622073955644416483641401416713981281216885527716150332472391411461119587983474096646513321111509180287723214701234200155032511564267706568486615290776561609847971935936836339209788078780025311635971915340100506709664502456920174414810739935456429438452024997123427312919364524512320011771100917907923533144948367266393892349326499941622425824214201160290247003625273225243180938612294556722278248297335248190653495016664520913971468877383440504305890091300820487055110763007262583037429093919733718231186807203237799510143962870703492220635180243131635672591244530228449420777133322108714860210592846768117035181111738140740200031217220875817796089832190163246812642746982524744038870960342161739718950889632942976577830530814311924001650690248584513681340352144515863730652560265546316697217566267292892586623722213151691123100482480577549214436125195209216953852766603242283734135926594375132919465128505701380417423333322468678003340472762250525050286368402536311988797419093033550802819271030512362144806742174424486552116658537773661443846885175610421227092324928304762821328211172680778721133333401095543996817569169926417201381367758781827551332810041442521166200886085861283297316506285082815830497930638247584217661855199050877024491068518611953182611170014944260027210729457157610648062444881038617103402224276286480600090391978183146011880467071015201778016316721667375099093139782183766444314145160601345105578187481312117432950076144494340111872758375041554513769982853336547441919125786414150673777440812466440332965382149091390017242095472683796417641231526448383080958526177406752464309914372594570030560516641600927301880057312007302526449198563192451801326127441136167867000434076140595621258131699794241100917633845446531971763153120345314328307904456055642620249615481597266500311061230458217338362227126831055897156938695418210147968412013535033316031051537982893873221284483882668436560301033484635472577404727718422615123309193229701457133022428540800826682706211224914115697805341195242881538570873385120559804373045911012211855518583651211411361224155136670878630252885046416701188395582181421031168390918043521952671168311016140539979719204623462023183147214755381545165632586785048761332699359154270861312452517624427951894710469855104324022357354449387870042452202158539048071413601228311746249416002104804198351227159043163965185372583963462677581351362588271956546514966096353206646526949450303098842453309239410071945554351539805223392732491431135190648428023127242781580442021389715696904922763502196322719554108670234654613897481346638030191733869205530543093516606793554955468315741264039332498757762901059128480119216512803216390771814212682555876920180564477606765199653652663243913173946369359167414325262420838005590652058982935883119160514997282651700891913001552326185783507246956133900011194516343006077490564292412519126500713854318426741937848700123555172154501314173525934141043808647107559092094204080514604716552958763429970760818928417292495108910836736107358978265062785224096960285240927452634473475507184645875504537508336157696143863090908198069871326654404377319490862341957219847904284170353477801070065475068625040014183967944062171281643202857510194509160860198321077077592369312538825592692468123210418017616716084950220091051151224646541658705765788055568229055536293381446334927881754823246574473890529438853833033433387007911766661101111249177545614981498390530709694711580804552342582495891331478643336033380582131521359341340204412217334779473237792154621506903816469927283131281611437647647411051261731691693314820394543225527709257325151233245724262821481219919321471411840020620555304900320149064819964201334581143166805168470459763614317315482571266204922325442210082810189079058334271141570535326653322603489114365514172448864964890755503812490891041962143295817309428539489130585069675100466804105864922453360404584950536507800220553130324107944140500849158286312743803183695594252553098327181433237192653040250597091623637152570186214513501283817323939426483177715527203455289536022493705510865365641484209130719368003778130591128294231664188063447372707587407543035449957626112543989237105291511182423140002843232863111345206330170516471191622451932961724041323964490105521797905386374074222430493321713351084137465384637264526679169934299768018863630471375625416046144403971325116720091583155484762900123754437032382367241231320101345893625210501101927955310176568430538121864437910902214431268438577531757361499119042328181408275384648360965657344131051888081770705541032634161521521860247424960134173516856823105382122368734025296644543654511870637122599459048936405737495738732420348012594272494045008428584565629565817903221470265356309745765586349358983163702489238222143956327693031072206656016979226560769227412073232336597483634217664135452172562550778511277780930214751645027694581553300691525123863304638066920272757484817694947136045150519220449403395422602245096692396295222839881402468592323832539439765494549217224861950009273133008193218354351090379030406681583543120701853171094237520551532971178530231398053474980855370127521023179871345526867697653501238642757360541453006157773171777865558000584999997316043424134858430164332870285860691649157092855734380755482108633881380149978071395812771038352168875031092920199733439448926427842321440270433341211220673964037900556655310025288100431539372644815827617093350985424550453731387213738655046156721039577003055663201626066112052762054179030289922817650074945100061666154863022903527984326950125412035034261146000083613860140617809575440529035220531621943227721111952640411954252012704526200157330504594543101768028541057058263721470011141178514342637175569133178128269344337454382494410524535323476565810323869243186749407793453045101419647792497157608007750661508851037485395441401084274077237673015231059739047533467088975492903675448403122237551932170315131145034924899436341015559497118687288047641554955151843665175403675556821241875000906037054777388770840463210923040166810612600661220688136301056286890992958012442941330291080426122327441212075614051043337532759014687707255161382724512251295618564203332676441894010381914123371641783562128415500060110722343985887095667269179864272023430251996705803113405262361790271185759819729133318352950600570122768688988930866793315297194723051981931639162219224333283448345255937948946118494780891271554397388658591442095435651238397912289523442402482151607184937070301107578289435636330949535341507071671034338186761862185900327601635281750553190044145802252864047711139699055559473991101285393857991300163215055346299688532234206138455333921302794998133589672201478968346721273076443240564973951109144462244393627846092373719501134105563893337829489463575389115105796232228673724663969774156456150574243598061958144010438271131063448763253773364608329365313352184269394229705475048035044234420284290590901086806900058300914660955899284072772169978572939806969214432630110128578139021592326006105661213132374440827912656149467865695086964694576372789301349722638440495900363305431504117576770415651155917384171859163630143737313740103307367258763683485537270750447236327526177126024050347743683034049519310116319575825208088876713694176606136270604056355790694498165678199044507577118522012343318641332404436134840440473341503349483032613701055131924243705063324571779024361385421056243238422569710700880965236202716449448711203660136479619114744920247491179340714763072524381572424127619538564551652205832699588827999179729604072826367361126822075362477772115929512902404754954148406606630601644359403481553819344516937815418733758476810869620080815018141110248226308514941305346532543959910226436158070266041373552291865270502772108614318251519063411105316451536010414001137860235053772434445714734348292105932936910256542466901011582278944155097783424059970803862398951350992587302319971091215995530289048418975356717652178770148564575871463854361765893410706143600508894828694411211039471642951211334482152445520256204605641315347532002321390496261462869298737012213543937468043009263999794820935145112094653803405714501014432007875521081628543852203219192457324099151387451095594096231299254066858799596207132616598030641480635548913032635755577277775035700223829362653000510509441543170250084582373285271196429287662624010093786548275909914363120253493387869125034773276524949814503643226851100161473882766236138468643298904693257349594054210980043361964316663762270191051212812030387538900240210704628437373565996013329054729743933543727853180175920929909948179569753117366137704544863379930393725223865712655521344779605498429323311823443535439532460561876694728501415338275461687201255301282325227929517311101305801694437452462314191831881068007890068653207189357551527788382766878798935124733773521273700008992217849220455204795573349213706571057806914510241073573191003574354760989845108599221410315342001503520028835022113142646868418372030235491703274722020163125181578466484351096613131101874504670500170009470242833326862438811431225463966771206176694458570862476601235009022180903179383503818345933113226622577215602228234123817510362448015534246175563924945359743654060168020600142483805124037110307385148268197401592224580990504847760533015323947810384622021025125441105198704283273654253873162360488324710726602482406088293246891111605033723705417961213416520152441475731269377302147004006139621411243725984642342733073320702431492377646232352342123631315731403107550020231626946037137142238212478315116350209609272993484341037293494373348413142521770920792403033689272434016206365761548621641842260148378954659631045416835001195993212156360828883520121528292794144997582455224664167006902282897135487546616033102942160670588307605516460948582133174631260553537746410928586945058352132746649513983135915723846791302314381074173260194533348630389184717628351744748396258343292338531579781908922365707248874482452437708708256221704298161330156615114834495811742750770488538262985533411091166018138815655317331744304214408445585411281330427030747191751192517159324541222410085649148150987913238687537922025284048274651420238000551433392125656342817434218807199860236809715045489555693981242676257554406334809473554115645434701702234837392366320333075008782783013127777454638067721194961931114786279219284983263280147144415141040565698569917711247354260232137851122082603164943443546415236396383061534638011913584280524086307742258290400293094416274329271509449276820174542904840165414325087141419459011195310357825731682301507073296280614284653009400248835029073291744943435656306570302782102724782745078433472468429180414848644605731128030555325112836025583158930632138252426506985624169221155847391764840879391865821118631967341682085266955707537207855635701450283772351213170534806631930279592082425241003331504339051086362011769712764733465957720616632566242168672051854160832463295527092669865491195715668434363121217134299430470915015259823937802985722673122332183742699025411229758794191428972051820843105259853562953070321716283204343944747044570801130740948584662916628336354857270921275463482268794454708382479196117114067466510501399945143835101034676328415219032310758210519451989776247364942383625374304219465724321549522716497829023100493656932823091257523115520390496858501558967785218204183214611974830242224800989512864932510659001445290266668722057352577474822430375073935144342660758304779614579107104969911446313635930443024840630257783836776156389063095302140265122723433350553954348143425999334614943443604920185047913544621493486420012341409391256581283058815520690960506286234853953692447296501429198979107265481949718332552812232596238849132273317634497722295521830962419450731130695396007000397237665278752913385483036639119822056573459777326723660940568171501413624576965092597300156813661829507503691382574823640871572109946675839101433394324720423634221634858880563476340623452152491454353314224773974365578464269442241395336388527096523534196811377421193713333140034063522079859755262105367904986500248996101965035723612219866896758478653712284950568299179521415475893125959570134640271969655419893623505529449267009199424751729177060721640612227325213800905412036016282521628930777602241736482618497759051226994133571333107681909921035283907290225124515538124268155093736146856337527077169619369610050157212057462843007010822721062893744252137528711486937531440704392119673109265431940332455830143991045291304494763503631025276314454943221907441460870188828160573714101426021772341093452844534339352893897077376801199146733001449314483088836487651658963566665854049025119114614235601801578028677628827230809259087726862603211147141810831530490656453570350627075225325429211597898396749153344213533567640986666467481416155183399187679133527452602118945417470970168410011032091047145176825751969802756573988695304261387311358531003943043582446602824684010746553149360772639532620640013945355241413353216252568272138434570531716062210542353884166164071097174223521412897120579392125117600260508464271330134391435827460493616331201052811821812084116954315840162898300534188378135767039303925510189111153826032795194861625621302243497421323824681341480835708273471382862047549944382723953735324002030758026984630947298800116334422698101796681313391507514846103813251103266411054271142329424295170413059087397636310785981734144375428798302720627387822157464232802142025053461607312270636991577068393237401368504789089591075456814429611970052883028341114585230824652030227110106312132244448761163695316163600360195019756786612816699501661497076306337978205837044084084791760803567478452550156495544859359141611506395388241962932222074835371122940543941110133486455121219497620512875378017314174948121043234276252815850587659817332657323577735723722083996378202563167341661348712293273697049861148737358956378431629963904449020325300846756990052538808490212377258436114024705732918313061755733167713671248511432335761411361059510405424139374543131680119552575710690181703859198934430570400898865768945941940691825721233466556084891738737240284452963911626071141309881306738657551987950919144115000831822901480194433876529640333970416787529433152198343823684793140657573110123439920144881581505560823514292318167997439969221096228459010040869992237593597652351799433721957192661514861356006294363840642797120450847602461738354648358048273400180840049752780093266310233856724671113757420166534115105833552101712990405693561399078586807527593300476174147384703373890875271219507524449143174929076115257282615365223580169256346403800581047261121011095393516611311276250233856064745258927702132033428470428994484334493586624572127268109250225555213426250250113070101791525858184038132535381790843726053108658026963401141655339132292626512020982427773136704875890741236483407513036628198009730785522360596310323140214677518318353741544723064935179096685412251142757226446170972599272925915329081093196012156401380567062196803619012103529119757437190927580114199065253026677620941289495115126662628617992333383357459099167110203933690046578538792860499918427310182038745452517334302408216464888704896400662530340060050608292061617434803610210498023744320881311266521566056895257701000001178432576943720306285129011147344812047353657243125741115723213858987232483741865495575029542364406431847400311784425028586614082452826389899553412285038718845337691610101598051595838105168158722293833216783329912421709823660064158808276633926765106292008004003003614003381322726737322208658412498685644157856407427174347418095378526011102625334242337209247415177417124622127382366653022043308105302442773211328523467225973806541334852391726036214507328228607469963776891659450640466481303218035570096276058360664959466511742609060472115084280665528292080953322391274278363993128208914475571014173462713119291346354551948088214158960152119802732336017405499241995611353357032549821256909274064572105236315201692414497541810094273162771942467323258148512484386173707875635847211155159934285611736075351408869619096835055722578561734542540543175124919883229439055020614684523159657101789262078673535700612381085708950502539933913266062906933226572136436705315529121187922074510131582294822607354102871034655601762021643463273092393880034629251069031218535677654953481023281070678901057122427359548322615109565629577846668813108391673578560843737853749380532655825861513886673245393975209344075301641529395301327861777012900538426319685873238281200602434648511903190122434057282682930424541611498664249154086517414294308037245135225290420459601164104316714321402323047576214668055702382362352582289763412552762287226026603614207626821306588707582740958095841781089067254203531780813093413136785830977442534156424746412746792571021001111669132250017969608478540955218125030126426469053412419433126543293870148427806657333533148077128041173044243508161490172203494932025769271882398256907473934398153137645565471204800388961009247758200701233455006525528709004680092372799512927002472981151363995627418529464618231658431446818412636710813366561657150114924903423736614902970740387650759136633865008010526238645701077949493601061453469705229068808243213160013660609204690020200142731192505277652275296202481527490995415204722236773693762965911941281007054204208771512247138439422531796006457568777730342566083726341530958112092995730695025922525524621865022062284564019553734248509482267212853483120310605403437329225941224964279616015004007819871718410535830620751284130763296100065305561060515487017943893712207271991048075159256621373844883940004966081026674354662221500208478916509192483438038263341182088653358840962993755893464699584131362418185638464039630370194308456784322581387373340033666057063535807934612593361333946534310213328611161043968322598857975524828635258851290161184893495297498103309326796103322172023577921700304015670186347076756115124434376327352876118815111679766911060060905762247018228065942235355324495318108878036594468141203461880900648155202234828152823872411823448214943431528352232391138388454067402066237396968115902160223320333128146375272399801265698307489132711243230610748711195703671603511958110054601347452491965971741158497515395002063715985111548163020665480118353175402127413330883604274246343097922849421892305396962620899507771351514269182589466771791410220450661534999554645310102585256276084034539325758546475712600725601529770299315816916007121969135491846925730316420192392342185368734045326298728143545383770052471470834378015249927921584731953170004038865423654945112508700255826232025339308361904436355765447082228130975755554039501960901557612600151467054257000783399004111969091634376796031801601097246301623110227383329284568602872450336182915544747980016614638966890406432325632244824707971713053040031294932212329754502404613228809122358569613236129804137530621134261685747599883076490314147535484747094015804336375311659634410109303831982671301024094147150408090191644225920611476448532894584532651087518445790722228076651545629773195766656537869038284966597237695147067314142001891062107401254405351224971441511069435468111750734242184817002523319628752110721652095546356235734912102468572734694947845347159700282251242617912977306573810778554423042207470702635555233293641735168401459055036957989257044945326817346112211133763486729583967318555757002887162840204894765836737855785315734284506095681213330055587374109674354289298196101156255412109731389083778086385096950836556022121199531678316605791206520751582745886938774231436522715385262654517956023414831015237636376320050101719267019221216481955133248630314335625337746090360864322123413560827897424862694431985816384711279780049779941641441041355415417143232522485103573831197096978240894334421273349283440761338657061398478655474140444213901306481873528759448556657101244917692628410721682216122122105115220383453866219347785925513283064792815266215253854019266310945678329221312614121841645979048394737655068044976147977240390249493703710613035131312271352756211546726105400340463338503217703862907730237611399160638137096187990773356271560858815381214289651258557015862661265722569633954470053523913109136210156393787914129342734511275304350761863470369430801147396954100792483064716692000768061513747971585457837657572264224247440343055378423741954762024993111433214592220695390286245726795204209319414571733084043631032412424802115291228640286483112204774008413392748924298122557311296102744938986348836156593988037478033624955636772380820015210055231701427383216315778514885511771622380951131704511433292364522374243275116093250222093620856394140576555488061251707447210493345115150563920327758947541368817720854487550045718141501602601124954339986491164109373820097651750978770523265122214130432709352687949381533850594091228551023192758003291032100376323683248013773925591394679286539297212550902743919458418812564218059960317890279380025944192302965739651774990437641236610817785006400802812831887907071236412401438739473641119373978780041761031094292301765514740474974340661816035795994460446939326166436537169879010436451472699691298120760671768457482774092886865807816174103474960266562472586357154230608693295808350527405214414101311345148102842172360561401184277631264431626049000374142478652765234480319882615761548082251405472245625063492927849321428147522522511913087830551852646219229065336551843874832843751276282905559254654105035251678787541480355003153331062638962459992352439288817067236466077474407401303155063840486335937830119499589142350715634396110103514582921638228386134599365144497300660302810108936560782220056430941680678134694050468410237355752141732268771232235930444250430228591128137301710905748002982581201892493513718455240904195574161413357544640245322231967264300891269767267135915071772404025109628217481421312521233816776903331564564526395628700574145040739360760218502625500764251618731070710384912341258813531614171929618005185655972633796484184164118005885461881133051863791452261314085022753362425245604545115596381077552280493727482141195837556141920206333245507533333361478077243352985191252933696352068632071566071364136567218559860520836801340091102971904146530541873327704029388380442683660405300065620886588252452169333312614135225863497032930542906533812436338072504808183972655247195334030853713950681430891116617126215525503432849761246968100216849367624000434781165110038096523443515802809169746891240047131127665325455513755158347308145152436948550813899425211453254275742474492186511801372965108359467654630495518546126908844130092104119727173421421264156976453437328954145155590982862952366183731451822940514264499199381102348496055371874097081754480670770039811271748961141386070014003172222040385107883636545187399693834384959722928998084486240940962944204817125310781992527381919113250066069217965405935922016530549175761982274346088348851673633286930809168110701463458445237104235588098852019156875148617137984300752443583759104097061547126571183646310241935852832695024096981561031223220119538227819145047988583370761350704343723548671704434645646318232033120514833151373159722129117531246975854608345248015040295023527048686190562218068261485631110401443418620533681549177610852754590843040282027780190333994826000012926086736550053836508065430829721944110639012310972154237883970273455032144456129704631548555295452409350531050160026999011704394450756133869608005174525162786441977328723841601204245816772261183454039322600192499175669370924494041513490217121004995223761977525275943924542077227173072845309189583308354242391811222160436904224781081325123335491544531698870256172027942557328858666923230832440335397444231910537463975023454501651611857393250243970564012245339549450334192200609526702832186284686452201930228208419884284576210779734910362536409236817181402305651191920879289081154335282559089991034324170291175986208263212461320221750969608524922578125570086974044826740576912856225534004779050044759634460222421218322240323239874587338623329646918494346111432712175829374935920196173604869667892531228151321356198500756263510929725743775001028414675561791882859762994197462374122401487693135011776185167951060980025972215029939578965250494244603472801033616938907498727425001012443122824203172203463431923993349210137096920902968538364014051241851060565528316313285994154944179371964459005413938257011127314725142170958616954123891017135854058299821503258012604831114000420056077285673917566258122616668622255966000336864735138243796251142251828501024387415949617499056666151397623534703699225470395855522801433921435205196394305095595256009813031065102281118666324572026451412688963827264911871462721115506680704599742104925288788321860327837660554858604565781000085532168489974058201588751776050146707205152278509001507213885948540188089785330812342384247035188991625632320837200270338451753953648402021605429036760861411147211075051076774935404446671554826885125024292962435039407352861982156668361104059931634571751239595033801891541003022846155543516608525281307874116088239608280263125671049517540595545625000501405542114816957122190188854546140596518350263402180874011366820349578995750718208994796142908800414597911114260311573526830746227014256155585105645090507674125661438322432723141992508121189842011944062124214306510382158401852665320070000426231466708158016420707049457853116206081078826006612626148607638903437001155584398439424828604626867377131220833198422107564354204272737010511405241490457204904640544804370904112005867828353131935101303057187914767973916000073526543634794031308107960216971753301321295676363353100815523521160505577093929553712538170460969351253112544582322338863004511102053934615068216465521711252245238997682374764859412689814874440944749398279421242165999332155262700015043623484205591651492481185588923124055731400133846472017557231799901817599880535244824309701951471519613593182318288280304195062658147101562191558410637792937958769944383412430074670738244825757796242005126271991117800914917660800174218463268469955564502112698564332965355010347232159699901517836107222619306310161660211222574451876688591174423825265111021098344293290320207213154954465430542270645324033716441351953939437349067355699715101034400544103033087133556704654571613473078628831039541085872665960633208932964172572768921879166526129842715071410570720777025384255342744014027169991242336051553454119831393043177441488152372223282241944824618248886237711701954087822422676630621043814525526299499992092528684212653478305655607423830339003999988155795468119528048091203645923217791010606266065604671303350659098409471430760720249486614055553339032707981528224951451793869642579660595619320897930646107608186410885181414680431623092173188631115512138481645634796311977708522952882935087028461581762793653221001843048513426465510370772374933060641244624758878923252965265441278430723942111478741546628263714410374432015753091463563062862313702622575920506027361064423392534197562424300216905355515594117044618093144294519305210179641579059053019164087735402190151006782962156356674094247750948511953258436542215399187225055817225644482585715703732991945592657833567581783270052615732132791120526417013690653190516103972441471617114614921401978404867976163308008306242386543836920176756822203528632941622578770029337481042559888128394381253240653706323555978742015782401347614484938427278333335325806117830738688305135119717191677035576880256776036263632962295192988854631042131131634392311211478055303226816363262578445207882961692823241394811183514628112143639913067379748028894014090827760157155831610944441700949993292455571141218462594107615123420782190810641966453576130342466635294561465464219661880547119812388705141715601982612640239722494582187400592061720112157383740336392090946942640252449619243702543525958910601023018111024334102121532076677221319652532270486519186997001696964076940005763175449446597333303317386911259893349420985782236611569674767533763751814609207621001601869080512378076591614267252752536941852134615006527430886034574318513463104445365549281757865451567929189287942077777763618601708720234452610330323871424446075606350301104305869511006053138206562699156242103293992623641816384719313267243823982226559073709593481261472870285966017118170601188013116786100765409931128801833312550975675011222013281088635495657300121850929066166914656754812371547103918023269804360714062041162153333120495546814590045863226583126712434410556541508370802817801437134327791151842453109539107825121356831554164050697070805505743451073711112403321637260775266744463614885958383473632663611862068478745563047610082845560845680145877764681121815323556243311399786242239334913264435032112447858149114806406207166749304891545006914412829744357828068202596569023687042878596287072640931082723651220220875595422163234525110213508518135831685031018918340351900469300242508948760074624464711738855872541220106704646176521192022444156366437369510743515058648392305440500210114617687666669032923760571934638124376365891128286619105313067736360336613045008168006609016828122298513655225335783965576925719761296318612423796800254890589449281381336960528123086353886555031197019455260266044515728829513465535269430233109129730222045459237420953009043542843526278315061061115275305202738432966112860901225131263328237705422741816324248629263909108076661324543485587435720326501720221620525111315286823141132551481449197259018060082806367727031414329972810353540204930210688059736106183024574437020487463416801209156203031141780427029431338141499094426011588833189684518823700464733102559195550333290231601869162021151875491136068431164134725770555183095383338280512789814220065265814147103021588648954352187704840561411360585275952467106417537801276653792368603798247203328812938559278122845177358271688217860877524097647402696073316461311282522856225070830502869207180159949550132843272741351674401405490405690484501449331433049802202741020369238827112160810355176387874629106035894570553314657356720047851087573281337145075445323462281060842372329916228684293148744368180244904134155556803159894776036450295276857311351181414072898683590752334309113791157177822402433970591565891732133119057015723603813849704162161629781354336834697511502130215728634641388481909314533024072743232582807195502071913431236250729426253808136003606565558639651599935985643932831117941273493819611213848812219350155957115733700189254234132243332175511415461491604050521226605322185127311289260303624122111502744225701869113399413885812574588610171338776340499094936417492743022522064613816076424642413038520026321431343786012194325264659482221849698019130438932322900587368544902793239326046463398702636723753244143272232415018602649151068924521125901503532037204125995831395188456568684180668044961236122295758049087117630560831032893104148857899203188574414834707451219142974763222353602037074312010717248874381332444965552522961296434468422755062222054641245781315424661058882508638362853730135103232035078453686237933140784084150558539797625047067068718724217693158660262326518375460563552475886221063620457632416404823925276348129415391359367054329055525121847384233430491941789004286508936704410941474803302208204500229342436620363837673397142742038594254640096861576353401742317246757019422739479628514142416816149073279231784413782761430463312857106797872378615613981440224223579375254485163992198021205722022994642144335461297063106130565421456778145581467434376311051238643626892653049512064124925323354641109204832812226382677855960678337886170313212201244388842504435932475953475715931392304140324368900724206928835303247118462204462982484403141236203820262271217102365826030556690458044229328452930923671320677121286735365143499080526061126853412203305274192712277767240939651017167375121748306030235323134595482415429452100675051151443435422190272770146348688743856729379093987663166988230564530534111391092653674021303306053504337665477108658522628157672724435466182010913380307482637369395359275100567437374663450637391142853042380942411419016240102323082668215230107951285077883700845782215300842355191311498814148167397420593461436238789231982662115368197321507939693432228813311259456378968116409811919959785689971904016175535194366567799048824945106501395687951011799583759141285112185241378331783862393514409691163092041822435650469661125376552631598271609238942570433680225756411146295324950531666233096574704461611105011625214093195478252518311112924206716237504822255362348881839372373444982264123352179274140039728138978867512757068004419063748612503104544281280676264900815208330220020615660737560104109431218487811156002493075394737155314512878004150046982053614780259786587104164435671367430820731454143745684032336706213001580190164503646017792250523796366751203167475530084710480745089648246131144649941066437380192747951105280460813807860462866560425415842623767079245144053021524731572183609317574402287401693649307503291553705084267545422662409279523141112174594101878386970664472389203305011423565846910685893325904673633246935119830053594145051330496771668113472973170665252223208877142179740026321518159214738233710982088498901798489279540591037482375123044148281230442233151748224652242751142694220984032553242325211968190718611339081719426967307662163375008850392914846426824635694233639863272275196516232872581743150961175373370571759580191748387222251333658705990744717136297406847889640236776775985529913538749104273327007214366438653708215871832232355541619779304694425502307869146435059588083043412998503665311042225407586640744012325069374720744898423634149827156198261988025421402054334209163612933605210785375262908330795316803715824277321847321124386481377000658414048451903229787174368467229905484109506265948405468573231712368713012295525614018510301448072526141823000045053152064852382387713630536872408326352928304909765661019527572245620716187236643778581642351507407308707533131313373862585030442161637231856128537722267574794148842248037955034580810543010440544251037615340236896897616511533627112406462511469013780627698616713543614141334306085752846265760010614171000460346133151345721942027940439210674498606725645286510231893883654157752403298424780119150193105573762887047220127245108824420680604343214000642317067846355973273287244839033193171447714001718142613344368378983050302405923350750661647941761184812827717305461778321146361563735524215914147519191348034233925717099922027503824742471573046179264445574600881309587436372294006312561774466576269893642004813675372524989170947764335377958399221214425293440576332200512937543137452023233666921429432362433149399389029412403898855240746449234682374936828335093364145252614920122099217353729861274360580880144223220951604939004660255131994484672503625986211092630105737001820292322332288525176723783397794764378249078304639373464284867679373140197879838878327295716899224127062138908728199044921211834250102130127299228615602030678320120953401870541443791165541444855539849240588425195893853077394003296293129110161399237532675112077819618912244130804824652903742335785544754222195145948501026303330212043281554549310015636201517241542274979743086221067744006337943336382065049871219789301811126242527327247795124268656412490743488360190882386592184484364080517009777957716694828206606094026523789169714562550335820579867066318493647861074664841193570708280687718438157369835612763433790602510752790618761899192903051722786576311155342664310609454705985503474353642041701604325225766558423141480752698695647150630999544463882437265712261203023156241549065244422215433140490406910078268732890679512946757110221534950572365181850295871506271398435767621010569592298150825645318966155720960777011410303245488308368372300807775845765328149021770983733620559851263663827741612441738659392068824360712500383167825420393111400501916170115627880126208126973652654430244339182286327110677625473232047721447472220826116004193218869480756932021936300666910711866500614695077197578013411594258456914386043581826215718432763944071504442366118701213086021367856165454321103087358145837196778110699850032173362022651190950318198540583196079481330325760091652078588240023772376610221400011268164158704995843343381912878244463298032374068851502417117392333244196338025177674969616241082840836556568040373254473012115080192848309112328702280007558600053370564714366561026793700251094168212430124603551057895430288686621676730662562131139364200233522013022887101466899586250718923175796791141080216445447318125398103342860019403713184741706116648924509330070026768123440076940002233285726833302282760012271631722339165760232514593323557767935225658593525033100776064743213543828332074002905783617027991457409746028551830516234828282159312344466748746251236226927117090234854003364445998548742882324233256510482234124107423463522376866232313517024733525711119298067630107425810573797509341189591717711526000820603519253695199044020545733931261142600050532820267839053480061642201766424502378680693337512006326319804322001466849171461734646136126532302417128746722383757212613910511138122047765816351143211260380660759397276315149690741752345479981647720509039501865303261194645331203361917397551186199693938712562133594082785291586974327635317277100541834520184456887714634561020878196114152521704764302832836379759551128511745090771339027087433474765901774269121832650091432062127551575635233829521749046186120049136266699212859722108751053997129100013294366552809330038030022110358104084236921232811742723369898217425163754981130102542569301205775156763058950301357002505015744552700115195072656821980108160205071558119642780692123340271140746071952367283144639683001364312043081268322700410167213487672231819763120074266750677974430532987365538221039415394801261358287496507808453869361754913080722861905517944642662620989990301145855332001757630405798233153313133254726501488354105683275548876614591165290019537011856814088493514597236211382259444719270092521530981297325225513612204027684359669883036556028411689226770543804608358923781701620135325436892359531620525675841108795978622172161557304986643922145826299149562708105662186621180630828143859823592227684106730123388538689241922371283123225651811234977210451465038430232025803733344313623046776271013768423272682666684460620653420618907456421245430272241771335762002085998111262135052051117627268027392815855920113670494095202161441059482023081180853814004900711160730037666327741589190219517061459890942091360766212551027738430062383145393336072967428132072335174207895864308323058942984590269413121430465325524338777187561732711564050156485256327169771425028417477591370363506282142115330312128170752452286332516934514164733129399834607165606081006569117358631107703612443161002096254331771366796904059540102654726302259093362694393018764267765679301989980457168733065432135367573161094667222839139591837082199256731635495442594071774384638191940019552330261369836127133156070820206992475917294255739456174755014080570336854474961407356025026056776963027121536467104342889181143592270120336101183463436262625871731109531337126224923577228340539904935203841159208303220535744466472321333597478529571505870781152977220911291219223723061105349551803833044961323451437836037570464021504143580361707055260639452238577494972177270815419042614403066195002079090875337782550453912221664210434093739434158654345574902023122668009151116203764148751329621216643517120622810130276924861556811517851012538185811594236134590608779323907025810033252351016531832332646447145318162116745866490625026372650019084851189113884326554995959125182347278655242688133694629291706364141144425407023349225417922032055520803620756119962504249236632747530279961623665658716110191635285108286742472519595341049482245852274333768798682976660292731076165310413472652704987322420100116620772835943234556374393390438244760124514216894471972352095278832247735618400906535015522216978475165079231706717815023873882316614162841704305524345193806464230642221303602124702402767230480710065195181269687664977875980075237584717598901597268106333879586572985601008518513117479308441164730235532066024373023468432800496783051406911795300851960777572323842083718537614739724369265786075949084951000706354172165323255929675229837263538377120481842183306635293745774278348440201476101258041830367518903462770305392672354272773059338821038606121101186661721513046010720485136661226363021535239520721781590131586832033553516351083233224283253908822362527068742276578575214516207110211762132696966112714326462803277993107388983383422475621349822673638655551602060231516694440531415231184902491400256622821110817625467511831223126713127739131412806632385471637134425206178998277206081026352713420486540446538702253211561944125210116231061481058123213156682036419215569280123994022027826122799411672557257376279696573254772115126062883777222902326783645070873813965421829855629426128260562577244821610522882172411405814034461799446211001407492384101420678061041192248708866007020349053580714442855863162720924302896998261358802945143414171416694128733112805837564607643486514854311281509180316352822652059033655921037632141992508920112774182626019929441839486773144012320952323001051244215815142138922560386778616734755325629986731839271582669367935216771336281138349584912673052410863572116281159053189176241971647821509022350745369202841084941224995697696357665603389549371090919040158961047588293322652908504335500447133434816373199148321207653336149101301965340428552404285577045181167488974525725901487289595257399442516407511519645715280805441188024232948729283014581611951974037194115827138332643133233114661556180578284034781251824020326338543439727181794395063440352491240024102523603711335017749661625266734361628005362404548441180467341851812599465521673796001483159341844263377130107225106982081114130142742029496052246309462686625912917916154578507394740583474743591033433298696693358596909879260619152604381765180160504811074335034786834255180363707611666741090693328815540476335352241522776213681563044275809535122572297521958528102609011948036084374220504818510267635030301673290166474363092312452221096159237439563743830781825615766177412733272316266087523397122398002965472808944554402438570968156037237397038189055561364179505573018685636914290164191154698415892295449100442802835701835033252194699186632444832347045246205476635990013197489103215397420856025322829610693341726124404963263435345783019422343602217232769262168546402156093809287056567622077328661918424399765073569904832471220262115441013663377369683604948801284771237757051881060615288315844963754687559641598555032322474091228092761211190469156409274973328732387847426259141136436784755813211234047611595277649389193317415804362338068730377008735146864575366309327725965730419341755551645632471223290410498817052589140160449163155045395674107507431503117934548303541938061704065834762862122074218232389390920577274056443801399443113170243088575884356086541932285973340131809213501780216968588813126968620673732153912455630223203582232301126872039094711156468123387534240978334918026355179825089475444656958041383343622617571300723382200984502224162552989734358335993128546910766608619473628931465235620065150380563274282155415331293744258611269372655083608740401698643998399098762104797305555035489148754003334147950633752764810792778024819908280289655723281723583282182224692576482015864086210138103641322304733203796422523450383905235556256063922029285577816043447681660717482716683145827576946241710528352054416136926903502398112294649023540816867081022863320711164227921322315565401308876392145213592540845229921152503541406556472558411524833522108251085149618844232081803041516665931574741123917680529466843041533743059851891804505175641426947457055481684915298055481518707286225234967950614769016810228649706904133006545486980891336431258625400676631127139981157571332997034003510221733116331531727741113633821477103719744651948754167044850381312232160695814582331271153946284379819121781048019623524435203481624232425352052964018874597607577212260619500181033252368042139480636243771281234931379805202341642787017631219740800763009161130300655001603967366620023985361656369183510578649259675406794344343817760042909164437842051105543827424512918303627571970105156556710761536707784325955616325727573647151450923291715559242976767122664014840105722565940226390678989222447344182770321579484777613331015328668106573705193290622569561540821406094401591851395926688465027678261182124956839253603144323013459018822321172315578006223400708125126177928790230996979879423970510014129775594081812827256909601488454248349642127106121067408082725433541455130513431339750767247612436397667789016521097168336515939923000946490698226207507225112126164984567653677314312125492266077203153008900357060651915977726024280221126756089103339414236441426391511808272192261342804032690795721625767393821179983000886355533964338672376143316779121299344737522689970775246316727201077212181383241483566625243706430398568541279938162274733158857234392622594133453333705855471884281166830620051717822522334109322382289688858111770478700549807470419143409017389732069224893400132683355093314617410427253550430653580781813114370196325426633240067433660876786111396355465336641802550413256909584726207064446068098075802302456456327463821627589012628243953840372552684183839693858144352293598968143216865297443063639478716455649709014416341234063475910448873381859122308856559439670331752108593704791632511787533565617684382013097002817779180478113163154169113912735072040022758919601472237781763351564500832143935325117209951074596694736683762793471165815333340805763256377865018483192894451412228752192579377244055219878894582037914804683031257276440928949219727307382467555096102286702379255236062377972731651247684657715047621251667505116571613426062364107911238016443101519890321605967204560084880865101205315217677166879164242151076225423424824146263292260363446221808334467121931751737232391695326571965624377130008225185158522409435325344712590308059314575021299302684629667762500331119608468900001250732165223470748395259546098284851966201068429305651912765553283338582530455709110113277583459083234179252427223913032605117357996528224142162600172770023971062533217277654232023605557724584223723325805475183223495067269459289423410257310124373171059594400999843391667334595286713195532699704322695833996151240924372125512979466354727935852528323294457416138691510527796331165640493162085353535821509430365812176590286563382055264968093074403425115850246185036463923374512250645671281363435337468944587099835542262345735146821004348467013351575251115987932724452511827397516152518992424656265274433159355617453043759181298203336989451670805733755422054704053518024451166237337134751940342142000464477770429793729333698402836906520676580592703557127130060048864324455140128569366622943511125333916865465069349686405600343403793658884357515161518060357273843559476579056952522289513872532753646604429803244573995610914962328422181697773712102143947599121829329831627366722622824187492600755047967384250189195364661683741123158122361396046215110894353932240242019700450430887225762326941235350993091112513849544047106937405646509016555733967563316197875941269290695435018201363037944910057725641514622315982565507953922348656022438520691026803743862189429936662179029399867632438036105734281211202646681233114343663263123040241766057688073765665313533331728332640783786966235131551740004765460247672058158018146274963017365448497365470312093307811682582373154530100456572507316318148347363066826162882764611563241518758272731074744822381612340832483241291623440283530908433812471369425263210465486760772991250647816079500136752549108117333232678397126088016664538298738519251426425662626115574528224351390121556200461742804174661919919332225689962209309810656113780500716736332133139361227474814571274732903603461809027696467273129574402226572212557137862012002840254996990963372495061579871331284718644305480563360595582644120108114966812126643175280601775222129460977693010175110600057611271215813128103881914045419113813418351492038855198199701483001882938021263198703549113066280825516120241567956832658475444189842083104280097365821806694692841447965253919650272145181807915628539951110318972448767041120596226909123525251667649310115161031851991984428077473209555710358657631212428550218216810591810745485562315113363316307088456699129733841307207611532527531549939928229422061913535242183551410194669382162848621502996317365003545277018544815030432840600170648567916644166137840400150696912307838103235409681691170012036858821699627273403787545756201968164895610953380452341058131107196508660411711456597372652325215719217825232031874004767817632627474639071012026029578257032689751514725964926189592922034590968499457241369068147432675717216046173904241482422325886371771574640719831678163487432111690153544375716604459053340897241643413153631440278962872290323184660481454204588070001374836782431981876210893026473858339229257379361841987911492778181461082083241803238860779875905364020473809256044569152334213022323231113489891300803205412168642216846916841734249110282611763606287613443680038210528518840790042493318010964666242357781660374941932795314268655285664395242870857431074090625013216844114637097543186950028198129522015805073043561965000030288671303574701435318107621886228985295343126597798845643395173382092921569011571605852418049340428795380556047000210157411684158371735194208252136001318207631567537057878883503642095636282552375751755995631471344403204151385297625502669205226236869851759196176504001251676650857171058819089526133349280464718206177920611647620860331366260684951852340600908832489166640745775712582510315461682414120918845214789490251034614803079970431749742943561509299130658823020162053041405272774272902596414517327270020161581783000856267181944153102334589134163842613240070539354139298040667567070781751329724000157249374991769012255868150039969917487356509460709601560385029526825332390510132933987339083045349195886419161315577905221794496530702686227990514122749526170416295085147919328078406357807528039013904291909179840543821541829126453013925469464922763709013376738252555163444170713880963432909489026672197170033128181141263355379442484651821633262409232771054475009232780628236810254204486497040356885376201169603558542318004147815474401955103197317135101377368748019857307040739271285889002272049922683446433165650054523531778274392731290950566190211561335916626252790631494429167898270561412372008128593160080911763080988150662665029276877746759163042621044767116368570264234580292268173208041592002164600937004928898704891169116675448001412162052199064736501242363927381206696408480930207614231435323281237255513271297747723717172529995823025408280811048242529380695013031562708761397749572696255012448433924025013406591628840638267800871617238728495548534587360743091771610432049801526884724255247053041967139737507437045618475303228333928122919139296449698821004976176803356334169104977122322756221270097484447905637145174449403426373356122355653656543520116355317515142404170585211606600241542935496369205190351687126725520905295482648421327721096645081597853316011114746832719747820746935264507246992310273404679084778392370326672861190563027720104202789658580206253570376686117422266255500469547417865849937129753965421872242391483609547783494060483465461211441857267451297124509165161804565491727864293888522246044332346238895738691593453259409553428052964667293683261831844725721834251318700146162400509841302478665371676411048405414356539197405017399632716019826231831099235633279500342434596504283645616640147450515027091162004859431983799019561020072845737324420806041256601148040507687124221100945770604444569132022655745371668217419254746458270355164289847518014479489177791329392126768079656219907838955826135541660201061264045726115970539622912637878733233664318562696158176803735423908025522160836338754473341545934655384469474379971744020534739422210359863850946491573606639014862852772700375656111337080438387647545942555004946780605033238254720124324065114344473020889465417173095171246241529615037742760150460480225246868264995127810824372204411136931516334162949861247896678100718096113202359380560323171263274841350732182256177105352678382643929732228137715346055908231399514482386342934700876946165517577675917990179456292162963103125413127427201558718862782047070851605587049987141360213722026494183782438288875584678641121568133369233163698501299257703643919027700038625526962656802417294594505089899933113634605232144968372843435645992989359092315903438825112930179711863442815609248124840749383964345777154264377469048681202362168297241074445390124229069616643337694431583035166799478608303704716760761718302164014214006215333674408247852840089412779718281915533071982287939613030220873604172278053306022379653216379770335655631016403351057922467205106260376409077153057448353915241997074652634383416914622188855898436103519796050315662296394303746812736174633820652131033234753402316582051823255918244113149572532778797457833798415310633143472204527806813452647202915793929331172422969213291601425634244786815440276063670608896223594861555650329134015243106987132001522113186567246042966328542320620726350779592500115721742824055553627811932271393066919638089693592397560164941369743241989582885426113434058314554236511532710309307423754721693059424184922366769144118513730559700250709515662248209052920523921109465598116294158921046087750100863559154122846876702866456980470643240431471922668801441066255231507954855016907849314737675791974663624756851586178387504437917119455903925054359140395066129252586332661066288531311467416048300555834510263265769570696335375367551837575724771032877489272104953312272114436735875388024180530100536356832030260148347275348280724320358596829730318064015140750604080637045267272893648425700616396567917447696771720775022790651401825890400102885172721351361595240804663860474253981054556370353960719309652855148622267193425337594802050947234175161135938667164718107559827612161293198284264521075830118623539024128035536607789943059071345772233791503330059594135702695193067107077635006818016445100193854116600330260689270034500451164401665191581525448271735134441643008515027143120777651344771006811570288064025265094641601423306547582418458037837340847918609576290515233840728280417289888294978635205734386151528276041275222237062372565006942652222429913394301270047943199962592037930392691570478631520544611755501846324133657178707722116185307759250618343321449545079633252117314319094049958447115973846540108063935416196048307575811163075691621325064229420272171564758704690397513599185777230862157256424235577694149538316321579212587161316160537727208499404042389852429097039314672602129025102917893167696359322957190303347183252392076684651877902612542602542173501355882899408697865352887713261537239523791259320058620631201743419448335774252426203031565029241429099717737026855940839091915904354276918560322285522291289707105370339121723756008262476317638001241542220086404931838881979930604377453257387341115203672014917554662324364163415733261416802165916756535870972755281814498285110761437164743017641471957246103334769786232272918754130548221246534130542779046287125721582640267200319296126773974725334463262711244213890577102190378911465103623146255363069470169637264912451297113521151410197331547039296826467719736592481273566493116440926400662106712404166638017094219744769570940710786273139751398447453001441754806640714906406001691642485012934394918433555740560338592556118438090200447138243532182586863124299090817540423758583124860422815120949445612600346368943071792042114691389915894402953172582761992437928110917133272377173066710129721431462079837794830732501731036335059487462439482659644406544836298828678552857085240534524072025646025396017660812009047460138424928655023522040243422207810601702670132085301841539746516718401323723765673377271146912955733323887366483422189629148515529412036423584751991948372441007532210312543523851540241715380394563018912277844574027611583265660649999347614817106513495670453881632006654699343365826309694151545600610541464107533433628754111348279827309006533878223070851764113685806827347049229223633212620380271607472763711047514410071160094761445231417372687840025560097532904146194313575634197099032483820980925472069245489131956462427530029210721121
89001700080009617964859100091134265130603082655990795670029600314020319343278807009871008901085050152548349015079671227660293596781938884800380508680450982009403940508080970400448696005570716606190367070002000698000027005608070020578037005340000579047995303620294010317329028400046318892976447340007060850460065739370707790017700807000092984609607850056765488408996100038707648447905400067026000578140880873902802319060587537684154408070475038409544000056108940059430090090002006873250068794415038008500096802802030257308630054720160961534085896004662108820008780456309679336682005570797840069514418018114603188030776542000206430371000222954309149345888935624800092004927001384060308103578063019960407171648090020010030550065555800548123032352000803654086005170270509707980006404818088360502090053902439915493075495950000098066080065023770045404746075188700407107730209005595027809572694639799894000160300625041443717394556204069006584076120052433068009075731437674507002538346265900709604028398939992316679394108040903005720024009013589670747696120536360907872808409540885300055590809778910999839003531500757854310005676967528484300695280900580107203097663100086780626408820080240067160903905082000727909860009239549804190300438337000292400959122687697007600980444538101707691088905091946006859031400608011913361609090009089038207824804727230203542854982585043095008495700983091500158989210832403502778076407682670670785733975088040809840100005743050975443409609800013688622000070278000775402685059510026360040740099273370690300084300000018180375850605309990906000700763668202650595055282233596051071794020900595000009000420099841430954454842090559238002000083329808746604064185092430485575901050040008054789770004870400780359643300036889802886005007344102113071019343985069951959054681451082090718194780785408252795421339311706878000920073030331500685730000070889366302190102000021673750062209962090010270507008147725704909805903075031958071085640290020020593190615850690513023599517039680588430008438586903130770360835806279624087440654274000700200230452659664305926669106961294440682587656006767113790071708083206259368038030500652507065400705308670100039067402808849500660507064731300029870088500177628000082720916507707600102823218817139012550874852790496876570643000583402200065304068520638164305800000973200100880476007500065688700304770487960771602304208626971460580759020247794438270509848077410164400666080336001048075015562693080400240572403376002009560350500186004958508090743604203805639091907406400892588010577669898280897007906807097761001840098022249490101046280626703063020807472583007494060590009004483087667409300972301408030001040608198070350084450567564076921708059019980910147007210134909040103000072302059004052866879972800976704090707675668934030070410009400000491089330633780470899702809060260908587005900055805264271290839604062894501349880609008612304200200009540309187407075702000021064057114986660038809045121693276048058570695706033700501019349416476373006056001716381878808442770908089280600002989546000900509126009660906400990675309594060400807062800903063807800300226773398036990679013679402431058004897058131239636630038004130806608090312894460068006607742000016843940450400082170760608766811680518403769058450102802090669243624600211077988408960005030877401406390707080021282090003048848388067002080700620790560300605465608560409758953959251901000206612748908285399371412000034109850084344370083100092004590093000006003696303072670701208964700747709700072705727056036119607023818852900330923117020979630322070833020085028020230099000400899530000037889008446009033800357004007007674250779071708603031445715901049702995583158248915064975000000500669029009570785007690304105448564903390080979098280765669082705009340009078602088552600900697588532508356805854568950019728005010517725010090505441156560054603760661040360000052906201240980000970103722537509010570024694545084900032909000096110303558276903588745002020000100077397730400029919049801516209096019080690366606250040049600563820909900987950170951008059060941190730283380461301095749727653520008971064905091657537298086009878171025006835789350344201704545689050506920442097080005802800075040690708066756070300150308064894101204510319029744011060616050754407225608000020068610969099304250453060239040087580090840350758002075041893754847672070601697080002405030671935807001444906007086402041501738450013156200342000453540698010207660590276407992097006280911978209401036810070649526992073338408184046900390132909010393801058069128100204766272250520800004154340387742000002919676597000170285982010709742977078908062500067064084102704610080103003067045059004054489986866007490300964579200041506600767973058504253042937627102565520795000208348894720872051826210190840489956084221124360023651429004328070847030670050200005239536059098006000897957806070600770662020830770707050393072700006964502980290266522604010280701900830800436195719056680315008770007860906134808680906330166927802180538246708700746802068060478939702540493300987990070880086028716635061735989176809061790021008379018044065680659697425400566009095909940683712639089805488322703404946566666539027910240556800210369027816400000035773857077941666057270047650909974872618645064800077253990495131420865288870000007856998006905965020053094000404073269993500987006926328013509078093420475948277559600002885795045033581038400077087555130776605006120950539056158221060600039067648760800409706949258016342406601772800030561686800868951480060879906407406090401151030019300847586772600055921501257004270267058005713316904042649020550061776440906982940940809968341688706609093074050501140805099005013328016955020491680308263703000070606467370700372126490923400872499841416603099535692320333467308689068704005420007006690455856469050000673097364870071680085180780198294479196097133636786106035400707807972294297738033100092200878973003540174797409500090817504703103740022797070574907066607678952064786430539347063410040350020640036098000020000054701058801447030770202840302757080659404509226932766369080060874527006309367077836571319653026420098600460004529938705004589889108740060064090559329924470071800457700900971709800065507055089539890296204490099476099506092594820967783809497330136054753394090049641032004603368606469301290305407924928805099808000005460038150020690198410451904120060287048936350534677018075054089907233220707089686880530810700800829009001420604408730409740065991775201960039287788307594949460920007803992073238998918008163804005835807960063264000492080539434076432930349004095869880436389228550097805403000104200098977929207540466475720992004102198068457724006627787068472050510700003880630830805330311962887007520016994541058090324090609833000282615108070007096330685387016300263103060837683070974395960020087216710433079505940906068663500834589845971019039761330050002315825098007658708689067007378545745909582920989804730050928010050978786705043220101408105083423878010000703235008000030904031752800167701660008237800790560091076401092379904071053297000537488955620085900421288000406070673762239000000646810325840050243920508050098999001050096023068846849597369395065565039413008902076563800279210007317559311865900900749987961170080290498250019365280030707304770094447060097048094700653990825976974654080413060709008004400580292060052700565404719000163030100579009084955790666600407350069986338062831272640072071209030590506980188827356085443817861103385404068608555801607563827309811099607500600060903205855006003091555309007600420089000839204985719903907077720290609403040439848980830313508885117960402118956040030955010788390293997009700812310311890080510200709382040407250561092050109006832490568402635170807840094032090575970007905269002924031946320756810094904004937030203508444030001770279081736007905565000007068943700088199908965320356564294463586388189270041980200005988474438009080309570801890370586509531000450200050200671005689479769398518010503194472330262966070206935050286030019895600008050364210107097756224009700300940080437270297049031880505060562420983910043909660403009030378631406709002883023000082056130828466880480203977406052102770603880000707778008650378070023160074879562303042400709058706000005600417525911088800020381009722300000360001346002003086145001230240313090430508008598841840648029031246045650930010906273056001005709280302808955905970760046568422118360020079405107095379438535020330774500007260790680000970690020066239053680040890806777007300070000001692800455723296006002862960040406200009970608768404240080651427500917209304091500260217945780805083725172306002946790739843800090669730551318905806010606964000568475900827450059000674609008050650404099626639190963254050078604104496089409030960104677109119797606908935740071467038568488520008971470587073979721033807398708808901140316318040801607117080595768234006678000038097000020834081296086641631100006060853696600309070409905001844643729977001807094090500937980098078011902004639876079347032905562123570668189980212909035799037961820044005629857083686058060037030407300450216506030896961058104874238943008409483805090430052064003058084040540107720098884575706080043814139670741004008383207860378920816240044920206607465140906747300930181622800609664403003080302201750405035950000367023700791894934968047188030807390079803609010282404094600006924480795406000810606230861969006899870684119803729039017148005859130189202680640039044645952703660039587399109674024701503680876096010830366881866153880002006340400797710700000039045067001090400307000894567157300661150707180688278392204294682905600541000800910620723905556056173909036395987130006760108870403768529709268977704980380002092354700908407080085794600306080065650088987630535022566002030959760369639893668760302060001640103776620049600904989453672581969240078461440523490008078997094043297600970900676200090099675705807501901823003059008872692007018788481467005090907700030599364578000760118209721846091008439036906922802457000656175500400006807330809309195302570252880006912510800007909980931052051050890020660224500006378910460009700598376993300294676818306365604829736376450054360059009891702609012871006085480025209763908072601240515400058300508580448655403178474569285098028427604002437806400008742760826022930120050750647920600978107390029860460870003864180179009203790067594871600337890209955003082370440080725425767063036536903701907620200028746355769608070557804485501269434995013007607109487432765968700037304569515796309027546750768050008904072000074697070403370700006081972705291790076409463589902066610300400047100082408645395064097478980041901990175855328094939186723080747703823605056677445619435308326981202690200080468057652702870032083461644092271822080006790986052550071980970016770809800464000001340400779090960226424209408909491000700831940758808690700006065080496003490403495700691690918150560079908013586301599010209800608860854405010500072550840726266959030799060780070700067000650908321008385301000550360967675008904466251367470550727749700259095480050706980490520988102306465908400798028064939900840390958907067985640089035076080066908030009304007221002124087493600032980086090203090080603420107795000028367493903002007000508969858486178055090407271692036900168902609052170089803870198050605806193840807187618335040406007400808034059296077020110098508791302065800026399380503500102500187010079030480606965069435824003371048809050904610857283014005156610980219209937202074038002544740267910169654060045002031072769030009430871200282927698178224100501506028158876002844740380058366499819043039230005084501108858506000070040170810349820809480800909499806933340063885057073980049001911040705932060943000748580907376778083020104006849808040708729900902957633800703013012102500450206970709378007007634919053377460593025636006400536591448070703999305581912411860275436610541009123420543310009746571006605003453657594286920000706370918474729610180083059006147076270093027079308303246907640707677050469768290513556938268293476000801870420102949400017134853437726252077080008740903495749898370680108800069070045090800071507611880108551505235380158343795090081450185080090821005803000037021065316878459341805807004868035033759604600250208488890650782482887382050606200603885777738739142501769301029004941880055678051951009030060792056800543058125520776280550052596009192501769970277600082146924007330558052492005940383090384477009085015677840000873970080430735250479365930086008090792789070690692003391908300982399653806095769910208639508740409970500707603067890001677971708200793223002098711205007358078009008290987047009420446707679006000507394070004961305005469404304347042165000200000586807960221060084004070479639135802407225030750200606317300795488080806270700947826479706414875600186841750876100731700630195300385332090820739474043193721997600370060140790074090700064031401817690204609498640987090052000205700875063009405083490475504018027300000601192001113000196697985710072031245930379400078965090080147800340090054168074020086089706068872218194784055575104010335086016709826040000283235700007888027397486910325757080297600079206788981160003670553009908000684923145545508538720962710000936036700530700898388000508290769007770890570035026607409406247938739068959281548450060705000713525984049086882958403873836407198509001307006993372009500141415900003694069309847018571045596148067075048285097605080916060706770299010269606974344370947836607345019249982188768279695800959033400007265929460310686412600008600170354370090209429032000173190390894486202063991067005469526290500005013309662667760007090278054898940240680072726074557007107603369846302080339840714000806070007367006240870978424730397006440305509127105350790000780000615989960662903981309341750404260010770408728373290950689207008500707000055101962760573253069200654790700371068081684450849530860106596707405364665001505062860257080040580480070072773581386678660409998830689489048598702506000968880560396150316327629048049040707109516534092565019201629020015586574000807041690400941075827906899086470029136951599927834073678007734420000894044005400925456150578694495040016073045395450806840502000707381607120500028985060483767533641290080453006860790320706977010901007401373401611589200065090010909003703484278465200042808954699049800292994037402830165620020030407868732043096100000400275506046920842797068080074771076291897822000270900983062150470223202899560108800700049968018750507040009350945808080009083190710770855007902007875016090430794274388154702643675039800197637571468600108904087000706401142909086090088000964877104669504401059013560894760598003001091815888340500698039717566003720000019090013890540083832287605847200522007821707506106060033707980888032800400680010801470047603876020709153729803495444363580020838017030749602020191370864006522929905040966007258658805500060776699503103100105901204000373200409166944972010670789820083098700090207130000044030910907793598905464120130094905090061869409973098780580043766530938097056305803000075709028790718220200700090389009000659804000484804004081004630069550039048024000491002815970242305075005807820862865293709038821945528807508757119004300154795003502189349367027949809433086930726002098935539206508900000307940070995930306860036463029332004404402500000980901240010735007157845010067143029505608058357500309759918847100207048707970854300263009883174206097660107450205579097304010527039065814402606000406220003370391056273825786957816060170290080223010459185920249020096260708000530857870800167479795456956030008080639028807670440037886027047940036698710960917681096897559400864451207878591928828000907656005477469954359736286960718003950040006820076008790079064029503023439200826045704353181975080314077920602920805078970407007148030088549914170340070660300030029600050601190533282139696902040106651005720890751530006000402823297800692804901940026090009979090754876310750067051000020503003756300410006749624600289957049830698708839082017320505503606181480374100729050305006996334789795977866488450825708770037318104700031130175800936920713394291032270666470000128645018060506879848741604010453440568903977030080097279000070072887867099090940040598940000730544020660074927080008302792790852060294193267003419325970220055405596575055670658030750096500051646088074107360025569078873004909000964650257080506006819301260876000007700541980063980090100008091002350500153882308185807806606135969460203908834000070083706178280060230080545073440090006236009676830779870073805402397000520900700222706494080068499830505609108050260939000687549003059413200405049380855575820810540330102092205075092629992858228034740410000708287708050078749266095629171400019861003390020209503936250077587777073610790159701454290705437680280778253201063008085320980184005535071669030605760380820565759307706100988803252790017927004552570680135477061996801660074008600020019829097499971075908122000048016608444000084309905584015190290005980140203627002990000669296492706507385094929505772570400096009058900803450100007883600500041700020098037020900057791030009610060574685600801996509696802690053904909709808495085530360535671997061584883024279067805058669900791391205005805056010219065962930360397057048107150719807556000624094966290005419708520740040100762908606188008407629505176901550925774330700700006033589084053760006505372470020088009743090503807327082638320807390010057100049409171988040197060601689999405097715072078105238125670770002600352809078650066686039940006271000810994845306806072867110870400520870717015327391989203485400093350126008008899140087977738907909450430930900049376046434882005015601600059003722007079659705040080848003140325942963210836170620412089498555276713710470910358457780604086968740718158790997876013546709932751600010201087150093068510000698373044080814280900427031440038060207367917000070016990565529106898572001404002847397430900560060807300497069936508705036017401094671890921940487468007000837790068847746080686765796622728199923570450044080094509005590686590186054142050097459380036307009403933865000909940174487206039302607002846058103632990020537812071700017060400753090200660359430309108840774233053300079203003040505403874280970208880477379178005030073890192693800002799983445034909606325905607770076300974001100063348053907780110977201455300200363590408099702400074000109600780718707000704081450508008705097094862100890008063871200093966464287789029416657162598440191002037935658083078007910060086478061020104210947503965953821012118009594490010070015608024721057760805972420939954030007799138351700098400170078689286715420008799894202372461066868301490093044740027869854090010150260048570603107766309001751630900104801007304406506076420058000847818788000943405006004050891990875016852080540103837590425850055038560807060103446263072726500400070870504008000009013400860709740820801471400089050150287249060744062105430002501069607916041038723008580796065601860400508577693090200090879835000405792543266000294804320608780121000605000009830524020630983044085060050038704750076267006327321002353805096327072795183649376514070796700000057987500070020827050308001719307014682789754796700600210007249868500000580230960076380803500831260006544700008032600977010355557530079801997710306670900055159074860673029659825230789990104948817706094790790882900910040032406906408202615187057009840970602430000970002006249249426536605086070000007521073859091690707030092800860920000800251088772449140669800825903070087271070156497097309609589050003812178268790055577871200081707441167067469408990923838358050367380570958627685254909069529369134498829080080609600810460194893495028457412118606045668093697315040820836580171607357308080877236451749696000520900315295564031318014270200070002690000907890449710400414671705053009210563979927040000007828905987620033866860744063103614812061966592350340460688005369246263600008900660909504680400845609009032208034809263901300472046003190802500981048999178333610879768096687036609703459124308002785307471518000243940015380050445049790807009505557740117680006981575721312830212048085690039006082657801003369727000846246473193533002032320160200908013759627238570664819881428047584000030621849003004000906553673595000070519530889200525999093807906386276385004255700800549512900092290460806903127996961900007065001005600677706067633540958814002759289144030049681020050970204744770735239300430309795968800077072033000080002080057907069759039500187071616100390018604786205455985408779472514751030271296340015931408000760098033060898005016629366207838718505430009773001097915047290600848867005051779090618608000727598004900078760947073606357850724290294038900077277003404043819180570074074398806402438501696003596944493995821916026727089620054724044740801205019069400580600005851642010006843189709219007838060680990058230306970856700556006033961110063031703593862915306004001005014780603078919559619839169623554210928725461636401700398230402680880570000287500002608007806195350890000047560987935958670270580902098044400601000902464419081007993974015801110119544877500823810862008257253103787443877770080701140032666509060182034560431059803855409770500948051600206801500073368290740475059716940008505248567270014316830035206601290385290158600362000400378181380067983006705957019907980238800200360720307008677027650094680046022399580885448388480050557407318006380490723520790702561606798602908093776120076037045100006409670012009037071015431000007006539233819909090972787384636066760946800000042030040690300935275095289505006076330907977730906002900130323003700569261504097760809331701073594040904008109020073300007786001303030546549743062905677049587690517709017002051006090127079460860009578953393044720700097906074830003648988900809847065974057062091407200307210707540310790938692581518609058302901403584475859285046090900053904068731090309689203858886204004380000000600061870000450167100268548517003500930403057564557010680149800919098006900225480287057081000080506212038793074579070809700151338210036726303545921000698099593600000700713824006203290447867966400294093048002599660210500823488810116767540079078185020004260120500032908143206008209138200855308959606909542000770083347617518060470074010797524469287079090011790094808712037350843840068008929590850160062390210665580849690699601155675728501046746840949303032876589006715624007030945599760802009060457050931764092182000934828672597054784190800480079401035600300114046009970058156890050175011045718139980719089088850750571625809118007056811290103406129362728493965500002001008004059811078002073584902632000900298217398204856224020008790680770609071738354000670872062507105701903877600404207699021555090231825640307492960054908268537953041169020574800276357637906706034050496300633601093803209309579033290200008354515215407929571919195022002950780960965020006371606502980898078337686831881000110565100040350690501170904992007580090990082322508007701559178237925078050500506244009230719101057446059072032997220380247070076994772272460388070859009300102005999794270900527848928400779300470170605443300020890076750258043569608508059120749002600191978898700230008266040491900640000600100517006954819005075738109541960290770308375080098749980854102369593275088003950880506090328000902841040249434020900520761169033330496904043030168623666765006630002432509535893670130503091169701201220304728610585986706556838704281068336883300020510706850136537400480008548373830002690387542902079660645264078067199503795013980103000088106008775653056008904398007916702986137600592090210059062000000513277800585080378716885035267266020658736554450309800004012000098700045900443892680880069919670056008009008057950074909798610095099668750533406080084194524509107028982300822165550472970006149077084050745053206079909556010099007945005235620492529559907710084863090201936000037307930015063601292896702290315032099768890098642876392704706728040098005673085105209856900914200306114805188202309895001381750660816007103140308726000340804065261000007047560515630356070981452303000867450690909508223672472001864385430243594932290007292949790112025471792203055175022300564320240500080108500448034499111009427897848030100107026904900008005402419003108077275513024518208820420445666306008073771093469094495892602180000873280007558809410680019035724007288840752098095208076576697008992438020660429049080091007228000976045956700898045952367050060760108550939560080982203921509863095809200485587302622805950996077030760086905028592697977436861575505908233210576809068925939749625809959951221926807003002673823796037206774132629346130939002169365807898930050898020317169086060040300300457075094893652942047430005067198870007546749020259503860500020203900660478096069200305073077100790023061000000259579071278840304885044588006007538828595904608085007008401010840070934056508960709730597789608299773968756600207019484900570210480756670610790059209969062110906610012244440537695800960515054070538010584664095448544655002050700909309101708980963580632567004568260226801067048601096740003087812986546125960280090097040470785455190569791988802170060137900507073057870700802008090609191008000377060057403407868709700008965508411007640032945067640880567462405610975707667089600105009083000218932906193798303377203608083664450476075001802770571048034000506153470044600007090280603441441854938994170043629896000001705420390283500500975408011230844036751060311027150100707085787530996880960581908770700494900240404700808076002270128237010069675076250294375097106026080005623534033183721853181745863024964016533000560400230780006043859831752084624393776400736566307007785877043977093933841006960804337061094070892276587037012330500670640004431313510030200090034751790132460306690167780218730053446900440973906052902130904945000085800206000207270800776628001990089500956934964990548670697774293068073903064812065470028300902030779413359995460503910400005199149689144967087665705080762817055700987800042690460060769787956064400908026409040038515000476050130660897196791444046126060906182409934108284025920060016700005100001338575007590401200388719009012328707783827195907120986952080863663012061004870516101895900666530047090207940002406004516871540665039913004055932082781570068402420032074707353060095079072100043508276055299307240480458002063967000790324066407017800491400296061000131725351940069042335087210984088800743778306362740909230870011540700300043781809596072602010002480809035060690221208209000810480325989735000489870000700083910059910737000579509130016590204772070320597099853424073180955205407890828165022500875483267000638003500040104767901600003439225203809620067940540720333690813008148404000903902988935410004139086508060105806014451965753201100861600970516000724884003660301400912388006500976050090103001733095500406474298080066000706769803400007900979999074979998859038037260106353939007708313238994863090695341280116509137980240250548707653487010090865020440000926977130000705008784443600790101477500979837660022718068908799507047050580625605301050119508002400071600370403980000071909007040691480896146090957270567896247571024901009908906790173582340048169000091798004680320120327072800907429268040806808333952109969053208430077106088197404140098563565000528606475090030970474070205465961446044983630650886895000760479507700038088402596819058155808704888003360467408124707626614009830706152874956099244385358088000014053069067819740240686806780536615951983757928805071300845391708400044906055272167070205280506090799906935640451570990009060470430391009547000093240700956084780489500817096966807089890100720900006870937520091700043000570520571893074098093300040030760400777166101792090520600075505558501690979490807875020691050401660309516687564693559097000350090168018043946567447040720009874347064474871685053200090920207030906406988874123077786473000815084060352898400690817054024387000700190381870820039600801008050300447180789006303300124717083764307900550280406195450229898284479909096004026080341087471696540180088012017300807461410190000090407677540099474022030531709707103877760210171346999690110909086005491906000005624960749046405096808420503284573724048804058930909841637481883869820332600633009205500547000408030882093039298820900342369678208576778739094176027447010428015830030836802238817587916420005236092708553554600006060336198400002094714001120904688740838970091863425049059177457575093799000073555956667245008422550290988009870804669219910096580512780458403980307918055301928446986787603042130001033032160000000027878973891563600096063222008161370439998008886709270488520262228860042029739008000096630698502064105018367130707601624504500879019943738578490069965626450619060985024009400474980532491870030917690350028607205046680070363040051056009578286988635370663206030965180009040370145482510430097370938090505710196374057267742405098660096609820567729486592160873677836026564046120904407830121749412429455320070903806820964000057020029520075280560586007179102780503866036069202066510298908529030000553050509265684850183280000735701201905168506953000005056644083950677000984231700020700870070555180632280033927045050520022700006345000230600284781950999704020229009899448359017487470097550059940648087708035700002901000070200060052842931087254202776863031057200571837092913066005131509950080610106720679770785598017568034894989590380538780070460230828700900849869020155746489002067547659809045096535023048890623045635865300100479400001000666560192618870660009039544236632850050908262829084276449535367807209855524156680819098670600610892561300050809869709402606069047900031444798000551150086001066620073505000560100900872049361280046140775156662030507910405759931277308030060058890579007765233986803559722205700720087409508574570982977507054760185689206515709842912040616800409010921041000081458000900081063900486961608197179096374484020409781697735019206010002700007669050935046552086801050704009975216806381858008120338173485024500725815009804600163838400904680205784017002765202008402385303096001129103800000002649040260202004815016780587596083569607607711590601089007959989405800500155045505069328905821800082027283280009199430756373002807973161965691064400142860890037980606650101909070084205295554401960800757009703962090700040536092800500460608080081575241088608606648000057030647750534805407290770202090008006291862400480000107104888270200807174056319848049806094782854903554370138850815537596184313684040007686740709840771979009043029018006735799402703696940006000010070584679716162120708728278083290058622000863010590443008194805890065851884909503399351418084000300068305146824848342363037000390859038807843474890540050009181605861985588602094999004127904760060300478004002656024820005467704707094954877580253750857000697007857460230239007558972078083071007846260140061081020643000820258006208024892017142308088001880583009755660571998566627606520700009262205809083040050057220057500001204880798006804080209462008396076000088056408309839729301101870503459096876181016461082604700180890677007707070060090880918603034905004842105098080940070423250818408859365058020508880066050696880095013939998003500410800000770837997806045009105086798000022478000308565979610300678600086420026481107218991441306168370606062961309508064909800550243009663677873493990010752050829290390297048582349111700084998069999590476339001495950965730760098941707792061050582115877314608108804967593381460980805807309206177517017003050758374009046788881496998906398249300519449750501007005467071802810573053436108062273717298450919908201726032951328565409370092569760396327787099100407037589150030268097203906419090987401000006299907031640907024208018017481570951498700033850106202037867870757768350828260603908037994300826070171075690083000209656303739420237065870805670776239008336813080120072907305077097855408191809040080029253000200605505372500096969004004507608695447994040505768007880390750900000075056730500196890449486646754387000917067566764833482065595038030909930040004130799793822810270046050406308560011930046016847008708940078005181429425702543085090508600760539505146164740000502064206720208608290217999265531844938973008746198879080048804920051937546900940056532950079670008021000623700679333005609650403083059208500091399064569727680020106082098860083097350305090670832303007049888400898235088047908999095005097334507107530566095279046037370720700927250667800205657077150630826533769940890608040189661390498073760191602304109813035081530660168020535008601980966679070456008903630080804808319043590261770060070505562281811960030754500735804770545883606080502416009194336529071988100060840057376502368207458034529029119853300091004025583020685055487185235006798056019036079800500053996090965660525577274608309091460916680800799760033793286091419080808910366245800900333790040390055509952730088206001068000026549302304028096056004122705354247542500310004008886740869177949070695047900646060922605672072720893391044939160979358927206022960356420925009529407009866952249942866084621109906043320590342573085060802027098740507940969405778723749388076800005491537280020794960890280193095107689096301950060295010160915790473300138280000389416703173000088955074020808996000099003900400359004573523163769451006775090009067392770680816577860109200780464559060280598002842103410054236200059100286303830968660606319407070961943577473030081404001667422749398009861015090204609796114013020990505704000860173990126079000550164878605087040907508058680089890083067108490099510760280040805102051797509247392009830604904100028580595041004081718635006076905475190060900801552040082956810706901183832754500500350603907840190008086903850489056010102027960450730200506020877670300076091930809092392949716000070007009001065013148006788980018200800008905326018093709327082366572303183201360580809004977340999780530070430700610704613989000363308509890900001045849304048389196342020708219200582898446130077005248890950854281997897680051075220004373000690090975005577800758660069000169073510170695804660087600010059402880905758994000864581491660935346296197068600707940066451078304569318917607070226955250569780390080914701138060299958920758092032700048275738087404908670438672021426547900591578669963254098935603684948839060050903040084446709715120185902807894870703109003900544637365598882025077003304098561423437820089454513688000070860079197810074202070490706904208385029810008315301062905507867104242808888015106088292908090796998909494800000175960950066570140753288840062550968044109097071514027609060050600353756007701007810005403085310813000009084158103967988990590080925753089465950274705854006082476364189700500909060012734010796035483000007878809090039895484920500066040006024381594030408260403080588660001701761772929309869266707906707680850005570878004048607033886100088346085010300608748207083932005050212938782550400850006890350803005780356075504905093079933808080740408088802739158770708059200600005950007067469402545874004085005009070400066620404190005658180527639609549680900805700538100865980004170980000902089780411905043205909914805109710600800408180030099093737896076097267000080000095090002044076687010109150206673004408541090886770050028800831562138066387400554900702000029038465558593389670854090430736405009039067583036170150509245804840081806627380603803809304840476520483505428584064143566097805914056706026486640079909107777072097750005815061004467992341620690909604606240675780209170748860009636245578977800987923602681816031136615804487934900692986185005055806800565899035809047309800088076004019200372569311309545602133023140032333016905071009833304750420280708005541748205035600150594550005235802511200239379347065605010670550177969550820489902970730576844800677724304994681840507788862070479303607000720222962100072917793090509480320405519944319806908025760508409532469278088998805126000160650581445240742009897037013900586464007700380060900534000896088407412995089090057894071988927904590499006370009756190874760337518988608006841963990530000003009055015455060050390609035900180655017601008050440058805922993009109370002208821845903970261762711004003760693443407007500770000070697030242153577004875074100804338308288057506913709650992485915204112078262409568096708064200007679603560328608164020155904605003357480992114790002703044701485002891587105720005670030682970081900111350167113914817005924983003091884698090898602147861000013086439739059150007400900275526990006054178047397156720090630853060090200970370998304907070907509105026070966218599410504705249083502000578009610000616630402130008965246904702850380009061797063876993580766000880081867030416630081045060490910256079098106100408808606200699850700090458839058698397041527576354774509102076650003074040009698814410698603719034090026674150045501430201573089760109041940008407804956844709009005749726388694472828010350042978503570107582968009357078146966898573670410852099104248049630050803879193049120011068034004685380058670089004500670526770995200000049644760006890826319486260577072690750053615005092702006534300190009991730456847524469700209650460804675800022501771700856060006439013008100131559850000362039008043000007080009575087170090702807050005474481061181348500612840000744529297980302580954806589095688000504896320502280087507400870047009002549063601500387981679800403248806600770507094000600508028020200028069049820933953000555040096157900055712070400248607910661841639909071800028354124860327207264040690060070616910466600068098880934460683952837096088052879030040137434403542164009601090000509280562090071988208050800058390750002078800078710900002880800736030830504033081854750032389606540700060541157509074710555905909390882002990805056007700090242750740060735834180424518510308200902700400374000258330240907030000705061658690819220942170890677564909910979741779649554388170986740033023041958848085266895628925507800996074280302069006530300089806334859402060997650270508002066200187190009667855490438050250459087050763180070090059070550489708278908070548684006008440868790392408980710005470069098140083737467301095076001050400560135069683090938880090840615002745007892757390700165778509905070575797308960769189496850680290489203096099800900070437600005709365072480300080040000320209245581309075430456072500038134505500201007670898060386030888006840060074074000028190888697865662060049990309999040030686050801040006058100590305488607200060954915865385300076791709648657835867060067520606830059022240089900606007208690902165940950638003517742050002300200263446669892962935689800740700970004400433484320261064639556406710709900209909310592219088854777070238809704281007665050757803758040905290091957268400005020070010990054097320590290847002591998700500062269009080006324628148761170720221859872808094032657697201808090609952132885991955492700583331700060170310200590840225958501603659077380577469071874004309580702795066049030900397279930076004450900600406972542309573540068106706565800704470017891039041625004429092007048803950003072680750724000999735760390827027892000565134077070550300907024230603949877600807603575266460770074602275200082490295456860420839065001700053006776060888400087719106009900444699007800908208957840034070702408880004608950300069870138467907300663888203050200090081000007014506018989287086403500504129705908090149027496920491500706679924205065019600707767808995518805590872801625010038400204728852760307005661023096215904910810358928534000088094580206010099050880089580061401060027452030430608060400500523008711080676002330044873001072428525177009346030608579018090067720054887734800672874775980860188546001001003078409677099508701090176033034267480828000690046108500809670424279855186401620987580477039160100403485090797344480435607342982260809698910408461489073829373013297507338566800898350172191505550708307001067040080680668481600124882902429004022300456990076009870068604957540008420870902890508600809010916000823000336372230012976904950501208400348377601000904070830008050989760306807003464399770731906009100800161086257591200035805000638001454408060029920056280667194749270608383048166024490416975033302452000009092076640073008085550002940815070698757632761007783304001908722043037030084921358890387490089572634867729090972850000658910373072080549260877400026787846980070320598239500000210689369000709645300370059803870050608050420190210108014547902892007414729374079600609001030250862308037570980530018003765184000078009000601500706264969814527161807730765008866598980089506613050488030480235430805091189990813706004549406070808123537890068006492157080002205036056598698010927155064943316602210064356110145570409977437027602908605535541150990200895040488970072310219605039970897104058803660285064434169800283009380053200701509084602950093847508857900084006488503076896608759970909006865305092300009600734009900198966899821405604566109404206990038937169915894408955820106719905870060995066400547617781020875739058859770079500250001069099119490074508070300618318767200728950506260439006240578049350470902938090095502990100890168569270005602090905104010499702040906900391170780609090107796946500016028101095030744997302896082005696004077009199975593063970508276100027841890370131062900409092003062654003014199729580423206000954109583060695608003505101052099283018090591003042276955469017262995807998457078095747042859380957200001814357330290847313969561850907909689388120316964000019915650430050641027707793709733305864086817181067507015250331800032130075390738885900300161496897298000401341000002278840097880068775700324203943823060329015890907500700038700209850055340106077900880605077900054005926200278003886240102903857430795770300705985810080468085088021929702967300577970004080708303770042600543450883773215473075259060905956620941397545913550724002072075303810090268248048076675596047627054606960640811020909000000406004600004470800000030440636262255217812000450740619790600658404506782046040800004050404052003024200202178464008007505029600570909048007008669440417948108331879889510980303606064560041072000558790563890625306907969748078359890029896505230927983503080702060708760802042804008443210052167707190590542704974095300635149063800797000885597113046291203240960722595007743708617480554005026502216900047048987073749105002708839839498599056766500000973932930068523090654809995972820302003243600740901009770508695888002970840056608643170186982008138670601003048005785500011840780458977360818308700909000822600493070900567029374082786636095409099908958429006038026708652050410710536753062226550540909394474181860978549480678478490980125770082550500352245010238700800558009047670123755365320005200498702879810940689804007850608006454904512842370009070933007978029000002184658336708335880064849208578052030010630005404020837117003700000076020090676930280034048086830816860420315074009908744194740560006797071802084600033054080850809406064834850000495788920440620480466759399568055536702586060907179604040975788820153873000886057412010421006404100203003910420264048010705470602737630411290019794824908100386420904589100820707087507570220439016000603108080905258498760883658079444206502801469111505676884907307187608600053400222756946022169099650063609981804560703840010929567670564107789438074200917093008345708161030004409500908707076519890579297759765033495806904020880800100801599675083049011973009923651900990862366140408499070706187437710761908525603482037907567996047963004499070329700955864000900600863932169087402678609465883252703008009509097257917014301796908235309477762501652124050536020570106809960095800065008571011446800909000860220705500463490620901068850510886067894752180680867992782583050005103026952044930904048007108550847030000598791900903908057659000001623493375193830666614091105080544980093000078700208070580009190098134825007305610800048041157680049000030741968530018825656177000970796000019409920059602003789058878900180987610506240987958088700944441155860024307663880200901075748521070303503607400770059380090070606826006979300009489266003305574200404089103661050600100379006267330295631200400594060305480786701620040694740137008680300069307806080271984102074783451709005167630950037308911209055949716195658638028030000880091550088960440676280008270210010069098840990900292088006709264000390708807960904727965006721680308580430388010008983063807519806494800050073600684782030959801440995800067190081803520248504840201027973540195093039725454240382500964370460410680984408088040760790796084902262528050909658216608010000278344156004658968660895540974669839905970751770676000509470924400007650176800594674640043445364430989297772077908555146820690822907808700361652040848850755294927790805465929990050180894838887853749040673304094287618502606908383664985670184808796568009365220559455858731510509980702661400310126270765807007564910979005006058890700279802010699329034154572760509104316400531308870915348003765100380000266805600591365850980241005850630707176089600289110803890002419079109872258824800420330770151044080807026943477557746050000670001893528300886800608940000227000010996445100660410386074020142209659884108900432230009986370003788067073375084020499743362491617070105099007810433600947344058904390197066909804890080780054058614633065298117100701979006064073369084540242508094607750805540566018187796020135380680167625900007469306060417740236189995575770245080832234300460680176048705450700075783326090709076090164672701008980200500490493007770488975750981505709361704219275520719488806508686070005448079034060080668620300900894608930908651908733051730026005042506900706665012890016100590000260386935318992053060075808479223306098073247205523088600904430002458029076338000440330081573321800187966603098430582067004221720719627106012835830630687966592009801800694561089386807536590304090930003295890507980720707120015800600961604500130303972050009060510000136860348125034612013204795088546503476007758008288498288400003091090563902189774188080408000890572910457815002749043560592080096909038860367940489782764990840273709518606600005860039317001910545040591864430451000903764040960492078809430030100780488029593874060015020263124452777880627694070010070478099009001000756473304905008510240342550230897059970666106545004905060007000340757770007010207760498009039930962660267129060800064879503553585386952062009912007590086200826010075417373706971665712698887244605660500102706620159293008098062000339101006000790506836065200621104902009047037022203095953090050263250208913012256290800003379079420877213400285836907196084090107393808021695072070418050667400506990000970024002606977870538596760793321382896600809970266921500663010969057100304030990045629048565266040776839506650920302168120385461836305140507140041000012016340530490941309335029560907175008429900080428965049740092090525030790045007901862000000768677262606078450507731301080408217596077645033017056299196973703049845583259102660404089272557005083000100871076506902096560308383100062545211710981534602840017092079694800779055245000989609370004505782060052615803182302189987746500687506506028140598020420089306117691069667636900730345290056020636550087620477607805180118504599509073800407008860600640054280882594897030070395869386002263030090594248357101731949036734870004806709028960268479700000020550229700004732953897542445901135913600527002485098290639485080030877807002405743049070789505017290745800902064009208085508033140000307400598903150539165441300320970005307001437605000510306385848002729570264809410620594593030540723022606063309120728603026317707515306900068080382701311160899022060591598140490292000088030836965816050080019400690808647190501304719378909940717706695065779067601683435798689482203477307240900074877060096700340884085970349689220006030670786096031904717578705070905091909860686089305511097178903090501040600756700046757005019039940956517981916302032400070298820069953254621758684805846186074439491057788329600906737606349625500898118681270347155887857385820780105040970615001094840065417909605087022706647663560008040337000042900890206879040097859243923090174300000929010570005090220429677804731000573340760480400340079097020769799200400810390959242605207430209789308100406306700080502060304000399304941022783381001679208991904704505060900335594071409300400703873826029461107450740318103330578376841393098020038952953998075500512662680436900167938000009180723270904685542080026316924304345366000085452908905800167750691003992089269490358050382795072877206375269536507774403705521170605035007039998996073761726090089760038390520100009808008670307814858000078990627098309904282394055250090508799011200129402800964465545075025400930307142772541300986608090509259735241546208685040628344970337227000000069800084079100740100917520001008071707307443000429400000209752340090068901279924605386970906060500366138706086900141000523007769190073519821779380769769076943008721398529643080008797250053062976780307609009308440003930311406540457806001000590075158355509469080090600635208064770100930900186006686966009107699950716009005232495366000052050707177480000865982209905368059939048440645847008778300204802376990407003879208105103787709568669500487509086030102487602899390522092085087406690034105907515006708600588600300925493718601205109057988455707880308281005952031080709508906505910300890161060680004800540390350000012361954800690600509509003760055402611570752407007574190199829000279099407328200970500396190403539490017090837000883100580046080079722017041328036770876003048029223008700475607863160028820000698697912000775088140065201000208468055008004661022731006846039029595440918400478951208060000209049487890890940002598962948100055391035012240605310650560799596471749299357600091814001000090409613080134710904309500000286274276371930100883372918000009181000908463406404070053069023002504718020978002507033038051892220035249987744705789139238580336067904058703994060000650000003308006010210560000826064637150069905779302857966360909820084006907739041008007367514717407990460040700030031057820281341829109750072380013801061239008094600004001721086604059253016297893076505102107080761025309083405490989108750580720077110501903002598161937086425350246859525070739038736603914400690583052290700647907000700700001641681023861941000766285494702777019570100700081008783080450805808839000400008000008898316840287061207276700200003545581028000755034586700067947560090000500407904306980900016139606405300625756760050988495012010410604100788698083870410050412108193622018070306771936000940460946709660290961556260856060350012017090071099014009938661210179770409004819010050500504592043604041293939940280007067870876027583006287703300465478040110736207334700729620721137431076997099155058108589303928965207776205001907695064220058909099600190881889950005446607998180540960704560795438770004007785139745476029000886907000206877200980800606479859980727540418051739461290761640060371000004510570904648081460606258015206808199054645344703805606506455178616599180274005900260159000210908073890980200900853999105037679804001807007344590867240349279806480177378207604495315014208250000506088985640700954087800069010717020457450792269782204875500685711057000103267006700990293006002288770937657042000086246560440909454777091072702641040508970260721578207898617009200040680805967199703099713060906467859022007909354008220000407308600109359910296095750017965509885086390601314402884553704200241093320620870085764949099170900774305080730847202091395000504906776038766844001083194044367445528054192889990484800886208969038288909680000746111339308016042609089837006993575047473484854003073002201058181768956001670433016080018009907021607116407798030708249086210900500844000061014180560084050209620600030083027544956635506000072310570902904797971000970173307012860020691520005660242000276807150107729530466106450306388760775620548686170000976002000197890696002410921005508040855077209054659969421060201917742890611008398080409092832399204002070540904209363305003240079315363706880540540009882793594821485509588049609167578718300866000159600854628042370250015007707728679420409886077040009824422800169113449609000105900061127990170490836095401758155779057003000300760000250000065000083000086060873304710780545783039029080447006051045593058066399690310279402544640001907374533503080069670704600789290390353598085835800200023363800290717074609307020900850060024463540400856508052560043700030571401877090590005109050061908934307400600071895049046717108007400719012498931098680883446070007274949721402120400007096772008283052880697677260813829170580880848800837884962054310918986090000201083290160188384898680377103010007774250008800026100309000700300000531879140046805828955230403107403040095800079002605549468802552290112000900007900040970701083150591420763533335077003080005720800205208002604164907800460716608873700072152900930100086687012866809001192381030550090576019624893035070300406905072000033502657030989900469301631441490786030969008919037994406504701822720906092408109405084389060230240600999600731336054590073909100619308004508467983878394169788380900895010917500525493894300878141028648007720300702800983007450040306005840700184070252558303044860515588077477230117329876602506010402402603979633740737091000650980885806930960991739927990270099874560062320196093858774724980020490024270076580280046355696669158157060305807075150849070328608069700846076013060337028001450997168713565690096740608798875703970596045970081001084095386736596480858020099750900502041486909489763760488483907080000500941769910175232920022655640508264695617086060919504480600950035487765580659095876031949800070805047777064133597608254540656867276407501695402092359060926749030004079525550593795008602288975678559560500659707247040900060834080986984060307849851520443468089200000568339809174530380000679410504807540940650238012926829930500923103970489154300005339219597469009060620148505200570000660006510769858559408868806508905231878710860163725003300602000906002081289900627002806043282304778086270405830224088770579805080002813100010700374767600200807213000904030539774781028479130168984800007007761078458000084330606700582705493003870584091007010170917668066703895501570060738714025040929200300740392086773820912013820493357807000906509000709606300400227861591731000286005147335228069452700680000380185660084700205404077044950000220150848236747148106370085800560798941569502009650697005670870810069180003395307801838704098307099057900046873458000485087408969986549001906007500765900491450527703325077639243472670970200738759006697007697426029846009776700223440207692007809605092268104945581896240991605639001773201307346600009137070080601509348399924072773000032125655090060760033255057023504073610207070412097960948474059401399013716653000240900895003002041570009251176378416728480107384019680380550700939318404400140876081077005407260005763507968303900890588507817319390676030795280014500015028289108372690504031048700136029665091092060800468757008207670241899810176625272904059907027600177755759643344181088585029765076500594084400998402512006178660058494289931305007940607239031900800834797660280246913420088137000900992000799100003000473505202503903837859763390078062960858052883798520600398524203370799046130007069000858020035508586002403034849450038370801002800400850016203800674897531700729260454066700059480018125109300984062613074072993489629674900208590866004509089300954971640825013173004040474437076381000977067130801392748001005050727059188689600090067907833330627405718603520400690103987364900002770048020633886500008070001918089024026101049787027460001010064809470874029878260207303990880295054922365908587960768150065506681766703996006167799067943820910007405303904797400704960575086879064899954707287835000497098005900538000749741076000908485600367270660225830603001910630903508200890049032092080704080013207306939477100008790809800711749231469707860265088418120305350081005093339385808004871902520309418785918100200112013674302902049169014677000608680678844007207042254508040850895426059506240800300480009610009005002265480920550065603083441932887586027300708052800884708089776061800674941787079805508036660567040600360910027820657470270900934001406791500503397704250760025831060530059004005295243900602050670200000002080004598066089930756951148047990069568937210814277499981196600102169893083409223480008800020132099409800574346033410166164006170300636818950785250209036994250845021029003000209909501656085227453000670901079400039007690002851867966320069173702908502956300904740266620828008637881109900008190859595878490060735685805523725040096000944017407519030807625470920063995066687050700920500000404655000025020023692086895840950341609800857410003001007240705512990580690080130007443668094401965608706804805009080480221795860507680758300765690091040600028203935170119059568282600901480860327960799057890308874066069851270091780604413810807132302066085028808006300936030399965002826009307976697892559965416452095970100070372604060073980814600030090179904900064222055040390300288703411008079855001095697783051195009600745930008194102029008466426972040841666872190807700822583900009930106028231905900975910604309464390307203100080175018029102206120450629537706800000037679070779805045800805904070600996000039109068198100978030696770422667098000796418408420700268094064838480638075856804080475510043661705600713047307576632824105066504032068606308268460883100600748069114189603445006097747607861045173354479252073096639229802585490967821000006778000876460902692102096024185106000073753207221966923108088040808626236965680764400708749090008008618601758045793824100990090423030012114000401620065052543160080008800005052135360991026740960597211500075300059160598060063070000070796800460032660627250472007820653006548290703070908039040907086157800700086050900501003064759400779678166650397548007291109063006290373190058007037607255000179088010607286014000780002209102786482237002788421033508207390933641608006226094490884535093249002080542793690008270908473123849648507701867053146583350470693938726505000000899120025404048405200103046950254605716464004039008001137070056700078600010990899205004090724077105050068306845989744916050029065660214798600000451000946401083303870500128299810937080601078000235711940977908945007088942739049736016908217307000080400078080360090360077465225860000000406002000688660191904006037730894827064009090000525250708005636690960020008070394000003991504447393967895478179316800760009027230000047708722996008100340407804680527266300370000209109460070100004037009930324279763103500756256605009977700666089791075609703704200078009727303226602500017078104918066365042006004378449233897749200700008397587680576470245429031048704400300190009738846537807440049965635203451400367730009007000809091070904600062001843928069043353001086189529588190097053760323151844030028046745050070687140405807038430713202209004680726874179060744103125760781826730178237487785408099500089488751016800909007164537020055851928549091086030593786390031067000158232306699010070035884010886752002110890020000020039006713359105075540400077456801504418195717505827800758000309918120533403581780581875359017280799002220803207970101494345099718004345632034507090080670289917870609208065958457894000960873008000093064504390000415796500884570023004508546033070809355594000074902329289320796048255306050620210808048067050009067261048770106004780443670319803904809000253086594108053910284001017030989502049599080201129513101520085490777060015128908060918200051913090804202080423006400080090501320408073008605063565900175161006006407009401905625045396088040437460408818300205264544586354890610050282020016364089870001666030086606007027648788971202091704012980080101704067291787900360280075032080760862570526098305300548038039041074308488769670500000958906003300042700460001687825669971073088847110968830770360009655301090782009143005839880946106010790750008153074003730637995537902906837564000460080103807588000014056035818868087940407563710874140194923004809050005170289420088060807595096300233616004770783298003080086840046388747724966773887007426700489300080256069250069866007051508524090057830765480493731765870732706205818951305277870017026400507112170478003700401401200008400759908427009160050068784946098870993277079720400073828008930807058908307537949883178385855060708968383320620920039208860030160809098006007800004969008494048054473049605708789065805100055204548116752590009000027386607800257069362402199196940033545406100431227030530080203201453707187300465520921752100229065820893708302760276072109170717007186051854006841035270179015730270865443120770000700609006509034006381008888270500787450210408300662807988504404398490501408982821008602581199425325000045038073820044990107309010851709000880847187042065044696609209152104910026706863041056970403510309799270577036399408307770078003905803874400287730659297410040097180129129569400080608539200372539600023177880981007050924508923320619548651483508005001526870770670070737489044075509800600593619481387091138006098904051056627105687880407088001480009740760088556219806679408018503390811089020870225230432000070961338150998924900204748961433421094793073001690903960000002053140328408449803880937008672423087037032669090065916420777085005406556996008062012105185009044479520183539075104602191191585615446060786029006176733086058601051172987113294638608514410006270012871069735401199402389970302879015950022849149006005307900506352994939071858290674003205046066408811693000777450043646860103865180495470752172094075040366140608105015534817648150897101041601505409327200640075907358790980850792811960434898484880007750502203857441604990754032700304457000030063662989039003801370747610502024000556097910104124903009180008468008602205307801254009087054626666581879349908783206606015582570200620568203090943142144699688728208601000000000533362300045032978343999198056075809605876965397907905406019400699466628494885570025841293080095268639499937746707088919014274908600579700394772260090008697888006238655000602008000008486904977018804700033065531009058057873700916711770050260571603907700220751046704006596580737015644009828354004937507742598300032504400947540076583170001909341340604003159055338162041638608800090748140203081206079270786780701203757962440646005791752182960980099571910542407600393600009826888630957010040882072006867000005090910500737048009874053000007663478268450460327910901700756790959565700347305409826000083868700964088621890082098878200619052126509279203800839100088059061087086902017814466000506009230474637058023750503014666274004087445984350516089005677004800950607039258357563042377743000064935908802055908090006130671615679015006306436043545630000908980077586700918690099855090355050561096632090809470550849180681245000024070086100760137071087020870729350582706709884790180216067549995339016846085818500072489409600644840619068072208506808458656147703007404908944699926803048100899803000590938787005762967547000950014604605060702208609598908350625040040337604607090007606019567100917009200509928009200520037007942300406003008973383500790780170078024800202107881350070262200508658002908006738070483000028550404709006068900010048800734098080167018182809953720920004781300692505097075277430836070600883987321864030003742583030970308419600000256700700897406350007084888969044076064554953645683345500340430084067470004697899409410640052082030880668105702092305746433500930155543539816020096605990830106805397096378900042960052928479180028717500957906800000208400529290000400386093005621515001068409678872080669910307920213580071238009721019208020888576104920703071040873080284603192003207797290978950972034920270309033225506006095876907065023926710884080000208337558478000020180907819855852408004430400007081548664060066200079780728092023650770070809006006697087003040090150904401381258050397002860805000000976793095911209185776300799059001574539450403062482951311005568643207456030901000908708090706333322246065122010900060516243504560184661940607265724390704989428803276770503580085209278001720005329051950560078995600967040491057870500083540360654250309950404088550313144442296509001282640000030739068901400477089593015603080302950600220460978028404250749905609391105480045704480690340005000024801995075577309048122377909737248568465381090063400675050835150199758103900069840945406890285607007506700940988669937048074490040436400093045609305800803404399025887408212700596381464750488720909847070922720060487347090095749466700705709695655050602940214600010846078101146210619873089080267047001030070091050731716080211718823630431350700063002358760831684692809882001706420716000986904000122009375932707800389005340090074606403029488187220006175007562870270091000555857800528766106960057751005229056900003700700007005093047883124770604109365529799527077860756655720806066162777990209299033003583457205385022004292940100003746631300601200600050425073768444055687273871258423988809759000990750250600767421901665924259749252807007067699888009200035445875542860660543788840828010676680030047799040795309450354006360248003780405189813780488908700538580900880064047100523737996005270770965295096090989161971180791402065038005047089150573837690090036000005158440064799294084830403700096400904050622819430950705032038380080987070500519820907152010400905066783579108884929655811158721928098171169963594100097974018040753562850688867907072426028807040055092840835005014008505950550062650837391007064684005137207056952930510060861902737049505878959970090196980090083010080002937959010610302602609600406415056701008208000309008274440607004693693240869048060106496096500280080463908862424000788969640822858041600208146000409078770204702570540367400500419206467074040100139018003860000819009800630604007297900634600144784024380203841370239907930590900590545065599620510292698866758707438863304973800099800011565065007261000977880270045940490939840490204505800172020099572686028040082050030096790087450332983421202700503048607407586400349053355060069740664480090038484456700523906050800110586958093905794140398001405667217109880860880809870510802533120219096898001094701106000430707006763002613080088708097076100904040045005223850006172043603578041400777647017700706880073519847215330681975050286926000590558660980038943667390302520206480710694026903002076093776164334861570149361007467473365060809756710468025203745000320550050156462053007670781520222499770038590230389594525010728069076770732975618582314000650088097601968260005001477905234013001099210060655000928601879740456192962910051001797891062854703080730966063515075707300882060996939663870072291048106002834000202097354000490802084498986710560700030040190700908589190292010590760507072001325210905473453581005735960090550802297536867390200776608152023368881370694740280091791550209808070005902980073038080199000897204076006283004000007449588800471455979670890096023030986520256726405904076003850814538195006109220626130001906445028030080770604190074907407097839079940130010431163924310712398540342190035808940635354003593004585061520201203490129109730300567018122209869517009090947259259070156507759009290050930622017081842592354094380274304098550880078305085969391977067938000472905307450676780995640765096400840105718066000317680048645035600850039573096185650004306595000415060900885790805000973040060611184909926050000807059070620723787896058370520850780974716878692573060775477308806031080000071108900040600606033098080508107660058094906805080900806001784200878079090100082169440782046503607990180388099284244107099786689075889898010105511177201307070409585270529586068869009048398509001099230470904040003157846637964003009004253708243680040543007445459079050530204090373090003896719053900800900007808006355086064172966704669031001919040757586293089013887708300036971035603490320766904090100770095024656071010015930888635664591765026667096917103683108075672084480378973797626082210006540000192408816824020460608940076025870696006070443060109840249808806903607507793053560905045904090001025929970020050076069005242702987639400876001281057009708965209090360960046002775001072000005277540050746070096873000254790364368015000430668802100368090160083030289508954304002884008637304100067270007800008009599749905831000051104066084090603059839055084540000464142300060040800856000340739630080500106003424421700870308771641530068543178707307642230035098000590095872085005110472673040085474089997606250121041970403389187902560879043269643960800901570650030808936546627800900118500002809090287051890671081069636087037539790301605027709900900248476921234040020549653778972009986089140688261930165088109000095079086216365405049904038905665880609030700070284900889028000690523504509638630480064500707314059074510602060000054092980784560653540090147768079381014019009398003088009007903494006108755303506910009152000043016304000898603356250429008223062401090436009040066732715042020477004883003198504781700640053090002024920668830939943379910110040206853970088030028699573713006400000904465070010778150900602020770013797520797518803302669060804300958306800000867002061600468955950080830895200783094039130075659471686705720038877086500976050600560270935099536418034536126073872731630093846070003792009390593641684800532925386780500083371091306004430615976680890090500050082603788400882552010775029599770777940097259840269734210404900403376405661891200109656005307895084263080942910010403230073964850505933000705153253118753833716088088680444079089031078680610361953910148477077038180048054030266361007098167502790187707606907362067403097670369417760240008260897054000000057701652393050226358199962500483805029295238788926077708737011022050978897502450300429203900607293095025709444096502552009086752900005903641070387810060803551920983680500000750275805733308509080011594806248725358202925833500470785017600086404000904464497000014204640036349408830061354200040029297045794809003900309364480555005803483700003940500381000596509450429452508031911023697040734980982604410989506453902085069859561002705050095724344685040896456700028903350052787309369506783878970949940053049564108513670689800630025890180377501009634127022099906528344897340029704809709020949503098599508677005580458840580897682230917603480805988340057904548030592988920987407901111639907136094040006490796769210501485032059517930201100081707024544903742807001494670460555804030965240034001305504707702106700013208006058906102000172990941002913961932303007349400682843505100337060809009200049076019002867050006338835757100044708873230172472584202515717308578020595078600005464050179010073300017018065166500910504168590497773010906000587170707310069080075658188117003088955019716740076008809457230260468722610075058274060898906502134059769305650004407110600371020651988840677147560149192436080672082020808690778138003000027901240080379845765061905000008125894844270020200008270009790007098904528927666958800055030083900208063904800187606102000799857604298095977567408502256732251088805746430760864800581800207833050906847096890866390030303084012775415963558757088136069407736040208002043063000091756602835583453244690205807500856605000320930600931410297038399985730360790620770470982074001563763919075601823353740450020700009425319000237004290459900069257313999065524004011030870853970006634601000843062210444100056049384947300080609353850274729280807257996140700039343000805800005297308000980032602808051411860106063507033003997372548470086976800709062668000010431899870080006941075079160098066908029952690057390289070421350050704340706599053535327097220591662650929458083710609981087590281445028032700883307657878101008193248588908436207430875101393036010000810827007420002637896600850408354577300649100900594029708893021000506908070037009001799200205009057500000607629060883055586601303903698090083600800434006005306504601097470478510001021973047636439995330000405076900769100251709507501027227006355770899093328230420103766403301412976109202100754061773032554077708621425800382804278869284300244510700969045913766899451906903108300356077075008307880000186050372980001559655061605202879056410098920529570436336459776024576097103908877044501463974024096960426770405000076371273055477660301887667706875262333958108400011810200040060008644860910906721259068780435548006105569860488090027676308903470726969691096908005094187790800796403890520991855290064099667705793488100957081025006034095817100651376400136954204714588438737677092909371911130640008587900966505261908090680004072016894584040300119048611147258798180990483091400523500080093550640098540204020986650100088899608596908820487946601110028060067976493499001001572040939350925885348260553009980098904921550250002077402008904907090360610277842896550561708580909083771776200294680033400805222051528801901586900054893970235068903194677003533700808090174957009430016041404360049040444009075916400792206047677820941808500070045324278510790454008314451661093027315107632796450087000007531740034004080789920890302374330048906018190344330629025059552481041737780339809490505088707290200450686528132706820446322085082996095254997030903044000440090848439623000099074705050001400450440200049700900203600895105469981204068865041500004001006038600004917500079481073826888143393315088087170392041627899962088089007086207654006167737855686950079608090869078993850056820484407073628047049129380063080600060776380000009990338490108055367306840140351069818873538497005807038555005094501245047603080524014100902049040937004459206443500000000999570724537695720395077989156198750187250016005750435800103517776647689881000075073685010070560000030313043537674381852503687170648000870102052704837702303068966110380002037980001016080048509005788044668360902090091900960070027709806250100637352769927003445676719837723087496889308094383976398010037615428022280071320180051203129780257641092353303944879060740506286575850963798830874225515200184016474009703619360402302070730302080824753007396204033310040900710817657089450655776079550454009860928373004780687044601008098900230098000590560850008000429010875050627931890708800604500963060105250966416041020397358916008008875288504788090681949606073908081404608965928302029106256303984560534482797070400099710008570013760560100098441700981740387350662470039510704352600614780249675535509279469700020709999021309014027561430779000304897279725060400040099806000370495559159080680996048761070065730719207654014403072850780931085565069127590200619009985506400607214080862093706613088403307036017039807000620396801285802365192307005009908638000056660646780017501024943610941060702604969880851204006068425513060000819982576613100600289775000023860107216660012929480393702972219294989005910020465018660747734880567547437045054790809706252694079029700023082547409454060206707663823355030682058852660269963661753190407093092898929299084005302626632495984808354030601910854800751557050377875020136769080066136640994860000700036359692625309080789509830200908043709645604149931895069783883004075430440300283696064708400032805479605570020269407090806021972892549800239880060300157877444088340399193640050300550462002306033543970003411344000020096020710047705003506005502256200959200047840385639114907000765650097903009266050036017966607470063036010124175208005890906322904910324503063370400003720060044050829080340991188439006139036003021051404088910348079360074200908002003406777449028072048070422740108799682718800027076982030411766852097371075372901903250059368070095424073603614003338008268790003787788615932673000100097007049070870530511385891500002360912639745600148100008485740750000439742587000233784386506135407905270044195751090827210998800351613000000734409539662800709296508005402545323735800005759448783038040060042554400040006453197360002390680985320129277090700807108701089751095680020447770687970406040020934002470215010800810430106342091443804877549165601040665004782005699900810038800890064715012762042006898308660323200250709102099371970005610630095808978505343005090104400008037809946415690904223427039770008036859341000735650908887922191790804978469880004801036505760000996711008208551109290450905880067500949073004869856909008356064805109210524607980945506003025131667919027850707709403710840108210727708080070590494048477098400170950015807906879470001030102290400042080001088449040010677045060005928900512909698770730820029376680009898000540404867306452706062062545299940707690483880106701958634969063090608496908264297070800074086793296514790910646792987109800870491070040360408498500646004765416802100811505033405331712070744188514730086003005570038829952050727914800819240002218540867950030782960315008560869240877650425030603657768047477650250040700689058760390510308225580785006290700067608810530704002007020000612069077927308900982673065141425022830019006813339330030052631013135038530013700548084050870060050420526040790060023912096740344906090705790678920055790403047500863009123200647990330258930106200080800803898620070828006020440404508909810468527000005256130900956080000500767070007034591300705128178593720701756830609378377798047909001089178980693450966019640916638606369080905098615014309064041030903163330338087744080857009430737287708776609200608070999778208468000328779690550694390260229035906698000465036060079050700059073709955604850100229073738027792588939085909108000147500453980480640668807161550068860792054794470650010064302000084076400219751206080200850407058638103323075478706092070060011916554299097925067800730554100805670438038001502930097509203096800410570905991723863000126000085107330446996960000390132007696073180204392071979951786874680887019804510003040840098920306700904390800002560400049252863005001256800084200003000749464206567090868999063647004003009982001536266040090301644005200025497400540337690636040047509007622458090009984480058950164008509881090500010065355675104430049934746730834352947720009060522706586700092903850283470303540016792707108405700706000005866940062568982399504666157076171587033720001900789509479693860596080619799728950714355453037840137904026617106200950801924905507756007750595899074594959260909990470668743085287970830007000694557656023505957680880653971569931748000280408952900850090609134435076163033056000029107016531631414000861553770006066059950063990904019970865004926396656827209000587792950075000680188094047002400804740072308710474706300085621050008565276700745540519950072445979659169700832345391300200687605290200039869043480308799935804294606037454601060929939932079028809007706962825600020008042061078274690006224992005407091142804386730063009019064787000225790789696400842694970037006030000000060793852800604070707150268270700050597089406118077092500050731486033498084909905866800180045809500700871639008706799807061925809677029148506103040719970200056447380186300197296099181023040510700400002168029574249387609570462173104094070825489830767387467088800299146178520000463604054780825413003093300210825971597037501009400250038783367090539799353180382582503009338900714400010050695820922801363940323167506955810470195780721676094205000586870294104443400776071580808091608930979404476467080077170072090003300087603107598839339056005254071012561200505099500467293042907375390942484103703006000046003019639020485597079084102040233008380727504230500024764089006900600005067325636080057030081703027906891400477269010310195426895205525701936035006409944300200824866906665729096340686105772665509534580580442360826009505080070308878001746077000670917610072527889707809000300041605275020701860021640920870225700406820690196004000465206082599206010706708050980878910730128676030963945902005495198830606057906050754892156468647410309050840479800538172089800902570016079448322860000449670300176008570243388049940049704483901260079097073080774195866248742053653404590977094706996511890808083109098199200702958860078291637900057781006004150829427680490850519580057007130808800744895067947007804829057970060650750031140890859800062537610501890924959500976060890810674673002840941060773251848002360172005843250407467970052570698781300143600009080909063056109750669634795900249697962934005139900380703000400000759284009049880005611378303607880098411100046102480966056328004420029842286602048585045476360076700258655507889580000059894808100000017659888208706906000189041051633100309298650106308976081100505920679801689867544501810220728280050790103170904151000850669475090510384508228060703008608060198709598168355021708402079780022590050603943019041342184984090020009974608740386753783093805968460765200055689600786503757000000803381009032001083570040009306006030502004850021491500004050465581308338031090975075097113020063050006092681088099857903013048300035312455000199679098707647330448900785730017060106695480892490323306502050390700795080538519010700100994601086943420649249728090880090000300073445307482472040887870008078430409760010055331292436170896506406944019065005906298034001085720975286157900003802472092018989971854009308901988600001478239588407590096113364660800180999678708600906608008186200050370124170099001085000606800309205663075905036077590030006185019230786729013249877711801310890405691185860868589923781070737536622064300006449976053000508608356100074519679001524702070000090095307058020000430464098680000708580099072968049480800527030746050009607800000902607078580760339700018216040980165790509605850630058902905208393079017790503193837000981679968769540950380525008615068830830000514676933474802894080706381366308905502741900800409500505565736060908000590607015690401000340640044348008750250509306994095000002732787668000004578081777055006515490809732110000077643984880421013323504603357710996055210300940830091085047060800439701900506895242599070404056483890010637000900040320709404000177153202643278039691003770024606387460962620057304304878838986899126007452940678000730805095890280930922876011604055510271379049079391788787605005803037449663030509444060801785009040047200501884573558061984626100596930688454970926454041070910084516240099646686855240500900029315986070760992006450250320295749305697992800684386958057053052303500563081049436908280088006840442003285497006001276462868356907503720608007067902681307973588682903560608007034709830800001009496215038612676509800540849672400890582898308823090791950310048863142699507047207950986492805738580084004500020019678227897988704900133010987600500904056683795002057571795300783975447609904767932400991013900164947400691000065003078069305006826890563389409195625050378615772970836000980546401059197240590026940040961507090020571080000803228003082000159907702282584504870107380519007878069050090142837918101712958628597046051440027401077887002819079665449242019975807000814481509526177393040069008266009700787603029055090791918059040080905007180329716358054060130753234003485040008086300058700808900027840040062629404941386057623400005882007950833028377816603200080810262450379861399647995706884991920099590048420405896002020717988507346000697240634000002638720069576090277894001870064050350084058390003013002000079020624151901720500809525364009746501678053570140669236078060513900016467936248300060049000240910082000907058507090505590807436486681969679640043067335100280650842003069396301183700920000109781867870006795520908146602896099764780539996900951737001142204799150055139808070107190279312449565905781930070719038823054980070369705533548009082660052126095618800006607859570376606390708944320008946900384964983700009996104091281007567395089105047789480260079060609055800420808959398532026063204212555909023079007380704014078205216135070034810404379088000020970048067460243094018410433000000989240039280909910980303047020805135660495000265370956303000303090926704180544109486660500708020848065768600301100442809948904805557504036109036606569280891350060054588950407600307005561970890092977407069363290290087010000647104200482470001707488855070707386278500873887004085706463096080640101079030073050072903003800200000280723504808002770016178210957600599100307213387537070008326010909640990737115084030001990380990492500396730561480433068048900502742646404351940913056206069090330407818006719404596050310058894060896050020463801768000080009030301204985006908187004128964078607006030085863303654826752005503068682735005620067557032818373227894804708208280504960177507377804992039508030044181004861959059314302054937208067023304040709100960603080630816139715418060800270705930509209004021007995200737588632091082736006400408607040599600005300776060845084981800906490280230800019444791109073021866258444009006075300004646993690645064135476536891007427350109624636753930534488028965305504000035920390200465636067787805520451702006593001780064010001877010825170068640864501550351080908034910740000881560016000150086580600353396609107001701004508479010504643977029508406044508304347957826950004778925027051093066770200021608108060675678148090005700305968690785925760796161618460407001009908950589998960301133962060095950048636000270026603512308889803960206222989020602900072402931420665900077890065075608000047086022834809378180606859665706308875909800650009670600100069040009360097990100185600669100535881707705009917501901075810788763828023880905704007208360526284159009760630820509380907309000807801300270702834771748500406554007985600784410677513095700995679908237692027905008754050309098057896362350200930708988008262706266160000996568020506156003240149185301795069604087021096600851300096002849607859556720905266803633090100192390900870730000125587047974026601381522398050496306674555065061987370009062631007003296900000006003505700077005002060007466604690501500000605009870355806643007729703500412300810008488082633444025766539767035805080308000556712783304609902957166565008900380209081058007231260580174004514820705282606084369080346935689599037001702026604804607008303076405401609178019680187070042622069537090460356261210302161004007579997709900046018253684166505919560485053960086080853040697030585038003290745707897003247768340489001106001093600295005109800040313420282979990006000302505350090510937800319962207281900588646281814075680560560498920599801075058511634538130466364000880773025876077709309615751085065860016046024090990200070883580901720665498998775057553949597668306100470390400909847906700688040759975872073490157789200521348926593584574594080603939592406302800158318004050908030002626007060068587070597080102660531411609000036700340855400034008498009234438094050943606018588088602040297767846892449003902876000029375969700940080570240042803366095350010362909374708030907896033919408161351479007536102586527340890870573532135180296461956300750210760046017007042683406580086098762568809008601023011584006109110538003961505222660881002109924804306081080658407092391007699696265402501508000387154688298394120915019608510877076392209287408336870900031980027480480948961387098688560840000724930768007084450270196809009800508970202942777936908800940530924930406892204008603044002908636567837700806001948034474709470063407750644007938756747723905190825461675928708036058798580530030106706848740068905877608406890596250998930902772007728480810020750188450189007607304640031600609370369100014803008674002000616028037740705237785080598540660300626000370505952501745609031861909771676206150570782920328078107500703275336549590866004978308704737674051380606514989185380404954694078432008872519890656050700109578900400505581873106609880755500276010420860099580108100007950820869296110002926280145111004004000009705804207020452496926057899868275303301387944297042500060360010776003759200082106866023005362030069093691800804094210032270080404461480099607500406039600020800052028944389800673990098880800619079429304135435763050951583817070300031257509976775778700420405730030700048048030886457008303695436070107027009397490507234009250096570720944725920010050700147263008094000034079874611794090770804938005704558859494044000964850659778605602690206379309779723007400007577600030518926064154002903876034057763209072050550480007021600870012400080746125000754898859900145707430000070000000802887034660039609906488000350337948458816004099636960600490717930312509700431416880097000008078702289316060106000000390090073026008007790109459439085387600275050017401700000202009350969022735990599141187001340800349300880508510867252208120803089567667060047900452071028100700808099005090204005200170340000096440004330160480037324476591010700880841094112945367806080040066628600702980020955000993050580097544450410390311760041062331771680768090037049730120890558067734907500671966090378625728072956782986090020841938954508956070060091216030090930694680109683823908000002697018867580040228760098336072003067694946079850701879639635778067021076263580036496647961069074431710173438640371774400203801878905360705780600833473109640910600008282004007790048117496706208069091048831920097405309900890601450077830139000007708906813556506500689640824990078009176640300040840300080080158894406607937299074407476240085650208023004807708382954726088208940732330009791001256998260367804012000578004263007019879406060808086083303086006984065039426023115606152000675704000740020775058979070496049557030406052495063700565230502937004098391053097470508300930032057484072670362306708086940007029608057787500759831840809077791300919202389039409688772004927554021719467076001000130890028070717407999203080104662695777410462054326373503604768112653201008100200442053660190047900590482005910920670958006999791570017040837190009127867050958332309073235568049807087700504412000789958508230790764567205812916280060367769666006681099008060860880087729959050199060701850956611999993843408060300126251045292140160758600000007044085680499862250500968200192592414209801950924304004080396703394973997844008070428150335375978090484692840528972698890797595042457720004976004090997973150384980035550773352942080079880086538906883666335080970177728097657407465000208534446105170801001735406060973930850700871745957190713060585842307048048098750827795009253459839260210140059052044048736820005503602700295639109000690083654000162436835303380700806595299540459006456906055036038008567788789074505301288301678067037663524100773508352409080132442092060190880285874075781900083960906200260031014103790807474340000820034900840006008275890087249103405706044600149980018007048804868807575409799078643509653169086401357620000256627060050094771214954570120232903373950072998994410430079080080722854880004690822425007078911334670170140000599090690962003009812000788280300953379386990007681650865050083853504340465372059492675883086050508095203090608808350963301889052860579201070490009089048540677127309810005907041560298630003996860670082600740405008810260001769897060580065883419877865274304088006560308654254900418906056894602506589034546680700639774402268729763202035079000613080670060240346005102803078077116000460526868930094580022800077205006922698422605466550000588090968007580030005001796757556790162039835089106046909903694364005006004098099340557055963000740985020059945053474908410008624978808150802570037096511337000076990109486405032041457202129000084741705832705650020202396004820449444105912992630075480057308086301035797969002297088394000409807623362233690199126807523500499604007414208820990133700000424580810045128207760200205009999577003772404709075311047734463088081008697235040164003299634509901093014004041609673669410769609958471780499606100908810806107701604519197820820934030507085080890773690808021660005200003302950152700706046088704400440096109002070059027033930640309874009100000040007995342605850370620477179050500079398783007072060080229423208509009600630070886974187470503070406729174340029000240420953849104004005077000070994221100565640406505008486834041466802900970003503908990026514063796300700942500433488327351788072510873743084504761090219841402083005951068250096708607808060049029676084928570176158009090000030956180705011910705635100444280109056079962902450600380105900084007904648077808451238891000080609349800310939159101723404043005008016470307977760703065137530200710287504509093720366007001107689339133390022560057720926708960082998291026370395400600400007289737797631302110290080640107040838080706040006473066680940826073048060850108560558500503006976020580401002362016700328606007409689710368070860253032106003150903004379960662994048610907002759688844950980150925392854853308635957400044359459000590090891700900002071000779013303182320022399010010047037096789665077051946200603050088578245430040531608804902046004603409646601304382573205664368008875930376882830409906752797007055605037866155393787300940010203875804707054900542059910311590309762078631641640505102518610588908292080963152024300658259000997630806590509040400009889040157629012486102900007818920001178907077211109698013808104893280473047250002045564363302450759057638050760655002000080095035001600487481788024311000909094105000500907900852417533909758340594195574140708290800990927096233307165800580007640203718510006715904000002209706887684003687005609803667313317669006622321400940019592677806904075295697770110469870924827838000408800036006560214304816190400851010107090199050935798935302791810201359915306086840810562461019033038851135933059706904960030930843807982049694504694216947143877001509060654005621761650384786846404821106547043606647770067826046700332505100064236705560001500073057270090879000070954174828276501028600178026801136087645092809345960019496094405759090382459505008007027990040786965521800204606006560000206755007976007640520734609897003600038660220723596602400349403096545498008090070488780492109000081240850705865616647040903088200143540690610748130095020005020104210097909480252507443969780880550011632839870744026870856980008281623620205707696544602008723663289900056800070620670005350839709000700170714000380900008040423561001000844060060471170882756109489846795257069049028400087740006670609910990035306834078620123220002101844530050640364897709739048898205745904710077256479681606772650852006488100490884923108819279516719042005299096010082300709007536687900583800466457607959257702156600390070499304908800727967610004184823901290800792009000005507861974760561070606500963419000005992807940339000006652985458006098008010866699560594685830617400093438700557292900229056587404998009297323110089950640900505059999706146003307978601580560869103009074290024099800836208604548860050325230790084999410530944507020687801051062846850210399065266497451783009504578809806078059795865406908098400709808090349474927588351798044390910892076870917100600011943008530725568085902880003677078232170020201853057406326240370357906883629268724390600733856504890710080278841100630808609243979976510006404081024880365328705858709808014007935800242603730280899066881456004060222306600032453032422007475025120070878885054649900021806007337400056607550342906608422607500906007115124070908093920457966832000307530907140089596000048306868596991074210781604819621060680000928560606075895040831000800704400795058007287490005294450077930172976283300430080058055703080482070053801180380754047699391727882999009862209286179078364095106949032083920339103597839399907200043804462239970368060886350080500757320963104031087402088900078800201950000835696789016902998228600063009509358354000419032007683108873872605088115000017910045980639629070660502801403706508040090633052983760081798060668816506355605008004005113407011971057080692008688558535841390610030898013912666302006040569277081840060808000795879507662992922050905866971008718190861073857750603729207590088964608555105017600916409000013800778628543120010848652766736854001807006466605532025666808770703301701448083119055015056790480809039305344000009400809289439306041001334249906603774329048427709657095106977420074422644137872000019880500766314000099867000338048328603708745177658574550670930700505112334559628444048408760506478021383506057510079803032056367500060016508374969966531465129803446474654701042770780850250406052044296550080540050246909498967962098249099006000605424147710283092070939008899386300009071329944497790341619492568529980293130405492481520000469701287600490240257208840280571710928044897005796800080330419005889907280057040600044386268108585603307089307567300001006900002557067902297047220788670288050932308228903701443509351252997269370099027940020979909000839870174904310036603623370931309020945443102003042941200096109901346607174268312781904908900309000550952903204068098759902808004677070080485003495359780998770788463678752160349000121072742520000294099907660729008092802775018305752030408473880950040254601679940100296129630003766693472906357504064400813557559859580740250650581070077240278074103955610901280850604989047025689317313049582101880077709000870700040707507121080481090395418320067069370934002991000608655612543530635067084860579060899601449200442019907507114276038939061000742942530608209060446040084837500001046006555440430609253623307832000003071085709209909010190639306790014180802609017000063170290386906743791206523097070055986293600834651977070040714173631083860405502800900359980370696488402727999027590886098829975983193404090844510502720720097702663990005506938094828930430366810000404090009620096000837364107979027532379004203807069757046982617556420367359007002600975164000438500037090810714438883030309739703088000041025062490080705007020072410403410007080281005440895073158096029866057870055507830077050000080314838505404000274814704070705907550721671091608046227739100099270393138243807270000765203701040500907975028153005072840019725905837130710000002551166513084227091067002707502605119177000572148361280667135400095404800070048267624818492890086500504981903100700012876660140116519506100151338830502690887213040470060904196900079009808720730190454696497074888954509862700890862104360496124680050007040477069050098893000887500008000902508379211052032016093794054610006040957584980396424708475100076907560081784803951008803004608926006108104730820546060083083003600077008614081469480309786837502020471003639010100909606328801149971009882809688009062095767724797260605754192894052748700064725321300363055700506090279809474809200676259801772690009499012105281177617066585049004007653330978069489418096370650202907786087470316000710103000956990500002246026919048220400432008280067636502060200930248090211071510264544525619105055000092809469006500207369000549348970508060889800040067684188992860923740005020424507049758904493000224861021052601032077702665266567493400842040638404734009026380009932465949000277300955980988620809440596750250072099143140736842875309090199501027557400909559157958968800889000266600020868874066365660066420014944900030686040590761005683350903527705637810550403067709760065976167124650699504967609451107009200003678497308209924294050716016209879501548508071060746208387700170632985249258099254011698566640055431583608796106307962560670584498802605590307754537306000413031059937071345730859713000060918002932176920205001788048810327058597140005000337208839521600070051099208215263001987220244947295680824093040018000863089043980530025086340731780093650030015430080080070456086281454169001049008301453005250485627624736080804535000870041933720430390341061809006820904479955025076200067822010059137800907905004376543342001045198740799820426028000701003004506482801010086001301003705640028860600870883109081480650705333388008009649092170870041045088090201973690020390714504119646017084360880252986007077035595813890795483500074810070507010029407160896200340700101521697002357980910605702411186000400478663830008060001099550700062206397693065909278740800403260301256896106487067683300005064027004813823478060430159460800084005022940180718049065536075102040490029000706009200480305006240923473219513842723379262472480805940842004977187000017246062681851504708499614240809247380597880916050042756031390035641689607509666007074210000070492634911003050040970910007429674043933070701060824907100006825007929299678897733933301613042070148955199004007308439470709804427970717935507000108830005800170042008388838888610688971050044093702010900300630013080205263766040467180777800097764190908087897930002090179608203535090725674007190306792720359694159935806529902060060086511402763280994410200508636777830700030840407284473002050006980108772695630852048800373053507406946393372367596009804804906060529075441039007634335708000920037901068528572790080634272749606771711840373557360402030614866680008960061000350287367978000595044078930900500989690092399046045094018690074970901200079726902019900079703805005486750400052919015000588086059909300430007956630006568000420788329922043050610908044600269750042604456898770244098880880908590000101580600869736732516944400209999494587030075803071000909947059706712801709290879050700916800426410683680557537803018429500630875073212395050629096080470588460380640026230995005011060948970750778700008859939156157302200077008200989940114709670747366400310598846693928040487167751000884106690840633105800970974702483802140036106007850108202037025400007145292096990080151387000009490309506795662624207247070250098000990240668306201259080760074000052060940919076407280057286490400664709690977560972027707089876602880443095308713370623985080509307420004410621098600420485395446730352970057680220037070903000474076050619242296000150101886023254087023909311137847004960009000369361004503147328680151539788709690007039779600387004991837079601200390999209082668610488157049011356050002877008070930700530500201148058900596003041370292057084280500399354200900400041748530845004805655006850004289099890007399506500156200644721524155570080108621235000444350549795830865226004540079760700477650894039680108964935529932009280249467038082868390671019009777100606400580049980082400006045500938590000740691600550083177093408340530070809094323458693478004870026681780753784550091090027800696009207820855400589400755650009040002700586680243010771477020216424010009000589486011707019397900830578717400919997885506129609566485722330078453120986556434900689065901070854930079400018956153053608402372460469308505319688822058883000761750001640990965708601089550500506585560066746360857479150902560500000405963624009038003420324100355071201626574909527065778691762947608805459070542705507608870202104189709710730098361638860755074600458618579227026781600027052076831992070985690000708871839680000080066878578982750996006362863549200030049503372783997016035830029098937645580461006030200958050029053302620230730408632584203600005100089047902002842498770901490958401100597467140107130078326097890540483578390528386088856079529856902095560692904079979870682070854806934513048482595728130799607057940000850970921800000891912892080309826035730340344508066559540007900413620401075099009207401323372480092450009177607586456880764002800440086896116706001040700078210160090705388005672005580090061880207769802407060792970909021762390219910663660520698808940082105477880794424753654409019016308600484650002556881366040005278324005002801110010503300607650660825070020774806600793221340040902077503880050396050030063105009863478568490300805808070590093660001551040877400706209325072604895718919549570103744002814086613668871960803809003795847321832200002005060001005697080705086000069834146978051863305290070400681027436500401252440800750969020690276933415080640790547169048531205079607107078000975305595003209160550258004709004910034149069924190900038707407045304592998760061590909790945053049502924479971500073531070004020094970092368681090008917007843758904927030133100067480870270088909705030697900937070000077846019902004000007150949003550040368423572504808710055090259011766736000070089592000025417908101917880703080591263100060891005007485405204805255660980548267177603116405383209203060004008227059559870095137845478175302075170454600611089890670093800336700120001199239087908765520829771843755825774570077221155011060807928527490095602635399320325053972659029074100030707755544210660167606184001349690002967278009155524599170526029030903406440077005496751090790736096209270007280080031944280190676070507730360888670870834820800007094093076005020469300105290647645679795095007000441891878004430000059061030509716073167590209509483513705818464671900671084002065037004009670810078240013030029700001485870697720007966106978888678305400900805527003885005027000773363068839779967862080992033595104930295200820097223474751405008339616564103000710600056019650408517798349693869220300908717484007135097304290621958551389007907467360905403600403689670179804850400500010900989070314397040785500600069406930878066468908090452392070960660000985246594789760709070011767097050066000003661894909004227406772050100700069674807733549305868359707005657704620300883304035290909890101014606900822108490037684305873092794907390219009776809047064409802945940590800079078192189209144097008006220862703823300400140840690802792959169912965058104360500700897020146405057080053000468500597043708807002900040002950047626937009060050570080409402313904276495420405906070017363800074695607501400620400894549809373900615090756064804005027090082705005991053786089707966846725663903050706105526365077424230600701248704048703050849884000548147254006069009223630940102580200019087257962080082661207700090010003562475314700840323597003527887217450890000222054988870430558766438034545400400314780306377109600075140385607985009000903959890390779903324905901116170005855037801420045636590121095033208161906740040225409891200573089301120535555809262080821215803990091222564685850226140064597526079000001005844929889020619508040090730686380030908656984044704764064150002404786880058005389499106109403148407009101331278007908009350501092600059570401827005420910049993770500560028997009087761460695950962780962009436712203992808896710438000553161040669294549075603607069700258139693619295379356880073902351000120006036710749057886105096979189766703384630879006842587049677916106850509098069709852854090986025280526645061008093402920010004080737091050080588079920003020700506540536610207607790025006400704801503610108007409090087010884097088250964092723273090079980980005640972850902905541502022580766048010924008800690704911470655837102004403206058076900021906105245100080003005719458611163841006304089600901301930864727197009841300088689991267900598566904444046500388000300008265441058907985900097170957593079519722900931909612075070107423010940078603004320490101006857460303700401082059005950573004534390609050050500895673447655800099463873056240004629077446392590944513923094300600856874906600077809075004480672096161980305640064700682376651200229505700188040604379795049078909560000064336079144068864651034006930739060900011004676866188070920001089535009687600088807880179034500878012985297107944209251108069977010000308707636000007005068501515970000014556037746644027435236802870682517130074562990180820200090806835909795078499007953090369272546029005209394090727804060001050709070080394890220188805202024090000560704310600437580990610197600165006069580183700008017092800089045079000490745384509907804026364910106800504000038658485000006050799590740560933230580758657278450089826095806070800000008099971000008200010624219499635561070087035057072935400100090633017806904092030004775920012002089330865039905040202030950408249950951500820008390114880820985503805349280005888200703334663987603850097001777800760844600483949016105972870670909004009042903890803960800660570200503702354309408805004407550059066300906083130087880974655459241700556202300063433320873900904078900086009090919753075360970180008100140008404500205139253966030385668396407904030078964990090566802290000031209900868036357089481780301473908093730046680058009758460700003330670825037039028400086003047670520602006460028370078112788099905906630824420004160040967086179060713965880901685580876600079302840586110087454846290244064003322095863782392004705004849004010389098367505149652582172264066270003987096302801700220702957166880790767474749808220100280907740309620993640496705040690490075170000810865708079912509705069070165066571556070074099422729605268017262324678019253023807402830217239927909309021099856504204060807540600581760534860274959035064300410402002990300380790387877042803864040085658060700408080037011899897069750978980340636010638807294638767145424382705080100030000094350054860077895090096538006547393894187049197060660371804993547084100640722909808080097232091501974728827363901504456109009400208907591600680583954004600641001424576200000807037508865012750862663078070867160950500503007330033043984780405371270667162060849705046599090284980850774000980094575925045385560300774940800200083303377860502073730187755089764000030788082035078262970490864393527090800184584957099496503986065789400009160577960893084188144907860091363000607900814448238600294201344705070082261814145288005006600483098464024186648200006759749957582705024536279560078004495762660022302019716579302867850836680695627209043655399370006012076454770043883091952286099697500708000730280968037260510067889007407075252551983370004004294001092672060997010003900400010546980401220089301924625504090580104472267039090991936080771451693009105879090302720078401212229906459286671016080005025032818016051065633883840873627806777485675700258100054010132823440883409882507010098739000889708610770440953031463058928190410070005455491062899288721867266900511512993700709079800080930199000006709055633436330101467000067204003108678674596016905360800307878010505929178507989144970270122750774979797064774953007407054540488957000709770550006205071472441288469098009050006025495051606705356009025710917058680094385406086535300808600006089070048101072080203020887174701115863647779978452700392361604958390579054920706554912517604597240003058072721000686900783402000780070078051274905007080140570066900381535404064068007872520510505107000080764065890910000490935009885249870302405009048506031066605064345941294079490005990557060530366628540757949004755038860874020009017414160006059405087040078480700060885280960804013706870037008078065569003220602999001466587365656649106877829032080808000786675755205220400727714044286433480491300402723035404309624250284309773657987990000383089870404297607659558033332194931006601604025995492726207097643705582031480622695552660516050583400061823904480976995269052686818019920858568505068045006092908200637988770672089022000000299445887959054236368480736609920100607398594240050054280505648601870078747901555703070566900000084628703859629413303626896789042085170824939805070602639680106779026007004556500076416275410450305501769800002080800008605708685245709000210009640080998040300168012896603750226807072100477000305353803435470904899744166094306487048400005410093817530002064968709476040800860605008805003048533711300049400608104513615404093015000000870808689868659004671605088374440070072941351270672104610229030900026343972580806700289855070160219520608000360079150666219174095071003010603668078486700918592500417439187854742651069590642509065809241060040785948706000409070978030190109406400019869595204508346043859037150150707972155589396909090609600100696377033180684003089000960114003605800057051496092699440080799980006609907496974079398301840879001460906033360810775261790961903500071840802505750069513378628000605101080130193025372100537072073376804060403012309280770528734080009239900070869293260047968493577704070205026002700501003232800007006080348100770503009008640760800501004460407769097052950586409665330093000380040823089425130695024880070768800037450503301900020330097507112907730598801094000589707590186779888899447389005930543000502981800777005045589570030990536358485050590873052007073891480007007004593045064026186008087060720803881273673677949600502900763000080944204708079009608000030663400608068205097986980069530049850688052843078906095576957004409499809699608732101979759318056018641309856027464750500079300000600045977890415752503008054750008418798903070434097661070448596038071056180701090930081198002089099190337654998957700038046081226570800790070440947050180609003045305830905374207000380050698994639007000849628686973680630706120085336009272200900169737692310730631518620850800045106387485008904904649147908385479300770700305834050640610900123850042200001665039106199771984779606034300548947064195086706756070047518000080844555030807750400429004052921036307744972673289202780002121062260909900000740797378085031020872896996400021095884295975030961606590102356894391086035960000009562070562647900945187428063050042004769806077539003824997008707005057147926004033040307120097355320000090218876467416594909805342369228404059605098606996316209880301170189000090159870717876001963808395035845967720203773090234660193350770906737368209824635970309195893949880976185209699060155734640767000760102858806789301789603615106005584200059530974030399599106006540064815700030842323694560032660087000057629000020113293599260054406004586933350403249000794185742840291035008209307800153959530064030840550879004008641005144794414858578081676030808075346824430861103420865147828015572244025478600781400432061579898093793504494000009276007701203986504047801000945890507104200190050820003018900907715091098160854761277118570303285100008228159890000607309299000100910513710884186090003080878933991520054910600039000967232107429906940901386004900730752641149482204393205299065502924752079688090007034376776013706068892101444691266580830034606920284820099040008144457724198943011075834547873272210900607306406665692880309609909007399299574402697096803006004694064085674030588408062070000802968700040245322650744050677971266030304401400035364428000051101092070264640004739278084197685532023091190800406893891737150203570050966003570939092983205920796366378903310000502104055206030907112984850364806200084620097801740971510088390008510803882080610992099050424380690107718203801097200073074856496790540952300000693402077919300080761091001294909507072003910657050900079590804750860840007402500000960863036096589523048680850061108447250666692006658057570005878155363969970813897480705798098362060850973600999023867407863079690082859801205106846203630417039307700886000776306490700540960204531570078031674442056387092090930086800782302504771700050019929946092074314278845968988970779070820004959552369000020882967010029404009109210935908707090303904814576639271050109030448582049820993190070294100615117500887460837406000690391898000090961890610670256827829090006205076469400435939068090017045627479304158080966740798830327662337475000617047345403060004004743839303040483974696904530602095007708050227966948060814991004906298701669724002514028005004860080059444728008973201808706026503771066923016310058000299636136800920100050804084600843660962742509885408656495907207092080046919858876494831780002109904684190987640895043040080060035888804000405809488279580600593010800347795870970126035769000708003084268050644095008627292284000790699201754224688901090506180764800800069939300009059775894224045942089948254277028041005936900459772091040400905046480269694024454055137500860009605160303007607071280075312634089077943507503006858772009810750739050875600440960170203270502806007035008063446140781001848670107731578013647010090009050806702406032505369803462953600806239159798876019148000508007403083550041405004508069026890000906682340709940738030676200005705070780507606441000008117095093203693000586336494920050900042255910053520747800094666538570832087001828434086860023633772089006041299002820598503661008569802987706931800080206408011997300050807009008050088808006076888590709018695884078588899060633862075006786800703908739308098702208438608050870999073870844377001148010863574046877893075160429206770996708804004098606669030473205847807725129075099840051078390088892776006908349901885478049850958709580617740958321880449500606308749300770040618008529052686807844905308080270608625867777005202209900048905200876971039476233004023003198030197020050019120739817602702502000605590838067000000849730988900000070220300805375404833064070409080040658034217003526074081063865902575712026830003090700999091280970948604790550703969030309080528507878659057047500062048602105671009700025500625040042300525008925730000022970530334057166183371808861000440787277037427386025585641259798828812565040316050208150092426950254073604865720540070079070002716500036445900504640154358847250408970045948090051822035606344166883380507164039304020447064530501101200086098790437000081074005023051983802499463286610368094930604868049635361946090010384574770451450400268270796890058090338303909673807243043668384623842030098003052900087168960100177978000306783096908664705600046109092002694589360978849684879530000595075055393147320895760195855037030196081980509005168050754826780709268045094005655700464807151170137096926887300309790819590209675915840914097007670608097040090054754002039194090552088082663876801022746009409250380009900990820771279509835750005130608390019604467854890909503808072030080012090507986788848088053076086971005208645406416089814280645478275298708630669438764704092009989040640608701104368600938013199029797208759911605038299033017878374085490910055060007003962090701380495220399900836047434961000476847340487989460956302090038810004944005081990581620160059719108839810009505450647546049700069944409203020050804949160059101000905200214030007606006739419684715753020740286484335676810405510073970660820000664006612979787000616994839594302073372094505980907907078900082305573068298323040179400083095816200370314129669868135187817036629609909004950858325001680685080000390310907016517987890820205680931290928100865984239288991003014009080940975034153626065000702679165508881500090070296076070420982435864081096305792280007907089000168730734077398326708065996357600071000020428970657107749489908208659468863560908532866021845600615390260558243375676795823960675136780604246105976050342000082635570559000016200557806080658826063053100986410019151578509072098907092180370799000927088258808021706578200033600901335840529000058404386903836605901400030950505104880904683188580018040596707802006598871848098980008800080460000924789086407899603168592860905250000737490310909868808077608033664336000673665857902040309002830908992027015469150296454888073703898803004744091018367679324003331307483000003740709689764658835004260008682805470400923698800706508220399870926028037645756580571509103777078798073040190030450076080208904882193296600022064999436087012200619898560007930130847062420806597856300779035809150977020533050136089801980220790253187536310007061196738308759000004955951254945088648048940463549926074874710043683454568200299847578339559868885281689900927351603795120003000698363568700269827108979700782061802550670796493025081436909026090136060040408879705100590159803558939417680051900590340607203003900265700889185067006389095820905099522166240006002080490820280708866740308135500667300030259794680468049897838009008751080546794625993500606107300078929515137954559140860047560850931000038815605809090739070706804660207956025079658537760960997068910605101040446802052709793720952050303098894044330394477162026030805506600088236808054010905318019980004004700000564100076015990960606010690900603020023550889218005300972854302922823032473283505565849978051899640853607002590088204070065052555948276793480030452000598078270404100740749264606776590004604000930894638001040004700978470645001953487974549597770302945007874667405335698940402416015039309708160146297500057510685790807307920404430256905508015770760368045043150185068482773987958300123000740459632704018803811976305018437077015658040048625504950851422001003800700500600020700798326798030051240070870080980098097020501900053960057763358985835020796094293067009764599079008563085000720900389604730940299707500507000938067008505794419060040502080150300107790370409267600023166180066006630920695988530872350070180041913147779304189758800906700600901006673290600009003385826044787008901812796450766505040600260695039004646120009003838094103000703030030460206003484059951301239004490447802960545900520410567420854705063979811878698406240109000577030800020672532018371500900518675820714610706706900810066034569765401784400480069010600076080772404345400827000970409622006507943623010007807007600646700105697367857840002780354062085862780060107830925526720076666006808007650175480755002135039730703704012109000260900009650000757445780453967822360906498850020993367226589175021609023964295766197401692030015004200239301800605094973280007909000046729959014650805150900897081223464498094099006892430082269004000530065834160988062003097469020208116711085019361425093485940960216609191291802609530359030958490965170126190775932003842804607400924095747000005073130509101309064090700380020989407485157657047066006206100330059604670600049509264333884443007369505610700906010095590208024099670990046002367104703758706002102560854004630086106498804309630055785025860560092607226060849846001441670700005649304806800590640575060603430099600840009890137209610984087706029430075590785870608749000401023398990113779000430289400120660618560808296058925015609578111019026980000149909780477060020703674308094502004001622400350305383902067553070550078044004905325190804450730506508053500970589996015076500080068512643975076770682018790674400600460126348006027984459709500000503000649447814120098407860080866840180356000469040117898077709485694260024410560219097817943201080001958009801053016649380982058710164738689001324659667080053049840409979998080082896055037022941170207314878740800384842063079329009570326883000904686960150697203195342000053900021550073058470400494000072020706400099360232820088090902550990393705280884392081800946253845949024594649470280899590852500977038508400505400940314960710009000042068891897329038081087010210532709200300026055816016808074330008057600850990043700084835530106096423292160738949160949009782320665001417994004879009020245475300084700850610804485069648045037088000020691602200934805584062690103063897308154405341807912088020007009063036405470046089304707630890000530250468340106587569007062180500600760380804976703510707540110737107564748074008583609059090856410761927763996400641017305501869100309405725050078884362358921750704860780602000540604890885027438098027705020541802510654906290806508980934605689004188809834569804679680033706061909770095970007700381853906085903700009759035951320560800297809085668900260560593619005307506010579441885943734533975850006480088760698972719505078447071772091688768203047083008857870360102916965977507118068062091081021073335093300907009890001775030669208371435092000060600300709220928945336196621730804909068878007183080624521919808186856641600768080020040308720843010950035280033005690010860200017376085755468740406045380700983099300538500843224791000876197857344800890065011620605096040400508334246008050030657671063777000020550502531200290208208787148762098753170116599025300000003090206314020000608703836182583655058887490442683222300285893970568809167643313107606109473856098140053086400584267465590006000019056620430685898026480000722105008708230768770988098559021009682710046182899670440000804450070883480350836006090008380806301769507706476059088475270000000100000606365566098009701506710040096607189728054472690004938990089996522402500472157160017885083080705078030260806070920339033090411264871551570102185085000603797740702610104017007450647840770801700850909808005779270387590598567079409652087103831280207216885826007505506798008700870420666008088873000905004431137300951005520005675983050900801057162010607030002346408599000700978580530413631846005809820790770573786269950690006703241370805231005803099949902074750190139873416056309947750564005025972901020980099587028260258706319860509010717881901209286000000020683407174057804367078890011875008410157053400066005212596711204919040209610989846091590140740900859700820707107793436506545485075055809796483864702793997954940400209008010807704090673044869062456539595605960448006020673464001197557155101025870214286608535888449100802600493867880103711440408680739080671140028780525097959009688368717752907635906254499401507910636050805507887047800909070990104100090677923971080973019797409066390353728993562017937401009799026007999090255501070721007628254776056622565630081250080606700270733608562036350900806422224380120080902998478700698069439740819800608800240207030380604195062088009916017836987407700059300326136720005870202087665628002898978343650004376042000906706789801057360052409600090564001856800051349103769210670472305762300480318440100002794395030996008683808510501617378706024010710603716218902997205009510544462051095157797048649997892002070503083794908076303049359014075065490533028015334657367468883500900903476051026263485300000656036819002881000375810719750100203179804302987352894481080395097609424863045282019400400650620216619084099509748005046920904129350081809323404986667895066846070560087007954024727024400430994706313465860020020226063070470660480838300073000886990049157209009032300097480008419016230205070083013300055901285835000207528299149830606910699079200001305976975388090078800769597000817000970067387008250090500809090225008080284008492309110995146580849936468088396810481400002710086085316780569026281006073020083905780602910955006094956907685564680884845934181490020381490007545090965195030760508081066014960130686358705414080867246921000625866000900830737009959197509879058700009418419474600664708340860155903900379502006938590129755420094044443089991503700772054799058916790751309919049048668877893300000908504255740575908050077829740480028095000685904686093503750900040600079025206070110500775304940075087550036908658690108689324117980142208011402069202938750543858910000008370575400181000169153906308818995094005090901680485557939248400700938900035759600830600958080890000000000500036003052659076850200090540050680652639544753204407785305306668707288583078667590405907009451300453094018809287577000326108000057609128601312194459793908344018004080340160835075011908663293105706100001647000216096253059840900724370030041300918490359970710992012360809958027030705362090400851741486525047990135049508000081575086603205651604089683702519070049051871907858006107800540619343707050150443080070817826563076907330095090904740736070700888859890606070230078734290388500450750854030295943940035059033987604204673788604127072000100002970810737558025076121964236585887473105087495750998808804498483708002542009352720591770050090899709759645800319071088683966481927990038909760045900004046000858021038045070150700040904088460435643842042731087597083020660660084003578675280943009000000293049647050040870605405560507985007760059996590189199400027039197870870469600910853307090003494403000147041869570009293277978870392040769600595686000530520303052842251310900986904963130046698027005472073681929406981300202120705680789070686000104029060780886055000007649501000406907980419686037227023905943390044037366986890127190007818769533954050269378719192085037504607085000069430029709050570070577550700071953439745070089893607080103002013000007038857068981905070376826090145897790087055995049036304400931617272240050609059844165300200993269382800666970754209509990870104843163698814402040645095698769041550009080720201024038774558855963051986758006937797182075303500694698009540409280222916870022769605062607361429170633359895330930503570009830020700000021514420700577183758906998891382096001005860568057060793548786558607000690033099084740237271640200216156432381006948083498396880583807007704705010553546966092608006540623072638044080509006150528554380182486660614187499540000594700308690200006411780708195088773800061500203400330718750708077052950629033878065500227062926706630560068270101907440885030016580084474001864970040348622846009977009682300000500964000845018070078700180827080000403070191018760755983088295907066190652550045180090737988617280000596020628309002063530985871609857099560000069870258040963597220780850507508920883700004060806287544501010942050029718003884827099073550395210006083936000029966030090665270648850536107040063640043349780693670074584361105586060372557920706020380168114950121279900464720541004096608990930274407658471031777609316280930034509405638504800511254050819208020601477504808984787808022000685035019436787416906812720079117960021108070962623043897230048008064506998909029901077009538477789061507020810106818000405042112202251960096075031400969905004800566009072904904059400671057065779996056958184503530927075857610100060182615058008208924670006590109526408818191900061768800152949853883010900110092603392177331008098876010504380080904276963406900777858089781644139407002165320054083260004500309358595009206053601053000708006010003246909030086000775449047000690590447750807020300473010080788210908770030699060847057674882024000080420900000082398560260498960970390269132035770000990906060840935869701805240107697900853078453005607593607877898765006640340079668101024050048084776080807020002007908600660809108780006087973070293009000928820890756070070870810676480007600807025607078760862520560762300804204492420000900380005090300900634250000844946165048058907920150397639700000820084976003775730406221873599010317187181150060000401704109081598400359594248000395045506607277600955347079004309146340786080656193037040642239082903804600012929050420493050597020767873609500369828806062249033730907219826041280802058624996351084010053095071140558371000810659076650099500084106065750800990210745418005875369033700008042051808082033980909032044701079636405020989749032970890710709639848050170700800936055438603169740008807001901768971784640700124969790583072092060838093060500009020671805110989800887790512140000061121325287706734870876003050060100967950345532139450009872164684020395776704007356153069000043003234080765026880910786040704034602500636664020702505020009787277439610158338090020550155058004380753139000940212582026348008306900083292811256600800009000984040618119595302200801590520609627906007605155243590603434088605840772720758094308774808064008018005009800025010051206828735721298386509069829480725101965100325392400306005077705159856000095140522600058584455355510009090605286921070079037200280710940987690362098008460302691753700099008732400963280800064502221734190503285006009009007569089143557005567206008049409062277179969409000927089148477451077007960775905010700980042090704915150429514982008280098100085040684206009040158759409066649902908050498645704613220209018069792524860070500780323486000003007608707088400850059305560271873368303965319500599666008004803670806008752018018906242120777192161468006862291704000005905964053067156249427873707943746313765203574506659835271001191677172769292050085240808030805069567059030979590707867920430093840070680559493792958288590779829863300066057081406337710099389908010880608959684700990738186941317067303340000487058060008085402490505793898670090990586400210285210679903874366706398690850858584271946974209250100000506509760400603072287859756619900900712098300227430007065370504475463000155030950900700810863054229003004006009179748170980160900151701070000043870289338000091279184503690939767730833388988006099094052000000977093480058922057790002069173078027999880372961004708097478070003701000870640400028870196769960845081511886429000057477400963600809634920099908458454054990072030973930920853669359008040467052600091483008664668063000005947746777657245948609686088450014080200090180007270092006007460466564621060705674796719209289109692740969791991803406480094566003507897060596727906682006510746086204315866000015015680751060468803760082098047007456345405431401530506103009009442100216460476818077878940059663998098404900109018307705569258302075908660007487008881419005896020860170636990740080302800646187800113989065824408704998982965455497693805606650449303040007661354070700004407720047402076556089076090270930009530789006309700015017403809300575440829036240000696822904856854000400804004980669808000566596840014300000008874070567155270950160008011960991029987071580490473562780901049650598687601779060504060844721437059380077094693901306045870090074000640709901070905085243763375446000700069018130163951600799235406009698102000023891526680246800575605027950127840920580807092849000004702005054717594107849027800007739130907947733707900739121001568607609040435011550060000295004740908827604906920970312839250730000600354924010020894920953490851065535320900009065070000092052200900375370902939140170782637873985264808898105373005700000894763808909714750548539203259056880067500548026973034730404412039407000067000037554020065687360007709895090790064897072653648107000447605094407776577850950080504389520205101612609180300098186935058023980009605201337534172006192092024285863511916048019670042950035399010000071000948004730001030727630050823617160609518168788098004120676030245260070073561088791120004421080760096785837400386884753908640003120690820196401000030670077370407903094048109888099050600596508900320038008609650038030197808910090483410018780769505090840085330850064806407802009077587807806000908300949536448070387009901088364083671865268946720277940539279460880003577400050430910700194263350070593000200836265030087070457706012096612712650060418720470003761635070560692584817190997201042860935819303600893000807700500937070007700433302840071707803645141230304730930935064873777708202002913836020918420299663149880470371093982110636378789392577401221925960861000607220713453006001866903492939400080008928084666250903459093709330026804567108561600974044550072009685021978119596542090816291666706710488082068054548905807008077002000010868449938030656366807403008400271700051030667255040358008719655103004897330048578035303308509770890879858098708619304970005920526630917107809004618181470660700038808401753008427106992961594677420800041900451803941780958370017780006260565680613906900760207609765506117031520525906501820227880660038140079073028798205999907256095507903080200208884636899711502706209527657939480480544280090037080099490738911946424406255817025508400064010910828903077836109542000058977700490307064565304907900900339017910181170230701027764872610790964238071077407098701030030802987102300685468084410609731006000505209747100407346725259007101770004508970034021486188402240406098000006536300505391030033190568047487874217969609966070790800738083700350900088000618023715944046000892700977000910393134676508988705990100093639076826984250907302049000733544793299727236980826560076950607836337026116640201055816209206666345257590499430364106890967060276954490380285630800475158000310276133608706024490602900283708336001507917087233007096207999070750205408954778790080999092850500383269798070078046668000669405009073307870806460344408880040440088665020890000300090644160050301468098500100507063097030278639770480900590900267080835936939030079623104925006171598053967503096850743764592490300367893806468768869006402820440000479868000590697755370317000145704667350685023957105130097358156160838929614680768621023782180990003306299008472005006205102570205077999609085270040034828000000409043765675796873166000852666064805095276672587370903041807008366001087804050708768089406206055660480772021470910108648003426901440067004068545590741507668070996403079006141037014000400753138087846017950009773273819007839420450000600006768030030405099254560819460005096711043203039697795080680070518001917180993095740300070877961006038959671795385633696061250898437072400009862000090931324533800875408002212978078543002309081809027300077339021691423232300690004300800400720500458222378876857305258680559583174050180010900264000100703894790199334406367206320802080413949068060625807463600401388666507501762800134300621835500620882056066983593061082555229710078530043152608731040057007777650099770009506647069010506477984904085014890015872752057945388000087506897824546073080634270048029505908195007260340049500707005780087738006072610797261685006212496703654647500339917000019009570301048079010006002006077074308902807040150053725939091834500916827078082510376603299026140802160106477499700736707530004504746360650144080580135997962017069067818880600470712703311075215388973005432257079801050807430100493030306563120048054001088705988901099520080238702889904540703389040590003094199606403356098612457776064971229893404457987959307079890020900095040580005045006790795085053600300364005575874006161050000179590756484780269490082143011037300807900626085755849707940096760569787705895543138303511420264200069426890340310116628606049263085204701033075566022050090239514960946590880366791536027074853488078870511600670704263277700605098929008308102601002635275281919489470865439336090706600007009505402154060050002858067870205305989030035700967400901080886949428907440350906333494089070890000002550011205070067311342992729958079850605080964847008209097497079344325092767340100001102993084480006948099009769977074718280387695323628997398878090414409150520908790056502484014047243042158484909940775009004407665010046135058063780900610100060209266128436409370508763659030698238296067909077029009633709764250013749076516210380528051509966780040006450000060002440770050850309300758073728300970058000539360500806620575683900085268530100090233640202083012056495508109049757476568700042965019798477828808050996960061701007187940809625481170512760958900707089408077371903801272503907207050930801092083903071092048056078807510706702045001045090304008668440069936020705854738707197310030890901986045009780000675427110553086608098960846803408927971906862000592490074140088205020701570590087081708092977960446502439009098745912320996033000284019633665956810004780910944077088204019005707905820034800066424085179899521008250051970747876907064312882796100012962747210000966597846408890809007008403303907073406052507607038997742207086800405896904963500101240015600649061009445609040175503700018823704963030690706682727559002800708863980062996904969065806000210006109860303899888984012517894102027595701227849044606080300270164373758959706494078503272360990913630916028893014605329896220090408607900008600265606009388006704905516500804109760566270575438303006000422500865000310889887495807024366973262726000000169104640283056868086050816007006005002049240896097460544085255770058017510928428788590828888933092816686520348209580004163903700880870980693070547278471150422806303008846407475086330265225783223708089406538802149850870032860080201200872690862107050602309043284508408007724220803680119001931270507985600100474979035570433131430962900602209428808061200762873003390073080005909840001880040006299290089060509500010331030466000810529780385803000058675390007098201699705337329500790602177904058372395904060403696038063999005796049207046690261390605495924640860949700093170601204838206940222045705100054005578006075840988096909023660876083090169920058510473685294405700032305692559500527378010080544729702700779600978417654920019000007610049544090060070510428519310851153551008187321864900008069009008414150027008373002800014009050026081368388827982106502056009350726985005663028100405009472056951000071909880908583801002907726780716805961098115409859037300970090130931010300809380858760682133033767855073696182906713516444981947099240182300050056394408613309795894274679300318342619449708680585089289684315690906440870400009590700499847200773570091049874105099040767074894500075897947191040100265542900009908873086305840147640257000951647605668030640016841908730282529300062207890014469100248390337386820939200303102988050598683509230820804005163099707709159098670100113090505090309200400606384559698800072380004500889303343102483930304402080004975559708002950963090282410798332796790862141334800946015482092001009792111075339048602066006068980480028856057808180596083705725464554036900000501280630907402200070035120600809189120639398822103389756700096000786340776697592504570060902770007019300450877300024428756664097841351400909123078435025088050406205730199859700680125178009000060810842833800119169297800656111075830600073479528790058411070045930515520379887338176727049001043306000071305002027084228061808680853600708010009436576565097079001393209850091028320407866666910817805015091621202019720897394201508047420070809604028705280380307029150426904775680098907004897015150334080100407507401126056819809804220700070864296066093727057128804900082008808490823504466893074488074670200600005449768688475220747498149536000807600581005607880708254013510896870640160100958006078147857675600096070436109834538880872003009064708808440509405650363101008365230700010257789806200469108700760728074089450303900179060200005600003097601120029957970606593564050530196678118070053036034350345704760281958701008862494516012780003200570606904006010736335096638031400302240880511901595080570840072910906147970976338578204029506089942084760510000897400023667271150500092530192056150001293069476400900090108003610400883060909703682070068000300680280934600400138089118931581343745075856125478088090801506581060167860820518863328001719020192842098192794930073900030800459090980980707611503708070302270701085008906008100856405500041005835040770288008580855999052342590060010065002648480191970588766328402035551097808490098204644269030009174067007977597377043005449006671549694534370877501065879680695970877233810015008309001015000550070481003702559096973476000068839007000080692687034994605200905487257808724060603064200045080684237297530166690927909665522400209086100942490850800655066023623000797946070000208405373047370000079740059070616890505909003590000305006874742869641500268962060445009200862665979680202563043079685401891600920090051093790905039405902302519951000450580977370485031297190577459290078894405399898824027593038050164982900900605435840638890033940346906093902057288003102020908590442634058713530968800322084682790007000075037698777844094940908000580002067300702003776180711376100030466095709753930788906600054900470791000369531090790090794908000007270987820000205003097409913869200147003576594980608157033360997323788800100174388876447066397097028009014819807159090800589707685050034800659923010000200894701767509474176859700100360784833142080255011015836500576534900998061193058873090384498515203002200900015549295972807964350780537992454006636104043004269000104704941940307202065915890638710983297148075105200270283959030085002205455796721414903234001100005732507005372042000826300017927470443870696498050007952094993507069603305940079498007020102026077427092097903608099499090052884390529760307628435823909034000409171200534469709953043702087950200069568970060097309040590046846015000200069178084099097026836041914109388439948192030676722094092809209706983039408009870030200730520488004289440592304006389597951949800908769428207338783060450507099901660607030003910684210978530909767464623656750802059072805080080069899861660566400938001877509082560405061709661904939006100025003400829004645008950001929600047247670985908808099801046870605440145075001009506996064199080514208913150090076000780690961148070498276252800280204424018730030816600592643383840800470532582080850930740985900089057953057228005885934950387905820744002080027040086904046370970560087320249798066790089020490539700010901010058559481974900703096905700049900173326340706380006199241064094400949533006624437705040040906030986096533066536107780518428608246479627092308610909139910025409000075015002060950688902640000137094134068865051044064308873035905036970809364007582083697907726961057609007900730608505907909384899497700032342039600903935093950003595080427858890481920194766210795658352709105013461109949585069008724092093795990620001829416800006135387990599813070571103385596525520039509900705115053052611800064055560705001640901060257815290090040400605050304032506582385011917659340251049925066609646500281747908096406193824001559824590924700553131100000383909225005652449073090989000054520023090700269405003030060151515804353890001830115787500808675766800900099579479000530006748540000009770000989008528004665295715609040917388345795607070094766103690600277091341131326014603920440166750013170660089800807720900069420856338296479040474557120209002436293069538001765817079667154699631462071057400509509340467202490008456740003517845198000600780409680944001005780009717705901058099800654086711400400003104906894380005090841099590810352740998202107916023389809808960007523806770684256219035298317798045201750555060370705879430310050097534867610840923700068175609090585445002300670906096450200050241026040893015909003902630503860483507000064050318704322023699505179984295005601084022011169843290109005931700690602785713040607060090509080080307300977607969924099579075900300777108009062095929088005366300520905069801000920776090769850680102059538009039880430960562029604480202455796157900018729968056655335070060008600001400017000762730026030538634675006019229911040109146670717027629342805468810848674140073600339075500046400489004994000090348774248900394707400088000600328034569790600909408600678790646450827032800149017767085005058800876697251601007783157751362827060915700807204950071007033052079630985403880005713275671028610400470040816694035676880012697130017654050853065011901965709705826039287077423975304100740804301326331600016790975073949610500748700033422608912060706302099200378037407106806254758901702703686784630060500704545770048237890047950849776805607040739504000444309442990801003012204623997943820248010720308763903706062552980400900090000704676153319008007601601040806540543756767811111484469500600376970071763674778097300588987901537203496039418100047608699408308179868607736825098200036057080840128217332440799950985030986009887095040031335211750005909254200810001689004611341100269735709500018518099400042471028005400528982000834419704060176200893403730567078970052192048404843827695057450091340030676862701380543148371080192674193420001080829994501036002510533815279906031816093224096569690601090671850960303605076882700588387890809057309774520739030951030512680401243011334574056975069134920650844903410481096795010800395004360000510700343397001630490050840905068379850806050897890687623244082500030962820290009970942200008412683206296674906088727633337777087105803902089900931151402930305949060761085002900562170097586250350764080090007231480280000065018750703700639836889081460843448183629050140070843609008800481637400700440043065010688234351046000009800000580014011700640665473074998453403489592953360409931029950808030232608359209021604000087960600360306027300337306317081004276233970370081482690009476246999013056366228600702765094391547902047460721073606900250620801738400794070641100663895990163028009800983636056395090490638456027492501188073295197400506978375990639800532841979300680230414333525979968446905097000529660168658515538016000782080788800820058700908251076170850801976440000804400404190404040206074010190114678582108895477510909081685735592006514785075969950193988309234717002380539543902073058329599521084168892604749493090089834047730816389404070106528491034335463868971063386316400719824028930038409650008800109037980100900400795601397619700006043093947060305041413000485050400102053700706000980710238395549052237800458425088097180100864473905446505023164059820092966202903084005544182203514471680800893084071048900500870998125593000027008280828700887453088677100055554092611396506965058905080086090605299496623082750507081641010000039709000308229069578204359544070980660876018165085004030603901730938070560648601935003803001620670173878228085980700800080368316621496478892308008158057552416672557371866819000000890800008405908986039389002596887596796974078020600000248008000868990494883707494270254809002096760000020257260534176004550856059707590300006540833930809286399445178393890517560800730872340988490845340040337580098080294287006003090030020080003968011045179400006406009324781790015445711810003900640552017273063000078003782040120731000070305962800509399907000569980950707842537382594806190904864179760001037070574869444902046566537016305860000204467937588257221025175705082700061167497083539034208878598009332959959006946560485291380206000944026334021380240609648000330900914269099606980847854207509871402699700078068917347000748705564330676707888387156225208859339010895059020389638095260500731493005959500783404340995476909307300203084505822040302047787009680727203500066084817800090102209034007133063692801708985007302385958600140530644895820970347542680290004775860609094651306704040300278000749338150603350000054003043881707700305758620553049614033310848286177905527303989688057190950300225078845046000730003839501013033001700638908080969675081880700010918508623250411490059303900998238010864740084746840006089470663396739370700870618127876800909035093586953930600703057584000408901547456648400827590097007798900730007702776066608070890738706485013663405007714500050745008372788270508053806650309130906682744707177008090645203463752065000488654676437098979691720704000080085963297706000080260272985009087770090580800373325720798696342700046079877654282203060589704895133843406705009577118610363550101374997506872638480290010699075068690910604899199942409022440880098669100906000352071340800830361002458042807890080859858890925328006078032400606586044070509082100854805999308300028007037887424018886342980040047468890330000900204702095034077391418359188603593709018944006966601597738039292057060907000590977605034740076683101009600007564879857178970519502727468102720728753157007209101359560020925021301070504600480030686199369660084054059503700251062621605375392383905009687806073000006010510130547640050010203089344230709179788520046985750058873715801810686089233685899970815650097509967367251529031023028560706005792840330899127408000000869140682020000626600107600836015002050605409706000617306020209045300068001106004909094900089580764400090890407053308030188863600061980959820730399579400687069488843759819999368049052680009881001431901602906417501000157019506700041578804427003600050889000682032155171040232690040080935590090767020080969241060291345626163697082190857697792800069300090800070065096807757705048008896070819039068302920919201801003009785083434317787774041998308026709935180016048608094771517970486079093800035005507301750572186076039410569689974870525037396863284361749507096803119150020650207967060187789272672800862805097398049147099700027638972255869050840005842607408000002637067945840336041660908809020617803404007109710789605202747510001030650608071460900008805963002080778068229330098000599097091002776087783033402703504712293862001629190610107407420603936088932087722365030133920208940100902082601050170000452051605000818804448608104294728641200039988077900380890803590356910006905723591964609028401030021407980873016768050001030610114471089502408709534006402973846716000797970780800008052970006904810700763901179360090702570234053005550114100160101524080000830150655060540698218035070264598057019986558033527596585450059865539605852720000806414007092500194963363071156080067388202904331707441929410112407377890206008010078984224642890319309087879265745087914180693607736423393303304300077769507086026039285593090107035250050065236091830200523827707619265009008000106707312802378706023068086349800287305278806363506746707290271400875186950409940739070070475727200770005800420932080050574492494840030461850994199838400504000400008293703705220069092064700000960378083106270239201060435502091405370625006080100456004750081077782206480788901516058968048080704850667895480600663308932676305276687718761072040067000603060169929705486009698271579137775844095238404700080088040885101857606080034871108395085686205408686006008544240005679022474094334508608650407640900070008700749096960334006704034540101530560025675170502108150097805176922605880060888005802603600204030832066960820828630480709968000844348437841086871988793007950580604803944056088034700288900690506008282509743977409310776710964200848007660032021008201698393768707030580129109908430800847959588794008340870087598441401900891808858402528018095280417975072770850682185384077746898105683000073049199822024022612851104660848859097154309016002216855272686759015850769358809006206791010049079603504040022858020098816946630606175040372400288114687075604209840906435961030009805008309405004171300238468237599010050900925190202162642794016008378091077250953520000300020860658095108969408559053549650560074041792019100002008600092095998900000099440870810571055586281991773979908007840003807613820904098540080000575000526800698745047077958976555479088405169004007555602065095408048680961038406006990073820937954202953150400244050170650900501048140820254895000055993400044902094083003985009079589473067112173376098000753410009414007406793209074470510509650542775000400994080005981354700409048504908708295664053800683079602117614808509856951180506094805049500662928092398063224400647353010998500760578009033070706550079383030050062730887641908639072000080930099730689009800120148488047244377606971420658094737576502906007020010735080090760752460360744169002054050397686370500603500077509058573058300647059740045973102250480777088290245408986480014962290895302049984770879024689040966900087984630964081100047132020008970870208006076000840946988015475301008730078244378806007700088289088307381812260209097680993314900590008908112901060034017009034108408345090000500601093419584817305000092968891900309888077003106008305807092505687700960451707440409090811055002129240720084438699073207186078830796560522601447305005890778097590198077977561652983704009035156704850186040760200090472097430743301540877300174919108764030393008596643460440008542054107984529914641735325900675515950395742002077815061086044398340690108203023970800034600003068484200600485100270982148960000099350497774758200051708808970060235098044987614100122429402125655086268034226940068408807260090001987969787207678575081834047496729097680770689007408004670030970149606481649004360804205812452660452604037382499967375400912391985006204690139080846486375312262701002088422760677266786180009260785408088435165008419060095055772758880488444880815527427800810078480038023082584214028000780542270450121220670400947050752705006804387007199506819010244342000710893605986096000700060994875779899915226807031644043757004607940390720294439609157090380505224430976061550809906926000490065005075800009880000025717571784051584389942908003407018200564305698903076706863006840069366590576505926566604100744075107030070300060800353837708856439410357561002129920060873008890809590770805082097776664093044100400840922745007300001302709950060960439600046561185075855326085877645154707296050583824059066721734169753039331180357026530003520658604581424004060660301704833670010265905048097909649000961623184580678351959468000072180004554904048703139802478395200441020330000700904215251024797070007100847605497050070903315009050751291200906617648458810982010304077009109708466747620702200609978040073809170971401018909030608920706309901849709689055582870020989921000740527490930900080103478002248705760426035800041029006704891637740957240935520010500703300384958785100050100389500036908550697925640808594120983700042085500077331504468700090680109079070280780004580500908200007596624730089084489580034095806500000441509758760000180862069007137645500058700493908095135089050166500900067077854358006003260956492790006966030775343099504734020078030742707100600783201106864930398420209649009003274096090559093605200773660067083579955896865965921010068019490086080710170630730057090775967874304007704299308801204928008193009590059003540688056894374060470570009070008879846005470600001895010909010290727990050574990070053618626425270490499469048509000500674196200543870570049867830278923886047044100154606901410598571209407644560018006059905001096400090804500970724808060482414086043815010071488168502688794709700950902912648020000086994018405017402782004091390817189800558342079221829008246289453412409062636370080909013868000004130701006083330340938102923304707171484950850075368780966786517900001000002712429755220206460812560578193860279049180230408518557005240548889634008403007030391007009819090600009010163060051046718900238166007800507034437125088077068010800019583900903074630208415068285346847007770769098940172913700941970817256140458357037610070646080380003045725320960277590009080018903674080470974731020202488865319838206203463060050009847631620610730080205982900846996099082753815390348833665137080018009805780775892060503886478288124247099127579016138479678089006635580764923205387409658070471516707389001048765227003803197997365037189798202086098402200900700858080800816700094803803900840698692409732062788814268800865000970651060506499704579614650648000645554727804040389004901608050007461684000450034069720604490640039187261045629647697807500325699630740081053103086900031083521080099549065930538665604872555007426930330866398304540208631590327690067176906027082230060904389100152036980487607005075000400903653027427402612900102320008346414446302704009529183600600105798400040000958009013400707836404095010180009000184380086061079602422059378704300391061489957853096410415808000140435215058529799007046795051581100900905036380581155900360260041607945792904096179242649307022200119528000003479360828000701320409007390750963030610605631608878647246696257467709056666090446493277308065453070000590628450110863004832304701400100080077073703750034280084017580808010670006097241089051789000305797053114010309300040900530979688014006095086666504826009046269727569000059917781531368005839260106398080514620100705073863696892660500254000090301200369358570800723772665080804000089800830322444761357755935223113309197238190280009070638874640699728360078860602137104576041807060003668000749750485403498000077207864070020658985807504039940070004833002035794720962080980900830873008178303684005504609902067501900001020401010050043971093711706597059960010708776941034086900050408030043060928860509381199464435060730370373853053875079726504807003309030335989226505640001803889069096057683004000240042139639070228607030037513956003197893008180046786830470390982958232030907000829320053770608207807158063045622852501485730060705386075450870757047700965001249666909842208040039039833947500727104972601635008200007857482856707090687506409333345436744005460870288903861900707054763760092001120717063123720480800683805300109102067075160706899319000045200309100600398400280047045039097834601036000000138075507832001773400959761058954222600538439680370460640348077923870356461654006789806140205697592809989609973548750018000041890000353050677008890390220160949117090075831206073556909300388257500009464801668072208481100872205393016109091081169108804679540220006870157867310076851400900337078034863508139068853085005098375496010020929027951004765018670075984000204138097004310571009499166597149832602639003505900800903001060680020200504880660003961006908692870326220049238100828109570468021504340062900001554000410517702900616909783260815320201004188737008083004595399437863905600308060099515770540809690069555833490260500240300818554008104187551008006063894700070536905709802906520990900071897691640528406389001495882283400807689000856088910384135000078229903891960200290048011802899721706034058061766866200073290392202110436397369900747302081953950950088067019410017761691084552002023752954576019480600047016608707500020550086109002486050930050030600099822828000004708000720891450940044370010903002345863697001709681616789006514805424919621539401685627751584826109060030007770022179950316905002234004101280910100055030106884097041485358166793028587616703933799400830966916433338800950150033802200770968468036513708046303365560566608070080305336292009008930974860692118044470039700036606387615070744003642780828000850470500611495043065988942707193662700381009500060767195868395039506005800040765505058033830604880437404600400545680020435807308380400465290888054770577833639014107009096149008087830631189283005804508398695690984850597928006080680300075200890009004350613930762349660830850002008746727214054200078039108723659150030631000654290037500260814044012090760527257700668084430700005036937720010030534570801965040393844451756240503801903220904907074000007178505025952769000307501420211097514040870331400549282520000008932700406100000040659027109039724842950200189207605274006830092600667290608087490075958746509278550586414168719268730604949454007078408892699600020808302746118027260005330117668492894159369826797601786077747070007040207039661053800593096975992071073488660979395910026305009091040006908091497191606323463071037030034553080522992065092016968800604054933029750061006738000006910800604016969651085400069001790766098219906281604502056417093400777046013044633020800358990577098723402578524072100009890089045040564574000057928995140640357100052395837366940670886700306038373507460381493097059750060060572017406500407868010303086967668860634910706703993822843069006060363099801030220213576089966307000239510500132560583597017768088973831231840870182043100089902906248503770081407752522730907966370693043048140700705871037612008307800620130229387263082033461010031070715000000101563197777270489400554006410009497496000020403903487427039147880068600900400803000574778998070085014120687104092901800200443807459980000017093754698070470907810289690197058023065784090678004080017856180780570474834966081297762462028349611140803947747030002060987375347137105809444397069715890117863100390809109040069525817700800060086813618609999070514820489435009809698250790080079378675524359025585296766690507529894370729881801300618874592605001002001902929841808054051200670506807660404990504426073070971805801001002469006607860069020157608053420000310000103301542055056340288039861634007600000710700098674209700055951003500073120018400627020074900766067835980742004935077648854300907012216030070801218488551974090606747458900050167050641824866498718286390158425664008375002895140074860864002704050845508065000050502902371794090712998003077000383179992229105090440994665308491477078380500440600062510685090395002366039709084005078813864709706810500813030604000699950743079070064293600289641244090867272740109388876942200735898041330900805000003603100973490000823001007591690360260105360200968602803860936087007057900706284580604216006150044858408403073600005902345327062802068368280279745930864296544020252643554500004929452900402060121510947070093307092000765076098800087798978009708860177032137448083502290097100019409060052607000088937397000950340906186070905367900400080053700284648500500704600548105400300589110014090643205400195678701600390011048678306537877760080530246150480909977090277030000809603912478293870001089079008734700260871050486809697090695604022161069750778156975903000007616590686634065090496631638505495154000300778420455402197155007545300574460185060820678850575404320040942987155778359814579666500993010800460090710065052500080007280073579561970294259530190572500190070349837000080401100027997000290350070025555050128080846201100798700030900747004620328768106567120040699414189858370118001001053680575673253434798020908907710100639000240058412907680083109235650905006575086263109424809084500886808133898720700480708064580131623787749003841394601390030579906019019505025200730097027518920629326806472010495901060760300023900100980307157568388880304639837040073100094001406054203033106647534755488011001018400080106252186700948207009945555099723080092304516300838486790324000905540776005621308029971330161000030981170050910151420720241056860706956690009780093890753758201292966191239641738000008907508170004739558803320640007148668791319606015241128093900810202970787599545790866007206747007121992450912580081866903020780727030925222077491289001800013143406347657605993933353702001630220792790510072647991082120797440024000070087646963230360006700709405170900007500170800208539660929763000824079872950370528060667690063084997820900780980789056300667807456514698601495620330436691737970399490722089301002445790500469395765372019710000980184571909807608638024590005006308042040500262081096976020620666739852106390050144018090080096557071779793449050010103750477900060038961000033580190540045023060737680405211385309036793226019780036307074628077005007390000632780070795870660007918570043006977037313770862600995902595000909268097307393800753294805831004402009879791981665908308088509054889456603808826589900000593681004040909929502020470007499675044129007979506516490813000888880789909523534277361075088609007322226889365770785004263218093069170000306067852304727200000920419340861968395788076007611900107090105666139669470763269031060670009409025100755908100946496150237690088990563089810973008390330007007197404308803588017979400095940086300546800709103499003737998292435960009070006090769060009178009505049874828698001001281790077818097906894089005708520888058046404700404143749003503565678783009306203276530429028847480063036074267295002880601201034897089138069121321540190308000706200908068568908060003801395749906372000240063050492100181000002459071107005938290068880590668068002900303003021340208379013090544580005994005603972068702000074700224921680890960865890767847613056601076506406606350207686464400906858167084274607007865249870969999590997009006475202099079615004068008010400647443084034050500500208570008100000266693601030379618138048630078008099920190079207992001007302020408829802374060757855104198700008570680648590707603539710330628907980075601030044897308827567504312095789501076078000049436706990775809600000286966057941203570842809308080572002500378084032001577089090507666806920745400018042901080805697239564806900889271309830660022069977809747598009109262860071080616959019101070985020000490190950984070187959656030468610850709807041608012190798186408569800358014974196018789540500057078820432708449526906815852066122084020058075824260099900642400989540669089048049131181441865054708780305929000574654180324464163807579576350700240809770900076703466802630306771409602000050684724800844500068159052207316001408090009035564800404540306517770686660006305276038609000860002503150646107076067338389006045545902242020929148600449006726007940179000700087828951406740799872000739035500800980970100912004009352808853005059969848044930109001004051051440930786775006405588600086267009400905466959508674830053782900990509966990080260196036170219756944630318730390704201403901395995277853330794030080905371995034056072793060082081906050403008200369764395280007065954880700230966405033207770009436005740309038311509600036088813967080499897005090301442503703388305850080000365800608051481955360608070911103910937596382874406378601830775359936678860335004900000275830600604009347776006171008047540098687084023210000186393960699230100593608708549000078401720162683828380501107003420518050529500026990920004767046006309505048087600942927602002069250085630306746854880380205990911080474599897600320029087642405047066059663001503000008040950823458608300050104018207430513289008501015060854735300070510155773184267500000574501015093804865043463344409000005021777770591604605796275218487768264660050917900220588866592051188030987150006368266960071318060771196497100120000427953050370400370800044087070604300280009300056051098829004690090005056923019032074399087205318956004046200000070760820601957852065187505234643090005577990505056550480007176857085700017553009625627014714500439162408052070357466748631809606157303638007090800675170506930092997443085009655208040940175809009770478010116037733021540353080803853507999052029010877106006807806534985534100802994894900686560466500732078105610055759087990233601007669476040683006790670008909180898403690030577012279706534709647103705480904560303660507345003842069500370788040900906008043897439364665003668900006084089328250500700606318090072058743207787920040100298427736258045393527050260470930007399005052099372475376260593008094970703898127389045775550658607004202906904346969270785315712814663709059090907409091727270480242060454423066094304671960075695253826989758090943697071979036168807257815600263660076004203564099980202747484500378060303291705908905735510491577500870301167171395070675380700229006874753000100804906120074060650239207996000657795274340710684053062990065006060360003108298208693494093805661075069590829886080108500000705195964522505180804027969004214027063405079264807397200562002812006099201037089295002730820003075879705183269804871010730180792260194708778937690727006950829730720328736225581500538050060708043055000255909750704706360009500005320023200344562033930805529544648080410000740520260086913107990200706674623400118090450800460808011599107870909108240660900959078538081072026486800237083028904174640583420073605606106786044901170023808007040026417848393933001830065004007673962002761850007076793027170905070087537048689050048913626065602394535197006359961920062284240049247954055207060053051806304513077679905005093566406007918038645994077007297968976201475700547925659389317066036020302566004068095880987609580431700340589180664068584960060361379705034270696078801693473000324546028058000975233065792666063963787750049740801007080900442909036417509000000805050600099707070071200907390305600009556749002826064000910905079000706648992558339758052324005609458000931065209007658092006108800750971080008261907909439692582773906030987000439003070339085832220905933049106190006070047800985037942000606875898020637452652891603700109098100010630993285493480041867227665696000520760620507990007029608040099056043909310057092007081118700605000182808738005440058904053256608004101295191629500003010576594060400066090069885404987126885003467538790095080172005523037347006940303291096899500379136919051300008605118129009000900549836054908068004050871738007374009956518741683979400250846228899360298002978023701906902926903830469067607907007868151003739046043807176980073700710706681173369040078500420057059057500150163100605068020596478876085123304940309180731748613698194069079900478600860050201006880037749170050456139014347740004830028318000692984358055906550548050000948271704360867023298097441910909180906047032919888790023997939281066724809090538008854050275150072203668001147464041775740970804269509916275943169601633865043535889905348008381000820748900005865076009627113207122979500036004580082000409938909706082780082021560056883093564982400900806000205975204504600414706076506553607000796968039926300070800361900700080209400105159096206950856584765494725082101783604139809407900024529551726008087035702155239246653110000740346020030100025120022345248529990071609410519155060850374480709710500099070765450640800506900767000165775005673084080980027270642443361969800906079026841105850520905672397205152426030740198980060055421900416562148047884077430746930021881356940881800708083687709667188850088684900737853069744600820729071790022475580981075900000024054008562448007590002739066495563896028195700035980047960105306184580557260057900875703388845031400050008036045726035008204005017555100232205200155500876003565903909000858708093480593109001522508807957284900009016073222910067047990841670044042009300390569350609486205400998005844016640309007430000995077150396506921405700740500303037664411757559026300227204242002054877864861049800765203360001385800031930069524810366069600330604099107299097090092874423606485095361978000053910852274100800007800676090863241252057329453932740200587809440133780070995062799030024000070951750630005909032195501006070700700082071630380440401005000082180207487878752203700093300848028867087058002877440912022552440505050451060040600000870089703642530707550190018270707050670463498890257680460532208000094899680258462100586889487288609030058558819100025490508070000816003073762498608487507731070684040584673924965020800090824002600025185162000577201185647690028927187017050767560423641062497506908060491103128953607011995603600067688070402004509898548770999604070706915847093075203310889280068625308009068090207893766965100010968600000100829954161676816500402224700509661792926968007070483230992980283273405067277893899000400020283405009064908002907372040058320560890710055930040260591700206071189807703605008001616590081647008070232570757990925366363003809609086256082746000400590038394757890920288164145319600769952642675306077300001448083580908098904582803420307804609498968050623080707115087807066093018040070971057998469555573048521050975820009800003877009116142966798480354960740710583000902090019204196089002962320806905403983050504546699300074305114650645320019099066079038039958064764860776007056690603010030405290560895231908782087870005150109462080557684957073030449004977750805390889481450735690900964100538009073189777888096807793074090029580653015875446962108254080000580200357072578058486009536100554987280003001000039890536406620238800900415081013239702380868377021019007000350694230008044570000760297007044600298220698000978041173602001565070724624807056648851850800672611730901007890304009054650589457605005034300508302908150007547200578490860927100665006032654030001039738009038577990956020087406098390109097175082465405330741371130366581906286800105872000028032005000945038609860367109105088306405102055064978640300061884008444291201000915810501800907088186821008906834640602985377953063324787410475300088800200463856227607958010060060600220004880907778125031980895701439388699184080225298509790062210153078964924307802240603203020019207779669182540432671003040091002929770080076049400041906699689422785000042020034406304055000903171796738322106250694040596381358001830000448675822160768590005870047101738849265078067301730088673625086007383006839946363004254088268791995606306483028630160239650085067018500090070188126735733007336086604095009730533402061700573086988603313027070201420717361160150442744067008462000603086982065700506000520850053656294705808020937923090056070619100730604009939645411902901015301496688680152163310033480700171020900090053949765261480502600606332135000024453620843090396994108049804808770300069054008108406330803032078797992700596000550030306500265605499100090986797283500003612814524159488672488927604305600309170465906679200790470410005317980008409030960600898750087405091020004300792003067000039074166918550060103169017307058093807604961899480000221000502075006000065559007009949279560002815016004004970026485938875690007021003240969644505757988930339820439354040600075798709200389770791513708902107717110176482743009369996803383747020509749085402768586885480553885401478507560301189069789931690040530350920689603509001601687858908388250086523071096100504769650031756050203556007230009079055096266102306000540038320440013982187699000530736200500089570808551136500014109895948000952480088658286909477238119042045687105143700207907567409586830000087220042660020089005064047963050068967600609791005080200880065001007298740950052985508549088900608905069950000052670011689851806549005979724559638406270078580961900837830730800505831137659884070498000907058926824220388440085175190077201306290460200090909222008707438020876000386003032015707037097307994000169323081728207901061850005085090818753033810785954083047638630090218062767527599935078000072410089596001679087274006808008696580027060972966027035778083848557003227910045600754042029527150861690807862044059740247455290000549302762580354828030031470740090008440074670400814263500398430793643000067320080702377380905089070836003080107070247240857208202121159050056705446420553124869650881292505186152950890507593990000751012150740308400066300724995599240808159775725040467231508832668008503609809408007630882170567830804396050905900950573352070060487609052700549081307705690004883140509000655543506868791160079610768560014023600459180105067286409727960249035557080070808034109927966014300076300063704237100385800437001275736030070405933003002395007285707000607471850700532750003828051354060804298038021089086617163570713790707200229009947565500000963306090537028041989126770735490349495570891590549783009000862007933332293677334687606018490903750907856990716070952764507170539497530107937958797097130300757000902906605526270007898875704966908310775988876343061843437970086020905980893472870090735601012000170127868045000300901005233470045010600400009856737380071306800060505200730867007739609815506805000084706471987227154644567296055005793748009789560020802984529050507002927360010825209075000040245330031379340332070374023235074647460272910746772005000630220690876405806697479530194539098629090770087513540590889504845304619090771398664496695079636700729068674100235873069532400599073809349021456730901450580777001445333459404740995473803800630978475876710279376456400420985487300040091647090615036140700840860468206296011880874000607629668093003422606408964355699048374797050640007730190281333809050807017072150378840840803707754000002280680609008599310290526047890877516071399604301020083656062780355805015600500080002210229790860385018445873036053180667790000419228203084790030551526936782802796015438255984088788023250010918941615531935211300065049195940971820000380980520437300234939990405103067130484000794150000569651985056003680764929083800418900102127009160167859426209370045609920300000946809392905866004102004186020030894085010070580598033050001230090690899803510079690800477062260020317603219853005085090770902975047294859648019005106420177015020900060005702725207266410570875251632487020800108206605009541575001406905959047570239434840376003609051870094068996862048080890026064072689286520534134090049841103430938861834380010377840139703708743405600200209575600499850843887000694898502005309070515200590055608069730000800107078047073955300208540709076670727810508009408103938532109084010709302654640845701503300800322085475150419810631065390008165804005096736501008009085208053042607504420472277658011236669060488068848700144742088215100934107000708013395497000757121590069030480818830005361700309805003838700179069630975900091567802405971004907601673330330962720123084888697602980908080907177717132528822914208094728080065083092043639360040493847005041508908264310115727720997034880429849470006322107498807906915850402484039417108603005681691500807871871002828348490000549074058116955109800678000400709096731118391600026345058033808382009460429408401797009005783430095694502008059017984483200120830042610082900980550063440251940599029370900050976450580400500608700046350946788544475030770095922045945120783087660766957083802499803201700002455382384006496009330399670488200720220031029644705060852608020197380330507200604092883908755041361500409050068063900468079759970057860066080870580760170106873660017040830340049709617229523759351915077580931290675782903589003909064077048307620196085405000862285336572499710359006160487074092030004880577007080070669500140524815603915674889592107960080332500095355358081878625080368040049900280740930000804410080265658467690575625086344746870035294540880010500400905639828997370209311356550030300572770848917313527570030151940072755770057593406037905041990000043007209460239957001126080000320700807820627050303090997006601060338505093562345010329692916969530230503033005793607166579079050040082365015058510924073090208502828800007587001679630080304002308194686733163669060004090342418200990063801060040020908062058747548806965431000619033393909011082690018980020829822907404263377624679636050205465180995076858920973280370003210430076000308407284300059271085084090440483611438991404807403086658080594055107627000950104772825062901418927090530455701309340100710088981603400904230001647150149700752878550086071640019591809228499045075610381887043810251059307030949005408101122100580160660207958500684080098890555407014200002007758698946807905707484070551800107462200402207196060010950008964011690202175078840276304606036208067870919612335561397469720004861093002380820069928845480786110807742400780790903006609802485480800708430209200776000282709609005046600510298028290007507607530088900835030730028090645083100070603516828078266294434069879927994509704104802002808456010373010504046901080719016389838032626060981981005470909072300713943706130089596409578404367702980169005306878001123000600058015309314418252200382370540506953830747431759429470380929994000408347641189556607370808700800003407812514062300408700840540507700150559085506007397050058808038863805000061873088580296303471541015762704803538040311039080689029820064023830979664778010023060701069025397070002090050900240692089010272599905307022410040634700908995278003699403641092789216500728109086545400660361190007907260818083079805090336300012250677291230720057275090580527003015280962514782023095093200990509006140072102600500349909579086407711007327000703700027093700351810128411889572080807014012403998577407639942052841780000261405079047055709008201099007806600909700700883660357605990004098674910001385793315800900788013085100711190506554807550509231080200636275951988748902903064716645437908601008790030490062458038435507505017490001270054936604066003605252308284770798006938369530099042909796064095940906575871459306420802000673170990409667901086954738393025094951580005027457060013449396769352604050813422206858910750189027500001095887825048600042198340658001939852028152900212180120020818350943290500203506250670284679856005600996320499861086918833362370901265941964601678988915008377049898802006409880220640045793206001503678706904868008079807147583708296005380450024823937903030800090302104695704040501256840992160209094733305505120710300105500003006090730324006006068309426200906703036500650169070040009241068505340473500369930047000508905018709006730326005078753078483178810020090036800139768003598610934005338307419000050479907240079754436785173028755008197163671382096299981420262820064267085690706285480450440001101280029449396201098222745142079031501800729480089142107000010092589539202060500063640395070489902800505003001005668098521000507901100423080390521228738240778990921090086131604941130002510900068480000794979090897009074614311310026349036499879087250004933671006794001042419094029909848801702340050955168276085665520002606998604783920220170703778554683568076623500000300569060481006993915804905305086364730839000732539020432936255016079761458104485008815974361997362101078084206775595649842000150080390882707900198376686703207061530180002002056574318459002090453000016210081607050590618974876003786886005000000476224007414775420511559030890398067048480855054900099558673905103915662434507168552463528300805080280450790071178700552000203481703805530003104822786748209059075830104390006016218959292830256047014979040509358079070351472170102039091046697406561756383000804007309020528727063662960342408977278609503447160951083196088662802823090077241406007302004480927057483301666292069907180080080914506728310800001775527940000894041653758065933501844860096810655465508411570600060800950029090212373200286093522855670164006409502444020009526896003602420005276003249100703508473090069020006098660972005505509515829020503932025884069850604058461920086286079108003301540600070301860711304300040064320609891209170040097060160947040766960080294047088810064163360699200684099430021786490018008249000898084343959320600697930254604780015026800790087002670722964098060006000060609183050040683980030005961874282536087020006170723007897309664438074080398975399073302524200300027008049540008970835708189740964005490099467387430706070080566108069000683002404309001678616090006900009003564498785408496008589550620627909526243549862507877100909157070480559599881790078085307699317937109762918306605836571013730376390619970042060690294034036609006218060587908555071900009000559150910020208028057084030300476311726103188903630155342333580651403600375835822500989044548540008300474909704950063036400007006080069874851900065026009508730054906301104006570168967016203900490463704300518424810009700315038020201253080007209685993801778609096290658050219088698057017820309210486800759180087700282009770400015050065392631360060650596240168988670592509092893063480349981630286658705103390930440241781030039000564958978960279800898482017994997067664990052800169920003006357894905046380208378294240036847555238505267090036700543823820234040330700100819884402028990903554829006718096070880908714010309617087887000620953834340279010586837630700632008105112071898442663783057267086780703867150518077650639349589100650078196055700401480780000958000288468944006280870145090967710455733054773102328890948800614075088001030006035420005560561506300956009717304900654250000010905995991501000520274847974298093050000208459577085930086290056105495009206836009668800674954252060923083858030419542407730030939012008085014298344086387083004200070007818033464190006930478889688798596900562814810809000407906955077444800000003085760354116490350109406602105307459090701924543044809186047301000331038802028002280008756607936012076460620514890006840000859750587430997008200706053788059768873650999098000030020323326490550400909870897393500306058406600967401050689034980007400200230058037011590508567090489780607833805035060507040630000719092610353740030271167088712910877959094970609981695308009895880915265096200806403010083779837210091564400007226132276028740125600001700000800386383448504461050801878500920902002959504905003600003568585680040042219079060333990048994775088501705027007500862200411800479050040081707090143821260800254540874100433966261000646300242064007688038110359761973003610531380107663824051872586201770507036778206100091498466412009402986986357804122000998003710074862007578922070000609212591000200270500704705079088676518508075771590992053871527011440597400009103697447597006673020949708466163170009652610019308302060004874994780579076940005999588058908000000600170889009491401004069504695660633000776902775284730305705878270925503000746543864360585714093606307650073005075793578702820559040330381450074030700248320664028070932878000685534967400052086010108300200966680012038090538615699201009750670404680086520037237380993772605777089060807198428903100801003094664887064700049758584650740723125703993000653040447209608786004430300306060309532040471755900743030907852809069490871060000039671705000004805600903802379504503540168378884084076091800928008026929895483968143468080096898119252601087903078117019005740080962000305405405854044010196861759701212190599200900901600776679650686886000700202930092609370034805005000527620030590691031040400178505730020871547400089330005060028595092724005050936904297067060863350509979599800054104706005698909817509808570060903895188021960458600735605558800930889979843007301000385224406085876405597950012337727370965360958482603009100887319788159335147657071103048795708800848968633500893848405062848742060094070610490271790500890072040039011668070887380500885003528047022001060006265168085104607225015786000950124013895307804820500020710299005598082647879667800127160007446630340920101000088796050975027750050768099020529266600000071659009003099056006706005205099080343042101036000307935046051280656306452027001637070026896098762940224390880009304007305690054979341790650100169424080020771090968060876450009305920368416791935022031806949334024815510964905684870850282181086572684801221000004450806585009809103305690493609200906023497034167105674166900067824014001302303408715043564500409084113983542899001309504462053051290032883503314177010697750106000173744010109804130579930809968057960759573090637059809006730077010356057067920072939014236797089060640775872092169063152480805002909028180284189048031779016871660260300380086827064810730301386758008843186443030890709004400509066098920590226848306670470553090057725602634499460979071580109081994059015691908367405109040062903830002410116048308032804580075001228101679507050681040884626706028457050093701967620373805703809928989029630080686009657720380503679245387999779969840979060582640693993088937706001096864808896474728496571070530055760502600904700509029316159055560840803000007980274890848040007467770453960140307900050862006618989036077401887603604033629159590090180838710230370735674008077910626010137520544908094435768587567186059703709027480600005660829079625000794043000710600003892854412490338600070863498526648810230569936058096532000493066600068267745500780808019370709197089009704010840531340041798647009405099008583545916000551873330658920224892422405603080030307051505356034409887306902700700333293505109076705560085207600469102643003700008937499220993823947004740009760286053598508980800128060600800080507286706080023807626400980350101053047073002388274069740700716335866849980500220240969309134280617111860080295405657003560060101000884809000915540095008470031500061527048870820505250300495000788456164697006900803108840020090906988720388128693150031760080893880411005020480533402100780507070007754020272083046740007750358020028909690204159881098930427923800059109490803444400797700053001000503235813717230005988008584062009011204979008740390207380400583602021096709359907393572981051903920680921030024028303085080880803984978061700001740005039070149651631702900007800705355092540009680760307007100579109470541222006094035001532478149070159000320940382097904870910366318008070483409396603152350600386050504600728106187841930776657790810263312702167430039590680009050603000005002009900099050067835463000889000027731928140471928887147790800593863430603408818514280700600360036430985005709005004756328191006390870105007740510970400141242001979275050401900048079067650302210943050985201011870914080480955900090506733382560698073284658080250634905907007069047801706730545050800406938689610026080897420370206964087330399052607760339006005549404341630360050006044860006870648006093089950554996550802072670352028890354590641082095002382259128016850084576090054590804098600076040908190807400751406067640530487030020191836500043893025902004905055578410500500078992120190010727860655590020857207928024063209601273016009376806467506966769311516803051090090997166968900560007956540848481559096097560055739358575065067018890066000002058169509775198001958300018160576834049500717080600460911983209060998168680903790013065463230600066500706770707205502043050536258967080007976033786000000710700001300693560200030140180285010077892945344565078967368874029989960780004009898063000422385762837080950370586905900894060079970000000407807095870469069700099657066090599750706880070095205838012003009096300090056201807015080040079302316300586776000510061590083950170630212727035589753003071080200605002960120695306058790674420007948299090305003054966591080309700060039857005997010503009097720467073407428627545398826025390584409083004006369700422063001661900008036291900509500900048800039067230196052966070065250595498794830023003090008900604315086267794197039610200068269030020672485876007975049550078200686602074000300660064855009330526750656537510208923583054033883750067649500550071985098040900010600386790055992442600000470608005401650620537058300105080606056887031979008130750664009702099001460345420083647406709599486230708940900056020800489670688400609704200900803720058894277244027360169270009800606022905007508023076177804730041560987001000990880036089080453505963219849449519021081000670195940664919056070700878160448069603067046083574040750400626788003550525226251049803959775665083009156200600908498022092930258305023302084182733800627106007590035059775404065075850410980165058518107899868048516465802021089046759340700437900960224801270077256303551994064315264507380090002030000430505080099511227861505000500821000380478381430890494628060010753800145031903015002706009870080123722800788804888599060803508700012076003200100089090981057780420830008262629919705340027006095008360005979898398206880396104651144000963790068078693009066208059815008307000070271025000069692209444989180483783005030010401006037401969666454752646800015008050017410002685091670379752998043406060665170067987825541102015268300532264456300002955610270097851060321303069889917007890021068800872350790897490065093600197303323259330809909047879700073311000164300391068581077100700061054080236408773500168029003028546847770506002170308016701596020002704938099880109990690706894178069980041680299607090029306026975716660622970700887809984186690860578013160990750005100100990198600802100203683911315631908700020492666481079740807790631045002080856011647203456019808534905348068427592360877106466384010632690740095510804003390081035318784480417838265890945900202554505295598630010626507440723576897670850706991037004096376981120620231501380019169409465513052007828207085789923007521927575009509620048130050029808050604807053789947036678930835157900210203304170460096102440800073091089000940697842760401570244569094700682644788407095089200030344129903107406480797000594087967128806500954206686970000007703304760379074009590830508901080041421669348000000730047867030840060959226004067320795067500969010483008964200282600800140020044050013309306800410607085769075531556481070080960096300803484333069853080931840298109305065800370973454470997302603979230680006000420542937161580650458709402361018817509902704494067290200509818649779567390056246040239040757750407512287708024200579026093557740700136318506747023690796989812005391900073005419319090019244406973717805000400000403006070104406140020097400540503758066008020979640030083000311248040005427579359054901924871903405764080680000140339406080751462010320008503800600686529214060906915886608368874873724094642004288689419064580783702058616955263525800100931515007196500409000089039750172804719661060908976550870323008616070126816405211800688660687060118404208054800007000210954000099174500846043100659019064803600629501033107290795896673400040993467887155797280600992077820957500910970640201004002805801060461081757720881973939207848884500023800404656707274772305016022862001049731074715500808702308266995037448397200579001503690654080105927704069023278792730970097266088511000200908632040220006394008627229087087531085860040405274927057130576680773060040600093390661922500030894129007014507580280559308280256300000608200033046949007203900904001936895326400005629341775003384220491129049581684040709480743784809040134097011922108556024260311792857018217000073800908509906004690200930675545700188003590942923407133425681385563209080018796039099056706006049678059680091687740000080726352055138608671755076005100491705840830670350210870757010182069063085031199355620459848900991085742016060186000984854600398944030573587809000705484606217209452868018849270784370550807090007950000264900678077007709392000378057201305059300108350721296611180369924216940180156804099097462801000792107057815019691004496866871401003190708092300608730900990505805420022749207006903924331504268079820901396032504040550337821780806070040240648030000683086400062600583089216600489030828600820080960295638030069299473600816807662040480464350350290038727780560004130003119050520475265794480960732700742662000000284400500097860909939923003100397050774007540098437798480787500051576301904908020985708464882405050639168980214409697064076900027941280105506007089330807038492074619087190007930408479330072090070000343503371607017094896120094087400640128840070703500859524678790050072013100804592510027790543959086800004038110020553702385689380187690005072073809080690170209946410037801093685663800051819620068007967900064205095983648501417100268006187000018048604065798570777970215082846260124307627075545360077354307040520017046703104015996760911098105513940228569137677275900064829620780959071740348664400954353164000067708408289599909860007960950530062508108203609001808006106006591904248005696762549701060881019792034053747900500079902373823098060475060739479946241097004710003850047418142297709000309318190096454027731098421308510045909308309403775009030097020170603105300897487060684950091888545342097800001119049789593244696075008299805040388707302304095800000403169200950059047540079608739780820214300599049000558007907601746030669919904005930595110047405969179914309070100600073622959841700708800980005909788071187170060006402020390077527000050061226740007093600309390820024178706560089800486060286765073557086120404930908093738079354022064094060050396069404904000507752960090164805073868630509308069283000408000004960020898260377060300809144780091400678185078025771838010469516726798607720041655129590029069218008694058078010450705416008396688500950477000016400812908529800900290799590004975204030050370864913034300020280757546409450204129878892076709570003285792800963082500670250057789319735885395944719000000000807480019690100672000746845700473960020700909006956885967005908200960590088538052205069800518030189417155320046285047000480776066943076713707705010006869464490477080093009010576101970703798643346007761798239418003046694252901109007202534903060980003098309795101704680018601507722093987695895015080480620100130793007609209040090830469236040792199021087268809078869900388290072003309000006041040780258989616500091650798988658015286645794003669108270975530063082333745688670265809802992988090778867908004000650634696035400908276060000645040206005070420748994792707904896306139104087407003004892029100208148018047365006530031709841170032010632769305498590082683168640878665003050990000812050070720014004442800790088009730078976706001809002381000090100717103639024004327469061440728547999735687347404099120143190202788004196040640947593905074234268858669577070507909880006902006076000203009013036220736079667363973801662080020819207701868730618332406824800476870765210900070407979804816077828303590004415640751186029192090690570730732889900946043096544098703069459880650058970009001005789076156502515008901860691080794567009874900237017606687090436026997771008553378209710415806235825617190795350742901515630440823683451100726700019210002681507287175788697329501540700470407870018820531307500993567969046070090839803046170030430490322829920001702030202207470010790029960757009760527077066984035565574468896941809990093700025690458344009046529766343020548957707830605082483060908501093150902064005809106105835800010904577010864000186067888379797729025480650890770064039003994810409190345130043045359088489950086707910116019278540920506180666301030870400064020614000460053075432750194700787050200983615042007000079047920606805504623010900870901365508890076260776910097851690968090035308770130023279805409865608580816504089021020852045028603809310609769067069050022409555708020981068438097030920837750201005770503000649451450793690596419064399005512670407163025020207409428380848071327930907290787104064830800806426002502346605555597020087338800886798000379507031745755008433089703090082546508294950067879141515590100009462850096808908006806804939173900003550065809903986384300870010750180025916903690940005262630707543800013013740034129203546079077007998015884090737067907500960251751000189000004900900060080839664907904600507367097899006170780790254631922290929220844026622186032861128593980820102905990859102624840101421908505685000608309048607040862015663370045070107305805700302043583858789330077004985007509010010876409730010008493998707850188836600011000040773756490509804061190070076083775302941888916380072397747072915877599302750868080947817033300000090903094910400080500933802900646050381646500258880390930003812820888618085906062900839050477537600000437704724078820938099030049793090963955037070073436446876479779551160739072695078087070756470649002063000090578798502485055690078160913014099517098982228072356718790184994082408649073076120524088891148539582199490406885524577751789608977095800347518306803659470986096510809904700903127090750243060089287880035730017000020540907640050307000303808060229099650293260407988488522656007050056946013270040807060563677350927099902680607314000013890984328788207850099000950210314385162390068970038090225072505605906190071087095978027010489053070707887470601096888004550524000400908016738970070040958048608508070555693536625701578418802697240040674830000280300053320279339317983343368900862869377006458000757204140808998029845087806071003089174007779340599537159000713787300006394206948600643907002805073471788109000620584801207684602139155808053515030867780026764624547007484071903010488608701199909270090868240984801518094999206211710007300879001601457600007045858296140086261407001995040625417070602183540667066573366908372029778894602707179873558170683090054071407338080030098615200044630265521574321702906170609639130566277057876281720984276290772279701892460060135200949386219014090002877052007090849500294359074902043937300929607805650000158540001115154390409003543950635971580444587940069637998668867079990006080788034410076003515744378700679019009750881034001354942009820547011478226004006647989860062076930349900828312000470008623000970925466009699600104008417006042870060848954409600000192996051681360603029839280728607009752620015870910739703860804101065400192280216010328010504680608004770014998001407650578508878500684708807590888999860800890608708279680420690116480003500759200543297805323027817360607250090850951020140023871435001775269017179090888997003160080900090129720673786048095860790861530940280447310099005976065294578969241100423
