11541115391153711535115331153111529115271152511523115211151911517115151151311511115091150711505115031150111499114971149511493114911148911487114851148311481114791147711475114731147111469114671146511463114611145911457114551145311451114491144711445114431144111439114371143511433114311142911427114251142311421114191141711415114131141111409114071140511403114011139911397113951139311391113891138711385113831138111379113771137511373113711136911367113651136311361113591135711355113531135111349113471134511343113411133911337113351133311331113291132711325113231132111319113171131511313113111130911307113051130311301112991129711295112931129111289112871128511283112811127911277112751127311271112691126711265112631126111259112571125511253112511124911247112451124311241112391123711235112331123111229112271122511223112211121911217112151121311211112091120711205112031120111199111971119511193111911118911187111851118311181111791117711175111731117111169111671116511163111611115911157111551115311151111491114711145111431114111139111371113511133111311112911127111251112311121111191111711115111131111111109111071110511103111011109911097110951109311091110891108711085110831108111079110771107511073110711106911067110651106311061110591105711055110531105111049110471104511043110411103911037110351103311031110291102711025110231102111019110171101511013110111100911007110051100311001109991099710995109931099110989109871098510983109811097910977109751097310971109691096710965109631096110959109571095510953109511094910947109451094310941109391093710935109331093110929109271092510923109211091910917109151091310911109091090710905109031090110899108971089510893108911088910887108851088310881108791087710875108731087110869108671086510863108611085910857108551085310851108491084710845108431084110839108371083510833108311082910827108251082310821108191081710815108131081110809108071080510803108011079910797107951079310791107891078710785107831078110779107771077510773107711076910767107651076310761107591075710755107531075110749107471074510743107411073910737107351073310731107291072710725107231072110719107171071510713107111070910707107051070310701106991069710695106931069110689106871068510683106811067910677106751067310671106691066710665106631066110659106571065510653106511064910647106451064310641106391063710635106331063110629106271062510623106211061910617106151061310611106091060710605106031060110599105971059510593105911058910587105851058310581105791057710575105731057110569105671056510563105611055910557105551055310551105491054710545105431054110539105371053510533105311052910527105251052310521105191051710515105131051110509105071050510503105011049910497104951049310491104891048710485104831048110479104771047510473104711046910467104651046310461104591045710455104531045110449104471044510443104411043910437104351043310431104291042710425104231042110419104171041510413104111040910407104051040310401103991039710395103931039110389103871038510383103811037910377103751037310371103691036710365103631036110359103571035510353103511034910347103451034310341103391033710335103331033110329103271032510323103211031910317103151031310311103091030710305103031030110299102971029510293102911028910287102851028310281102791027710275102731027110269102671026510263102611025910257102551025310251102491024710245102431024110239102371023510233102311022910227102251022310221102191021710215102131021110209102071020510203102011019910197101951019310191101891018710185101831018110179101771017510173101711016910167101651016310161101591015710155101531015110149101471014510143101411013910137101351013310131101291012710125101231012110119101171011510113101111010910107101051010310101100991009710095100931009110089100871008510083100811007910077100751007310071100691006710065100631006110059100571005510053100511004910047100451004310041100391003710035100331003110029100271002510023100211001910017100151001310011100091000710005100031000199999997999599939991998999879985998399819979997799759973997199699967996599639961995999579955995399519949994799459943994199399937993599339931992999279925992399219919991799159913991199099907990599039901989998979895989398919889988798859883988198799877987598739871986998679865986398619859985798559853985198499847984598439841983998379835983398319829982798259823982198199817981598139811980998079805980398019799979797959793979197899787978597839781977997779775977397719769976797659763976197599757975597539751974997479745974397419739973797359733973197299727972597239721971997179715971397119709970797059703970196999697969596939691968996879685968396819679967796759673967196699667966596639661965996579655965396519649964796459643964196399637963596339631962996279625962396219619961796159613961196099607960596039601959995979595959395919589958795859583958195799577957595739571956995679565956395619559955795559553955195499547954595439541953995379535953395319529952795259523952195199517951595139511950995079505950395019499949794959493949194899487948594839481947994779475947394719469946794659463946194599457945594539451944994479445944394419439943794359433943194299427942594239421941994179415941394119409940794059403940193999397939593939391938993879385938393819379937793759373937193699367936593639361935993579355935393519349934793459343934193399337933593339331932993279325932393219319931793159313931193099307930593039301929992979295929392919289928792859283928192799277927592739271926992679265926392619259925792559253925192499247924592439241923992379235923392319229922792259223922192199217921592139211920992079205920392019199919791959193919191899187918591839181917991779175917391719169916791659163916191599157915591539151914991479145914391419139913791359133913191299127912591239121911991179115911391119109910791059103910190999097909590939091908990879085908390819079907790759073907190699067906590639061905990579055905390519049904790459043904190399037903590339031902990279025902390219019901790159013901190099007900590039001899989978995899389918989898789858983898189798977897589738971896989678965896389618959895789558953895189498947894589438941893989378935893389318929892789258923892189198917891589138911890989078905890389018899889788958893889188898887888588838881887988778875887388718869886788658863886188598857885588538851884988478845884388418839883788358833883188298827882588238821881988178815881388118809880788058803880187998797879587938791878987878785878387818779877787758773877187698767876587638761875987578755875387518749874787458743874187398737873587338731872987278725872387218719871787158713871187098707870587038701869986978695869386918689868786858683868186798677867586738671866986678665866386618659865786558653865186498647864586438641863986378635863386318629862786258623862186198617861586138611860986078605860386018599859785958593859185898587858585838581857985778575857385718569856785658563856185598557855585538551854985478545854385418539853785358533853185298527852585238521851985178515851385118509850785058503850184998497849584938491848984878485848384818479847784758473847184698467846584638461845984578455845384518449844784458443844184398437843584338431842984278425842384218419841784158413841184098407840584038401839983978395839383918389838783858383838183798377837583738371836983678365836383618359835783558353835183498347834583438341833983378335833383318329832783258323832183198317831583138311830983078305830383018299829782958293829182898287828582838281827982778275827382718269826782658263826182598257825582538251824982478245824382418239823782358233823182298227822582238221821982178215821382118209820782058203820181998197819581938191818981878185818381818179817781758173817181698167816581638161815981578155815381518149814781458143814181398137813581338131812981278125812381218119811781158113811181098107810581038101809980978095809380918089808780858083808180798077807580738071806980678065806380618059805780558053805180498047804580438041803980378035803380318029802780258023802180198017801580138011800980078005800380017999799779957993799179897987798579837981797979777975797379717969796779657963796179597957795579537951794979477945794379417939793779357933793179297927792579237921791979177915791379117909790779057903790178997897789578937891788978877885788378817879787778757873787178697867786578637861785978577855785378517849784778457843784178397837783578337831782978277825782378217819781778157813781178097807780578037801779977977795779377917789778777857783778177797777777577737771776977677765776377617759775777557753775177497747774577437741773977377735773377317729772777257723772177197717771577137711770977077705770377017699769776957693769176897687768576837681767976777675767376717669766776657663766176597657765576537651764976477645764376417639763776357633763176297627762576237621761976177615761376117609760776057603760175997597759575937591758975877585758375817579757775757573757175697567756575637561755975577555755375517549754775457543754175397537753575337531752975277525752375217519751775157513751175097507750575037501749974977495749374917489748774857483748174797477747574737471746974677465746374617459745774557453745174497447744574437441743974377435743374317429742774257423742174197417741574137411740974077405740374017399739773957393739173897387738573837381737973777375737373717369736773657363736173597357735573537351734973477345734373417339733773357333733173297327732573237321731973177315731373117309730773057303730172997297729572937291728972877285728372817279727772757273727172697267726572637261725972577255725372517249724772457243724172397237723572337231722972277225722372217219721772157213721172097207720572037201719971977195719371917189718771857183718171797177717571737171716971677165716371617159715771557153715171497147714571437141713971377135713371317129712771257123712171197117711571137111710971077105710371017099709770957093709170897087708570837081707970777075707370717069706770657063706170597057705570537051704970477045704370417039703770357033703170297027702570237021701970177015701370117009700770057003700169996997699569936991698969876985698369816979697769756973697169696967696569636961695969576955695369516949694769456943694169396937693569336931692969276925692369216919691769156913691169096907690569036901689968976895689368916889688768856883688168796877687568736871686968676865686368616859685768556853685168496847684568436841683968376835683368316829682768256823682168196817681568136811680968076805680368016799679767956793679167896787678567836781677967776775677367716769676767656763676167596757675567536751674967476745674367416739673767356733673167296727672567236721671967176715671367116709670767056703670166996697669566936691668966876685668366816679667766756673667166696667666566636661665966576655665366516649664766456643664166396637663566336631662966276625662366216619661766156613661166096607660566036601659965976595659365916589658765856583658165796577657565736571656965676565656365616559655765556553655165496547654565436541653965376535653365316529652765256523652165196517651565136511650965076505650365016499649764956493649164896487648564836481647964776475647364716469646764656463646164596457645564536451644964476445644364416439643764356433643164296427642564236421641964176415641364116409640764056403640163996397639563936391638963876385638363816379637763756373637163696367636563636361635963576355635363516349634763456343634163396337633563336331632963276325632363216319631763156313631163096307630563036301629962976295629362916289628762856283628162796277627562736271626962676265626362616259625762556253625162496247624562436241623962376235623362316229622762256223622162196217621562136211620962076205620362016199619761956193619161896187618561836181617961776175617361716169616761656163616161596157615561536151614961476145614361416139613761356133613161296127612561236121611961176115611361116109610761056103610160996097609560936091608960876085608360816079607760756073607160696067606560636061605960576055605360516049604760456043604160396037603560336031602960276025602360216019601760156013601160096007600560036001599959975995599359915989598759855983598159795977597559735971596959675965596359615959595759555953595159495947594559435941593959375935593359315929592759255923592159195917591559135911590959075905590359015899589758955893589158895887588558835881587958775875587358715869586758655863586158595857585558535851584958475845584358415839583758355833583158295827582558235821581958175815581358115809580758055803580157995797579557935791578957875785578357815779577757755773577157695767576557635761575957575755575357515749574757455743574157395737573557335731572957275725572357215719571757155713571157095707570557035701569956975695569356915689568756855683568156795677567556735671566956675665566356615659565756555653565156495647564556435641563956375635563356315629562756255623562156195617561556135611560956075605560356015599559755955593559155895587558555835581557955775575557355715569556755655563556155595557555555535551554955475545554355415539553755355533553155295527552555235521551955175515551355115509550755055503550154995497549554935491548954875485548354815479547754755473547154695467546554635461545954575455545354515449544754455443544154395437543554335431542954275425542354215419541754155413541154095407540554035401539953975395539353915389538753855383538153795377537553735371536953675365536353615359535753555353535153495347534553435341533953375335533353315329532753255323532153195317531553135311530953075305530353015299529752955293529152895287528552835281527952775275527352715269526752655263526152595257525552535251524952475245524352415239523752355233523152295227522552235221521952175215521352115209520752055203520151995197519551935191518951875185518351815179517751755173517151695167516551635161515951575155515351515149514751455143514151395137513551335131512951275125512351215119511751155113511151095107510551035101509950975095509350915089508750855083508150795077507550735071506950675065506350615059505750555053505150495047504550435041503950375035503350315029502750255023502150195017501550135011500950075005500350014999499749954993499149894987498549834981497949774975497349714969496749654963496149594957495549534951494949474945494349414939493749354933493149294927492549234921491949174915491349114909490749054903490148994897489548934891488948874885488348814879487748754873487148694867486548634861485948574855485348514849484748454843484148394837483548334831482948274825482348214819481748154813481148094807480548034801479947974795479347914789478747854783478147794777477547734771476947674765476347614759475747554753475147494747474547434741473947374735473347314729472747254723472147194717471547134711470947074705470347014699469746954693469146894687468546834681467946774675467346714669466746654663466146594657465546534651464946474645464346414639463746354633463146294627462546234621461946174615461346114609460746054603460145994597459545934591458945874585458345814579457745754573457145694567456545634561455945574555455345514549454745454543454145394537453545334531452945274525452345214519451745154513451145094507450545034501449944974495449344914489448744854483448144794477447544734471446944674465446344614459445744554453445144494447444544434441443944374435443344314429442744254423442144194417441544134411440944074405440344014399439743954393439143894387438543834381437943774375437343714369436743654363436143594357435543534351434943474345434343414339433743354333433143294327432543234321431943174315431343114309430743054303430142994297429542934291428942874285428342814279427742754273427142694267426542634261425942574255425342514249424742454243424142394237423542334231422942274225422342214219421742154213421142094207420542034201419941974195419341914189418741854183418141794177417541734171416941674165416341614159415741554153415141494147414541434141413941374135413341314129412741254123412141194117411541134111410941074105410341014099409740954093409140894087408540834081407940774075407340714069406740654063406140594057405540534051404940474045404340414039403740354033403140294027402540234021401940174015401340114009400740054003400139993997399539933991398939873985398339813979397739753973397139693967396539633961395939573955395339513949394739453943394139393937393539333931392939273925392339213919391739153913391139093907390539033901389938973895389338913889388738853883388138793877387538733871386938673865386338613859385738553853385138493847384538433841383938373835383338313829382738253823382138193817381538133811380938073805380338013799379737953793379137893787378537833781377937773775377337713769376737653763376137593757375537533751374937473745374337413739373737353733373137293727372537233721371937173715371337113709370737053703370136993697369536933691368936873685368336813679367736753673367136693667366536633661365936573655365336513649364736453643364136393637363536333631362936273625362336213619361736153613361136093607360536033601359935973595359335913589358735853583358135793577357535733571356935673565356335613559355735553553355135493547354535433541353935373535353335313529352735253523352135193517351535133511350935073505350335013499349734953493349134893487348534833481347934773475347334713469346734653463346134593457345534533451344934473445344334413439343734353433343134293427342534233421341934173415341334113409340734053403340133993397339533933391338933873385338333813379337733753373337133693367336533633361335933573355335333513349334733453343334133393337333533333331332933273325332333213319331733153313331133093307330533033301329932973295329332913289328732853283328132793277327532733271326932673265326332613259325732553253325132493247324532433241323932373235323332313229322732253223322132193217321532133211320932073205320332013199319731953193319131893187318531833181317931773175317331713169316731653163316131593157315531533151314931473145314331413139313731353133313131293127312531233121311931173115311331113109310731053103310130993097309530933091308930873085308330813079307730753073307130693067306530633061305930573055305330513049304730453043304130393037303530333031302930273025302330213019301730153013301130093007300530033001299929972995299329912989298729852983298129792977297529732971296929672965296329612959295729552953295129492947294529432941293929372935293329312929292729252923292129192917291529132911290929072905290329012899289728952893289128892887288528832881287928772875287328712869286728652863286128592857285528532851284928472845284328412839283728352833283128292827282528232821281928172815281328112809280728052803280127992797279527932791278927872785278327812779277727752773277127692767276527632761275927572755275327512749274727452743274127392737273527332731272927272725272327212719271727152713271127092707270527032701269926972695269326912689268726852683268126792677267526732671266926672665266326612659265726552653265126492647264526432641263926372635263326312629262726252623262126192617261526132611260926072605260326012599259725952593259125892587258525832581257925772575257325712569256725652563256125592557255525532551254925472545254325412539253725352533253125292527252525232521251925172515251325112509250725052503250124992497249524932491248924872485248324812479247724752473247124692467246524632461245924572455245324512449244724452443244124392437243524332431242924272425242324212419241724152413241124092407240524032401239923972395239323912389238723852383238123792377237523732371236923672365236323612359235723552353235123492347234523432341233923372335233323312329232723252323232123192317231523132311230923072305230323012299229722952293229122892287228522832281227922772275227322712269226722652263226122592257225522532251224922472245224322412239223722352233223122292227222522232221221922172215221322112209220722052203220121992197219521932191218921872185218321812179217721752173217121692167216521632161215921572155215321512149214721452143214121392137213521332131212921272125212321212119211721152113211121092107210521032101209920972095209320912089208720852083208120792077207520732071206920672065206320612059205720552053205120492047204520432041203920372035203320312029202720252023202120192017201520132011200920072005200320011999199719951993199119891987198519831981197919771975197319711969196719651963196119591957195519531951194919471945194319411939193719351933193119291927192519231921191919171915191319111909190719051903190118991897189518931891188918871885188318811879187718751873187118691867186518631861185918571855185318511849184718451843184118391837183518331831182918271825182318211819181718151813181118091807180518031801179917971795179317911789178717851783178117791777177517731771176917671765176317611759175717551753175117491747174517431741173917371735173317311729172717251723172117191717171517131711170917071705170317011699169716951693169116891687168516831681167916771675167316711669166716651663166116591657165516531651164916471645164316411639163716351633163116291627162516231621161916171615161316111609160716051603160115991597159515931591158915871585158315811579157715751573157115691567156515631561155915571555155315511549154715451543154115391537153515331531152915271525152315211519151715151513151115091507150515031501149914971495149314911489148714851483148114791477147514731471146914671465146314611459145714551453145114491447144514431441143914371435143314311429142714251423142114191417141514131411140914071405140314011399139713951393139113891387138513831381137913771375137313711369136713651363136113591357135513531351134913471345134313411339133713351333133113291327132513231321131913171315131313111309130713051303130112991297129512931291128912871285128312811279127712751273127112691267126512631261125912571255125312511249124712451243124112391237123512331231122912271225122312211219121712151213121112091207120512031201119911971195119311911189118711851183118111791177117511731171116911671165116311611159115711551153115111491147114511431141113911371135113311311129112711251123112111191117111511131111110911071105110311011099109710951093109110891087108510831081107910771075107310711069106710651063106110591057105510531051104910471045104310411039103710351033103110291027102510231021101910171015101310111009100710051003100199999799599399198998798598398197997797597397196996796596396195995795595395194994794594394193993793593393192992792592392191991791591391190990790590390189989789589389188988788588388187987787587387186986786586386185985785585385184984784584384183983783583383182982782582382181981781581381180980780580380179979779579379178978778578378177977777577377176976776576376175975775575375174974774574374173973773573373172972772572372171971771571371170970770570370169969769569369168968768568368167967767567367166966766566366165965765565365164964764564364163963763563363162962762562362161961761561361160960760560360159959759559359158958758558358157957757557357156956756556356155955755555355154954754554354153953753553353152952752552352151951751551351150950750550350149949749549349148948748548348147947747547347146946746546346145945745545345144944744544344143943743543343142942742542342141941741541341140940740540340139939739539339138938738538338137937737537337136936736536336135935735535335134934734534334133933733533333132932732532332131931731531331130930730530330129929729529329128928728528328127927727527327126926726526326125925725525325124924724524324123923723523323122922722522322121921721521321120920720520320119919719519319118918718518318117917717517317116916716516316115915715515315114914714514314113913713513313112912712512312111911711511311110910710510310199979593918987858381797775737169676563615957555351494745434139373533312927252321191715131197531115421154011538115361153411532115301152811526115241152211520115181151611514115121151011508115061150411502115001149811496114941149211490114881148611484114821148011478114761147411472114701146811466114641146211460114581145611454114521145011448114461144411442114401143811436114341143211430114281142611424114221142011418114161141411412114101140811406114041140211400113981139611394113921139011388113861138411382113801137811376113741137211370113681136611364113621136011358113561135411352113501134811346113441134211340113381133611334113321133011328113261132411322113201131811316113141131211310113081130611304113021130011298112961129411292112901128811286112841128211280112781127611274112721127011268112661126411262112601125811256112541125211250112481124611244112421124011238112361123411232112301122811226112241122211220112181121611214112121121011208112061120411202112001119811196111941119211190111881118611184111821118011178111761117411172111701116811166111641116211160111581115611154111521115011148111461114411142111401113811136111341113211130111281112611124111221112011118111161111411112111101110811106111041110211100110981109611094110921109011088110861108411082110801107811076110741107211070110681106611064110621106011058110561105411052110501104811046110441104211040110381103611034110321103011028110261102411022110201101811016110141101211010110081100611004110021100010998109961099410992109901098810986109841098210980109781097610974109721097010968109661096410962109601095810956109541095210950109481094610944109421094010938109361093410932109301092810926109241092210920109181091610914109121091010908109061090410902109001089810896108941089210890108881088610884108821088010878108761087410872108701086810866108641086210860108581085610854108521085010848108461084410842108401083810836108341083210830108281082610824108221082010818108161081410812108101080810806108041080210800107981079610794107921079010788107861078410782107801077810776107741077210770107681076610764107621076010758107561075410752107501074810746107441074210740107381073610734107321073010728107261072410722107201071810716107141071210710107081070610704107021070010698106961069410692106901068810686106841068210680106781067610674106721067010668106661066410662106601065810656106541065210650106481064610644106421064010638106361063410632106301062810626106241062210620106181061610614106121061010608106061060410602106001059810596105941059210590105881058610584105821058010578105761057410572105701056810566105641056210560105581055610554105521055010548105461054410542105401053810536105341053210530105281052610524105221052010518105161051410512105101050810506105041050210500104981049610494104921049010488104861048410482104801047810476104741047210470104681046610464104621046010458104561045410452104501044810446104441044210440104381043610434104321043010428104261042410422104201041810416104141041210410104081040610404104021040010398103961039410392103901038810386103841038210380103781037610374103721037010368103661036410362103601035810356103541035210350103481034610344103421034010338103361033410332103301032810326103241032210320103181031610314103121031010308103061030410302103001029810296102941029210290102881028610284102821028010278102761027410272102701026810266102641026210260102581025610254102521025010248102461024410242102401023810236102341023210230102281022610224102221022010218102161021410212102101020810206102041020210200101981019610194101921019010188101861018410182101801017810176101741017210170101681016610164101621016010158101561015410152101501014810146101441014210140101381013610134101321013010128101261012410122101201011810116101141011210110101081010610104101021010010098100961009410092100901008810086100841008210080100781007610074100721007010068100661006410062100601005810056100541005210050100481004610044100421004010038100361003410032100301002810026100241002210020100181001610014100121001010008100061000410002100009998999699949992999099889986998499829980997899769974997299709968996699649962996099589956995499529950994899469944994299409938993699349932993099289926992499229920991899169914991299109908990699049902990098989896989498929890988898869884988298809878987698749872987098689866986498629860985898569854985298509848984698449842984098389836983498329830982898269824982298209818981698149812981098089806980498029800979897969794979297909788978697849782978097789776977497729770976897669764976297609758975697549752975097489746974497429740973897369734973297309728972697249722972097189716971497129710970897069704970297009698969696949692969096889686968496829680967896769674967296709668966696649662966096589656965496529650964896469644964296409638963696349632963096289626962496229620961896169614961296109608960696049602960095989596959495929590958895869584958295809578957695749572957095689566956495629560955895569554955295509548954695449542954095389536953495329530952895269524952295209518951695149512951095089506950495029500949894969494949294909488948694849482948094789476947494729470946894669464946294609458945694549452945094489446944494429440943894369434943294309428942694249422942094189416941494129410940894069404940294009398939693949392939093889386938493829380937893769374937293709368936693649362936093589356935493529350934893469344934293409338933693349332933093289326932493229320931893169314931293109308930693049302930092989296929492929290928892869284928292809278927692749272927092689266926492629260925892569254925292509248924692449242924092389236923492329230922892269224922292209218921692149212921092089206920492029200919891969194919291909188918691849182918091789176917491729170916891669164916291609158915691549152915091489146914491429140913891369134913291309128912691249122912091189116911491129110910891069104910291009098909690949092909090889086908490829080907890769074907290709068906690649062906090589056905490529050904890469044904290409038903690349032903090289026902490229020901890169014901290109008900690049002900089988996899489928990898889868984898289808978897689748972897089688966896489628960895889568954895289508948894689448942894089388936893489328930892889268924892289208918891689148912891089088906890489028900889888968894889288908888888688848882888088788876887488728870886888668864886288608858885688548852885088488846884488428840883888368834883288308828882688248822882088188816881488128810880888068804880288008798879687948792879087888786878487828780877887768774877287708768876687648762876087588756875487528750874887468744874287408738873687348732873087288726872487228720871887168714871287108708870687048702870086988696869486928690868886868684868286808678867686748672867086688666866486628660865886568654865286508648864686448642864086388636863486328630862886268624862286208618861686148612861086088606860486028600859885968594859285908588858685848582858085788576857485728570856885668564856285608558855685548552855085488546854485428540853885368534853285308528852685248522852085188516851485128510850885068504850285008498849684948492849084888486848484828480847884768474847284708468846684648462846084588456845484528450844884468444844284408438843684348432843084288426842484228420841884168414841284108408840684048402840083988396839483928390838883868384838283808378837683748372837083688366836483628360835883568354835283508348834683448342834083388336833483328330832883268324832283208318831683148312831083088306830483028300829882968294829282908288828682848282828082788276827482728270826882668264826282608258825682548252825082488246824482428240823882368234823282308228822682248222822082188216821482128210820882068204820282008198819681948192819081888186818481828180817881768174817281708168816681648162816081588156815481528150814881468144814281408138813681348132813081288126812481228120811881168114811281108108810681048102810080988096809480928090808880868084808280808078807680748072807080688066806480628060805880568054805280508048804680448042804080388036803480328030802880268024802280208018801680148012801080088006800480028000799879967994799279907988798679847982798079787976797479727970796879667964796279607958795679547952795079487946794479427940793879367934793279307928792679247922792079187916791479127910790879067904790279007898789678947892789078887886788478827880787878767874787278707868786678647862786078587856785478527850784878467844784278407838783678347832783078287826782478227820781878167814781278107808780678047802780077987796779477927790778877867784778277807778777677747772777077687766776477627760775877567754775277507748774677447742774077387736773477327730772877267724772277207718771677147712771077087706770477027700769876967694769276907688768676847682768076787676767476727670766876667664766276607658765676547652765076487646764476427640763876367634763276307628762676247622762076187616761476127610760876067604760276007598759675947592759075887586758475827580757875767574757275707568756675647562756075587556755475527550754875467544754275407538753675347532753075287526752475227520751875167514751275107508750675047502750074987496749474927490748874867484748274807478747674747472747074687466746474627460745874567454745274507448744674447442744074387436743474327430742874267424742274207418741674147412741074087406740474027400739873967394739273907388738673847382738073787376737473727370736873667364736273607358735673547352735073487346734473427340733873367334733273307328732673247322732073187316731473127310730873067304730273007298729672947292729072887286728472827280727872767274727272707268726672647262726072587256725472527250724872467244724272407238723672347232723072287226722472227220721872167214721272107208720672047202720071987196719471927190718871867184718271807178717671747172717071687166716471627160715871567154715271507148714671447142714071387136713471327130712871267124712271207118711671147112711071087106710471027100709870967094709270907088708670847082708070787076707470727070706870667064706270607058705670547052705070487046704470427040703870367034703270307028702670247022702070187016701470127010700870067004700270006998699669946992699069886986698469826980697869766974697269706968696669646962696069586956695469526950694869466944694269406938693669346932693069286926692469226920691869166914691269106908690669046902690068986896689468926890688868866884688268806878687668746872687068686866686468626860685868566854685268506848684668446842684068386836683468326830682868266824682268206818681668146812681068086806680468026800679867966794679267906788678667846782678067786776677467726770676867666764676267606758675667546752675067486746674467426740673867366734673267306728672667246722672067186716671467126710670867066704670267006698669666946692669066886686668466826680667866766674667266706668666666646662666066586656665466526650664866466644664266406638663666346632663066286626662466226620661866166614661266106608660666046602660065986596659465926590658865866584658265806578657665746572657065686566656465626560655865566554655265506548654665446542654065386536653465326530652865266524652265206518651665146512651065086506650465026500649864966494649264906488648664846482648064786476647464726470646864666464646264606458645664546452645064486446644464426440643864366434643264306428642664246422642064186416641464126410640864066404640264006398639663946392639063886386638463826380637863766374637263706368636663646362636063586356635463526350634863466344634263406338633663346332633063286326632463226320631863166314631263106308630663046302630062986296629462926290628862866284628262806278627662746272627062686266626462626260625862566254625262506248624662446242624062386236623462326230622862266224622262206218621662146212621062086206620462026200619861966194619261906188618661846182618061786176617461726170616861666164616261606158615661546152615061486146614461426140613861366134613261306128612661246122612061186116611461126110610861066104610261006098609660946092609060886086608460826080607860766074607260706068606660646062606060586056605460526050604860466044604260406038603660346032603060286026602460226020601860166014601260106008600660046002600059985996599459925990598859865984598259805978597659745972597059685966596459625960595859565954595259505948594659445942594059385936593459325930592859265924592259205918591659145912591059085906590459025900589858965894589258905888588658845882588058785876587458725870586858665864586258605858585658545852585058485846584458425840583858365834583258305828582658245822582058185816581458125810580858065804580258005798579657945792579057885786578457825780577857765774577257705768576657645762576057585756575457525750574857465744574257405738573657345732573057285726572457225720571857165714571257105708570657045702570056985696569456925690568856865684568256805678567656745672567056685666566456625660565856565654565256505648564656445642564056385636563456325630562856265624562256205618561656145612561056085606560456025600559855965594559255905588558655845582558055785576557455725570556855665564556255605558555655545552555055485546554455425540553855365534553255305528552655245522552055185516551455125510550855065504550255005498549654945492549054885486548454825480547854765474547254705468546654645462546054585456545454525450544854465444544254405438543654345432543054285426542454225420541854165414541254105408540654045402540053985396539453925390538853865384538253805378537653745372537053685366536453625360535853565354535253505348534653445342534053385336533453325330532853265324532253205318531653145312531053085306530453025300529852965294529252905288528652845282528052785276527452725270526852665264526252605258525652545252525052485246524452425240523852365234523252305228522652245222522052185216521452125210520852065204520252005198519651945192519051885186518451825180517851765174517251705168516651645162516051585156515451525150514851465144514251405138513651345132513051285126512451225120511851165114511251105108510651045102510050985096509450925090508850865084508250805078507650745072507050685066506450625060505850565054505250505048504650445042504050385036503450325030502850265024502250205018501650145012501050085006500450025000499849964994499249904988498649844982498049784976497449724970496849664964496249604958495649544952495049484946494449424940493849364934493249304928492649244922492049184916491449124910490849064904490249004898489648944892489048884886488448824880487848764874487248704868486648644862486048584856485448524850484848464844484248404838483648344832483048284826482448224820481848164814481248104808480648044802480047984796479447924790478847864784478247804778477647744772477047684766476447624760475847564754475247504748474647444742474047384736473447324730472847264724472247204718471647144712471047084706470447024700469846964694469246904688468646844682468046784676467446724670466846664664466246604658465646544652465046484646464446424640463846364634463246304628462646244622462046184616461446124610460846064604460246004598459645944592459045884586458445824580457845764574457245704568456645644562456045584556455445524550454845464544454245404538453645344532453045284526452445224520451845164514451245104508450645044502450044984496449444924490448844864484448244804478447644744472447044684466446444624460445844564454445244504448444644444442444044384436443444324430442844264424442244204418441644144412441044084406440444024400439843964394439243904388438643844382438043784376437443724370436843664364436243604358435643544352435043484346434443424340433843364334433243304328432643244322432043184316431443124310430843064304430243004298429642944292429042884286428442824280427842764274427242704268426642644262426042584256425442524250424842464244424242404238423642344232423042284226422442224220421842164214421242104208420642044202420041984196419441924190418841864184418241804178417641744172417041684166416441624160415841564154415241504148414641444142414041384136413441324130412841264124412241204118411641144112411041084106410441024100409840964094409240904088408640844082408040784076407440724070406840664064406240604058405640544052405040484046404440424040403840364034403240304028402640244022402040184016401440124010400840064004400240003998399639943992399039883986398439823980397839763974397239703968396639643962396039583956395439523950394839463944394239403938393639343932393039283926392439223920391839163914391239103908390639043902390038983896389438923890388838863884388238803878387638743872387038683866386438623860385838563854385238503848384638443842384038383836383438323830382838263824382238203818381638143812381038083806380438023800379837963794379237903788378637843782378037783776377437723770376837663764376237603758375637543752375037483746374437423740373837363734373237303728372637243722372037183716371437123710370837063704370237003698369636943692369036883686368436823680367836763674367236703668366636643662366036583656365436523650364836463644364236403638363636343632363036283626362436223620361836163614361236103608360636043602360035983596359435923590358835863584358235803578357635743572357035683566356435623560355835563554355235503548354635443542354035383536353435323530352835263524352235203518351635143512351035083506350435023500349834963494349234903488348634843482348034783476347434723470346834663464346234603458345634543452345034483446344434423440343834363434343234303428342634243422342034183416341434123410340834063404340234003398339633943392339033883386338433823380337833763374337233703368336633643362336033583356335433523350334833463344334233403338333633343332333033283326332433223320331833163314331233103308330633043302330032983296329432923290328832863284328232803278327632743272327032683266326432623260325832563254325232503248324632443242324032383236323432323230322832263224322232203218321632143212321032083206320432023200319831963194319231903188318631843182318031783176317431723170316831663164316231603158315631543152315031483146314431423140313831363134313231303128312631243122312031183116311431123110310831063104310231003098309630943092309030883086308430823080307830763074307230703068306630643062306030583056305430523050304830463044304230403038303630343032303030283026302430223020301830163014301230103008300630043002300029982996299429922990298829862984298229802978297629742972297029682966296429622960295829562954295229502948294629442942294029382936293429322930292829262924292229202918291629142912291029082906290429022900289828962894289228902888288628842882288028782876287428722870286828662864286228602858285628542852285028482846284428422840283828362834283228302828282628242822282028182816281428122810280828062804280228002798279627942792279027882786278427822780277827762774277227702768276627642762276027582756275427522750274827462744274227402738273627342732273027282726272427222720271827162714271227102708270627042702270026982696269426922690268826862684268226802678267626742672267026682666266426622660265826562654265226502648264626442642264026382636263426322630262826262624262226202618261626142612261026082606260426022600259825962594259225902588258625842582258025782576257425722570256825662564256225602558255625542552255025482546254425422540253825362534253225302528252625242522252025182516251425122510250825062504250225002498249624942492249024882486248424822480247824762474247224702468246624642462246024582456245424522450244824462444244224402438243624342432243024282426242424222420241824162414241224102408240624042402240023982396239423922390238823862384238223802378237623742372237023682366236423622360235823562354235223502348234623442342234023382336233423322330232823262324232223202318231623142312231023082306230423022300229822962294229222902288228622842282228022782276227422722270226822662264226222602258225622542252225022482246224422422240223822362234223222302228222622242222222022182216221422122210220822062204220222002198219621942192219021882186218421822180217821762174217221702168216621642162216021582156215421522150214821462144214221402138213621342132213021282126212421222120211821162114211221102108210621042102210020982096209420922090208820862084208220802078207620742072207020682066206420622060205820562054205220502048204620442042204020382036203420322030202820262024202220202018201620142012201020082006200420022000199819961994199219901988198619841982198019781976197419721970196819661964196219601958195619541952195019481946194419421940193819361934193219301928192619241922192019181916191419121910190819061904190219001898189618941892189018881886188418821880187818761874187218701868186618641862186018581856185418521850184818461844184218401838183618341832183018281826182418221820181818161814181218101808180618041802180017981796179417921790178817861784178217801778177617741772177017681766176417621760175817561754175217501748174617441742174017381736173417321730172817261724172217201718171617141712171017081706170417021700169816961694169216901688168616841682168016781676167416721670166816661664166216601658165616541652165016481646164416421640163816361634163216301628162616241622162016181616161416121610160816061604160216001598159615941592159015881586158415821580157815761574157215701568156615641562156015581556155415521550154815461544154215401538153615341532153015281526152415221520151815161514151215101508150615041502150014981496149414921490148814861484148214801478147614741472147014681466146414621460145814561454145214501448144614441442144014381436143414321430142814261424142214201418141614141412141014081406140414021400139813961394139213901388138613841382138013781376137413721370136813661364136213601358135613541352135013481346134413421340133813361334133213301328132613241322132013181316131413121310130813061304130213001298129612941292129012881286128412821280127812761274127212701268126612641262126012581256125412521250124812461244124212401238123612341232123012281226122412221220121812161214121212101208120612041202120011981196119411921190118811861184118211801178117611741172117011681166116411621160115811561154115211501148114611441142114011381136113411321130112811261124112211201118111611141112111011081106110411021100109810961094109210901088108610841082108010781076107410721070106810661064106210601058105610541052105010481046104410421040103810361034103210301028102610241022102010181016101410121010100810061004100210009989969949929909889869849829809789769749729709689669649629609589569549529509489469449429409389369349329309289269249229209189169149129109089069049029008988968948928908888868848828808788768748728708688668648628608588568548528508488468448428408388368348328308288268248228208188168148128108088068048028007987967947927907887867847827807787767747727707687667647627607587567547527507487467447427407387367347327307287267247227207187167147127107087067047027006986966946926906886866846826806786766746726706686666646626606586566546526506486466446426406386366346326306286266246226206186166146126106086066046026005985965945925905885865845825805785765745725705685665645625605585565545525505485465445425405385365345325305285265245225205185165145125105085065045025004984964944924904884864844824804784764744724704684664644624604584564544524504484464444424404384364344324304284264244224204184164144124104084064044024003983963943923903883863843823803783763743723703683663643623603583563543523503483463443423403383363343323303283263243223203183163143123103083063043023002982962942922902882862842822802782762742722702682662642622602582562542522502482462442422402382362342322302282262242222202182162142122102082062042022001981961941921901881861841821801781761741721701681661641621601581561541521501481461441421401381361341321301281261241221201181161141121101081061041021009896949290888684828078767472706866646260585654525048464442403836343230282624222018161412108642