Are you sure you want to delete this?

Video


VideoTitle
مصر العربية | سعر الدولار اليوم السبت في السوق السوداء13-1-2018
VideoURL
https://www.youtube.com/watch?v=AHXbM4NA9UA
IsPublished
ImageName
123.png
ImageContentType
image/png
ImageFileContent
1378078711310261000013737268820045002208200023719323900011158271660174206282330004103657765001771431125297500091127289115001811600181161222102311200025516573686584120942362531031163671154371362382351694250181214902351322141290217208845141806821076517817010322315615311910211918216712316710316617175146762051644023434831451532041001063216153822356874178103247189119191239115247832147448677792071431011561232361521551551551551551531352231072461532172552422552512412472272391992231431913112763254126252253248251241247227239199223255831276323412931127632541262522532482512412472272391992231431913112763254254159251112321932052141279736862551651682171508818361177246207197541252378632137221318532425492254921301401862371862181091313023712742182378611179172222193128231159725017023720185219131491321001341611147185852282342031832732121966595256498229549321315902264956687851082138510821392135676168220146801852491871601712181623317710613919014681181531691229118185911471071825118216930234368610821485108744022341431181491901029182237118125131382205143202573316820422571155212871118522617172418060721872296172932482071321092412139122642551998710913471144160122254101160221782425148123631621914481583423820712410137311980106112181839022825578121882155410531041582173106351932552041186620524616416016651041091439324818351118224229122190229156199844724912610420918220918942404313591146170553987918236871097716922015294177214869323516911812220298182252342411511111522471911552532145916693187163118189172542302352251752554684692002351919525132211752551261852241412234712724311920311925511824915822346223247155229251127179226173223174607288241246111151255225247436222129118252157184833136124245110244137119162781902512822213960249942161696313212525312624823315342061241612123019540120248481256243972482171433420612620169186145231621421862401052041976319815825152250204391451676321416172281436024311322821531690240168129171361272461471685115968159253362301335635238199209167631385813151602091142482451351452231519616115212921913222922812631972497916220712726173184228137572471132042171431622073413315163791271611723013115217931198186213861243972042491432274612415412867248207124201232503511420712515411222551291122412431962506711219128111591971592559915613824701088081288919218579227207126181272302272481793139922481631902541442251941037310363209157255521772542431002819469200133207244561396419318579116136387566244231622141956125510521011932112185099425244916025124218946126142195682011526014824210415937942529220712872241996016417163156725616418622820941158671201503621240203336314513813467412451591679225220412823615725324143144116233112106243177204198352332451591552614153462954342061651954113135201109609810858106342851181124145214116521812331049021924123619835105159239891852552391671123254110242272551991322152551951842232552391928812011825523716493255113226174255561052231271541381791872551182422381911552522302237812222711139190249183191972212451191471182532211006605643818824911919118253159191192551677312325412624219025550215624095167191253203153111255195140131101661952551466126572432211271562452221751021951252313110318925117121724010724819517523108164832845112234551152222552052202471275955216253224119243129247127594716248155185312521183013325511822213519115525520923923124248291608328141191295923116321514520623618312757253189952072502402472436212511522516718722125186112381946323894252217158197127220189846322255684651672113118472542282056931191190240179221756321917923624361203142379111324857282181872422436122830217312028591223225223211841036605610032112424562236713412822219122620819010113525228217151192332311231512821818724848971718720797207162671872330218179224208158249135247465618811922511967591713611710022314632446117811121714518920322430222139199952502331551396312229197181201212511242392427911945249244205165199222138248250131132227111712912343281261261241222281952516614237135776881211202472021951232423617211617272405253235834022411643105324286162230127169300191791702211942381519622851516245311298424412860151230249151717719120152193255197122644628121252451422281702920801208161162762011281002411236522072351291327411212266124517657240223162278132121302230951775719098211119971285416822012114632481202209322045186138205163229171292174161228024917017318610616205193643216825512824424922184862013167240931512551192365317411419641461601067519251212123316216889145181255252224244217195183123114479206198119217016610675172242202006022931204914615156120215244117592446546301384647713523282115501926720923237229248101806420124315957315650176101213236213237721021442402325842121312162551391617322102191314840921392492311282297122494131244019619215022810623212977252123529531716121311010373204198871925422524723013123991223251321152471582322151277926224119191892491879517532247551121511718824618722327551912552052102151271792442059547221253235101123128127921862513115018824124711126255159230189249159231239254251185123254126246187191902481932392219124717118523925322723663252227172632521142141231911562452386320484492532211271522502226322111286325210625025119115420613583222251199201239253102381481191275723322195781342312539579125255551365122913122376251240119516225225320414322215225320927179201886223522755102127252230156648334022405813312424223022014322315624724127132792005124716321565952542016772402502892130111597395624721193115632212922813813525315923715424724923824915923915824725192126102121114323895250197912037918817924217111967191122552361711191947918819118252237802241962191611672221395624911042492231325522696200231123151130154281273923621278041209641761045724565132106801941316611222136582456524415123913229571762261961231451676314025125013188184208616762136572456523615314319224632431773133963210016781278361281361562548011923035292521222123313313619247221645812418714311322388232281975102001551207217012547166518774361908018224132200913418742627625225013119617522213925523418956289425276209152363791341599223215020714769275230129967213324128112411922503314964302111972078224821719181564595100224055307711160150209244101102203241441602491208621123251411992104729771075614690127562292269767253145148134354115114215315419076107571452091185017125310011821510511524710575215169156206147217299510112402082251692818490120251137761601356158187144123021510213221112792291922376199237611073787692071052032472251401652471724556254024041137198200233591071056115811822517919619816313414214715318910345874621617494180951859619112422211822918817323915616524714025491877910351224171443116714422062261941421478917395166119127141248214190115182203231236192149112064323129226191124143016710872238910322389109714361372271223317492112931892242032101205175194129156151925251181111822352310955461462714027245246155245118141839419110411102129111054881112121276323266185246861312273822786131243102131111845921142231681192211882281971955430539358986822916261751567124622018327243239183212231062041919423918720922418711820912324513023120212155160602245721521317917443103156266854244642405523912740228131108071218956124116216624019565241147821925412420813310634131176291800196661231683129842656015832553417419818534901942078822372062282188761632382167221171223515614910418422208215059528013053598310694491266317095731692222512677707212919151911761391670224702131322281061387617412066597117415213210510814082518723673941812111761061671841341861574126106119164212124023932255642412815423711041291161391571289721343134213175361752221531721841016152178138198746818272230765056391289218423014912768082140531753617322213716615216466154165128218275524241252179671541621289519122411441591648542224231247982111075317122179200163674178116868122413264329519415782332002277530802121291231319417015714619495412125392102281685210171552419322730181165011826106954921212447166564451599514123912247699199192911118317721482121087316921798168134302169817022215286861479390232174502511072261192541551649518914524324625123024762200216179551022151552022481922719115123227247112129162143917517596441272272474311825311024915822317321625525114413117513519025325120818312617922622411186188255702323918735142371435825446232160301321692536886235232334519921090142165543149542954178155210116196208124361852491048224381184201451224636532920955302149358148802558910819523124145199244173953619310962154216114441692452032281504714791792421819074811126624118030551219892122879105619710861971065914521824685421854281890143271913110620421224617552152521801714023719273118197115505232561012365610523660105234581012341307572237586923262149214123582432422171561072319230643523621519354206219174223182023360232993167178462973110581022362545815512021353340182171245182107245224912144323641888151472289262143561122052106015128672165819020218411619609481346518823418825370131231218691635399219324512224714175946812843184222224652242456192195126129871331182001101312222622404121519511794171103144733206235421482400281921171601931742252181196351833064252121517871831121076415019215311092242221362289418922423458101110621502221205618124520317222251118132223105206187221228187213136199711005511215721724195119191189232110751158241126912252112221387193165253291971521813925059741121023313116522111020212321083142179561331041161821792286510373127119412401761872368179579224831116149023641126208892441761672448111125240184175252201229138103871708125217911321683246176171362414320019717314512622525318213012317325412311221910238183232461193263692472191132328719422510664281372545711718337318196100104113228941311282194117218911991115152179246175210251206891105512331118161160741591674302471486023446662001311468206191215150119175131162215812428622322403253157528193255176179821129102131196229137301191516223841351831872014320712816723697391281384012120814226515336922623224148196121332505917111768238364125344618912460206157221591012218612345190251173190710918525323718515592423011822871631916114312917919025414194195142231637819610017671611648301671472511761571461222122013214325581780240184179176191221223223811281831752491398410445188182200228211222242167125212239216925416710718122392174661471232208378165129541371986722031084712621686212223901686584646415204177222527598174165961581659619018116152247195162812117423720719860647722820768171741571391554240824243331311582387919222615929132193103127482322141464912258202361631041901731201291731161291734881044393104472111914518923619711214845180151331422620718315044176150204179202075123205179201371391921332141466915014637214210165182509615318925212132281747522521820222219742321774197511223220142238197192125235920223595217592149759321203156212039314920393856517413417021110520317922911411122950660431248520318985228502242091762108721226171142122817030246135229214132229213401109410910411077481942432351281762522181762521862082529032204952323417511110632172968518412785681269313212785366013819146220207167108620913323422964682411541361461811719710720125323970164120138215134231758180180261608316523534752144115825549136220221471149181622035416202551961481111403315160181365674622131721061431432862102513221024512912341145149103161248205632322614322725442541988610813837119161624813181169130151015270705122661476197149111127012425331299364871907387177891171294547521351932807019511622991105112172765249552554110819477340223144801909413117410815717410817317412493124233186196146154148226146140981511674210921195231252231223122222216103121997921023812591232471972382192718912711120425418917742224718993116181127951642241922222001832467030220192492221581681524719812618443234163931457115663164212255491812371391562225117418745697925142241197215533781311758779217191241915910311822322459199159207601242492326720014479412311802492385418711053218239545931180121241249124212137112245131218149247176916762220712212496480321634317563019017043255971512551332322558324201591295914186169132729646195247176392478111923899160112001232201492551684315966322573183255731193324020232411222188325217218324427662171834058161691741621351966156189103455527221967514318713915924414860187921012411513324023611420121119022639189197792511381582442162238459620916254184740139187215154119245162368231912251541892292239417325423011416520811842260839921746856240122201486740216225316322929519487612334567158572726136321941311121002366964156194129401221490160150964815265101867519317041271481471787122137160254189103173931671144615917919514382239416925224610619755151203158246225194981448723017569143186138133128342917611214115519412715920152104528212817828713112466766012612739145752483111867152011233135219223131364129138167758161164191171248339640132644132321599625576851531301958560201301871122521909333238682081311941931102291722810612916222689208831688066683912206652154215412920813410412155461850104206250677393951031931510214313812021214128414819213111819620783241181791381509277307242481759411211615913416820014791224145137181111138710115184126127711051275913714011702083130326132236191762441953514671381441202168912104122644318318717340718318315512518315460183266118315418818315518811915460247154612479018824711861641324164198412024110134231652190220790221247906334077781322101085242311801611172491867910355297523360153121179209131134141215191111501881523623131747068268561106131041242531361082321291373819919136382529147772064112717381675839253249192851272492977206137707225185724915992011518765143233154108114774918621152608383618322512663826113620124191471411747341174201261401482241802021511632246166259213148532179767311410415820173142416231201311392202023652108793738660147217376133203151766146291122163131198467822814720913819033106481974921323215610211678771131922071351324141118197151511941132003319348581673210280178104121471801941031602041671641861661651861031661218233222892519089236206200240787924776751157977117118412482138291411271061861231061341031061867111321143123138101381921601955221321143134528716220147211922126112111813732205233153222233153626615011119825524321014524196143221421877922710876203240104571672834219124136112681605628891331541159696130511781155741242374224511270861742202323820423622015321712120712931151261610261135217102222432362064925123150230228228111021032311051521476915220346121178243231101231139594721963551879694118225962281924515215537240511023010024923110023020720113243200159157145634335111246119341191181344782222171533096222201220715612247156122151567620715644239162108199242204140200108189189522492132551432432151872531752395325523877221271879824723714321919147246192190184131251227223821624721425421618324619916811052225642129172002432462542321192467065151881915923425355356222229561112242253228243159249114210195622351262168124679871361041262118724123722942184207122202159130691172263238441242208524816821117524416820910314362129212229214701462241261712472143725118111230272455412441333681524418312333153011612031116230246127551121502251872231611932031102382531183214314525101942276916017922613813519322511418567324657180195245482201180185238183582391831941491111917592815859771742191411742191511561192693119155161361626415364382491611572381832282221681192461247784160249112111811221991251763713357193205189215143422918721923418921134240220105113221110113222110118221110118171240161921021541898747218597810224648205342100186192413618496115222016298457343119418922114812318715316112181212138192174194383713386255157224341542312223019837247205751126528201151522119037801842322419021723225297643414820602081416010621562110237189213232147108223104112247158177542953157251848712740185251107511781325078121903681014313775220552692129113134139174171239316025112510310976250811641482014651121365217131032512062171105524925059101373418312822118131191219941121672054712825530206162114193625925124120175189144341281341822501111832301916424016525216910474217114200115181381171931431691981032248475158844087101468578201131160130184142801794037112116376818515023414847238017436891381923316323817417517959781025212797108581021881141931181832123999114809282229104108196248133100436018720117124010882510420118520821104422242268747561871905419518994239198191611498267165156836682042408140343522341513324012820275133148221441208014318620231119151147219694623111967251462323421767370172901001348320611259305724746151414443172157331294148025211420030207616912162248773191047254243112223109246192101970193224237199159122222327024723770522151561504777157167502411906416012611516524289955717825318418722873153016226713014121261411831445467141642462236719753229667846464158015123119140168175521561877825544132211721051025154716711213622836012423716021212632112173228258820117462458020620216333242106660129112138372109117321711461831948521220517292254236718575401101451919052521309625524320822617514278132132228173102059121230171112432121341221061281611924524799165171106511723187175240841752448413512010766124181431157961331756882381739423833441158712122412391709223036441178444117148154668752822975922297522122975220101752202282544461132094111415716575291657515710175281657523637262221913823519590180208904151942292014511015513024960205196152200861361921335418615046183314856220692469818668615421651207130117152458521387317419222615910120610374154175669716811253901212822414671232502431020122015615510418334212186241791311002071512819610011479902015471814723633184160118192248732401282474324017081561013434271301922347218019135404213620133162166247219135146135128643456842072470113941402011281686535316158215575818159342525276511851661713212717012370154123618515825105222251694719811619224919852163782121266760833317616119569105191036131131016110783971577017676498810316657221021522338694713715991801472481112551521947127107121991831052071902481252511046422402440143121361871279520425412520972466919118187162452142222003251201881815522623761225239236101231118724819912316362127432462162192413963761902401219019987182155245249791874219123316912422089242164171450224817124119524616225418219425454632401601316415919016024842221051141311013119195679568621882172241841142061242451885682520918425120512319121957424718954551151102231312390722491892462312824252066255987316281292161822301112432221092432201072432201091151952432816232186215238186787245220133219238186219230188219226184219108191219122151211672171691851727729161541929240128224221211590243168148902431112145918779102181126971066115821812321413020760247178131187128175128166128661291521701641592521749177206912051321291168997201522061121982202418586223575924525118221161311031301971648033148262331212813632117211513219414765581407310881351636417670361417473228239102163702393918313718174161323222270120642102523716186737349191415999501541391461321901862401532382101452282382115720021335301141212049922532932157401168672822820845462484610114984141712613252820051618232218229115214203231173820250200285525517417042008561183412824208252116200182263040169214163472925576851531881302392425601395832802542287137102311981794322891616881104254962475780185113476215520224013116891031447212191131121011631103123207154271439157251521902491521717819264198121721517624802440119078129210284732830921421141871141934121124110542503011913122023177206161199196131759481121117612713058201603216076674958341320881367412869112175017136882272565172854932104166127451350861628194112223523315226253244154255481121241031271872478110322215738712232331402144712236313917563164235621471171712012132232291272022271291518725225315724915187144103201545524244183649331585924272748111932431371015423419128244188287182141178221991594987410017730254111601674119721914610461941513118696136154231109501195197240122351167413916317121717417121719312813523059146053402401592925599214231702221451962431341491851942076586282221113910111716011417812412022512422623124139215231013283106911012333011717811196303916015716217921825066014121210482052471651651322174226209988621025296178235802314310016194230341318177271692162020724314311095850161087316211457936224211552162221341089324612316220355176491402301021654701412522911325419965185151242401361331432424640230641063222012923428023612415867240374922927130139232249135851752501902712571682442162267282120116275849236210339534247141412191691741283916611612510821713418424214117714056502129727161160383312618413721104961381052083210410994230208631432481782052411651552124713340219362274425419615117314347913911022191119715117421314917555852141662212220451691752541871309518989245230622231741251051872471982372171918911179121001921291891134216077218176301368124564212129125130200183246145301201231192161352511621518915724019731146190250208112246143105109952171105521612371702541821832308915141912421143353100443624222473872411471746622411387193351242078421191248172421641870461473485212316043011725015924620125123185228219203692072501015924422602382416323824563233430158246216218792244244501851921968641842639881112121241147222341247715993461196222701791863319515520310016913056641441651013114011263717133255113111222119225811832398123161086423619539312541352910840197335108559224016417123210555149210157381112232331561422272339316717811052184192841928615993462511671078522394169021166150301182341534824925118724221319319209541547560121617812324918825323453956208147158502251511006619524483299241821351216611862100246351029986216465177322346778402682224111692072112021019512942216116135824799492923344124216857217416017113676742006274471611391021624410412762200186156113248811341601765025163241104101321722372112222101671251012072502021901851301034419933501372004043415222412329121202027233112185591501843525186116802848233203231109208912076220148981182262226185114325120231247150636815317969168916105214651061323915143158941691241181811382204385223408382208421301481176221224187138197203125102198152011181565814053218205188862164522924612110420255691602406524153224976515781122208631417113245135146901904865241601122086216912105100025048283992521143523021447015766863117818121314161112398991247215230271330210315719716241041546810314524423222712125407521022625329701516121818412928612910012812810121139431044815320416086186901971291818422315039214652361262312036831864813061014822513022557225518922264514862144073051369129248561391911361999324921546228180125105104571502121181942121192061213712323247197191685525329618222325325123740552000148454116121238106294622316376811031305412923912366254114162138616790254251442171235095806520822062519310337218773603752153166219190811454242072519521171888905215222624322645825074225236721722211691301506414523113581655254179662050772048516723462151584360242231157412817913423415719810610121017612021219587821068611853152262431272668221411012816451034756229964386824216420119219674101941781222002452115249252189144153196198321192241807864157232891799334432111301071482331521646918173162601632069173205461333112920110420721321982348519323242601111651938327141101591272294216200159107243748322818811316329563152232361070240217632712418522011120625125593168227151691823121924117120643227260141942132042408565254962082186865111241644020334201234703237116667186532297181475115210174177821919083145743183715615419914110225223745219168102004780150221315610160154151558522202212133711011251612347713423413134154205738527211170107204211101271091981912532725523512320324723611523922110760176471421021416245311321049725511111231631417860142361435617647226322351291191181351251805524220021924139637219024019921216616321722116715724790138159116866023840229112342281902231461712259417987511716410595412481851671415821982051582191511565523423721546881119218033132231219209212130123109222123907912771238366028168128251242925210511631199161244201196229108963150220223153175113526120401921191678517421319017526144261871732215018056111183562009271113201131192597720621914114221914124018420525811193162162242143721591651141847967418518327221611675091142269019148246158206190221236233239425698613713096249325128621523723012466618320016562248917732131851199011425120690187185207212121042359443168791612142112802177516247162190216142059815520417221221652101011335418142156233121162071637821460220157122157513814121111492321612541081122551681462181895460181247901891892352352042142271661981632011313524523795165221108116655460238111316778861824016334691612211841647710118219316597150382311816219213122235149115075273043772338612924417555562241939318679103931711192202261771332194519021912011217624324625259109643014251082016413044133216941046413624255815411511153249110532501105322914675303191431851751471051475015725058207219190742352498825112017613010215920341161181751523912012402431841298747058844517821441792201926056108611581222501631521821910520091062522610341122140692015828985204192100156234123321314810445104174721732391721732371207021521510260472184213971451811465824162661324422310520619122113266831121711710113321011132168807414935804922221041327121812248124785711120959203312260166167120180671651552233319291127235146253869901832259417822310817612401154242324048161291417515620310625334185241112662192411481901158918315415611921920815092248115147209811202407113216156186209104720886175538820117318394173183192189118209114237130572416222122641531892473916176218832412531035312138861826218611661245171253249192851299461238159163142186651442401492011983182411822447673415110913427932029315210160181811665120218870651692041311321871421592314555170242122397210335752142434749240931675027821175372130471322181172022472913213209165279912814614120920711291274636181216146141937155116165155117371551975924010730221224185140210731857316135116138556833710148196412297714818490218113129216216519522116550110176932728224241129173137857620614820912813213132111378212719110109432568057133100225145225130114234100213186249101217208412887207361683094111244525115232018536406324020324814618217616612010023325364226349152248101362034214012416148171120153124518812416719671161201106152661127492241910193183864156120185128529199209341276321211613618117915915966435226159145919323411265921652093961887818514514814082742021471701352029325436136247717311119898128158145206170251632502291941243018782374177243168354171049094447299252122055164451366623010418331601532114322162420225066178160208221182334891589024855378711172891817795181411651885018721215887101252119127147119224157218183141221523651189125642472142548815849608815211715210002053010249161269695248254253225251247133292162725421415817618322312249112792482251839879189159212124362512428923920575254597713324715513915811615061238441907136411865601282221222279159762501541461531722474684117712750282102041353628135240956111123362149209243117381321931318695632421844341911371433912628482441677850144571243834415376104200138636942573233312422471883014483366228905056918219416768522202304749272354332432948011211313314510719283227217331267221452234193195962413511539238541851111291411298694176261167502615235911423811915776235571579246134124741432242279423426228231695460762473327516138789135312940104966621113623121692021891142222221215018723915629124818815923212618798139162181255201746514124080233144462341673011917831721839184215134146282363363931651911531011371162443532112170412005717417523129106121326693264209652541451912054312516832241151142234207126182111205216923992141102441641752322551868124912722317225216710716514312325325393190254782327315164221237102148335615023710216323722252205168891461181192193225268233161132102322558424816819638232446723921710816821121074215620619412329126193253206130254238162135611971431227512053161114129122660232421902239201051912802300211208773191581416168412671281381632424135222217115425014469190724717320419723813317113121818510211558441412321811462472261212004313115214312310145782199831951721087551042113193179203229604518728158135601210370197248642331138713483526446745997977317424110161121224240110759420710515017560812518995133140951452211278713798253223931943801323961529515616020629135271522336216188447925933743321172112481495013819716385521726819202105168711982263022551321344582531801020802286323822422437208908160841517016021313513065163133430482446123324622316818354302146515244158206184124462519018922994155231113143255217229162255235102249255247118229558775301181634612425393168514824904729222392197218865212911151109150196528124113610823212132168717721410117192531419718087139701511363317526194102187100891712181911381531561367021418925301773158254189152150230227622920115415461462491716821610831022007421622884381192623760191211137112153161136155170129184162012501661651221671661221971324222414811912218611112221896224182285496232172244912723112711921951741202410021144129190201169158201169110421913486684712873561184123321682168120211804110502022143631555659167242212112281372101245124816116616550212199314105212116724611471412387341521531201382016114910325342233164122103166250102154188471961232216250891216021751205228173253164324029105185111042335121011510310022820520420013110386122238236204252185895243178112302312046482320555231375947167162386675241341079176192202118249108208791502532462261332469818498229791022502346820712142230155112302292481295150194133541582496651547422412414232645612819218521712111517824310310320922080164137148231901010215524312989572281381492552811525460115129502531929466192128165139251392837140210197782461955921651115764201322004196177187448229756021751891931689223035466602175602291362011455816183180224821741782361812111417187228861753621210488145391682141765017568019553224842052022526512910163019412813581438129203169253731726478561232031256421350473302457323313712414997133171992025517614216225320312823224213225691071487356511716151179769171195108733195203114171561111814324210715023185227241259214652072031928312240721244146901861382317616228745618720027114181204913320910016917114418826128111852614331230175227233821711298094171423618338196871915018342194191617412052132231175619411487133230214225202201121421791301672266822817117242862251617468146722822058186361192119917516521180242170352521811802128512693689410912094117100126851009412184947376652491087126172207225942298824717023711125411523825418320322212320711524012824123732411112372156413065118651312441287221847247133191189392362212211613123713255242189132134672331251679311916149013925121913831182236323746123218932102231501518207171100208140225126154497610129253190135237248582262432331271307944601571122331554212909874152872512720249201691245423012121891126023535839011411615124022969922636010023467965133213464021682721281791465093219131867164718111112915413819216787166442112898120825249166195129243250908280896713712132104853712628122246238130167616922823110319111720112122915618524317121217417521012279103935715567235145951141301101823225199122423666817799134711313652896616652401801525623593150111913614130238223116817240122167524413971010019322166155194532171752407857100862024323748333533394651462481471782614317814012252196259816222196163208656143274849165607200168234871587865162516572311716116017920233787351611782001318619637134342712396014922211288223252133225234694374622516824111117414812512313204211431921401701973412451361466849162486517620010924340149219918134275104498516743243155141147256200360413028502246523148643343129226711253714325174312472092341621921951582107521771521032111920060139192207243772137161252891311451331221911681691363618779147717392650802552503723137452177252112137421164941159104331135424114150351442423315773194183092431513983402131821758247124221513721312322181117322120718294362025189431388617137162101646717674971096421014574140141145232176532552186926371841221931291184369129668015093182131701494522814721414016523324260129180118092200241051621703816115614413513418222181491581575360334891641166292153461721292371279441612301291448618317824416120124147227701891652371841612411121941491158911424694155155919323816323860177135132112189219702271473225374115165871587041338685517112862406441416901622212296104108154130152180334916919324746418411424811418023322940353321852132144101513211882015366136501902010536151338713713547732926157581404952202523621081191042029142136777134199164169302427998832171148552209318720320722819012202851482331671713412721154244211240100281467822092519516221013570165139595242138066162249108116622011362012413410819616515991214320324301519123982252011305952386719514423224433209105192203811121131522491148470489413842102510547691651902073120153493613017153585218892022426153575218110198208136140161225233671952102001313515558441945644210566020252213322972818102242665241815824411488242176722112002321801720916935163211711981001401362022417910014143202262214913714813568811741342084522418145254114120218759716615119477673476673514411421824020024422514510519541716918453672061822425121425136220244114132328519222915654361816019516114574225431332815714291224118351635170197100141142205301915161585410784761660225124421916770197102142140205242115941241571445370151138732129352275013049669211090351139199712004818010910612338180611651411971667515424022416151806714173272179137227181061322201103151721152912019996721503689100535618312718136605449714878111221402159120127341855637201671228022836112261958546209911983890198234201408160148200160111313315119515714410815714410815582420233324076502163827236147147109121202812943974113257317039039239233237192451822415820318442031326823568581807974178227949924423020925015681137217351850225159994513644891518018914919601111052822617515715823327103176142791771415521619833636024111910814612120202362011408322714645146136293214726249811739253901293168442491114690147102063106514225170254121963115113282205193336416515110012978514318671733382115419349462095854209101191221564219762325411312219611720213781621018412454222139209910221214239362191727652563729842814711992311401372072513910424157242190192291551287120028149144141402111037968173233114381981037914220315618107154221671591651391591731432631491111581268620961951912535921912725010119811112710321618771154924020619044232237253177714912122610421130172732314238131277216292502381741491272161812421471893310362209119127109185892391902192321892152321252161507178752201832131192471462351181892271181313462522471556024726221240220105176223170183220185100185215100187223236120208341126210411822123521852385359201214150172105221183279322419611223318720329234344511223112104185292401282173381658022133441895202347028177690921022135220231394613313122212916122210117432343501319433513655207271464233132131159611006516412267223501292361331484658392433165197441013013515813039752001448196642152012441824714112510317810484129181806321782112822142217192102516011021223174130501371082401441332109320582261361411205214448541771602171951005319310224121537622020211513021171332401051171265273796821972273212251432080762551971009217717184619718921210817616417832341863814374552554232732291452292331042245140231102147937096120341811948618121871133138242325915121124210174211177228214227198432344212721611736642189192521431046146841981181481861631702282182099482201943367642407516575932231081142201081801915423618135216241042525114561105258111332192371902511571211301232362222372001892192381311398318321912418381861091008611616761239463331461998165107956019683153164742171627221712871121238100227116137441572163420070915214475331302715123655261091311602289513360212441802091181891931221731292367911235202422456825993951039225260225235153523515233587816624515755163848115882242743318321198652152715621527921541231312314934203281581624510924215020425210217622516133192165152131744323108151207911759313236240161171783040134399621319817917411320013911661972431147341971967212881211715048791491663820246557818021011756379202871121391325211024322317219251105108916517610516153314512914424586359697871931091602016220109113602342446210411522116820718511462179245752532171431952071251820912634249214372032538610312713516719111140312555120659173104871180305721266128912055419320538431291106867298143196176138108232129145915349321413624812161218194242330192191651361491622524420425113797211411384411695194249846478066223538661606231191715820204162224215216213212935227203437192103271401562421631652515965321667810093992372002411472154365051211311649721016980252022187331082451331922271443416239211605252643640412819597177406717656155411460228271614319419773451641519322972710856248120082214136152108961207624648240245240244971716023015335162128244171602518116919533634776719483160713413237671514013654141455141130248012920020831168522128100135691031314133192332683212211014116224221495460138168570142141507923615936113113759344046221130323043414209125166254340722284214115814510612916319710045654110724716516472132401831391641032525157571821832383122128218762824271833411816522912195835114712330564323631241301822614524282184112834213200189161256813443301858014315179334170852063489372165111100164601592174225187226816651816427131247132161229148220633351671138119249331983220120193246821842411654822775225401381932471364779211019630246751363620613508841497417113638812636445138164472641341539414532541081652251674314795147765100212245232564896721101888622025129911991652072002061414094199517390882131089314587139014312733866820894249145962288193315218925581192175105123250231301923220564261836301809423218738126224138521944120382521471411413214702248820925415780591044221816125216733383237134183012753163226113731412025224015276202542032254079234161321571241206581216810838941381919016171213200339915710110028948225013922464722324388620314444043188538218212059703910064121401361311347331159152516233103124108230248232180732094114799116839999166199135143151591832004817598912302552549518925522921523095253582332055511672471996515188115322302246213612923124512872130402634802451929112319424619118524217355861881791072291351231957812416810763105190221148255168189232737120917917414611112274158245221271231852448911920919521422025422312401601971163240641415522124715515720802531091741992915871237132135109158254862071958619613216824024617119242238183181112216326218160128241168131383163230971221841301357423161247161157117822610387832346216101591351784631711019014416833732141115111971481816821721143178186401852101274418421961421742023246104931342342272001920980912110429823820567148642432092282144782174931761386950206138968051403890196187011732241106620601144618282761105222461741781481613617401481124198252212189262440224174104101122177543801441735791021252181351951822410531772013716311304996191452101821817414445117141262301812165020224319271322241512964491314671481781014620613344612171684721220696717736919536220118194212120442515621980534103312112282421623960403619581518780182160176521448160162217671955821551362087835247591045270411091536421010157160140392402162411934253163932492531049918475111161160191167016255163190226199151751599441127118181226155107212239217525215080245792154219118513011438107221092021811219480127118592341423634902362431441501751214916812661313140131904210414582392121931742341616421011132401884037148212022402421215136214165351221481092392171081610122066138814576106171522541951171412182310783086538842502241913164133881416119720226181184182191179845144166179951741641212342021821817025315205922313768181105241421009418758205157219424712719667911381291699046219135932441113222954824814719325172832552112541026818214234128164247830170461051281181191271872311057922225512516324489111254245139217221951552614197942485218982242342497672513821123313019223724262236702122862234251326018456116023268139851515711011921194724418367184712271846811161487015919548227179138111228816622101275016923109808190160163241249212231140194103189589972491724014419410478747783732210399058170121682292102321123215711619122513920325314542341374821081914011812813132282271286201179220261351002271482303015998271392071822225038201101191006654621652101575458338248541311152248326151133239431602422127618424821414631121671582121311511345128172412170165156144314021015371399070233224201251735111532168134117116162109140222625420149462174112812744133321358613210531681945478111311671198198368819919691198233108227245142241122251132361878022234155681611292545013929226438231104991921924121120916361143145426134115105224137981792415311216924714521165249168225127268211074233169462025456142211451471974118992042065281651311476724163168203147129204729644929217417646129244203141048165126131041021958080321909713415166161160823215370198164163016522591346818105134248196373218718410161024413288128152220104165233149623413614310713111516810118165457461372502361812304580170532237166814697722406916922512292522922114559106992618314618012914614210206170212754823214214624922412310512164065531562391712209313731725014981545354621123815224810823418370251811077717171821163624922410104687227218109413245129187224255135584424021010122415103174181321621204579152161709518135121205431615117160245248711541502331571562301626342541311836398252137217227131822331531806432545538177733325440161271741731121187825492751939810323329120918872178211957601123719720360215615611145203518057136102246352849112010083691201662532135341197625121172551222211921031451781086812810629163131222482072002001571531536338193602012241561491531515015134833217625131131081201033938593816718410210122979752431292471631063816556129417024715615619423323362188448196139512172321541074668585182189115178252512111245121111516725221192452461697023117244223236282231801162312441162151241002199217648591279710223816211623114624415622925169432112271501654454185151238248552332552402721927187178127247912212385510518312911914196190179317464216632253222723718914572477088499161176131251194222218292422142720322322118924214732259512416215242852141731662203993372552129125479189165255173175244191934625316720316522324614960235411241013820814525118415719315871109621281691912359715525181187247731033024018419524716435231587123762196164162482251182296323346120210692242131351202114611411159245226512041856979217218711339825235301121481991891331882502081392411481832411222121321813301371519176833810731503217152192301015815171061681329104160225126117105176361658632129721842212321842179623559147213246165161233729819992272377039201942532213634217163772253432115224121138241201569223250207123142342302123612988110401226436117580734615517648325112114370231081371247331431220822936676121112092138214228974317485722842122855189698348121238414712317014864112147935314763422012717516119711316721146192417629792058502421482511762710122918922296235561539012772723021812142253234694311456116011259101253469101161108720691160164212242164251821032493721924575541581616518421710416714464392242211161207338119214313413864106224232157121805151862531301261849325425115741539324005200232239413417934102171409733199172169120921331091111104120315818680182501033053231251921313814441313036241461152021881401241331073312028171531681992382118914171147154142372471562011868614318192891762079242732221384146202162222064158372192024817135200676549114111189726824672183613241175215591759411619219722944368032422153120351127110463261701822718031822849021714615822870171522032366291924811520810015116112865184213104189211100187211108191215138231178118157761292418424819916818247245215461023525212615513985410918627313463252497522520942841353465126206226334115324716221831181042431491112129111121291685424419218182205371922896184211515335351301511401192171125796125187441831381942138382318310064188661813670180176162213211179124476916648159783122751486902541142218249197228148207451901934312485225517116275214197242250125202102159211552262131576591802422271021641882121392518633364116249134184170205971331712256751021551115012217119510215216151078623021313322821413905159224991210440162412352001221879246199244681802310668617252132162551063620618710172947941836018311817775716919817387228213133250113247245176927351395569149108142422212889178411621203522491700194252132112701002252501681621411752734102147120110136442201623895231541833844159220144604215320016253203189149224469645112366914714020815230151351416311751111648243188532031895343124537592217522114975021832482511761968914411815047114010118416411604040539513194145194982369882042094181539320525560202131831669314710120310022216288917721070200139121752273724617810178218127961771891212601293261147146236224142195163321292107151171613515810811681533155103161197254652211021012292062022023515192560136320425012451211188179511152315211104151091241236172927244144939718372224920920193222966364022815331125363226013928165865319813318425210397201801716025183764618522145235774208176818920360149431242131789349261216822510684165321701204566161316920520420221138137522411183289141217203431311722261422002221401223912608116611112218687155117387230225327824012286342407011742120467691508184161053419396200141240441209460141291386615719712158212824216416923230130249575225367641871074910435452229610754111167378054216202146835211110078102621682372281001991521842823212997801072201496425314177105322501794512623211532361711752191451801223994761762552092501562521718520831812714062103382398913475941385066182041772220450231671564622420220891688691209180122072817931197142716751613316120824020082185120106201368434261825281961231355819441201146682291622531601541650215921281870155685292133248023423522983514825250119213661232524448520154613613624724452521461301775820324023214024112227402542188520611413222411215316710611818231129240224181452113598513927221111091658020831278202910109861222382122055522161961002192047620712415512770381149815510320695108459010243941024592156229941541059201202122037687793154147191242223252724317512610712125320520455222722181874322517318924111123914312512312752914418351423814113224120123111196219123201587223012282163111896127232912516622321819242238222208143223142602468125224916319820651150235131745915118815154124151541252471546011912131571551324615522494245214911931841041851212092207205139230155231151102131551112132272081984910911946217111552162394811212017112911224314625322146106099382401546013821314421621916111110229931299012524718178101971983641721421901667628330166122242113373155418618921768134315527109321211007412947431271072492114315111510611457129777418418715463201138253174236364681062241463511957421822411387302201072311412279167119156721056311023262149118245124542266012811223496834014487908613619842322092122332063205132812020419324666108237192198666524666100183312670146224182690190134601191545313110197184981281615911622139111323419337461652462421309091751870691344365864332226981871942464213810120315129241054651792041451822759168213324997162462371184723417424513222525210317729392111222071022471575535994067972552468298174154228144226342451942186717320207510210276118219842128222110165861091111203450531587525224812013822247189206601761272001281356113319216319016213561536121861023911922020831191932511492016133522371528795211634446112101188692325049102501968240441291817611391841721991681182036916717411682266549109347539178834851951657452741423815023245174251237190171245214230471223621396325589124199201116364313313421916124911314534135366168362332024232901481512418155498225084691221281011282101382081621521608323514623068242128214164343311314776221208206101120651483116595260779814525412611744133102071311232531316567184182208189369811311926862262132015222470131113159645131229611291862221213819211976241122221071138238194109851425121961253237238911514487471006512212127221252542112001509918619017923380111521892143581890235123814910416714823813180717518067238158162401141951030194197115413173148858111611604411482189691992351141682031584102236169111191442054647213183141152119165122149172185178820379891901316191113331251792431701993889160710417662541257214891802331651123248281202116810968225154132202205137136204235111401396917412619718423085184178150159190118123662452289160291211951891009319416485592251997722520924312238164217945514537271165359226171182381751264516923814919617023720118117536213190162172169207431382686189106882452619415995179631611141071162011982001621811849924223415713421317512812723210711936214236641062164144140208619161641722495778691492083463241149919920318324214252181105253255591692382312011711271458424790982371711375317501862341579721591761411771492468864202213219227431821322417096241212191462359475892532432281868714710695213227170741001052715834169102722623517018238841107319622914991144739613717112470704612011840105134131802021032051493213541182331131445616115692361651711961819110124912728827221237961282481841178378420889201446143161181128541981491092148532124114719180651411335366915817023718480131220201132262025524329183210173203183240169109180190802017090921681081920634594621361501816224521520312945148102229118217154321661041951882361941779230145491539918200803014171401211301936126382513192512083116014217810506412217860176401231082011221842501701731801681042451822322261817216816169129103195134792141118136661662131295629892972146138678211617545184119010521825095322429810341723346312115957351951114224146871631062187772712215614522158178230852112182150180106731591782026425020937235532017141381992016129013787703619324836112061981481741351386410012022419415224662001222412118919310322522617013112105197167226132255107672438781384355203133146166618522252111065418521367402231528070160187025147219196537214913621814874846712010125350109512589811061112120218319620111128138152144104317537155493031160209575410113212714219731941886255662029817517111813224810719938153199361531932423916421613564531137621818445592323254521940133481917848393133243291971441144711105234118185172821921301991832008910935213052161537143191383325081328412836641771312291951431799912018261321170301171321701291441923724016313641813613264525475751185135241521572293126149546038991389154131705312770122238241801061022491631910414011090154239231239501162601478215681561074613217631251511321748501421401331122252448447180214116147774066115810684108214184682032201562521974660139115100922641121361671221267022213221614069233142241831111051701261699718516536121243952312521992559821918119918611111123415893912311969298158391601381299661161321761192461341901793924415793331272161912224822118417913576237959123918123210301531571332231162361237441202101452551362312062461311171811221499711360801923211212519222714223195541781410701271711671911331341852498313811124232190799114471882554923972240122324525016618324120198238551251291371945010515216024813912916715111960263215839189525779217175128183441202121472551685931238195110501561208116434619422512913915218653984211255119411873517912552452346110439244191488568158244322552541112501019118992116235146173253687424320919623099250238831692154715465412502191152411162551161851481346212213815824013015222310119248161082361931312776110212233185108116304213707212175101980161160191131861181031713324219251091629172157228162174312411501681961892168213620022175190342223601211281861351338114568145245130130322254150559018410101612031812041512858381631521022091421112475914833262266710825022472346911521149253217791632351523519676810562230241162199611601431327122112018621093387144661662206013946303122427336319618602023619546180165201094041151081402061145238148120106053129211161193113611781423441124220877618492252228501212008213616623191589246515894411231181819216026112411625510021782248136233442422814810942251455515212150192932451217163180135142501451131519724073412071289569271351441658046181240206220235131822142274110362142622431131284115142166425081104148568110610611416862605343432101626625091641196823111320016722090210181151162210412415712225020915088100663019219517817974126110102367422565177602374522923735202159934638098361514813230184232208343641771828223966181157220681627625020919813021927133171115214125172714833190324019422459322191475973919213170203135143187115652471759520411025382127225143812362141108621542081235824512212514206622342426110224411920224812834618414218489114173131705916947126524823913624757121128200981782481883012861442118119316473154825139176312603017610922524724801998410892236469122641952331751410201409114316209152101057123692213721135976917116716418569121214377127153173472401131971672084636351375219243340146652351211216213213911142213069253109153222970251228842312447622310811525466103411487068201902012422922162162110123136191110106186103861421271821851615210343892301692193725094251102484611510121431172083322205953251603317412420310952051247520982119696833245202211182838521914610611822642924318815357521211443846892261721521034190228401551034192019519911772920821519015088243106662132062484240118459226421836516819620966147164190181451278465245182216210771152056983763080136218918414412271427215696183724110833238015821534917324969234218191705419411214224214111723743115107193230692430724164156169249221131371931471880301501811611362017174698220318921313929229243173197323420824172545332112224115961141121212492432378920316516578981395536872394884239228212081851321611917018214518329193571035130922259472312014611587652556410832135411171752633129106955321218819413939210210138178263521934115158202392341099922611520811410011200223214923238139182482139381009025111517623718013127157186254231692351261109024390234154871227170871218120022218236168196154237198186157820987111321719718110499160218671637624344133721636888267179682377251616520217014580296243104156160197431248516014022414251511252401996438410898234191672121721369192133413319613110021112253136921863011987134194212133772291180168542263289971539818241511072091301521889110338919412514520210193221113741141711291832152241029513523112245101213107168357217814821317516611124810792142248901062081921204999203553419524121155378077103711141731721847911912915918311316020528821061191811213915415710442180250772221702161823213277208617811038923585247171922331751548616122295129745103129185248560134761405071196146141162002534086516318179231901135752142262921524378111122412235057205535322118920093543520355901595158497151208210792225520013217233209381326412224218121246341041286917421052061461971582422112153115173551501258383939624324859130150195312052020212413717112225169932247401860212234160702088420824011210616118924225104129162333211677781033350872308622790302107331911996319519610072162524850133202156154234932381699496431291224651575102117477115270391522413909763223821221129240161145105147839233185117147141174151358271199231767411322547217523166759228192441929812321714084239232216236105382077495292542413816664204100461131487122817415716217914388153281062057746441521592018268631232431911182532319525112725518611720715513413112322715236142231911232299112335140123341582153239236137120103792481871231942232192925479687216251187662231275122815111172252120119248872393918129183222168207125212812427711923318318937223246641522863233200125212238125196180254171364716812773521635232346112820015901042181923240254382322071602377206251205461841191542818811315196642382211022232213815173852182283817112215866641341881571882523118722420510023196118225178226164725841222200225514319325112325315652351532261311875111714234819954471262262442044722520218315094011763203199884938972004123416216618516760128192179141101606524924243146127247219607918624315933399324916601891672113369014237117157761891144625178191097725018420325518018724073119337713810416725314313267203320113229231160882161937229331302391792316219311318312010012810913520111323312737226377531291651172021989410841066964562002840261192322101121247218183512666130161102120642243240207197236156317792229111155592171961972021940237401218428164261062214823225037107243151201167631381862481851742438412223921723623513118164624676249231190971002725620336155193816911214989173205302338387250221255622869247105200213582176501461921892397471881817420596411194222108118221641020517491451581554556116223104118193115111262128415524778187151842156583141212081089916522222923822817871129508163109266480507018125522022461231482092130205144112372012112024467862068513418216020110513013223520269115227496119619218579999114315525010476203181659422324232392316481141391877524680224010682514998513312839101635313848961096424212816625162458711721833410110005316224712091161001512046623025201401355206341543845100120129651951474584571002082916996105253126170441699542914170165132271491714608098202221316601592486917620923697153642045466240192125208230624511162166592439723218579342181423965129261159121235146229651871110622573119469277152081911385038412555117020322714760561691481502324445118236643020010613633423216079819230881819624222215920425410111111141910422064251729418951105213206208194852482501425588167103249230218102358751502318613523173129481365161225371928924401955100227911841063419013952232159463820932529725458932156464939161322247606032370211291381284743621711631172171959821112622153503638117681242302321961081242301992710824819871149174751160172214110511721255317810022136147107686089249143745214374200153981147120172521116520902221041402461921302032242371771301182422266416891122357341141008558116724310799745523217118313169113175185210167783250771572321791792521809672162117761621171782015120790186601198560168115221107250218871919310723522419016221118249230129201017535342029123189138193156426198234441791782421631391691671591696316914371231567917543224173244921753445713742941515813501541523414311260471941691311911402502331651831581041223711311616493225581357105130187131163207201461521482261961791214320128159100195115173240214806346119235130178131189378611011205173325515298112451178412824065332001661825618453269688921378318161186100195188754511110611220620141922301691424290175171216101668942001221288697392011939147251069511499210843157148100317715716336984491601319219716915418423922843045711206092242641062421261000209214261012034824087218128762914066753177147233115457562003120012298208342441281682726817721252571139204204206206135381458326801732262262256590961371486552197544136175865202062582219222622618136251004418611661114130231511331506191412114919920222477910234164105160161441091001431461622532521210023346170146228225350141365219146170120157100022894548019196149111661061152162811471086010321796827171241941082031135128236200198155178373312521212621715080954527255100795112223010223441158668643615110821214911165417089949831149206101121671901062511812324921642432322164412816618372101866412021724120267272041796515172195311124463253412131102311913520720415618816127452541423816421619823211513419716567152241621514141732916355147241762120519813121610511296264773188200694318646224261155199255204244116143762065516111422520210412202832441925661245984424386142772042522157421951551688325265225952182452252291362018013818515021569022836145573621013263191886852816143111051449402549810357364922218123310519021721712618811120351983921723115313911210670122461416196102141140203158144236128200135212199181248127128180192133224250147132061781233147146297515721115502533516250230100249163138554418022719016914714118223216211775237149991621781663888982201971754219204216372098975126254191229253234141162223191972532371751994255772161902211441225505024039244075130247118135253978723212311117225211279248177119192341431009318512817511720925321413013510925471237254254224783121231552532162002362311462920958947104481922482919218938716222118522818411525836621480112151182238719216418924724018977929184215381420111213610913584123332382108358681492068117323179582161362084315030124330224339229354216015451271228522716661441611456472191240126249482272182248454271443719265247312411022916017293914017395361171567218511446235701312451021312371261711871911957113915111923063108396425222011162215268122104172154151376218123163103339424224145188498616641761206743211721313613131105177368025011021738911221091311238516999217401741162111012919513344577213512841155372141972143544920325321814825274824018520051020249169471586064838322071201606252462211081141161565293252601902541761742376810622357512422229521810119733104691971644249232519515339214200122118313443101174104480217228334173221443292284220719714471834511884115291761271207201763012816714960112731217630160229134581147361361351342980119226106142137171246571486223509212913251168133755186905620331977945159195197107810523722011089202162211452382262141421048723520523795258116423621391076111022810524721591101322377244542028615024610619112516023320421225210187474513527143162362251461708421760710155151185484592269719332202831051651729089169162149138641491094912023531852211151928925013916063721822188422492230822012120882442071582002816123961381041026615120124128252173206238831982431596801638720610194191152125179193124183197209223225121212229356120869211145161710022413927249642402438119100403599528619235147228225537624123111574775194511638423216071502298619714811172901891472446424961761213031160181598461642514171099318919180272232219411184825114518617249732302414118210525301241252318520366102341627421519785210144130502000134177106719021714776141242091011811612444241233521301311459310213754491717223716118210130111271901786311552523644249103174117824617240147176164159702419837912401291994520014216812275242234871607619827236476915494138762918771124814078482071832013125014424165093777615488209115166102346339391591224022751113119112214413189891859631713310719216719319421105193429101129115115101352101941541801508622492242115117924267252171191701831396161314312910816751161381851516024212410717821204112180154421117820894138108191653814677521421343568302088818110948108100381015316920240111982192061382017055408783362226401026621985319652157173143617767470221743521110018911784521101141562468218491435120792248717817116312829414158809522123614060226109209258051452545387165163501001131941461288412521465660565113502237422116214461966383331562041333213922512117198139551077212149211126100201168442201742388520871481977373142346086215214415970189140861031871309713117720520420214142901079025342232190240254148218291982181577022212088969269353282111616217228208216641241451472161102153314623871901785352051810921126136195249214194737019920719414617312208119602335813486167160236194176193164652263915515635227501452429517320825352529141106819821322015849114114133121351111206514412093018416108211439105129112361398166181175332431341862917737235151567410216418623110223169248734880313166412322717636921632991781571122211181681571977816819942681661081152302291497617413142222180200942178139114152149157183601752647876022223818610902534572153841115384111492242411178194342116717522030233955921323230261455850589966162117701701199411812344944111211811657492136234160332255264227891084767139261371195414223414815013101229791223249123190163242554824295485128191382522317678117787711947241846402042002021571582332915510815319759691402102412481286272346112148204177202241591015214914755372211891928118850191102145179201115813823133016113322669213671622677159103332733180180133142146144252901047818052188161168712125263319424115932114213764301604912141741339510286647264397654582359202209206127269819212361462095845212411051384852632072108929817213491362302910120838159149229311711796401214176271714713711210424281241217191472914421156688977781181413557721221922219202240501427918046702416620723124819936164207761191982017515915585604452125182209271599119034195524510812217810924119125525118822323724618918543992152354912322314022019159106255110150122316172228624512858561624625415533239191190226208129232243127521181271091912112361272088624818018722889792011474623420116621354218242301821389164525244164211247180432391058719013078114159117251191233461441443952147881773819489156162893520718610159118216023716673195223244149208236228222981547376408464245062321791413124321838521358822173128103184313161431231030177193791912425133903214730250130202183147592253024080591259218711422991431441716656219223614613566200112727513212817916024818821116225155190194111250138192248175934855297310825334249242185444012921914114154842082302331113961240681987186103066216168765244697665130241722211456419701231612312941901921181361601444811423317211241348823424629812216190934321429262411624577792788186221243148431364742244118142243189966710616941170449080133246172272026610522310818011915650213311421756314820824216516123110854152434614862236167125197207461511251151652262172291147718821279720617060232416992168447542151941071961226223721965224848024624018874761131972349140312122551181717461211601066415712262538022083301840142391772511605917515923720816825320034639816184166236662207120629194195126171742042512191362417199161422945802393411322418522296109631051881166821511242502024125692925520833164618051001584220566598285226217165535023786742416246175181258024110423716224461247761446036833019316941160202101806786176023035115158854176135100302422014580113332466823913720222625411713458180214334171846421912719936111724144162821431624200106168141109135216189122331712491522382261032094519911687206103222106180222188100123852217323318495321512823112151415537325131025192228122362531661008510030239140126758911414812228685424419214023692144105261271752137192386717211962079812812317816991110103883325255140214231121397714718171241169301111767820524020418122462411481352117314246223011765162244101221609621341631251841862343162150965198221166324212463327020124084318702114691131239521522082001321729411821373876885064134413718016056622551201048131184202773210209101271983721912622651222242291681801614925352271783916556193146201521331844721617024222406121476178211449632611763015912124019417602392518015423895173761962471267018611116517554185238213148851752259098210204167193185241331991992752267615136657619824810025112412373100411322220216133763773197203860386341562519615174197231127441755062515147166201001135972601141331567538892448243102114023022060193128135473410215141211219166166122195252107112572145919213313510114412622421211864661621612241295627154191269210011612414169262021342291651122277966146103164249162112151291601792452065417625557892541139221542272715362546210316516721818023453226130841285223564273412872476654168171331301302061531441007221119112272521155535721749433511116116515223882189353079205356228130416615562021934119919610314321320990239992452029824932199321091683848185151194131962164451131652712028961551901013710813124488411121187108209871097366129111702002134393242138225134996719187897111735771801891011581048114528421217162129671631091281413820651232219312881692351271410614211616834287782254218010680127104245239648624613271466419820236621192252111811144718219877193471135721642922001518552061946711515202541722448677511851982351142221975726240163225449218814024446171146128582153391061837120173153203221255120375741229118112241201841616512921914113620324171557920724217324021570871101381712212615176236711386513587109787021717833150121919369857855121135225141851143585144574619360531976163167104165167381709629106255343170151928513910816518822080262331948384756222116949540111403125545146121184241859186228852272071037614625236311163112765139921015056485139152551847711551121183310924786541999048515979381532194987924982111197212522320061308320412380188104751627325652472257121163238807416811321266116233585202001312292227415616520904667802551451881582426674514112815013111332916152225920319322720124219923215811145624513501521572371591581581161176204832051262232107978651447949185241142136108254105168122612470122238507921310016310770704682155153145552239252205232252214554941031292081541491585951205711152472922917950115392520411517861161121117518225316399172243511383493372431471471661342251544236632526724111111824922212051125223158132247142342222182736111211295148106473613911651240139111891791351348846116146124013555676212451244203247116771991781759424422111143122208862082232301672919921811416923191217115191911222387150191176210811524718318619711823297155151741724742462073352851284413310076160145134521622716210910180651282230412871292522414919195058165118211106161391429177174155180246091742401849192181122203213139102125221510414511717115618240124981871341551088049890326076351001239637682521962451211651754716223312521547154219143167180282112471582061927190172141122216716225332328413517814927740143381436412121321348853197730153359114238154229649411475611173375632531602225254123111060185147706120178381413052121270222220172032361382041051961141312312728129164129823468167781071252552128916721212210151782051441601269212222041716833106129758755205361662411210962962841102152151052315197532873104251202216121421373129193227145812632169322351013110824713111022616937219244236188220778015302041785423177203237128122035074182001749282552453823118170199181751421711512361512351738726104146491951261732093818412220111424514614925322634781604117017613815714321038172106433020682192132184218720237104234104216220182105271134281708361711852101342411061801584892248602210461110232611554511109311119289231381481412391152095016528161361626219385768138136247792241983517313611150253651391452021562721615415512411379245144651451522193171119941711191764312815911996161143213206138612349413245180205130148152184401356519766376766618011615185634202250662145920524618745833207173751502144724516314442211671405523411523854227311281213823854675718431118228242261072121551926123120181153241517221892338713511932992001961397602292071351061441961284446100171361082321291452411531791782431627421412940402531362121737218865245831351621527192312341751559617618928105362111332162442091861721052332382118585975171102100122135682571235178231872022001321861029120215487211542521171162332501696081150115411143181863523672041311480918113113319915014513584111914522620141059499241900249196199249194141452238797212620560107225148842151811957501401562272389911657195995109016236549968121092065321323212241853986110771702171415415240168220170391072213018621363217701318020620224020911449100649828185234150587071134197324969115205533121100652087182738718545101245207195252171392515667163210161719211319323310523917316852124230672531711172134018923795322410068206646413713450146106182371631321711833784108902364052232974155130153701971022065123196151111661414579100140721581541154146977021321413224277491972352272035423319325133117421824511987773621115423623316922224025221313421887822152545392619122480231901522264816206872092049612016210215129232143136206241811026226925115252441960741351922162261414111717538148111892381701561452342727792733772122111417070103204205462081491113361192192451046416023776226881292401924536271392361019922611514417223660128201661641841607144820034168127841939020501372312511195104451155681531401427172073016351513294499192013230521561821507515916018320620524671221726510216818617118214569103769213141671701131285016653013643809721072186202173811972351921861202212075218015941708784241122227265054112471751581531531395920220216410021185178129198136104182198785420834191232315223924810153407974318624266703094142160558173111321814881222812241196213148936192131215111112924464797618269211746517919341112247148213402161732096910723115511701991017649216162139863914521819617318301861702059213155227171551793022487143686218921522512010951188962525010615117825085188179728370920856209218161121144225161491051631917919316416320255366421121410913130641302072351201691041858255262001881516783126178922558213697100763815414123617918719292523521318719694134246134422217116116417029139172379922617824119413014810775303195226210225713714316921640353212911931229610814651549746115253209137571477620689572491392201012242501791142421661011202312171393262218574231591387354152253115451331123652205102102861581213020520220231715910341681576606713513114279491852259202150186423827157565173625321335414354483919963551671282042441311818061158102831291344950141821818820886130202081209410791531502301374122118421293201221282541762522132101871522630941763836175147789896110782256075241291413619329195661771762418433271841061882225450462711336100162193129198191192826059351512296120845824419211487213236140124188687515714911517824216715523643156694315610124350242151230228452071824579791372041365021866182255107203223253210253235223231236222149186239205184318799142361611531962083526217647662402146210112981117501132165912319422221977517622162125020923820819511169952482042121231981171831652409771105127123209131862552531501887451851590188641271711502453917479203137122104581100067271001801374527402501712063612620823612602342147616922123115329417989803010105162192251522258811112391971045171767127130541671472252302055915711924061254942201051133438152412550180189817317425110918024855252119113199102712811125222122231227174220719318555274423739127771116157951531749348223106363711218321711719121367361605931462036223253864792242180121313213220979431547643340942099791932271106314239182184110555772331931121123817620521921243102233438525222014774746760212165202203506215185404720198442826174116190106331007419664561192058271736234178852103618255220811031687721817724533205115245612362021252108712814414214716675711921978164921859619011392121385233149238234126153982197315721418822113213421021809896150207131391316415119187132641641351152258025465133185239153311321586923037836318620054982014210419910726832021252081492197923031249112225391161461801472221222332001512221221012995233422307812516515915260662821722910420147186255137502547324018412911651632362022512469092382132521012421857916315519176234591591175202185301162171181712011213177174219255164183240105951702551311415016317287169112104220641987100164522995240164183248217229821252822422137128269158237456456484053129224021520288256717710983151052422471631101588174226972323824828130771131301601221224013861120616521122533183131942136359035168312120976546624791157215461021191241011042486018223310466223153180235245575526204169253291583961121223944643022716623730252147208506815722271221185792511015824521279123113214255168431431501516220933122974178212149232014212715197941362145235243203231246310591531582301453213820112336644013619459193751521811317035282201011882222421146810564104241347173681931062088916136121150130151194126392091432151552259522642313149212237136409261452137721972129163199164451802310712514411623178169216341391711282261952112863197149192242091685110173241824714013018435133200194531842323816217122012783567249160771322161169668762181441121951681521806921434932491661001648018589956918919725074384910823496168217464821423768562162131764019107158204737023520444239988741503893411852271474412020410122242144698064124191711972311363024181455813855251255722013211157190238321992501542372412131551161816820614839226773174631162181110192236151587471199102252213210248161174183122461012065022836165118751451548139195017019219114920383871911029024515419098911162252501331501462094989639314512106181196862295178411092054714010811714776134282191521004323524916131175218158801822512620850176240197182821121252224613818214212241365233441158634272911681752276142346816614113820526159104133312509713819325150183107373130022366114101980207572221902088260423819137143142205154146236417389233169142419031145191122947822584163271216410618624217312040227170215182021822241810034256610752111374938193172129841292065010845042998411623021645111651741845117130713221205911727910837931961297301510716104110198206200194117179502438116116820517177899725453522884189295211028205242204130216131187212931977422485168299275115812402481562144411719311119905990149062184534376218167721131202512324511180216520517931173291883114115618412314653182120157129953167221206201101742039321147146109195145961783717802313812299982052301649010404012920592281701755417531061168918061823442247113646781452451485813261191353005316729214162140195227512302191391622022142352341823921210914334187245128177145913510017330218212193179191815720522822577199761471462361681713216018020925222471213163241642306925021519614966244110135158156155573671229688762344011735970106100681242301241234917325646715110820888189117699420524125206136132761625310525158151561471914024625896281281972381781011902022081305889612513583211613222314416317950253120431031022282534452101104100218212844714231917538165184134199100787920793104476769131130135146249772258414771451771083020919221815112110419461226645435361302720448945420113166152601271816625514716195196100199109545120604536202192442319182434452739618518312278118193180522395011921154289023178711221928914231292488712971291478392184106133175618316613313498504015715634136129339719852309840432002337373142372462426915016257105174488724111410720913011695168213187442211805657362052919112217922911125462255311262351242532051723123211247191145176255205152183246196281481971332461453021619163252192126909014854292275133142381359184472442371891612392381424919517414414324713431121592302361674115739173183462296323442127210832411841872368171201163246194199237254199237121143219243159116250159146181151532531441651619097224106322531572492872128711001282414125219832487779160984468106129147230181229910047511141722581271091011921706791189135604267984812110102412405461174129802472389725518914215189118112292151311820250219915196856622021889121701442512814725223634142267791242162332491671711331122512061661297523121393621554119522489622720313122241164219207831416552404516720718523412230180210154751781871614241224136243144100312524237142124251239209362366512813622651541201411661236021611415114914964198971362091461291261665391012292275311520014132152174682481322431429641442549632423312102013618322344718889161251421473043726129513838466815431116210228144203231179235151991592554416625343211139017159146341222187019866129213153841143178246171793118224933102791120016169851581573324915118851353156120161641241303440794168661396817796632933699880107981997916415658125233809123452104148137167180242971637611122914962291486571971031012491114820429222521521602241462348114371301498311819214310864181161597863245652162177916359791659418910419011433231202197281376205019734134760222471681101748322914516541848816811223214421913782502022027513813911214616981391654812019747889371698314594136412337551642391308220650919031511213881437322420921574571441391032286416515618113010124578312515412327301093114625235107961711251535911617551272222187205118136129751352274629138237601531141974128135532211122469793519819142547923818221617894952106165191825455322207116117749181672041751241616194121112411221128144163241129231246393017155190318118068401566716332667752581306749227127158154234181871062081251762880723416117221713414417113252551061011621721306654199442422414278200130181614262393963166116189220149242154395922846985911809711364201122521842033232161676410422890581721415412460112131427222321291591732122072022403714810976230241115312019812838652188701019318025085446182151642497622525312522218116724219225121564114224169103164123241561951638319938230192143111124882542342178912621813915114112519923213616113015866302242036143436316111417119011874112921819222401147822901286985109692221501852021922467016182501881611855316012556691221281791385696126137446196197169180181637995247111843223581523522217741671556019535211126178341051046823452163591969131786986251154781103460761362012181871382213336174861851368284125108124141091119712337979245198201116425024116515523123120210586311321722412132223136549410329195352032218568190722013664227317219184314813313722897538395964221452656984491147167174254522644182149141215896410711242196877515317222014181483951956881381191001082215258404846209101601807139208142173359950105155228200180153105190184146771842882711992476993211102331130162910122124184531382532124917111968201446972171256910313222821433361861003572241101352733112661466117810415711320520773181769150269121921431981692442261631132065325120926161192121721723111202132100438819010499321201240174210782086623411824215190386710951210611773723533194173915310323441131486612140752003019151573349103165183921431508618999832101533010610734902916208310018313421571028185194219202999522222919042188742527820910617020051204724212221242821642321292262321782452126795183157198714490208248128162717072100162721938016122620812023010123132231173704511212321930871781718812710011638184442620717214018837246178211581061042062516919081177144761803722024189892093989178138192601238192229381542271642652462071733015715251604699106186123106134103180627153438154289821456355923154971611711161371671241691751141622091291511736123904218918251512431261814660524210913820114111296145163121889519872402214321191151186428723021478792471611861511844224116635267260217251315226312286218610013118015020170231642402542071948270197103207200200155107466810672714172551860146413102081283836116155613910711641522948391679670704624208512875102102821741125714613371031138313616200143692148272952321181209813955204206200199431555449205254372302528071201749120917876235601252522205610416224412725518321255233311012625113410320794243129189166131123191523814159721871717914116235113612931702416612402462224813612911924613218818743228253933315923613956241126982198721427245121152187415824586612371691242208912217557255110163239126147247941472511261924523524724323819415916125317323812612419519211691224161691324983236802041322168272383422318922816123335061106861281965712514164225223162145514153217136177141178122134242141127332617355264523618110542411742542262340135100194431841172017410713124012232130597724866211342261121052441595925422565566223420241158411681287613521792152183221222101571191791932101133418523372662192412282352365510413371125124227213145134250521714424861152186124218790321442331746100158193157127188241144885021685254171211948238522092301991922377039111233022219299876179525016780551492259130249214321618712546162481582401918184150168511432491442374168243181122751997383195145132198991371571672101745521616191830125228169201300167202742241173615311350239842274671171801130642102092521365740681286619912654179971472110919622210648402163921716841502531611332551182104392051921301292531067219247292521921281651021481041387801932132221331291445974281962318720220186249139164511596818215848244156205232591515921900616410611133011617630964970104871385218418482342121120051212136201945389125136235721059010616910669167292028910512340734118964492421202032205310513895608219415416920704682014915726315127657482921051021291692316417421347817423210921022544197251442291642041319224632156186917494200106581542081203619022913919619017923324822316244183123160724016711316362231218133172911418620012871097216255362441756612750170222160251170411272316813116014110031784225533184808464641512143731591452251493074208231411671014320914113541661163603231243173133160254224136623222513058192323415150126124011468105619689414293123612622150441220126240245481272922637249066122342298036621635153940190153145140201173375185421770226838322118429101019432549920238279725287203117211761741202143137211551379151189861321816139123411616723824687163102154417821135229213381481091364791152101478817741166104109164127245172116239104362714714226625433103116108224024223221623615166826416065145393767147152652513568166653320472207376164182402442014612120645232202212692312523012119523734252171112151232162181200137140121441222258200456570545636166120931041102451079197101192298271217236204124164421824953388376125224153147731666213415487200146135105581471081346613673181281721311981652121891548817713252108921301213616811268426020315621136134179144102242417231151149128719921720911321716022414713781126236200609111036208110180351901085118723135683316332178211611701822121778107228510831316817835162511983788160491021641223311180164132451132199104218741535412416549186201732331642271292146492516882121361721452021191644465152001221661704216076202227131235235101106181186210202481259824514216822624516010172258444190124751201932614469144188145113180952721006619721424413255431191501721351021027198724416159188831942889918073209301541682321292001625316022413667211167703438491082474783113146862391404291636121159514315120181172226851871251531831141621935434381091302226041217582131049523317372168196219186571691482100592201965836168140156493144309623242123161189104681082342402162121132502818815516391462521121821516832361331609494142501417620015611147194173241222201104161649514115172641221282361782449692732246802031862424516822021253191322271802342920810516156104931785149218182620716436591544642293422516582204310310814613238200415463061015063215862491177175739195393037881509151814844461251221501118678254184100432422498214817165437240114148171949614518710811415411215462071711587627141201922301931972321874167165249254106133254165112163172224137202693282501810352121942031716816611620824421190261121222125622668211737167159144108231233086200915669219192372272445419689233171157100112141377615710624220812612417410208250417055100671521272453412325223165182411721692515419126412249529835186120195210797820917413015810625400682732218156156665272136141201411745150984655114519417441623125517840126154209199317611813716510018220921229417920043911007215818581271132361401462182282552529513912625327247174932302532512102222181671271239528431154641249695228126966323311091006469216591231041122241895586126240702002312511632062532091161896225597912171792381702551181652382192221701111864330183236310624563106675624722011920816193513041602297110558215849172110817613467601450135986568866729121212217223234237111331813218267034104301282371392423118121111219313186234331124413611517557621446616214311061262461362956715361169117188136663155251729423319421872251615811124817111174122003324018443255105791178218117501812338454821811913410214128190511731192262183922112612016136712272481807712401721830215138255931031453823840381420212898156641251358444652837136372241442382008413418413317222768135402520847133197190813125119125557240151377254489616218011688722217310239843200107211491252152151052152644662481326783117754511912020122216343239492021761435515723216529391205591173812211117175150195461231624218017588134171805719615413518717716939155606020619267131381801611516312318022325243751661521041322122222161707123392167236209224212391652241902232251212084122485101120158528912412041172518145129471531731423151651721627515045220103471512408520224824223691072434240132217601517916021117230126123173410111422966142021923261155201102668614541602061362071658716010921424118017514418324820854041131251237213178961042713124042192698212820232027838113717711420813878133203553194591001535496203456154815105168138233962241451971912137160148140148013110771387824113625321199164551414415114233186931252218568419216721256248131194187102239581011645719644617495204623915178135135291581676112120808188118491556658189143187124253293015614623781582442281702002111281718189248199321552426616518019165151885222563652011521681281602493113606219221119241153215120421451343223013817920937180409760791841220117133301921226488187204119419712457233651788055080641231424021273506013652663332516438201146113222819619221956713662321711282101431722269012972220113740132208252902081721711325163191787221196102140136782512331386823212918421013218248032158966116024418721523713230882304414345941111682171509217921318410676018624277815915715313947168167662114014220528211555338141703227448624813104235403021112757502114696901542319614524401581621341582217150712261322023611372317213442487214171182234425422714213732163767103551332312154517620206762437677113142215209661412000216572313611568845886150312617524247243194471942097321112215561132291066056100201142224224149240188852111401102081813397166251691908821894963918424518823666176127218246136153558230131199140743126110154110242198149108148212681201042426718787662172293578478915024323414717119780132123241193381193614810994104416597210224323166602061761361808149116211113653210564467221068112163684310977215217259123817016419312924245178254615013191139242416871201241282450671531744535622412711237165961264916527652301661651223372112472202012232182116832341861917012425252440672157267216148512111351836414812824658140791784235118071102716023921812632100276725112321210813944895945211593721369211127235104141221161272914199382302085410992175212732197221549116517122016817122217217522115492183134614315122143120127209202415014214075271715154707116310624344133120151171323914844184132871208812453048346299129189241037315240187479661176571607421831625411682082321622452089916685635517325457164382022885128741718732860218103324229855452602114113114122811610818411312012422244192402923312981186236332091662251132332431086917721526264122128102171089114587352146811517252432919722714645178421744115254271241216362432121161552140172561805019113454382032061595217156100323159149149632017355421099817813140187201612172326249942381651582481451138911413822247116852241411341381286842271351271771636017810422168131227229112192322511141112051230880143711971250178394953155252213104665653551671442481891814135196239173528064131621751361371049829522079241931615419110173110169171181261001521966478334665198240127130140652532062071931872391319613430192219524121724121121201211763018813711178111991991021325874986019783343539135204143205928918242229111254214251250271212512465714236796318463732133505024012512222410920931111341241844323613911919154190200185219822421641791812222421919015416793229791872021901186751591172117715316237742461097920918318913322324620144219139165031822066151178160144881613721314424112092106715710044682361591811295017019210130692120811610019620123739195122212711923359711262292113024820412723561309811234180169159542382512816017519011447272427715913524237404914968196170135151161979722315376136129230163250238831055523445188545714115224837725016143239102131149246391101143263561326616612407795209183151139191189172184566832105131238252199935223348241842923114717817023311411721361280199134116120135108841921771361128311944245200104014492181143246127425631008767219105129716323813218594602021512219411224912424611715341941118618621914914211823380167942435940138434138136217548110630343213125401611264184381351471221738264015019216013838156037178196167911792531438214924222519012715412820612610021054855155104208024112112129141124462091482471921569614161621261732396321625037074652353515141511623332711022241352511681991431871562554423020419914545199147201701367714080182401061682614824132774301261328381431152411451323415587202100128132195277137661971366623810325321307418022100212149242872161271928519258025418391120899130104146332135211012820422425165766151122115114822215906318410301928110325525511222429397916323711013939219122524315224315968116159502221101802221084895175207185121201224647147716071749320023459147126229921981416243173751502724557501930145514416164341046421014141209223142127154743091296718253162105755214989153821401562271182072171125311261168318211325913423222153154234902381734197193418025321821082271561562523314518024748210148165873820362157572492244367852652140761561732039222911316029204188133267220219132501551361873194122652414354129193131248825215013341512019324587372071845913710901413322810206349911293718416924141410247138542531161651107026244192586745168638856238178411901081251082019018418613814192292701201128705359211592131041591472299110445824185342815119615110982071751571551575538621078476250216248172912223517224422016520610891117124249168232204113808811531951947635352112412051343009568145181451703341691061382493121711169227343611492431782432311551119424210610518321517814181671011128892081761343898863326364132127213349124124484143116234131641952122614261364162172240841124313443286119221243153192431729512018431046210488110221120157229165163136187145183151668195626121931472261721682023320776203133108642261561368023712830160196171118128154112391524521313018414314020113223401491125137471631091316109161181681662232125148277411712678209275241140844723875674923020911214924112143122901391372446417899214614138147161737324614915826362485641712201601422004895722815672246248217149668015115321084113719032149610182135211747727351021578541867019810213736152148226687220223421516837021524916074285152402546179178242160168916120972119661322191232093718816823117129243156932489920178102439224021824141182165222138184202205335117179205249992445716318178198398916171341322738234205145511725017077137851004719612296111314136301621211021321314615580181105161189112172461152024464662222223501292032446581712217593192123244226132614914424982164113881082503494421289047255631681922551951021252052215812131130372745104176232194117112041971397313921018219610487401185236180468443106127108188252968810026263170123162222142221337059444215718222472178142212101143196639452715420212264253164177200216200202252906025424024812232129520614611362352073412679882817413614083832109211157371681136176601751221451711161851431181395718315815722931198246961914623711120519624820913815056436419933157019810135384056168576096255225510716141346916767781961491111581451455952501322830172125681083840123681939024024573690992034971011104556612387221462246178252331008132271411957513218226151531568722166129130188581645436508513415816615460200304615610746194892216521380164144131842950578610394100459323440159149158135114942301681521492342727151515535631981911109490193132232172101892221498921425145203150384420611413587173138253247255912182226117411922250312201592522461291321312511621051126429313273488015188179716422732392369424925422214420722314258249177190229120246237702551631421783915710114359742389424222156239186126214113253172237250572352451151500206195539563111190113111020624511557240018323417318021964131253462395432666818885791741821071785649119568524085141784911619311946811894196671019010647713017124138151791981282126675820910520429238247128167519231102912644610097224120911157150212116521772511071831383350892114715814557387207231244158782392495818923976622622724021851921243165201801718158231371472161281081286224731323412100566683354481848399206146184131322273262112503016818825295213111017322546217157191677431334223262157206107102331222061021282091621741372014693624041141362201091632001191214125322217925141199116173199147186791679419014411717333231106253119226261391080246740228301585075155115145245814621217121167197562141565016161244202431572026530238120166108104251214984631394169160641782523318116010561721561641264216200161102021312213524098274564947148151041163216178176213131112148242161212392172365131719558170151173157229424212423222224622071221212163127175221119179209209115541712451842412101451961391351846124221272541432412362791842001686316410756162746292095530771065815022025213311455979165247157131198160189204320681860233451261621421954021157160193881641252384241381546564547520174681282161113146961042452102071634322332648121238901864824010241239215247661485719718821522623258101602518188195161882081259096180129237181211971617109160245622401231561066314522011476215124763915069502171281125617417561814317923719914718678166244157771911184927137220105178223111115612363216335257664106151451092618719259174152151371081586314414126255156308076232288066192311621391195118620925013117723319146109243445224133223216023013651151183115250731042101761042181001281512361601338364119160311121024142239122842341521842041531051581972461463724614611218214492418613324817019313422592051731713222921322411213318721261129590132135103116815117267202331215343124213752212294312485184691242291021561492201301234518023203138144172776195162821341323912922019920175134013644168932254195100479296201719224823219111515613822219139224224320512151211932083147131501053825122010822382103241107921718712411241152542041162071001311256616225152156236021941084393108431551582342919524642991621793819815419970100140921051542011189984513947135621613718382301991662196617016662271860159242043010150811111292161521452341424585392432422498011100533674224572082172341738014100105677525314413198136168116161198238495212412967176106208110291155038193384124399117245161742184524129431895375292118442185122711202541066029119229102131151131109831031882062387154601132177231116951814511662351176109401411141361532374322085200219954575283052262380891434190111902451151001111611654167198196229644212874134229173216114346921911969454197224196189120242641189612432145244128140157672178143211898025420023114052951641274511020218920918085191061061851711836212177223010520590222158215398249315771216821725877025118169221739920287815913760128147129156201222159847196146321046249207119732952091101012540222291845013311916030160182145846716656164211011471116915144109140126213142481931169513850142751822062042061551542251531041141402282371231993789160781212618645186104858224510212521323016415445218124982143155225396180392119541998517295226427035311915962154101188228144247224437022236100100124230176184244177201150101185852001810514996616426131244021833244128190146216127922331661695237132681461121391723733222154184146774118117515286255601779821915620412415414314298361211051591114666991317415615422623017018012143203261631832402521297617823122781520042672031151711212443211717417311216117120571245721847648218103912522115112516913651451955919922695158915611795014310224713010617524021319212541204248179176202201713230981118217810120420141136462171841929021571286420824110123817089153249191320622922210616119132791351944492135832089160254184681213286120107144212236108639201723015411652356711423516013112561323981108381092351714724111468423611000143488447114148671293229180106180103232101322075123137209171000242140104144462112111258314115810178252972142242451531102424452234720441156105242461198413212387777924277771764720524446727315519271461047824014938175222152248312543825314122310331220151241206129164183247199189189632342241262221186419602351154791722321291361832471321911895923629248247132190189123229717351902485622522017992512159662541352916514359743152251161412219120210561146218124200208122196208122521852457282235145228150195732051351469020017511161170111591543610463150220249101742232152335547902385357201467210226112199255227142922643232166177256113019411112213819023361042182411792381303913219419993200137116135231245119120185123204251176203711341912281474122456850195801401824418912711064224159352203261244200308581431222861237411922174323117947291941359215150798625417267322424015719813312014472371801410520723324414219412371991311221914227218190521803116767013517395382271762434319521951491158921547903287196224135117579531101676060233206127210237103208241946432100809625435941262312511921713087119964917612822919896128162253371651181238162120242250187112595011365452231061181801577210556156024710618915313750232181878341456620449112516125111243921851522212441331742492031961502271222411242311222104571582121132022121153822720269243141755480109401442544623432127220235127118165232739511781618823324018664124592391251781959767295423665124906272161152741840950729320022421107241308012713144101724041702531552419119321143226712494816530021213318447085162106171211126502372127145237951652022414524420520312088223021816118115216290223117581792292032048254179159196646913612323821188224252312270232420013132191141011941602511162302292432221722112169225109229149133205934815193820617310101007319224318571593761641756020215320315013915113413423719813320146201603210426169175321376916217207802301925591682412395459110212155911902081572513616224513968217135152141133120292101022512538639216605232486113662148010019519720716247252492342263116322494248521856255734825620712613255124303145128200109952343354104311317515071091741992211901031895218613619122501751471421312069281120720539166221148130245128242165151679123971799243215141742001462138170197103130232131121227114961901811650961162177240252594240117361521772419522742483326251367829171476254331231249820620131125861341517211910218623152110114775112912759225652241405215562472361222323620492248103103250150187431961122557652022084818452386278111153108116224112153167257522406103240441762165152082521291842442258119881177169227116153139108133971212132242442431141441721952104981462523814820235841631091542014961211122067611920720624421444812911204723523113166153156148109228482051316079511861021662491021032282072034115614722915914810831271595146621238484250240482271362402122570791321271171242491029353237102133710200172156371252154302088510894234442715910430181455044202526121315780177571012132066815845321506918823219175179196129521681301229718716322923874162441798961915354605014124501314128371317617511287199214160829718419622721679182675032038451025417254532111403036586619410315715614016235131239113915091881901620194747913468410006052230162083170176329194133302419712114513413415581716932136209692351137189113146378689682541069272111921323612245209942002081535120874134149148128381288156144112210025020015220421725121815107197761011531792133484434211460186223413025117023373377547283101362202031222723423722425381692351617134701613716767150140751804611787225201737416420539861961281402422466214310795131139541378770213342093120119213671331769469152401142512083961955117811512718158252179200201041281791539914620417812523910493182441655209278718614986495181912205293209312214315510112249921252371502001941861212301889250156174916920030165191594143144226697082425760541257698206140172220482528141371291543725220033131420824804723017121224874795317024216743146802912071112136981036117611794118119608511670222107911744107781324720041154160179787217614075200251631636170432450258323310618319785110942341731968910414912124616219715811422242491314517822518019691178280183341911341502117824815125042235875231872163415987490100471311742518910410825066123217212841434490130308318611316517511846241181022221721722523720610925313311815160452168178465003017722511851679711035168632443210117002162528223111521024119412533151603616158160716010196172818831128961521502306732715714413123077591817616864103645204527419283810104207178204188229174101361681532331852271817251831152315375230101248676153203109211472271082431223817628207226362531012513620511121617645231223253187236952536720611125420917611987242187714722221823243246254104721301831202474914541882101042481931252342240196192174208119119135189183392362531891611352231396112340165229688622357199253150130135237197152191382385523093591072392494227981602415161464211161196166207192724116525544161225211248134631985512622223248121124211161422421010311324515919892248561046180652478716620316751110924822310911624418314445208227118210317819616641111117911716105134861201046533214151901261441888631247193831036025186104189242457419942672359338666715810221512811128103229101121681852481321152261208711576090875812119011108191480239321424113126214911122351462913219022580601686025220051207283291292081192332091272082301971691072320422425015795255978247301241451252312115529209532973841611076215486493644832166401321581752113218240840131736184591531517724950192165366661932249810038205157193174911282182031746558149105130166761328516619517823114650958619524561142120314132671421910202229138771364423779204128424981602517625016516313777199244221167211175922041452936144436823025411113373131216221108343146107132302221152332211038221979266424747291411116015016011352626142196934339921231701801961504714721819074193291232061029262159141100137187511011671931290833930791971366616317412510059962071632184741125249116422001306917799105964332242243143236167455010015112118201148133173891441306026217255402032245618419014824918115443166531121494612713424811883511420118165923225117713143587816665672733416617819366352021478412914411113646186164222118249188252521902352351221193126282131610425419404912824410124129135201042072271585189726815261168634379696326820413211043163671627981935410814612112815413810206579260130108881616615011182431309172640112561520641312072022550129222163224247157942493219122541911221118822286238825424979356422312379167425171005017717072505960152182412071021353623257157218121501652276811425113722814217524014239183317911059158212250165190229139196230991861983524116122454424321820612718915661121822434331101132499223014112211501371876323436205143191281116101426261221195262642609512225020415212301681181162015817642171709120412200162634119714811186179194871812007323511813116013523021116497178661742165243591525012472615515232106337197111912916511211086222100131131212013022250811111297572523510015646103821810418611582178117154209916214091358772109185175106701661111061541231221342341227941801031442173123417513945163125163192871441348271762515420828153504421048205100143240215441132012921113124179532181734162504822118367276433014713214417015515669562528382725464192641681441403323322651511331816019719121141112114178109100124917922581166225811692432052544891616915418312810121816748631011241283612910521343144412076208175159132381894731921235320815017760223262411052531652022052184276581743289813021239117897129185120769214224204176205125382460841938815824511181508019069706192131531781741141192118810744881841741562042532277454507120711133121155516421429137214137172714462244207187112112423323024850112801782091679132125149109111321241956922621211517218333135671958333613464566916567102322551151792522241421612815235116219113181175164173249572361202071482023233156232116862541771713018161540212104404920618301211267833242991721231313646925553197245114402011439137546078762416201155100918529168722481102178209215856520318918851889711413810712052168124246200562616607119616914885180155273213191367914612871242326117021742227311511424210124212813618131159133371631257022173145145452152622802472191821443160293235182135221741541542252526155614022413311632964148113823234981041481131107830148128128709120641286724324464221222272181571372131558712220316113813571211206199227147172120193145731882213493681864183441782319915111166139125254159117813564771724514224625210218151062511724125590170672119536926226173129606727155155854881111793142449015180735721818017753501112452443619919623220423358203415460160233115863964718187413219012211180177177811516176221872032006440201121652448214811313020919020869123144453418311690166119174173161229625361291311981642531511211701041413212321724836271962281887197180842262441951622101617144177144188186229222106802402172175341216146457128220673612817579525616615210447240731049617382482093619225410152068127153167122133175613732230132100593611411347136201151194141144347248220191673225904014421721712623215245722013616524013053200323853432031431001511864341512306672145692461461011741781012062421697020724020020410541190165182138571691212031721011121024316719889151166121872451236817314053449318962251255252219188551262372172472192046119175621763924122412924818324665124244019227182431521921584818423923610123231141208247222812512711924813525134626116113242359323524120420310323718326601801801049120919515013025410225523712223914111514217110317210044116301769259103190114382512422158912595103246157202184124582432341531724310350175156206188252117702231691162001282141631221457801120513511756236248210208123502372502491562512054615352140792320921138396630521872519118825345621841590104107130251521471526193137824310822212118320112317557239302377217011815418680135123170149631872623215529202061356020831116150128143582072021492401609187138720464138125123337171442423922125427245862081222081192401176813420225121195201919615741591734713210371878936115913115264239233121761241122532388316993167822252395810513001602091314713205712451411351171518016413522622521412722718112875104911317511845157283225253769522256517240322102292042916874551791324357211310532422592212140239238178131302401912314856261968233451509187121143122252791221119212521919150541271532121235419140131562425288203167244208139125200125234116119131207221106611761592061859015912524966102223249120301292810612987461021932375715521411721836250161254486866220217791624630138199771935033930242166212220187154613928210144148216196631001551202331941515622817203197253190484874192209022815035401442524321365125216842361061101416612950128160180252193141159160451691961491622117814812122484155239234692351653573951272421711538187191203157445106651165314619419611250253127192595220393202372055229161661749478235449319122818411419322292081181944970611122309930792489992227209361041342221792172242535021924117452171635924214831202381796620821821226200413019716223019330134502006419574253180213131985361606566129261741841882151176314349422117518083073119154205282021401572241615868132183273018821512019947291385924711312024721519817123178721524086196346224222107117641524418321118099282221051668316121026173202921301392171849211222992702392525257152160282181433965914411317681942314923631391902481991042524522414322620218510825035234206127210227232116208332232243445661812297515192796010222487311036510716213821514221115510117448220159134381295513630882381736876721391051052382525222482554228130226196149209767415382602019639915815122795230421434690278517612213716311610215479802826236121116922302432621112212868661462123820131125302321269410960175612614687515959151199223016901511047885411309132365219122577130112830671311881166145177105147831722431141146712421115179125191472041602482111481421272471721219251592115139203553920311255140521862080240017084128781762071606423501237128926521664152042022001551537015513121792101252117620617722449209105120101041311492222021001819619323681140193722307320464101201272052462001942138314078419411271487218617011071001288629148202151422121732233128135173244214128169131131319419529291556158541071081881211882061010906618222085512647179105185479524818621016947461941532148324712174237433322290922001507225322411807311292142168216412494820523213724417514512116272161371151301624921221282531801118581523446252891361746418624314532210129248823017014020016711712932621617071332431017817721083141569615035161731462371471278208569811413718020149649317052125290401091562061782128114259226194212213637158804481245721256362044225177208662351812031145514861228141182123831001286214319623619421831302357115110815298242323366322611521621035471621124522620822411717526148141810412402154212212813352607522122916478891848213166189864193195111041240160104117219197509412219316951190110123242234157731711191988610822351571001146431400717127752002615772164121104764212852193218151123202147107160250881820815010013219224864224112139190110171105237434117118271211731541572332929159129127322874756222291646876090175129180585266210183234159131210381698924295715345215923225951311022431472173163471351612281411471472920315614914411840255372465018144521446685156881777795177451661122531213110710884250848782523936100141814015100204119201992411882344154961891331028024810716716418765247151120421501224310479984614415321718575188211151725179114242231901116710325023090113261613220902341420415524912214944218191541831061222625416676208123136131195521414637206106801551358412810264248140244921121198128249150988012452602175724254225492516025122425014441361281072359431448201134100724861984611815020720146020319937104177184284916116321137119610046180209609952111521082172517624646128482241619178411304232496413115165248243156159834819722430251495320522493233172153147150636319519140179961421931791962289016255172721407676918118738253151255801862311172551902231011911893922715718312111237139611846323022412610127505251721518818139236224238485019218212502062733239188190181222241473209712231396312720021212521812216322211518341247811232091631821942542263112191412399416323962455423418722323616529196154189180175240371511019918970231125144117158932111402221101769359151221243851061992313415035137166642433393219177164222831051832351732083223244221365313914021601632520113320718620012423289183255113151255731193324542091043012391112071252122251272208924882441391822820299200222671942011361502091429310066147792236950161816020712912108020113162541624321424901902441084123226192332511411632437223721920319711217593200175915927245222321902618119313814352461482541230209112831326481144341063851320812220036819813319224513910236691062251242462291798912510350186791456623225220281212082463713381801241451326715313212820020830721565116361236390183178132172382511801351023921126536612820502024104322046590196215725162326819210222019623013123215461611077476132181693216225191121572306323021312919225491792490791649210717612849223108180951111765016565511713919355242121431761092081042143214235160861514421547153175531521978514513167131786445608746102247158752392522182161265016522912011424323730606110350110921781292051631891132196724656231106714920416316132244139102321550615209122181319081896438615122820873301810816022720781742619215422241901096131404250203105127107101184641143127224718518620044244611719522318422823258157910694127721191812221342341601730101204199142314577211948085227253128220213720385184181230171921520133227915716721021979166137481442252220186235235121539312821067491061736610775985413410813620424830200211491682416922715938123168110208161121732401618614041091301404342966322280663567157225324010615215723239477822522918924041892549218714477438931283017617013914122690101172012950169642361361619422536127215240252227107231791052250207457081281441072317846159203161092081186016924915217424916817425424321624315968553078232569713242192255137168128128300147198103941902382481627622372361525023443331602242242816050474919115910417612915417520417314243215197148174712894238211561022996882531024514024222294322501918651962012101021691797687190201184234218322178125197230161192291728420723223224433976721301611719816122541195193227163211198198103141392712582172032212192291551820255130972077231252071392001756758732132192267555204205202155106116174240841322481701671559218411268116218240722111768227212209012911317716381647108158771312363225010814361169549191541499972241571312114422515315522515315123331021671871031522851831572402042012402179210608313142169201246233702317614727135112103152220179211339322111211750482058254933083188789517344144741082336919241158156771026311236197195982101002241011901492212365561311481614721663143511041511317126861458177116225122104181361299717169196179163511992354432973224450183120507313074177192171421582009181396163020717912613721735601821203517341201551325078115610438491353321692258123399226115228975342428719920173199229224238202200016738461532262402461032363313814356139109101195342111261822101289233217251056224024515216213186242173148434019117481105138509205173155144104317328171203129254410322920610850112720115011023624112211154217100131125169163526019114134711720510764981972301842101320315621200182448542054822122814116773204521453216198117219117249748430133801972268521046464321841267620119810540222152761532081250753504351312441423382151893416919398128116160908310014055593912736511082281219813829111138188128136128555114145132113970185411467489253154105237472262025547117871308913841462411618411420083265038165561511854319202105210185766716715323210484472217250243214123120132458591661151072401386513234064529672241241124722391602221402363963816425469812011250102756104431431097221118423485168196737314177101311521323469107228221620211313826302669729491511785176118741781914520921038362171534921122211567163160160502321674105157174234295817415113220210996210991162216121833121117208102322021602271001092394072271591572291592072031191302111752041733712324325315135826517865223161164208193179101225328446361932047621038376238169188792510031162242082005219642971323619610111133464873225314918518172718119146912323016729136201206135135171022087021518091197566120575158103411981793251168801001587655119269224203225161351182321154991442301651811341723722724486220112320236251322249412082228106861182226612324112411522523624413020113723825134188167122192147127150193271024313532314577546915318452222093210148252252519124916512323923928712715924923830227187111197191181632522373659864605280161131121513712911911913325322520517624794151212475520363126612362033241236349118302071901132061132398246401001921958613612918872055624422110724422217411922118822418812119319317622318616819311823516214910292439222515523455099248461073156186126462312422331401741972631652538811419531994712428597208115502453824514718825316815754491202082361461411122466622446528064221219193189242122051107126156512074613024414576716213232218311526611216023423117424425142100124642411471354019024012389140820427461521222532311131891675119233112201292401585152244412320017523013811013541011566840197132035175161621032031811110220031201001673324822522617120724313160611407771116451991461961368231781331823712570119960145246020813672098315829435439196126611335109491231496317773219820118011114422516142135191421631862615256190020715916516981471965327105110235221541112231852815316210126137161442001072455423816561736330234107231157122153701317355182204225851222014715512823713202137413501401602044586164293133681742141552197816492581621716320223120761597322251841716917220186205131219177131520271491852519215227157322202005745198794324340140253060136601111218122210872021473411282421991336691038534464616535801471622124690175224237163591841135714522990481232481232061001291451311511831251491386742855351841682029177212217796091811951472421955514944105143112173941234271107479202137814819997235352488114920867719912184251197207117017024520252352218610439101219778159385220321017481937757174655134118403322811410224020124136155170171424919620074176104240170201144226209323314410920218751249862164157130711152945218823381992511392152402263199642053320924150242204311782716422577862541363850131199609234248392512332091294448218128526111524224322313024220716012116142127131214471462346313961251814132652432096881116104618951779312453223417580197586916116191992025468151172952344615130681121781851022551095851201934211286196971551218192882931168320311911374589152381498193189233524301726119010835216131129161432212415387785176200825235205132541182558775227127182821582501491741144717821712217261433398231421591021142057624713223086235425413113023242104103958915371192251016451198381006772204203201952344089234449410424520720211251245396424021176141821417810534129195157179210921601798293115160131601921092144724317911523110124923010225023016412333968831841281054114210562511216311194079720537053631993122617313846901392363717232816018161167164144225711457849571011133612032171801341839166116131842212817814964012621816816110252126711361831021702096113421463205162153121881016173204195107185644220022893161254196215121169120234352314430160161566918013315014691378650192261451361361006523613622219710277551213425210722866102240682262522633231671604254255188253711631711502301372342057611925149145170228189401382221284836019412323918924732232616974852215125122223859187243102207219121179591791795161938518141682028614917036149601891815160189247708211779183222239222155153722521828411724515824315756145145145145171451451532232311335279842431341362501813630941351201711342662150805257171102118201342169718420611715011614411942091652199419171492113124267152281266336233254133153340342111121501922341020719524112179167202621101801381331411071044584126188237230182232133176154212071648580212321291911522913518064185635277784163884451081617414510316324017113024924517114922216525231351702545634192181012911170922665342011817143219153691608720117615523411219417974913065437010324110015920517068251205173104677224324419748762311542351952211689914473361815125321122419425088114201791171555412814114122019148219230164222271501095124541711029422950525117513123717617205912173430255411615196117717317851558720992159774755131611645315831135167612815124776122249244130134524550123199109168222876616141702134123916272091395514522414013038902921402272831531542191684182216841597761215193251074854142180145199971221282462466476238125186221132234115317649197244128174251361781092091988916510968248781121821814022675111122113107112213114132153134122242096415733217281942121376452244192952067514821312311410116133106212062058998622087240189144100157431882191123510084113452072535919313754284892318913284175646380255184161164059119129220352410215018034392006156301616622220818153920774714667210121327086592292389213342128232163710478100134814715713140235307344382815365178100146741446171142358165220235153204202169133245211112616723052621559251371634918410421721192114371232052051691551518357353357346116111881113936724425024511312724315975942516920923519120012022714924855100100321201991711611832113111160794866124013918511125318321723918918186247173184193791787831401862209312616319123012212720514112910611218919124290159224106111133169269201165462528184220451231359323846186210353234010014132145117825115211117133136962322006927152482322534810622421121614518973391416494232202185218871161891912282141451389118680233141193242276785224250172331731911186858230149731437225156451875488161240245232223922783511901105454248221113023702502216711162177121422014853701971142241081034660011814211616217550134127188381071191481482377014591833322132142211046710745140714071301451373964271561062072622215736179144631797381781802094811475117136592203367196668922464722123422812116822021414921511011149180240763816499219186183718112669199125212819521740129118144255121811171171361409356020915813130242161534225511181362034129671681861211802502144921710622423017742431151459412123783151110962351432394714612611913080120177191320232502421317848168210718825423319557195251822511196697163187621422342535222255177131986811612518422613919535514314621311423721247376318314220125057214225132491905088193161461984775235200214723812620115025508094181123113929624523615185918813019014818517523718001296225213523223814322778182231192212471515043233719224120819916516325324478304014899137521864216841415222002177523818162161257512221511363113401231209512220739113818193711815609221818217311847203179211591862424223714176146234263178751311411312518818223710721078111991811452829116146113399494247372932090218191192203371352501973246315926071247165118253972251921031134223624312067771591072839772231512281821121912420616773117136767017846310012812534248116144321677830204242526016124313113625319195724818748831163122024222524121241136223491091831102332002301171451744232221212712211321120414610212019117383302091806162231403414411629512301292326852174158832182503620571419493418912811548746137108921094341052411392017594741082194224409753203103151180762031711236218725024915623416918518180124461931992177561789753122969412127242128240573745172451712082715634217022720924825225134210311422051331422074611070668531089029842222429286516422319816061015878432252122121881548919713652117319314910924342902311505220520017115715091611871769711814512814416021023016014623089513211114106102241272061744973240889225416325220019145161971002174747323185441509421621413137759514614914560333165125126120171208241687020061213591811601291541568521442213232106543713916374128167192091886145162091805417817182189302066117598233172162150891971731842071668761241571356012812725572247191204038127122126211252154149702001481565727726518720513322067226161224143198231142371951772491519922144223422624116414623117910710197147178197176183722573216204715512420115231363193221950201511027920214425413613418117810910930601664117212213321824159211211162321922567144207210313799145153515983182242182446149231144851071701519623019217016121518418630782372042263819604568241761611016110920412219322721954113119518612142165156178252112126218351131332088650166164127191323073020984186413867150129136166117966519526200312441413442641521619416324113379165871922461301711018982821282051392372081461511081361287138188891582242501051331379165195240262301484722641207175952336086125233236225162341322422023219513922513107103151182651085129200173241252527021419013217634316361442004124913118247136198531115521570542011481491332052351627215616622623824623719214109231111949462210947224652197920117112512137171115250209225207231212240186241138217861221645738292315410325221210169237501715617211852442925425011612210172245242821873155841662013821437422032099034741451396025021423208511519722925501211631471971731343245128140158822910813011819769682813624524312124579165871942002311484713419619515510315044130157139229189210244893713920832003972249179153213681205216988215232021584222249178304021112916750209936813125314726210221193131381451991467413679822081162382031633322331151191961311427221220545955019111053261955219511913114710433144248135191001595014637219220142236161123815715974226120721411872431847324024122882212823187819331754621320520621141381701341643823121421013810216064242901661025420620493521751042011797322979197229207205421320520415781407320013892191169252223253127422552111274012622911110222124372391419516610825510122823521919411818822224511910012872552480122224876511125534232183191156247233246133135127159118984720191281112115166180133711976419718112621720236903116817622521331521216917319115225195235737879718238760492523441178101701012138171337232254115237573924716731221157602401531211821913012219924716794233451801691989514184223130102321109521514911513936208631802511312441952454191207114133253713913425163158248791510016224541299919523719017894144253188111233148128163123831519131126100103214893115914223106151622471557146192161342309524512811646186157130242191558814316013414315853112923815314228191816714101302211552272322535664621024194120247135811364184844132187168298418514813321915321138186803197666614614812987869921111173765397872003762242236411571422282196622679423117263417118351683617134246164118124176162508121133532266610347582352251441094923271174923044187526482317011714190224152185136103332471441202374520661357525110315923820411387292052218335235164642222463217158131092299416758114142312045811340235232254244190207226596313823825248170235163232129157137156186853164125186182245228251901071381331561071351861912221641392212332131502541082993209671115167519718020512511325322123712242124123315531141195181146148118228251973478617780249163251512461915931149691242031491651024156131151544913122913868365317532102331762394217612474126581145375141882252921581841523010569171142369621419217422823814399151892311324024722561159198147431462262011621160245200013711116674182111292222219624510532281511041102820339461533921999134111002311011911113564216281102132287418721174959476237182183932102212475215981881461241868153203962211908412512724379119100192321738222487254103953241563506624720723219216022081191120802481672191791212177928144233701992461114243163261587812025510311361311412731224952066330903223619313123931312371122033528085220176186211966512401326716011605322520239248691939822510318210921722024269162473914613815872461343725552422352411641942335131442541601786919322910916121756472249226224178541527124110110217346013013819718468126461791813348183201781903616411420117216216641575348126609753203815381216811917714224979911456278218136170105296848134130200386433910115061241471012061961716129231115170230150531358445948018328229160115317414110692218118360188118251101002211387222025021116519520224021822997149751622621441491802021526411492382272415104324419251105101791312128220934518646802356152224414118666569327111686053923371202361372241517195137166250105762061959249120168118591011767228210199132091361832302451781541672062208558190491881101814621189244131808939209796831299724916250200623317313534471689329941836682122271741989321613648915753183193861612260177242112978548187100209130218852431078615389634172231122211250200134117186111492044218216235638423216117265918715795191381841065712235113201207294122612510817811742109554321013722817613714616284951568319041825218917622831441443725212717251197311402035321773243115421611376610523918421820422415497762522267713775361951707694224190179139914114825177762021481251032052127491621718833178153170214241129691948635407251108120318027154816011020220629187291801022011982118131865342421318649972332071478725253175140613222241302224214322021825198141193123154162198245938314913638220168618310611019721073895336254163136761913012877661915920117216690160218581721932292061387094219016266209156751126123216411891161981571129738824682226138159115119263347114481531729365125138110111211942118225683219510618038144116150255441701176772205108811756741281661782362311372032554294389420312410715511097147176227151138112504871751204846312267523324010424520214219223871233315930162411343015287181156218128971923116918013819914697234572401142322422431214017419738123224121111720397405618825212350436113982052173921142254229236216314672127461672213324018014262041731617931170294279178114121811115816751427312296434164151551275217724193358351010049806008567868121001111021131711801502004490141431885195173191514714514845133798681524088137703225010065253154160202165220932469782073213010870150936737112454124325023211010145147243106381018579201106156146217526118712112211821122821213810523310165153133193411691611131121011422252235127832453125567245472557520110719120412324387153111254341052514735941253724818110965219183339124989610723214213321985151882411142089119112250245471312222192818225120521623815507931401892101316162101271851872449810324113319519723591394611822942324456223110207181231586184112246801902181122993569202063119815912319035231921232462176789102471161775123950116136103232202169441205217802558989115511211121031081997503717425514715216318714620730202190214871142114128146105401722191379419222321272991231519510814519321717812864591071760882002373310566830631421112519168197191100672172522051452021077120296228208241227251211965516425317315120914813114048200321311032092282403135222322552222007302412351612502291482081118959572251825255614816924313724316014391510223416422884221214321971663221917068228135201842917823421420942201234112197229652161704419735129150441231021690848858726109382218612020324206250231130159119250113865518919451188471892351631521291572012225421054420824401768916721899237108109171197411161961408752183561482182224317769126601616221146175133133894223523713443147792011523624621612917222518923325315939162791866213823725436110100159176881101062522186106221219501961615448156146182512911816963165485916202772481682411431592471194018911816321713322199210180220114475064157224269621023049101662114573152552012496103146100762431021191772016474932214137183203157112119106471742172471471542212069216214316323020220114618536203379045146136640512279205135156181741692162271351781377925021422311111917711241216216148120281406159389223415912320922419716876932118910851971418864181118799239131314924716518886242233232452282291301992471242019775119242801661263110212158711112432512291551021782206211214552252391131761431311261122281079931288211225238152123595121331245276171232622321141062521261002072298479202174194211431861342011855320723121378201175131214131415245132112248921102051798985156822109520118179164150601548413625114823883166253181691433823176615673898579166148601508813612192125564623920924812413212976367245133556316318255802343918101591927714621718620716420374163207102840162172492331802101033716422022246337716211313642152148892011612461391682091795975129196165183621731168210224922823610521921951135758109192198710159802353222819317925101168515779925441139200149831151701662298479205174156146932491248619710082200441591468516922484237448718621121246230152168812922124720122822673252120018240124782451791533414415820640723416912090246732112022521230161511316855174202170164981912714624015722412023511231201431342022157135207524522916016097901263236951186619220511112454189234145184661812014623712623913771856334751722551955119235113401621148919411732267315792373534443154632015511151125209155411724191172172154892439210224514013016623324977207231212611599359571716747716011212901411321032151061005752641379654147115106167230537620517315914881253116106197512331648961571392002131321614175321036813418061758218524579166149195173319663142116214200783903217811510697195244162198251601287416815946229814151139154100122922521331842051502312552055113990184514967852001017397169791661506722110220193231100721723113359821719810621642438825324019713522610200942447117252085316836441317438139144703281164183158203214514418217618614920810712025540718722214322312824240164961042371016421529117712090652271941509112891124395620940163555212973025268106251002321716901791823491871331462064210969352054210915393214106238296443491124170496823141501214847154163591291601925857513042218230168819020018521424314822514511215210113212313118020640388923316416786103201832044289366122310113911296252652175169402485552122106653569166624153101148234137974822731712001067872531001281411519618218940172615824725116117864394513226511311231482102274116520810446129136203116130194102246323367211169761582324120102052364723137146248228220122252178111522344148122361594121148985842206624316082428843150741618418919689210228221569020832661518352211489451291231131491381471226011225319181381675620237161248224219514172225167186492518516222450156822271081217016910113236341920966100202411441170811022322820119912110211320315622637115102220720195525917510510278109112972372522522102081802121762482492512124312725487692552492551682202421831011111084612023522924455127251912278722517072301412093163751213323620810170223122691987126243171121159238136234254672142012532187122234110122122225882131101256227320031129964925568498011311517624221480213173161106220155712041941672361989657306317424320321220101182210472137615094231223220951201745112312079982391998123719111107127551082321794681971731611021715111968182236253242881323823224168132232172951534112367864014649469229141351492152923216813078243523024113512017614575710115821919223721555696751395613521511786493287144123244642551671771761152521667148558141112102301872431492531211761641322864681481656481269620816141317014228811002251822620888111167141011412367318222528351992461651052310257122224230209170277122511598226162208918621022564988022517219322618316611222116151621205120812481371512404563124209279141741562441102121292418913111619450712461651191262051136928461112182187807993753190120195181192113121422151388981011756155848212475436504216238348652225139725330129807025100184520187451336767762291662185142203221225205392191151342471661618214189312172451131082231039144901382432132011341916321112204238514443178100144236185166597094185685214020911987222152199106796692171275922919297249787625522717617011022519619618110819219416982138642331281641721481571676414109173301871386088178301565253130129641211484618821284787225015091180115474704284261538065252216156992341649176247551617127311293119719413310024513922711712871108245230651545689317586611444339995021119516325412613756305817236219120171104313222562451401536619211401161276422246129145243210233114218524613416272242326822452316733111180247130143125169852788180912161877682200126152061841292071581441042818174171161031951421088311631221921202139319412024238125186751452452092262491268814645137363251731162214622416124860911942822251152421297119242129411291992081295248225205136129167147139691516824120921493461518116101822435641362214613026512002422551541141103159734367396017212222416711512391397225522525214812367181019424213022815944761239215022229166984122820633382412527122611530136206184473422919922514238143761259697250314510563141112240147136212251195832389114412238151991591182232522121591321676328157243120124129762772113103201682063314710022725413624425134210116237811696142231273321317118110561647410916133252230254120161108347520573428209255177108251422031101941131911631124821690676314207184952158130226203520153194418765172332466722640441943815783217245650116965224125225153156821725066206116213941208892031262152467111511873832529665218152320042165164201133118353926307713817222272472111517892172115655302209321202051272691371713092125238501233634931821851362021223290102196130716217831136150611491733282124205185229159422261429816181144198351924799414918520883099131141221175123336324155255641220591182621441741222165721274621822471121033154208831571151566915619983748044232551454319777702081415522715389218665650913813423021432201592129353307820025573842461892431011100982911411929139241012011221110422916373824214671181392401956510915453224525270104521371081441072452421352261143114521517302451102393289178148173230211291694170239235165201119224161248124116202171792501161065370613073148189120332081941611051052095770142169851232500638513209143108944712216019717723661522018348251123174189208228220581001921152171811624110350170842005318823119837130116210103215194179255213220248711913914543104782282214976226194185185123120198831052148117278532171741541544716415921256498128842041791472172016412412025223617819716467187229976114680683642816216200392261291461627104255153920114476811231141501568022219187416016414620118813416721043404757249190154548145132631589213820313322021732427298332053818410689104229202208178101331651091613714124310432311518568151227010219871382044240154253632522352128725410722527472311891793725315720511311119028177227101721271523907017745108199214208215183134188185532284524419217513022224910120823995922125111819420017414620322114121525064181240254190812341277725222918639643734225230961812251981454224824720522517015513619320771169173145114492501916105208126471261531448425110123415914395931452111851652212222408725410310358178712461641521617521571451253169312231551221771870162761789528173250234120451923237221023890221184611189844100147137109101782031611571912452374823879602223515713018426891941891711481721071751912462014649210139129207226411516818249135250110826194173814869244128148721183223014410415417812323551592019620775224109420920415243176905390321637237891992471671631066214321591992081481969958292461241111443190123313415932125501691922354011712132207416120422717682310020624324237518817517639524823748381907932413517980240190207191525462281428171355921101020717912822511516917071702974173108219341046317716310036680691183416894611638179106174529938316463158911832313231221415512623664230145221169102722324119366361241455317437171141301621766212013177142118163242821052309014545261161536810088192273724133519222413119884143931332351665110512332091792006311087140185625213540361501517397561118534223899283718234203176155231811911865016921514815515537311562521678137108148195112236642141456116925315939242160123631412398513769858315380127248611211769011414618207104251311012019222116931217195652461218018466650221124662162202532412242372141616013121543175751231387156237204691528229243213352511452431101543022413213559010226025123814152332241820613923614120226225144391232485144127206220782161911321527112995231212321363417525516967891662702451281176312739562255912092161201032479523071151442009541971148876736015492421128167661121331566910222017512837219181624675203122167819149253727623835177185176121217133329024625324513117118413211311309464951482416724812626149169225571827115067881842208341419176249126722262471302271454631417421525195340116101146192209372133123671371472402271121451315196100621815124310412423899113322311452161086079362306326151243801163812005830150242131224681122551301807198243100218649021711523321147116242066692305271164223271544190239171464210901431237881731265552145422532031211131286414797212167136132113151124127126242247661819127441391051861071852002229718219225515661011759816818824022411222519311295104177712411113184181128248144102981941552092436693412023813324517010819225513180217254108283692134389212431132381271513236145501562725646211315741958293653412487148671205836923984207214110120891912231966848160126168216123169941691123012219424713119240255487624619554207143231682222081961291361453269251731005413317811214122440192423220421912910019518214518134170932452087103714918519710421216681281137411917515454217179191041341216502198244140169597889282412279151130147230791623321151122203921120297141240752915164431661451901981721010832252718293146255189752526493187187645124399114130236215121249638672762116594992543020521910920460148123221722565142211001271683716211421291988311401318314182183501099053152158661646923119423329612247817420824111531407521716547631751261147822123621018289165109176249224170229115431501922151091853310452132301816478104132212167233135239134240210376719313719218980231519623011520270135144112817172312214212620897135652134421323813919823710214920010256835255605668261211342021952392318644696324203391951202001818370241442122112331492020823028631558567561203418112189362119421926157752823814275123224208912532462391692441782569205179139218130138237231836232132072051758434195889216145171591525719117737246127254127231108253692492199113922321714030136127243229200215951531752361271167619261206117699107136108672461142082719115625124647230126248106682473117879238175188212221120185187238114119133111210112217165174210759337238138162197234119112177171216179207819129179174418491291261171971511231336424311844223614490351782182273712780253179170131402541124913529631446218859169247195168142223205632481551640443310211112532321941492958238112116163194151324320820127126201501783122241278519918110425215824912723516113202751841172392012559110316218124623968238235722992525571421751415014237150293168132031614390100222130851302292238412986142163192121722001602098411112812891794201167851722092042150743841751491421866961444917018025119513312515919713237771343013781132246133956816415369144154218187214659916015024798125626174304824161204017711822452223099147229803222515462129218194720383188207131228251672311623191117871432341291261852815135110154930199826922615137121122322202255175203217144577315317150233206161761962012072411318910015970142236782252083412022922620892631471826432524632234224714975100116194161221118137775106252229150130193501115332301831192551961612824402041556818415614822110771213148173557419718611734144101485818015414818519782237862011541841172042271064223120194882008511019711471451336077142099831793258252135104841217352718217124121335250686018437245965717879630105231180118292391146190381341872313214125115311019131001721111841305514855247139163213188125232194559473123223121371217315718394582100168144171222438881131096421469112198577431102816918014921222414213312224237402092441992377123025118712711192060181661083221724319211130781614733244128172155574725418724322622510320850352221013127127147221616425594137245156714632217144543711219423412648221816210324111221108151624715614320148237201234162222891011321289112711994220189161137247711666220155245136238672521321541261158449957916721353254114110212152313925356602291292322047119242158326016523215314822616714610188149701011971611642132193351041821272120250791942113014020264396014992244108170187561051541081832521208217178132252568911413718786148144170591951702312463762321519325113877250941121812202181099228821121370306417816595928189246217431851352384317920716782823880255642002465153214169175219518261222021106815991881309471911612214571824394237418724623913123411941701547842341292122837160292462201545214147662212241906316109160152791471154220843251104165205791502092417311590209152298090523722571611627164620162112220981544034255146373168231200237190258276431548302221116523317624381454315020123934216922411401622439437645621820720624314165134196725419684611833016625114811219366401661220407720165361078974301361439881237681175719577119132252388313518759129424621283801512911723819319423921644816621060252128102672512512522620612812810482926829770109423212159486132197199131106181901589113511123126381792024841912502121172642184912381783225319318412417015139101227358180146478213224632365121143362020119269829151602087641816316155199351442372041007670863513325313139101831301144192195241133104241813524719217116351649535200142991141512161249811420014119019156132198351561997417136137159107201243014617812941507681032012113140641102531312402442511631152406015392246108742492282121782011695207361667775791531572625154561871623822612725215924225521125515824720222310219119057227237173911110913712211524313029155931224137113115215519117412222424595205121235229217191121121206174183163782840185212831231251762412309619514112926181231942536220281702462531442361433763173155195213020717314526126141953017124923412023715119910728131318922231212610060193254130198149133226235140911261591035811414223975235251362462402511731591971575814819741174114186033351271191782542397953252221201186631581612411718823811238401552114455126150164475457101261447810318825441317313110088671832917691931901122212442151332482211791141371102170203252751981729225223971246164641872492539118522024111774811846209742081702417313183782449499179119911045217592162323816225219515314496194641451632423223119612914016193732531596688992501193823246191217231122242165215223153702362472059542117417123022141955438396820837118184163124172157117815716227145174698001972443414312946233255352531715763160198451781023780211160234171711368931101401922023511224195271462404313140180202107711707049196371824958138847498813611916141120317318511274924718322819924817148114157161751818815728221159129301282001423676582171581397832194165254501386782254171604279160671009397227214170184222774522057531181333113114412015912481443214545101203571431341701874982672222182231432362493622224267149902464417115185133165227191151115235984151161872146322100332301777522015051581409924095989953100233100123142774223225248154422922015711422680542491645622815974176411345253596419167170711671961401297750161145911072472660174137112207245160109212234841742432492261491991957129231321312524296381292141079612201092072471934018712519198194186217417582252190210203189371516414311611522053521837822222819016627024512815317325591209055361589080634118720244224129891956315882108674791641381771961482202182311791071662282127821169129158781152306136391812362172121787316910120716514963151814957179138814717917111611316126113205147836724811515314914750431018120944137321662494234252182179832874727051834823214835612224114741133143233110196102471327151835818716011411454249412252022514319823116211602481041281038313917620722473147195391911158734115368110211433810322415018225169164194167734216523223322816216713615686381657521971289512153210741597643125216419431101122614065122217147105160244241148146199146139307546166981373824523920455805567311352041484012758165922042412114238101809857923552128167822021592071741551542194837187141432481152343910321362155941175976114931551524017210818976137100219181199161717337164108135792012210811420231291614839149396115882695496023812213263411881851015026174921529224620224841065741415451151942431009054622815258177230167533230901572048420117412246187138581275216164166169362060411181011971433822811516821175138307944166662282215410942202961192471783325112139168501692282071318370371428276315912440462232361032041081984410330386313711218712424072981176672413619280243240602439134521646482207229212205442214724116955012365171177415127611548812611256423715130140431281916685318121915863592122307151255391620174761103224419821192119931841291108853333113520710285715413730881682466617713969152201834875201021524079212598125812617520623212858598277205174848834117196172203520126512003326178228472313716825519820737142223716920814819112661731451367660161335227515010361191459120393244148681342292552296021712324847130182401122482211443692823211114412375159219171351124636751961452121841243012175253110112183084162172488711522797255114782201911542719912537126104242951343822522227146242195224164251661472381113724920918820815920615122521162421482497917488157241552551732458719140125249111519425185242219219182222202857781513257144241129144237219130119108131211159123227175418924924223611918320422125121921614772492358495238173185218874512314244852919921225216348353424592235472319511716118772134182591011282192525144193124123214418324419312322123725220520621255179127149193120622617767551301402123163144222251113762317172531591976510013711219059159951721141224921455130141402295209255406381205128511097163231227225142752001121255117133142518810325210997157241991601631911413892145612198124866143885873199191232123325487123421573916029132170191005219222810151107209741752442195821703317413920315418391921251891042281413475372311582372001104015594124116792022001582289912383792872872439825135651232925062143272181551141786123560412328812912232009061221362405196586525210617346191181491021491842532142061051613616655112142459118418426127521781341437015024817410914024911379180231192112471915931146771241202252411318948811842512291136114245149193170751252298762242415311872248229254102207119147201182072179874956219894204115230112225251151515510789202593511987247112301211901681802421462062113420982310023916823818011723664381514017746582131455917643249240311621418931121232189824276134161164144875111049243331931632082090182252028232152304272781241172296576137121901702432246917927898119193791821417314743244642157117715043202664992077017895211257464115621223320324813799143222512511681921272268014411231282148333156229148192105014221777518820136601885529771332232347119204302181552142431056085138381962071811001438102208695213129262001525186669220871662062352062146513124227171537167120143248742162695158235193157221432082096934240141622342071801032471244020313672382373722913119839130232524223959981282076612713718818820615119915222104190050190421181432425343230163202231244281592172062513121020710817721717171261666123911618745701482271258424941531024213354151490225141171195155214224218184017109197116030912637202932413812220911184161181203103150521551932442201385489681651132451942301172091731781097762351344034551741372081016716311641152168198534920523522690101105789154943210716820322623230228144107185111227268955703571531751411059331187232566342686201418993842268834132203451542152061759310239135235219154661667240204441701599518744170153522151328418177201173701813610181981902366316019525050966748025522819410512153243171151461089229217176501649820924321714979234481941472011337936211607160164232129208106899621889486921311943150101539514323519920224922110213174160218360206163811432719070922451325520166791714110734271012132097289225711286392231601401069431221178168411962114423517895224140136182176201132441571382121644131073523487135215831185714032241250531451364782536801931732012131306632001911021526160231221451011051632502131123486205871321151681391745801327565201201802241912838170214625194215441991317595924020423117610219725221814916419164243472136618215723411416225186941741728616724159144229711659015419737685154261292482204017211010172237114941384916891119438198749226131249231833384148172281869423255932074510451222412201761868533534366106721216910423774117193216591862402212006564432251507113197991442482623819211924678558588417818374492343325510397713324710672151177873113163221291638152486717087601519313910612250205116154136496381724327145791681139209113131106254372175689660139220205170158148935173103296015183595716723815314042297616868127170401496822822105168208242167928133132602291561467512490136121423220424410187157688012523522066195171237916511540332484529743935271545011320451411711346840197147233146183167211421587517512062173108106902252121481801052014911514613114711130255167255185252111127209176229149146109471032362161462482141822325518313419117737244245453359156117121216178661751091532472502142242151832041232271491851912175823918921566222219261802512151179294219058801231901792366610313711061861017424615012118422666151251731842183918421087238239193146127152123168174254198963021672031062814070199512220912741151651352715119135196293711211647116864818043924721216144461451691119514914410525323374342281992441282001463023318627181189209424520822441464953115114214111789517811511923118199104714312314915114299243163204942215253242881320219617874411410429129215143329320042981922242462322032171781711842101871751461021602015241371541400842410018499882241322001081051993523422819122224117821638149922344319040187132015823593420288192331831841381102096112597607124716729217147521764397104111242201142172111251332157142110281731883814713775472034223619787142216629550921602434497174208447215222460465521019213958122160928332235126422448045551801112162411518451104173787105168240573116524324301241414213636232876119245566910871438494254148189234198136244247952717019811112915125020347244812161701716721322421811214101931601351144115261031521617426321751432121366514516070230182142212925782121177191236223472122181109126513423200272177036641841525211014415025291229104253120864699186183165188901062521961777811617149226155120712025143552087392222127121240982778319214110852131124218208152157854148115681261191321358156181135661066077226112743423237414613022922313862401873350200643415018419320210417419884150239861302227846167116002516275176513612263141713611286822086823694942098145332021512712116143233912724814624948501132201522111501512144624666811712920623711325320612310317122321721161931442362551091131207320711722929145895823318811024611859472481452422411267250291441111301881943688413173351029110212005245291282451949161177291692281464314814839130821496561461461936783116312219222371212817333232121110747114220146231915125544126233139252197103150182764310881709212131137911941119115082145567555197232851786320242642349132202227193778824234225662231452546149247214235425410914918221112178616217435252152462151168781442051491363225149233181122112201314514117822223299732497916714923217410013398231489256187164411781138525222613137755546168916218916015085823788134171587413122023611691471322880253511382349923173799018241113217166232214181832431077223199317313611691516414876202170132413817424825197215296198212219109334910171210614642213117392299025513118483106751641462911223782771991314513338531421931871826436136119921856847521842091501881521761001914320152547717817425588112202243144200157647522424124116101839171108910043174814486140134721262201521631442142131828121861192152222672373694115962031248562291941103953160213502617418110630989705326164261915017123566118143230129142941711447110811211033112227248225158262051282211252441709481132501801770207104250190144111114514215250147242222119520939232654724785190212149621417352624122423197512714239972172071291361217182898713410922124217140709039138162221811282241161321531713669133587482156917953174227189617121720274178451781461724547113415555722822621517520952145118108117994143201426812016034157022199436186122612554152164116194101125918922621424556249113511663310137227461252353721221250662521621392051078215587166551821002121502318416718217276253223254247178952521621162191501882991832232162624319821424917511115524725018218517511113324713513029543232992243118108153183253149328986104752081554720725225317165123223141222253235240125191141602158525022924119811221503722419896229181190821576410811513620317513937171254162116621771725952881251098044133196702005319825519217525548231208250242117170177651091411968211817619419199128245154751991852461576719020711922915910620758182471091007924214515713722421619024411515759216267436110361842362509619717397491002104213722151262191068735174107135195111219250230129152413656113392114011825275951571063295248143134216133174302405825120340212229190178225221169253159381562332001631285019718515156821298725120312921249263310634108197135175242171301984197821311081514541204163188711693344199921512216816474169161118541071517424688187406017125316318454372242442251561632518325111919824512622125100792521771311691031871154624422995236471841141642482423292223118230202349423411915023914817325521442371110072193199162132721318517125024811211772184163874095233121142324714571941377665611916724412426127178611992041992251391221385817941685448178140143166442366211207245150942817218812416410922517011848236161230170194591171531351681454712919374193171137368488097129238026316019473924617222151031212223826622281292206694213862234200238201961215200561802219316120319214814329226171792516518568195291411661168959188294761681173414062119951602481979912692178135302421615310021120701355610412311459173941311517644235215151252242032151991321355245286392181791768362521501547239148131431121731492122711856165594314723615317421141072268168448411581452532522021275214146178204243324419520009187879012615166951938586102197200751611952581832161579412456712471631922391331231319191311007324310012321419217436302501773896053017740147658911215066812558211190117246201883919711107338688411901116813383381951721407823789145213189232235142185220911221651112202521217125108214017013024114481429510415325323953252512612633532031301711512061191188914616520817313114717950152208188142461511132184203230169210235239161191201611413216250241240120982161137422798903738220461052177548782430145671701501348645938018350184114930667228704021523419817111410920318620823437207101149672201612515012132412232441921482201062446423420215939451231720723614670100131775954850301471314010122611299275156232150531041402161822451713431662288563238236110166122328522661254618742178121452526816893121139752171219591921621213471642271319712859167962152226183141161442121246159117322451758073230248121342262471419912875162525323146249491691411895415482062548619616157201198851291122723113213621316634457168166211126188195241895389178602323799832435311419515217922722516625241101121116820522721822727747206132112159151155166119202159136232481412409510181362402079502071391609511789119928106272406723112152361764520460198172219153105154186187153651824116878819012371210177221163157164144221862513016357109514239118238856181133012914721949542542041436655282122512342377620411220029245118281622341771567228141239518988911451383034112421132172071461501087411093151185104857823516222016620216219820437107512541272557124920347871881821816424419218221655182462163321131308415132160711663501966448989619923012159681541891891012225915523112417661164251211180254207211219223143592139424819717762093221162710815117717112516530174128254502544654621121651759267250212200245781441271810888251212165175931981188974129127961215332206235137183331308313517878282002082531198213511837292171535224812134176171211632513892003992342418615220520018418550123992521582051461531213711281224759171082013519557113295116724180351209123833200164165321812129511824296246192167919924710319224514540132224585064149192851412306423515012718520932243242282472391656151487184511326418423520424171208149911961822710012324620114193412241101864233571264025323212914835123186118137482322232520322523320617251932172003131233129139166710865701811896217511260186168191107149491013494317790522276420618090558010104135640205331732282362001901161042214080235741861839712972413513042263316619565209325310123112275206244201592336691031237414472241243116720257139111977122401269220618617281562393968174501511623117012431045224595821171031616216618015215631591444120314619039107104821030135611132352005511019916124722018981173230165224822762166232891001531991695518712434248106271432441849117816820114197411784254549021914631169821359191198188252112561548575836178161180921642248559122189245302361451241216176131711361251191451223216012922886141154782820230216153140362162552382521311911511571014258911521371286513211247223125241208241841718126569322221817616821474198248938519259348667383323814011030129196361131321962001901801939320171151001461031480891861342522113897571801052352271102611832492211131521284250184195107825813948122138196221151392461761402731481151489336191982622823923824207385182234194152235253125651820411787431835206231841801331702966104205505124813716895513719918120905124217720513421320499856831617934162171761541042087123215714133165717210224917222623073252121111266617115121792222811674426802075813612680121235164204114882512112142291751572532071641517620117315495187521264912411622113018622911212510013120452162461431224133511043238701322524543342787346130432191361115812941372431169016914015100868215240451701451062587123119215115281144121727114221179166131107211512912966311188292462416718218524515311111772241866156271441301931612275840132284190238112245140807233929223224813282289130208358206323719933129156532222211214974128429113359433331749514231111381474946129164236131101042546912024822473214767196635721985215826423822610110260188156120241731681131671281752615750222125415216330423742202471741601515922950781721742232272212061217144988288151612763118881781101031981331121252113198245914556702352052278212424364172117180973411274225197183219566134562361756773432231126120851703217816119239702067710920899169140123140982332074533812668421683617682591819714814374227997392188621811011177820321016215018613818219416610116947254117198127252632431272452032362151821641901904523824510911119108155239204162161344216168608150213132542071231949240242220551275325118391131254176611162391111627829130106232451242863178472271667613245189218951221071681049112189191124202101471091282038642170212213781102558184123561321206017272922260617892622525222284842322286021625220138967591471236314261178512412281937623259103175233178164196391548112474196161137723220012820436150171211991249538339235801517318116986814415222272130902527982915486422917322523447143214162133142237203562211581231151842501391631815817518686702491351161098611920218119319873174227170197133241624175199170511392121518447202311181763351511413714714821124546214255178102168246238592431224912403614831703210910411198223231496115970161102401121202341122301651291941071951652151342031742822590153124414417079231924221213620026188160123202606623913221912071841971535199126138172121150222244271781641401623522518910524087146186121180198234234230209903424205213222080178133255242145742001861131191931602111872392743112703264184141272204570282075340157241602338872001761782161649491702118553544715020411552254103801040195687410622139232991291842304917928234138200190167471562161892082481778715936142711101107281706846246239766681809960263420048203112149922322718020912314119430191032532471781524902833175238229141981491942418815442607613216013618019324362820807617161102002462411318925315939302546784231135209240239147237185164701572115419056947119517671112109184226170103255102118652341816211131534316835822033103111421771639122694311691624073491431231209913222402467216412812318243311371308362071101021001151213118343133109170161284779212127113162254214241581923320940136186981623811218142072031581811936216120610386191180166270245128173125623018223314997114110205115185532262301362356322971671922015797442431371471031791454117612015817618920111610346881872041521489191184831011821135312656180783813421420314022520121723868971621715885531631609778732031481562615546442511536222266215594254769015323872807656233191279094221180252122219154106421212031746431041751271901734724411612220117925165147502035653531751029012620524357220142116156105199793614718440712895233126254195113572071001487847322412619619515621010218338910013414115160715878433515821415245254422531479791194221142111164346115103205591161354111513223184471491291041831952361461111411282012220517324841772165415914429122897110185192100164452072551094971481822062972575318724478251115121247157169998821321131831521611483232547424019513996240223845524690172238551951279701101512541202489925017144231187656410186109153179715315129119244101134181217965616186133217188170101193213203671708720417192541839813719821812521415213520337534318410132214172148153125343241203897310316914784229178321331212123780549815991572301372485060495221898189220731061942042323616654837146237135181801867727209136175331466123753753391452292431072271874774170106200168424110720195247243210127247239107254203223148110126571561176125107244246173175810524854122224212133191154243230175102189191611082471874915731389323213413687292171495817643233341242507221713217621722101677196115771729216417173208951131811918216121447182321582501028876200189135624892245641634724515020012013031506832227654116961641592481035824214223877147117114621382342555211812011924216967153104013522918719142205887223612220554119127420548233541761793427238216646164152722126195232164113962559528173129241227247126210163631081978593671981019319415012415811113017843243184236208113710415419818913215919317720240242216323910318724278312061759135462202362111578939219511423072498520825320166147413295236471846088116101162122517419022613518730111741171847841671872151311551591111341511211741308519525296902080104171187481452121611773451103876511712180186240193165651474226151206126237239632199111418216722876119209233461931692061941471351111223780135201008422576794920915617755364114921031561936191961491623320115017424717993210201131727929151322511001231452145252119127441116153518824613675229232855881601519111919031206414765223161623122167198953724145114397621815316210946181202413622251472312262623713671179100872492399818317652197117971261139241187702544122322458138531011180152146192132206616014716416919516118910523217123879226208621223720025412194165816359601449725114418519415716423014014022153441781162551239995158199129238102641802431891331885103187118418416682581541621672501041806011323486708417216224465120240202136103108160121113137247881811281636752181624358248801044296841512027182511161748120240761021651732922816222625914814111724517222719425131782001352506315386250841221534115910712617469212161304214316122181130778419314492244112124222791631793013620112636655463122601697224645784312334169232145248188199181115982174255681786454381392071837720210822124216122416821418013213220810913720310833356941100253145248156799178015839146332383718623814412202161642921686315622210019522723865134711918487144673333980148922841511998215154611820162163139442011864923821049781931471398183213132606062246144218163143171237168148226421987647416422611486211212513642548196183219145321746821110322512118853139129223822022157158201765819112311220110410184154315714871472721020170876216982171262009314823016124860931507247174240809230772265420022923613114632144165126238128135121782231333154404520592218228401805146243219193742441121941041612544432536764561124320513191106933223212921615615921898717885241986812619265238881202251436133120731351383721711113017917915532198243232777310052312614449893244246402086120628247206176149139108241347914243139505775512212521011616513431079142861076760862551849428121250178902322162121813830772285151117751993217724811815312120551902401455662101130711913831794212144161240177248220167191781663616477139137153291914882161862339523125323125590187121115233182452171751097322017711722524617322522282661822011284112955183419118157248205871005522618312653247237952052491121991303191143239223153121174191069412112412786207711773512383472457413525022915822620322119715118613946118225817622111246923118713812517621132190510889122391193724313712319621221316024314315713353128104313632368239251158239146149130212440255921671081961151869386207282221575224812119419210324131591972252521714711424296614541206510324311858623712728881301322006670208289139115116105141795014675156376810018224122116112821019323997255103218115135118165152362482261042371172001047924123272200168708219120318254137482342271351531211203268981414823419425216136130831351151961187214016417920719210220167229169714412124412876532382534418223121115225420722713424737192371882389811811716823621064491264017238165129182351031896040243531098981561118447249521041021909187759215331542819416822461712461641541252032319923513225015872215838611936261321996836128593251741905882115778012325310422124516318121592104167126181715378481643015769112101205414616022550175192634030242147002552447368658418822492120851033223221613051239214145971702021401122682440224241131892082141741439819219217410011115521211002461762442171131682081222408513619825243100138217178761835122272157899431591401131362464181921911898321513410015213320221213014413018424861802843411452212511461542126315663716818010634240321242210164421889771871511325622511847239702062001319323241942094219412821322873652063322316813014215221182523317012710321020019011615252732331813613366150193491481761531831171775811469191172301952163699111242252386512412111120510019062119681982859152197115185121180230171147132101931759922224012926857532276538163235170184120174234106185226149160741511965320015418555212181121240501981682431781161615103236209841921683024187121361311441541012306874713174542151291572423516470987420789692711088221138513171822820846177785022602335117110415593190813223245561568121052173168113861057580692191561461501601786997532032302151748229118857523212174033164111291891651731791381551317216718021205112127100585012810417913915514513207103872074311111169921892177561841141372054681699260179168301982557212423816391851201662288520742110156912146018317237164170451721181058820514620810622618317561631761107411053116255185449113884240124782131802522617410422311461971123415178746154154871731461602432611612464116197179153229511391554017211714820624212216617321580186212533220824110429741658114765149821651221182094791707225320918811217515554322205711621571711561921788611172330212249183197764846157233691418311261662121220740108156852121644915519635126252203213012938491731762252191611609725068152110271673771181221451421621401331159524152205401061542332079411351173756619214318167218170185179752444417415685168103150149907723021102311931851753416056136530216214119921211333641752111974254298214725015390212561651689710611322752942045913023424274331512232331451131701051541102472352437216922911475100761092241671811802206205186115176361307199126310220183204441101972913134915685178200652331621531633022213302001152444867159169228891782371222206717122231221197397194100291128322173772386210556396118137162216193156146182217371095111261032288420520141132052011573751475142061738824019125211185155183531912461062331079150183111137223177378224519225223791231282934966222216262522302302241835513518817957228173151231189243742402194771892532032171591902521719151251925512722321827195117872502031432387359178511730442145313114995128522358821172437216571032101762043174190113164704842208547190291081704920867732202101802127019597213281222262214971114325220016813044454283129472441601310013012923719413936176571993914164219172952261871572532119421763496717813710206212593239207898920018510024490151144517426211153887615897255953017167213290782920470612411718825414339262526669621211813667911222251611223313022312755486447351521915212368108135561011827551428616997131144117153191088473231021612752297313398945179141191866313717745204142292043215488801211721962481442490121382215167762772721606113420962215182682011598064319234561015153202196024279161148252165192261142245229137122106192741091499616728246638223524243140224558732914596135226247204126220217198163741922311752422302825196341772262444221241131581157241766517414384832222517529185168684772071672413591471882297497213201535026074226391602549922542414141253196190179202155390121176238127244918322421472148225189105103145238581671531280161095798522816113210841939617812911220315816516926701628942030254209711697921101853914268115201361325616752524514319823111420114026951134725145208217508216452061691426083531251593924624818213235141402559214324623210721918246124167229591321587617053145781425563421512476610823419864230208794571712391451692231821132201571089175021848285633222412314444311139143235922491122457224521365206621314911066411216931121233135204233210177861031012237383125424919612915017519210812761163103191253551761928124810813320519022798825374351932522421592071712292471377832381511632222418718492039413893188113651951066869120227234168150245145771071441176249136134213102831101982232094523519523587205171884428111388621220842226221135234611508824812478772522261412001281352272423810186134213449521622817267106222221771392144716891623718374135513816723021341491831818221178541262411149173235162154215167631369336243135618716011025110681951381361341492252452813815983687888344924132337214152159212201314320325069232129226231178434132856529122245121151160781722612541282035718812324847116172471111225654624130168312221722231877118078150245167102137025250127643814517133254385119919935153113173174253153188752161242261132111836196230157218081171238219347823162001961161111093461148761422302171291971531624120611520187243128911201121223219914921517118024111235140141634636099239123251252128372716315113627179100191582196534120871411872215616103116581722272092011818313515222122330142149191122278770512232472042419314342182506913815923541103862411522013961162541282431345815324460992244751451571539119057241195114241281323763754139197779025087130197473846901512101783416310581869311781992222027737255229237594127107201107175221901825310925115018423791348491607416671562411292055862240242188951111425423715014422311111221251187248163251249298695251682252151141171602261161232062242311371992461659323246184214951221151762422309613344461321711121325043175138696170174122243723814941671847611683401614721391991014610824217788132331361297753869933972226619616122120034961210191157599216542222026521282211551384224248442542001746866172167953825423422095157144131322216119925418511169731841581941171801293123825066221532031577552411333130121161562394260119562552281932365123718514823215046144051406202205192215173821291541214124614312635252236121121407541157178629613532186212144161431052334012924513442113311321561716716206228153732004473243119230306314857180551652391792482381431637119373059152126162617538801381776830236613417415873261161821287824232531431234033220130442536751983523914011574112452197079913223129611441371991682112938126220242119202013324666102201163112230191399714378261187712515667194213461045215413517918232132155161145193179385015627237180862061731535522610712114723116210139214817101393023225456182251994911925216153121396942167825791821391691215621017933185511361081651279215929142312222518078522314692200452083100128671365321711890154752081742150103432917172682220616114921222672134535120030187157151677825196620113193181108911362236390112221132181062101851814363240104831511383714215821292535914714441352551669221142367668211210110135246160121821423072591134024310012315077232142144617445584685725210564117880419849117252805453641501722337414958175167149981162410131911622427512522923251801313013223819246244150912280149372311236014822694208338619066234202247211841921683024165245621202129523116712619511688139227691559519118186631731762251132191494416924016124818816751202231148472262018812778692191798985404126150220215145131422335241304221838103203134981932113910154481301641219368253422166322580255135981143014220512560169813128481521508724784742012442521223420745109229236512332292431071507154172214203149141947491214134213200254314337230631518562175114818451172141681288183176105531409518119313413237806118422725018418213975553846221164238704013019319418519625222524543102222136315581250164204781822411103612117389212321136251321921212454116012232085023416124213324341183195315324663231938810610424020614218581324419415256150160106312937101496114449241232252236111546241167227135725119157341999987105241375122720212055144512710834175152062129445221551941851759321698884717447416336112116331639961088882166224154190149206243120183541842411571112919944189164760321969645103602521131101513816023769161117131094744108219112596815511374103205201223186124176134199139240130187140166227177865549901172011601373214713711721332133292506738128205190117164136111111493023178170143156210205131244191226991144321369542164381999818013412910533153662372051621902756191362531369318041174117831881611018392203166196214231469021538534678175111441101691078985249632544714125523723772199417321619061125251182216237913511918474192855238682155631765322814120524312617953244155934118190292112437319824917413817135315112242206119229523319986118043165253247176759147471182192233451781533118421414301442011961361103254128145251187157664838154117951691391916633341931320232100320130240111136184181103135725111106129118240751321301159312116721910117296104119822551671771026811610010322620817436667024616428221155130242571133225322819320421123721718620214415425014017446106356178121144145201238219627221442995220610419828241224136129139221156428122716819443162710619056903239231524024217016219176245128464823413524516312380502258113821964213194168361620617317814910605220699991281616332220218216511192251141511485625221925017073252108873325210210012725022423819622279225175209615810420825512125224019084120213531531008941702335022496158492916874136932481372091579624117314021412512612518413825267941612066824866391071544817623417810813989133219223239225218721419013911028171232074960788176161315509816013714014202492513325514413013201202107815813313819239169891842552362491582262111352431422916111622227922718762138572529752202143828159108207225169817023712224719317011076125901015830632032815751969866181452541364219170148144471422151271171781299025324268189140180104718213232008311221511334682049018022922412217619410625014631139108130773891235321431916230173161092191102058602071041061461092036314115615215014215513011557167104243103117191213867161611820984146104165162991510115862156310771166210441572090237218151241127417654236122914013319728143128817819113520223178742371251171702411129197286165528717364103210632242081081291101221522224161851431931731639294111219105339154143840106110142031191982461042552428822115171107775140234129113127110673241252702410713221119523916723537820117512386183140579164150621518361175106137173153671323921174137163203113174711216103122113837220517821716517314425473153149225245171181501087494254115248867222914641575379232941795451211226512510421382898340167230209132130201217213171317113043151601538250531752062143813095741751766624519214616912121383243106661702219523014715119182451352171991801748397322421281044917310717911155872272181612016572191868614901517232226331641707738252355232441282063922613217911502031457092031276211362111147111131153092786912117425514813519220386619237223221781681422451452232910010010292346201151248720111612216069214156852533213218166229184720118217253116247247119925381401241231202271224164221191512111416568227202104238237361292083191806625143524996309223916686821831381962291132191155521616163208319817620325324021015128104206113129642441929319575193138118711639144214112271912111154926253231129143244203122163206981632347424718851216067131225412813611116361999518311491271232324519061188285810412349174237197248694738402269054198521891622317816114422018036189190169987320316625521520225523511155190188121201431557518319115025426122962031092451921182171183224811715779252187215222362501096625171053525113917429169191492121121651752508279217181129102543110358114187254161251161112181812542102731019512851255782243213721733195142240131105248242881312273017115195206183197209902519957238722372335117141164115815519521318392211262378615129199204942002272265452519413771831851881787614410944488864763219412268240254163123831094751149116919924716715760152113106620815816517917242163166472153107117237321038135177158210205143189531334206506815614981504920533213015257811655513417040221205161422516568297375075332175320491106731933722710512911253718417822161235812339274225681581646732667763382210185107182342182131063311277348876163836618214018641174147358410512744612111491232446421824019014816325121110859511122528019818523812433885021832287520413219812019817697321852421762151129146311197386351991447225219512321161183815923420013390153189208205992403649188182742081701711851181802222217516122481127165251622193313522323576015218990413710520817119111300104160197113141091192521585093125101494278124796813444156178112126713732175801272484313823513223723317125324724616419896281851831692121184238243245111912191931628112915050552920914115020939381772001732088615118514612715851731972261471093254115729555633802281692492614987392101625253592441061982241971512038821402003922810121182977316532151181191397038237906640230233195186217112119222121531321312412113217514149932721424513011692754522310012932157996410622260248631316422484171531611979022711617013022623515522985130192251820816862531602114122624264197229126201511866252114881261652232513452501092518319020888254822992525523719263182410253197198418524881157821223313522319136121762011991792039023521721781951998313857228797313216951314319522716124818120316721526014584425114310892132057492242981002272622819335241249144254185165173106113620313719847222196169153697779382379201173141106941391086415224958018734162942464215054997153205107235417394801832825030941916614013015013666649196181193716942204451071588321860187164105861131631355716577264612918614880191711220551183172101749418145851001071623312498103351307315321171317119150188822916532190165232191251985714812418417667117111215251251207131382241721671051585967162259302118425444144252220134128781567323720019951241832081262382321974768472221362710718812720919824869271922109212206215141734527199154641882261648154142652118797227141134192221782252559472185254914168426813453423173951841046123823719221719291117210019418719563370354522451112422112222023930178130391744621424917396151410024823819385943412921721444412219124173121139491801024418231481821179992235198248222525721041931793317410110998243202172694324290911382613923515122825419925518612424318221417321920218211020122019045971992141042158810421294104251182176215182154241522471864451262442142032436212261170235163236145616916721920346118879423416918821293113169167252981192331653017921917912923317430481471582429160125219981652184721917168173234109214525038200371022344223340196479102151838184110551882192517522732265818924212911220666241109155972331912327331578810821113314511581232461122241425523116221781108014411530130203175189219118512003589251362324322622988316483141213362017325560188164139187147103456679241197110157117221896432691639820935459194128952301943245185752420180174351161991312085014353222172614175196198224124551321692481088720915320666632061182215823542226442094624472791672421143915208531512281491951624624620310013111314840016314820911459331401641385922941366916318239269126224824293423321711062203462899220024818644541228122264221529321294200115612482211250702484513392232709022151031962115623741223112213920624757220221123130301881382451957611325253230149221163194198140255416413506016416624541149111153244106213413942144234857322422915381511697616522194160241120201191175128122743417142422419168147641994717425518170203107241321472282141801472331152542047214769160941502490541812915414217266104201254325510824392281562477811414223510120712514384419100114240213354071732381321241912311381992472458311722766202304921112871226425423822364233228442522123102143112031274846247169244178249245439798824618260124088114209244162701477168521131183322515197231772011751117191241124110237227736983243234225417412924119518023015045122341852322251841882513313225245171162155215171581802361030162143301201942093235130432216337158207169898018313015216671621542144510890171146968512061909821122321132331982321505340132224202182153691383114171381011509119119066150271225416376811015873471234411251989224521637792031346214812817274148132364015614683771710091527115401471622251141112244128971261822152261841741591125615179205625421218313114325422213196702351102451281181471431291414882112679148252248122166132062252162382490120189245301842022332341182059981484916586656620311137454736531911442201401871296722298121823736205136816617619425410199531491230811402133254162249225143243205242431461425923512816710251888323925119611223468107227148816817421331192097231220221107542271924165148231241158230183200392412291837205227186240239147420525311210418319492823779561201425145122235689289124871385621923225419717843251369324282521221922171857623713021258200453898192181201849961229610992203138196198378920575242262711107115151175432521974343541111711212491492364515514718311114121919010116123412911287151681711222241814565219557189177691662025511875216174953930217851162508021316515821810731172157652372451931541071311822171764473113131191209144194718825317662391791315515487120252936418617225217612611337196254201181645920923714221085239235158247122238292006616210476816191740236661035112935229871615102921645819318124920997721599671623447335318592111234222215146181911151192312012921821763232121412412117221418229160322149913571661116220195129115565817324015018748249291602531811221372461796632922622523510715616195234111891151411320424064230446665642125601632261701741156615615535117183142213127113188254214113205131761411491954778212127121162238214113509523345196126772252441852344619718210524121891161012121766819846220469733109119779147152193140209711941751438421913293242702051845389119235681951731471411837852222602221122431201891125213555711766782211478180592261984973205119212541342719910717531171241220155392341125250236236193251561992313074136191041447701881992312131498336222212475616281411877176212381612311090691971611923872541726213150103123124184214201132814317520100152220122641671211456172233606311118930146172192452392440111150164244448565233200422151148313914310721322919821224471164125942136141882414311617213856198108138923612725452121528824253938559234172152427322222893301251871212092289318711717265221137241197241134471435515425121313738925921217126110170891451938419215910912464255118665248671152011801946200253115572138012719422715018824222184266124011266621673415421412219551797491184102021397949189184137751662282136215392604517511065221202422112612010611017344391549058167180855526219020123020604416212621324425225019918332235381771072093104925292591707108123172224910902161805818610110919414614111310927222124515593210525718724291772464112450181232177196609112581434527102091273416580357228916223224122821575544144118312178104412092083585680541671801531553493160161100215010921117551603811712401433261922116619437903247251471941092241621749247719369644133481053117719075801061751572522549174921631620998163122716110353583294619117817499161114119618111013623611763317712139832518010876104222162153458135563022817611711610680254137227315067631881462501622252476766188104127261089819266631982062817664169702391824721419014022121184862021012402292251556410014318712384254159279414191858641224707931521280136921116810514416371001481285698236810018311622222412814115365211174108222242231883316611385662531462442501501561862422422302041512541351468794109219188173228151191762202507419414217398441801257524814220919312412362162618212575489896251431152231206910214124244122841993150142314019121685119181175254581229608580109591399331202162529693240167242230145170916746915234551392397180301451171312319061708719614752199194167712819919119716322821917920749561402823258661651441261995110233322432031306642610024419219445172399057116117133138147101153201112812319168120112462151695787810824213121611412457386282351661908219669996332021111402321243596691297626143248318332241355018123123018161251249541681882128733232175112102432461481572394119767136245629414521151172456789244801201582222151841691834814588982001544525319719212297189653932216958158212106917010245691164023329971985157209322316113514814226482141041173421214423424217341066745462160591814014262242025451861991762386117212611919417714024402062034410013127238110842366724919765184718722818410115114314895501041361012072551642241882615743198158130172919389241253531602551462469913421165222419633224883791410783025713024615621129185103141075829121224172782523777187169110140160143204394822810514217721614512117254248221319110021913183131471421581171383813558216128128114225332082423541251230439116013315923734220153314724011157220411666822714435203161274311623015630339111250441982363620516122914718881398699190150801221691432472121536112417723191302261771531961891651101606914714411188176581652489255144176313116912818730312481663160127592274241751332501634208351138155226150240392199619106972556313720615490216647280213182266015593535717511812625320213210147205173104123325410310273115100243218169121117791661486015185531911186921820219113481772021721246017711211411821325215422997554165172248171212149127157180244371202161941661811791381557715224151241129228226231179171137411221609753346555202932721740243110013817613612924554151224153116217492241776821711976166123218231361601982391811919512063304131732155810964461481522342183052321291691215322524543165231881961927099144148253461615022247122649630103915412820025518365184111019519051148515180150631136631831697372321182471772082521121181248214241851541074515320024025418416624597723569125218914422018017314414036144113381111541542286515820363143301122131846320716337245558176248246218254192191378421216213145173129666301982472023214035247211491542491372251571817374111919110722011818224155991220319127184227322382924244253295319242841292061011222711899331999472134388021771732203128233114545044176174914421218849161229691806510620323418015418622616619485155242255221191207223182189236213215210551911818599912041421738159100112192531918136301201251072162351551319512737104199203115223124101222239959317625115718422214317978294019121285115185171250226225242139157165151587546117582511292234461781577609223341919210101692120223513577414621523319411912814036184491091246460183131591706425014143552301252517416992220154741662381311521222518521699182611062071631874248140124196102001331748920913315825158341667851200149832481523115611020721415710601873518980147582236920269232122261123109197158817523815311219013944137161148713813712320137412618461181163624470341412942101841541687620911212325110194109171813619011212513585244194514219213315811469197249158242243221226199353315621169224441141301261921635518146103821342111361294140956018914218941351981832061162291055114251461101341011686103362013713611951111812514323721722911416819824248411786776251133178111071192463519563330131551452243242641321442221434356148120577068254245133252561632031315723511511219019149224401895680102238197129209231278247225186152121211722461483722012519011019371203126134214229120168791152988184314334271861020711091531841808210381175158981051921822418103536546231662426462691191859324803710269642311121681252225862224118240192003317483643132224816414521121893691671021441190193171163421933176210185151184531691762021882322513292246190156110872222551933189121021402286415028117116157229929730203191100884314420214565122519917620121532152211371941822102321813521321513582121122520827133119232122441543831127206241111516117697117433810187161715887174319218914816681942121302503982101134647220517823369141791031486314994246180141713221446231231611321242202001661812111023415974451253818912410281191326216411413710843150905845191126941979872246194166531713171101107130170165652291391582151211982112422343426862332521292261035120267171151177119872083508185214158575161131361292082343783114197238255145248220135227114301382051829319811257124566223117293417622525713366208142127851114308712017951254562409286133121452175213105166166713296121228224271153271637156971181239010816436240146127301842361351564025329195176191251924023963114475190124142226238244192152929121297511522524117720523514722193186543652172771068815122018433173117192183217412118913612986157923722120255563796184276122410112666468246129832061381742551168022167568417252601699417069973010376192128904823710021701291591421871981841142213718416917911220822116210121211772212198248239121392301901722326841692331199281046068944222202131824174239104205519814197947219972861176411697385652351982442141492335321314910916525520712721524415925416623014910916515518316611022118181227213882446419274163222248192142205501150252122107232167111199302544811512011920918514223417118924587123106175245214922351711862148712117317525290951531609592897110416025219864133108593217114214212912291042312538872160244133139123592168925221761711722392201292551619166162233254399167243138189144558648224582251961885792144921872371018819212621921416917513518226814615321821111123114202166221121386722620018616211891511871506961413515725338105682431042231911401141286160109166136168172091081538189111841078510818020414010319614073156731561061643323523212322511410415027102118226154112401988815846613132132551842382051451861553524555712611014052224585621840242274911493228682146022511449981291999214522211017720418222162045820016010715217073134217992001601934154774100227121488223233224236132240167233113172278415126822158209248133261412113461174205143775317487833151248105188692522271310612881127211230345910718823212268192230341521592213181134608723261701906273016918611818025019817726512550220609439143114236227243141132011762141708413620910445136521217111515542109225688128121615311084216240130119104240170203112691811862011111071836145169581351357010712204912817036511017314177114987775252261301598222058941671311776113228922552751611912349128277723822612215616241187146131204801019572121925311924074418240115725076206157217622462422676212415515179129235254137152641582393121331261201519430165661342541801161481571381622165201125113762182251513926191582171321072482346819135230254241841793112711917019715831127102123331283111463371912382011802101991161999272632429611411013129207231215611632111363121329115241792111314620862071028518159195200230181518011169165147504339103872272022219710644132255201228226199181157124601692321372283414117167216252103514216151123486341813624684747372213822130107116232911937086131381332435317415681887143127523321510825324115215314423312971227379218625522524716910601421898019399114732548392492071961115876200127341690601538424012066222179105371791392619417023471089029215134246240441032543661224193148128465624379236247291974233242152419976413832172218131159109719213732412481551381931011531292251191520120715724564327620122073159208212691822439292133169139957491244989825318613221853137181107210155551665218916223176541611051251884666234481263125131143127186301521619202111254612616150302221332545624822165143209642242071648363991332111528115914218770645811914111117577097202559122515917071981665411441811092187151103158167122647112198136129772017752200245169141171512723424310611590871012542512559224318317520109222154185117752041719122236216221859910712824112244128140151885023917315113112618737228163291771271511242282431305174347119214932331741872208545122160183234106111512222410611121721319082244128174404217412723112964248387120220125121402534323924713521933174208951332072274810249155241881781392713122955620311015206150223212562157741752427121531601562221535122413495233452151123104711923941820152135161941371121731911321521641151969491286442332409887254233131153167141009223620419121487662262311710182119207199211419518402372321162301913910514415022942212164183681991068122161281281591209136918911520022316893208157225991811994614523313714702154816919050881151171762302181459011212516823825011225324597117135234818558881091922205160232821591431132024217162111892066217518674163899914378220521233329521121407023812811523010631191211135132132354256392519183183821895424616224245203164237462332341822502471702501382041301442171538211822120910511614522451452051482402522341381991811991121122012213731432354719122055687250108217921161606212223415619952246732411481498142332383046561072451042071891149214189301136011884718383617521018849129813331574344546622216497208158123166221113199160195116778312025711748251196129172163123211712461644182143237203561214815583103152311591492716919713913732171281341022109612119522720718519113122013931721282223324012201156146188922612324742150181246851742402082016018558115482311081232381852461885113511424113121171797923720758185632432281291401975078302022024070312025822146561015616424025125512200626929222682195246858242206118228225138135902131292610720418010610720124273212185911244318865197648816054194171253149186361801841662254108122024019513116718127126253202217101173147115107161251791652033201205017312210798468214924010811821320414622219183244919233167166235346104885316317617198635717110694121219204194198103723618124420114814639831381591625322186470122102028183145132169121117115203223363426862074210615415693219018912981801661208184705615315212201138162321801222411158921812819918171810183243106166232127747168197513717512290621351819626401721559484631631841151671622054017271751282172491171151152351021032157620717415415493574518326762011701569122024891833416669118437592186732441282109897105129252224781122441281314241241702247910136255845684828922755671120685177516041328025417923412924115321216206114571385220177205417810193681710159818611621517654185121326961221142493657322519710925200319664227186132150232541401222247902016220200131121361811261799411426164206118197143241361111491342611235151118110217213817215025218139212321106624210917144206931311991832251742084423856732246410913523810213622420716277222818224715472152401041561199196118722446419488611442101843817916117716816911219719816225524217169191218902502021502441739116295147919613492441921424597111108141261037524012321923236254771242151351531955913920832358106206183871581114719121289113169171252828723316517414675931971511862817133112225112193249195523062242103245233712716930152119192506518417852208196176831264217212635205461642159218012913927178207957425315512936128196247149642449723415115611301201214912916271221381602358243206117642617861112120254112462251511861018421412812184112561515613172237775918239514316402512151491399227361192435051081499559127244139221692077132208112532291621502089231582431696116946389851521311421758111811272321676771992535166120176468722618620622012811841784017112121371219218916698192244128765011813717818104237130851013936163716026224178462271042434124156218645874692410476161125616111622732682082321602351541997219121525217251221264292204909246101103173101942363713546173231711072011912265421963876911192361201612677141521081782451171952241681711871161431351421165244118911031821792291762119744229189772177123712112418895781851291639820111518720831429714312725412840418135501313114814984163911591919424840149731491948377575622824511262854511313673182157241726131136281831151356210946413551088020315112121495211212212551831314197243223144137762121182123915418868188742277628292001391661791342201421242920525123113415486250191129134241956672542391615917456250371482497218624718518740179442142362385416013117118311625512991195117951402121234821112183243724815313710919256126224711317222315419112388221108862170321681142412201385448175106731122051781441541011562281342144639381481517583938241451121028121121110516521124223419418119112794133108662882181521721022171301862111234861222241721601021218820511434715417411618575137312171769013681179172441321393161169419128490173127501652401771642527315310124025114417054217881601017768195202133771782411121165123317215495183441801101058819524252051713491215681821721426878180174517811652032181841985317713171162278771531372041652173230218242211783216685544421121102212162678920631841992613210227546822414112152251773214211137471761122912114112515442225477199110681372164159210122217199662511491996516680123253241194188221491195159651572161198230862252402211372456422424804522012045174135133205107991542151975317313917395147216184621771262379576154127207612476226150158220184621691131256619558815205272261542151231702241181847561168010318553401972151641881831821668121119198188221206138731212451215388818020217717915019031254200192203161616812311225411022528613522719323528161140223220016242093659242261518424011020918894184190311982542532546315530482322354817415023829221144843228613212691832001231421898129142361442011964716284211155861015244202107401741067721724421525191218901911219122220317536109221140302401754152138215212125125752161554720712311910723239111703112447101100119209165206186107611321512326110244214223236171187538012311516023023096149204271188016918923621421562143226222228183228272824016620112282073627112241131278418620712838910519923125112511712331752061291231020787711071905890253205241692541141641012449921372511992271819529395242862491978022917316120215572111261779822851221652152546016852722240195671742471511142218111225096381062251661229136621457319867252176197160200133152242019522051161141346228151641262461440235222131187192861314432093176135658912971222253312589520015229676224252331481025786252546723484851122491842281081001165314691199261905621423218513222024169511021721021246198805589185229198209202155711711101401361232438824540528011220871086025214422910196120102199870832261530126179526014671149135502101021678025554220361642021041505126485838961868126143181282321124587235169918212418330209540281911991771969511975118204144195911951815518522119168246198172093551351702291618346251441781103242201110912819917314024020219215246945722969115173164761162499766669224116823524388152501331582261122626164432212244140197561431671224583351401982014378451923514710845116043208241675924320611622923513419051784117523820312317459255661112091019413816113815518813119910611028181211261046852820250801582211481804491488216247237202792501322162342171697323412910614874235431492042820623411429857148115246144121724206119228107956110222185195185136127193225220243157121223136111581912032308571921111523216620638114208412341166018010764250141081221341242170244508824512213135417310211340228412162111451971397781721791671811611570221214189151231721361621832128419215724412824316755143781928101147196756165231352482461431194614585134543744123201230221151381126048137248165471131385622200189102202012481282365512197129671831721512531582481552623320916241107394644017410999252981371921691681661815413521618622823718160140112125681951385716577793623601615724110870105801214316431131441802361971961652733241186572411118411225013619814911268713218317494184120932441462458110923598221472191411137595192379076227234216198213910927226221118420238392411619550329220510276101331302224197191131241251861141366482164111318162451302711544441426814767177169176195209162311771861261351371461842381542282256923810721718215211413720227131195591178178217174203691301864202991781302431601212201092734253171211020514922122113122172776520451491361051814930489037196129176222261762432092757135921367110111044820523520932091171712093911710712660512461581231261202071433820520216878168911393617633224464121786510719517125159416063123134241518039110144135136199205182404317124086431303819437901953022021782451904518225416911559173431301756623694118115918054545836371284920317142251763569021516011015819914066163412524624619612513614887961302093123472224191801611291113902211137588190179201177652172551201841220234471506662152225144152239195182199902437916343219083222137225212225120192239532052412081177265116155783011223119199201146163250104281931601316232129691782161048224375411412750154150231535523121310114921471252252223361111251731022351718917518828143302161901172251079121970120772019413055208319115424718745975922313723525440235228129242171611355251261751192159323717219021889121173171226106119217211264219225021314834139571411587252224172253114110323324338412291002501391464611235287050601823644236190210104601188699668015665240171218187127103120350505616061253182227982252651146117231952368278057232408023162224146131246108023355112249515155803871231392062820460186432332122541161819119493250198108782361796022105169186216931242266421420820614825479191226213829248522252322222442112371851413922617517586166954120242207723911023815346151211031876182175817115511212333324618613819721312610113123519953422338070331394226218529815190112931566835248227148158239465721937911915611738170781282112321652062820324989104144806769143112432710114815810849517734884112210223172253214117612251192132104515014216442758412923441361714923911238165746835254571034752387221321718643178011133194175691632227446245151351846234218742484713817780249371994721731282504228139160126241951498518517028235321171976032019713519614818521819420016512822113316714231137197142462306775224185139931531296017171561591182437329611424093193204789272992433223720526158665925115760116931371962201791352251908416651322272121911861561496513114218899750712461671432367959126402278471542381771311145618055121120111101262105216012290200201142172831351791052312311231008217815360891872101491398493282061951111393215723420016322236681501850791902740491731522242121612202272515114323777631775522721225444181266627228331211220711722832440239181132502411429523620421555932229197239805615828151244206118228156251593801368320655364816644571121663521542243220972292507825317110514414018324894127911376134108401982262003726981302372281294462382531591961934207168357911713052302521562113613787230201131226193612211589942224461987248229183651279514095381726110217711477223143217135209633413518424623196795818223119220414623018521109161181431304223207419520901871568314420624924543103149202961309356189176241241164162153697762138179621701211091201954215334220361310302210245235112522624888145195818967220184182131713431672288663153822449286598192251310414569135013019360241184139224133107163221731399018833106241250133109841332819818081332351139991215695517464013540120191195254241160821002391792001668511155729241401659165862102552341182521232132291931061088401841402231942132391911061302060184153716150148193568923698217206150758225113725214510699241523740414205701492690215171202182464175241322192122244631581321821419361115351771041631170176277644628207157138246141144741503962113267251203165332302472625219423011781141107209321025322317654165229133228198131737139319114412120795601222073517919511515551235551005311174109220144210178491212093834353316819167518630157822630156155660166192130021154521112011125222677178355023814623227120106238214200307657120160188662262451619116314611816577203971532142225217818844220811558964787219320311845818510117312752642075869224162344799442101801566251412125310916192132129238922720324812823193592351351971802001589515120511420544448122232234125714457196194254771514014212152302082221191511823241064224923421117103104165772081882371721472184022012642501011249620919813326457815028691515225235142229772456417111062208180411651051257021121015619821817019713375215101252219255111254107175215162718210814212711710720424617314521918313423921654951771921297213017623791194941273722815787130632181712123218921214518919723187234174247531254920812417918322510623122160226901191971813015357112165183244422282730471221923612921721713954240236103122397165464524323762425215978312025718247131631501138254912521777015121781184164951822352267919819128162371701161512022141021125971781841851301519523745190511363815323620223110347251821976716420138468036150811762817821289224248137431471017220022014451933323422690191168171860215145755215796803819181981401214011065642544764224218973925252182187254162132539724422410313714814266193923317890704116631985921223144208571713257292211591132366463023214821621413923713520810720740955722145133229317119523675631316511520774763322619413119312132129156186612459184241531252011612165312117912320529413213817919216864391318713510022213871521451402282082051462297492211321863583011474761281221381059667591471872551621124711328158190792261236220255145207147782081385812122698157524711412385101755316720022111211624280387068189182170992516714231200302171551131821791666111209174128203191548094624715093237175184498813209191212931141251761386722418842431688463563651511001058716931239170121125204214206167138129246208592110738552142311011513085185596194641298921359472301093247160188959964245421851481702272082221043422711917821539115226169213115481202133016865332532382421573411591151433120424220149136485622383128154612091581212268023024167153232114913618221614592142171771801122242431961291571375422519319473223218185191181758320924821032245171114987154135124154228213230131320711013521423193013524347119234124429151896718824234624874232107142230215879463119250520879141117522441519227401312845611241819565180222226107102419122412892117692503517218237123206115239227172129724141184194131230209235401351129422075666215824211888203215113128114170253200174228238143988011409712528242160137160202771645023242161571442381628371797751402341207388820413012990515239263417822610313743255421022333824815617263232702408370319161246174250133109224225471422715915691251801242225118616020816423617039827514441962252362431211811433821621558516918096237228220154201121181166221282528922119637229128311732031491411332481841302466522622580557413115045168932497612224922844153931281503219610416224518842228802321481162307311910521222623321751841641997546220165631251221912060244401881132452521348518498134238146811631372261132111771588713187123150142371651132201781432222211591411772409350331881072414710488133155180226231162244218100112643511221481113841576924630116108219119759484110106101062964591974790159160110282291098913939121201198148165155807716213990196218421621218510024310623118522099924816235718016113531301007617110413021817620384219221351582083630251227214164204161447221317638190121125742351982122265742431982281661317721343239159211192076115254228233240226154141854512715783177541872541332366963751042221622123214051216782148212607520922010241692401782614491951611962271827251776594422214817612083226146231291202182014210399242146231471511902281571492186141202105782322493727197245559016772613323021828120766181165230229245251143194237961131201396163158514117112123140241147321972442103314483679184961087611310518664152151345511459130163254142301048273160353198251141208155304814023724831112371827801124649933315188184195206711613336232188182124243201242193271051131591906047603619419151167182248133168694716016116209331851451088238251145109140147109498610153213215410017525517122612725515910625424622924210917521109219154250234182248215182691112232224119818251111081183204119176531081991502242917541892491711852391901818823520516815863164159220871141651712381392542304725015511024421493235174661292239451912228711318917524290127197117652491171537392122125160842202548224917246149136171184174115109101223981791932411165185142123234802062242317318410220033292523229982302251351542712516118219181343520223420611622822228150165132174132021752121502381852102079524615519976024824312414991163118108245164190178271252292249011141126244151671747316920311130169250981689048442194421621874127609024719999245120136991221372501854907412921214323657965915200246510085233842272486019023914724233596015612316635251212161172115157721631302357120211114116071487314011014316013516315536152199129158146824820711922913742021771641211851431591891721157417817816117878107698242214319169732342161902121292072267124616416147112551663141374115036981181621568524616112140218291911308361362332111929731510620022590116168811351541992245816629227321291225918915110714524214118444122149689118181183228216238180131191142511242511721421191952516313823512211133158125111731250772162241679103142309223846868213644205168100811022319214413299169371347311200147232177190210991232111236313861185631471034551103218243108701414518812325096541355574278237201242496024928103209482142531722144162314992498910515118517372981311186758717717910616723019620514317112711223720823020323416315823635666656177206192451976419514961714233156612362445522314220157551451171241112502082317319515939143236765724210534855824011360149761131166614576281461136271932081711721125211612321421719514219925019711717948220663113481632392118824419214919321011125133200336112222441511161391085621315811724296198105125591041925220925479991519131113219717120312114113517918217511040174292402171031081016137232441601113511510936147192191238314323778621905924922815821221125121020728200601796322720425420411571792072431042461651912610611125023312525231151019560443513823116917767899223512184280878476710325423248130593232998237573612016193209145123145183178111533318622612439245156205167128608357501431853523552229237431886020043861161901511034299128238232153511461341302269341417828202198229225158210205222061162112239772352505624623225412121191142842086206282061671411932512377714519916418948609815823207212841921092451282442214212313622515918011619740266516040179128814323915215915317811522946241759519677882461811619636311710009802346317916425612401167024922013854174226556316318494948771833822431633719111094213182521542067515014831701513962558113125410457180162012125128223715417215815895631671646938211682582242178159374612573182542277123814042152601441748923320770218522911712623411018317495141211191993528203331122101314310020314528112232141178147218178151188725260105229953746255892208249203241461371492105718155331772486232379417419866341367199122119148167211138128891312359310717208218312044601821093521314918424419713237349116154196907212792203218132692718219541607240199181174195151884516845902322170154234145545115497231251852471171114212118713172138288879669185143126214023411961282402452451131124726192181692431202645156123145236731561215495641520020637727821559488144223242473015412520761631252241691361761841381962206923321310783279572106221241757921732207218109691281441282361114226180311832366612352171605486352082201701461457321209815519965231151042814518123218320917021111957118217139113203942281611237205023032211392482472078491961321732039193211132351131223524146132214251174146757210624446120281916012520723915718124423720811923146341421952062416721714511041314914612864295511240148186772463142932362362221832281032414624012313515839118241139162312281511229721913919825412514412224176117612024420514655901992234021218313383118109204174301442719745122209244641882361531895816716517717218124022325221913419112112124143219106183108432201824523721310992321292921934943116779423611624225023012123910814126255213249123223137235251561161112177163250908725324517418643135171461171489410847190116242093015718413323248139216058191115251237233481861411735935236932492311611715124116190165238165222146147717976275282171571061359412001322282451372917601051007926122961007942127772541572311862421001531272478758154171187129254176229874554631421491223922622519413913511461848619710210010823041562132012111027714812725096141031011931651905035133442225115110971813313419415717814714520823221151128108195108582221171672191794724522162221602331182254057176205131482231522314632151231158561441425063139131229912291121119424127951306215391904013222219414775112363142621824714121921713042102412008511220461839166191931841667820210517922080152127441321962161667518420823193225601792534888136217126200122249174205244556690171746216014593417222923712212722519717466893871511892269194101152556282681941991136851102207243133154163781051021582291401992127918321119214470783516420921010216306024451135114793120065212116291623671627523412147170247154939246102326014223917314914725150133924613717710226129381641072001001712057054927760281702012081691181451016225381308311112718188122150170230461622302321732411121191014211063240219249123222156247217171511191896210320727651201922062917957602441552498453531121141272141693178841420243449066242412052076421113019613936112182230160892302082342083671231471611882311221078331401215581782083167213210134152180679234203235015238204672382461242069136698069237821277386370676815168244815196157215243248222212254143162152533822822459193722314110255117721991111951862231395618251233987123853844015988522231386721719422724518765341667236913911118623412920322113324223322710116718871794414222528237718332411731627242471851222249855587418014121819162244116951422222244128179238861591082255511162441311517820516810820381031242332161292041902071814223678225240210642517421615223314414212413810518310616410014679244192174848311923212326223825216621333245431302351507215461516991172141841066524315424015018111028200177244386234119493301287240511312512429522884881571529217118454219120126253741392290187124174156907012417419779282522468312327699160228011214924423234240130221215311416713721418011865221202121229109225117178772421210819106219184176113778417944752342404513389146192195172139849295154119128154491041191021952342401348511234193741161412922193138166441293125223214331120137120135222169187130213152155200120112955613821014814128242814494721818910117320051301030113759120416013982181717161187107368239213761223235164150212322170778788237242208154101184225245171344018182183136166213192233217212151438515822310620196792141517520120817879921412279712219222313331213188461621131412281381991001232165317413710990151208178331692291331641025310106218144881835416110621324314512124725222921124722024322112325419714719349101217181271461708771854695801814418058169715815958113652191668617316422720337249554616846771421521611174366106150205171921892185196159248252170641321292341013314975104228210182117148128150239242182258119591318320712026165173206111417119423487741413181174199698823710127893864221103016820530382311882395248452424274173242272258402201791292081184017351912714155139114811112022009155701811880245552596194321881294719515452262221410719427169222181921961765622132019713425418321132141425315212422520071931811401865118898226145152623320018221772218581172138129196150117201205203509126111542434291982541991271552472021822501091752111122234989625117117717510913921817745210175722222026246230214208183182132188189372485591676212010925423811998186637663182231989511718918325413919019847250261102452132232361711892178712517919123410212722914125417027314917818616816022013456023424419010787253420820612022021015571202471182112239742622215311617435247114791713540141755027651081446015129156186194191153223222193204991238219316931532401082491696711259114236127124692371512544922371509816010141187209871181891832441067920122923898181298275161462542206846221391693025521842182311721902348613964183954019112116423623096201141129146155318416510259116771194220893141241148155601845382117991681301441751422150194109215211101965149226204945928671297139127137226121601815013511939195251189116917717310366429281441291331551951491565818655211741981737712916019845422823326169692312917956204932256611117723213246714856192122017950128160235351537513614154184179231981927030467531916845138186227161225501891641832122462001311303124811723220810373127127188225235179139190622112421431679119019018023614319923414223874691528250237252991872114624720219250185981719916331168184628011015872382169166132752215210578149163013562795818547321012717919122621464229173193744228153253891511441391352424630202187209911181851792402122221401931432261346273561274015123011617316742471229525237417920929601007691125911113256018615301491917611076010822617231122149767424660901959883228131851905124921615317560301021543430154110197241253153251127291862392372241937919805013694148207177611057162751082552372361931939513524512720139236656156239446418913918914488634242101654564187130184211168204143111570175142377826218147124182592398212717711492718224244239245862152336614373106120801793127887211167109752518421521424250637790931671939520914314651361367512323520263182591652271192431191101592492332141691591111571821152032122211752062162452341406121910324518823121124872421211962251291728312321120630200601194811151671046121802472262256019027872080135243461192192213256822019719013550702189519418319714013913225311923095235411862229112416317522821464217237142190281701962531061842341711454219096232722613922916114224520191127164140151250134238142983112991931391241691758815025144193210146171131521615022221722775066279642049559824610311715281226721812321423225310118064154226173161106158169169128491221921480683149481719820914816213416717943317543121501791248294205140178150208134149721305176101006421911182172532312174714463251001942142015483222616752122495107823204401101781692472086017672185412105615687371483416213757321721668717127102735117610745311511610535199459152139813314151102623014818048744198229112110105431521508755672531791391559552044610515357491184922552051941074116624674581892368611872182121322172085916827877720117512346167250249188218201121181147114170241139291481546661159951992171695245212131165239149130252195018916820918510521126185139222203223101120917616872442030242102302321482148820318019413416751202317945153148937712620045176156219174171461271172012487253922765271971771552101222615118913275851472431691332451781736897319736294118438982540112151016402172084226135122243112233018961141312281968763942481201921432093222174213726872246140162381145641171234185172170231179171103225213421544791081253316111393922211542021915918497125742211861482028583661792391852311672472201152231952076939151447917490291482194837671822032241147178123134362456019720114942157828079138351211245161147127106210951411506160238131150789830253615513816510979431681599480791631578921268671578521252171176105541126111513815437188184892611521734844610192801871301921691211178311510716722921379207111224210211112620014022877912661171207620712341297161165152602213216110171331239420718232302422242442059358311662221841549874204172741387921711317357217163183118101152441212381741117111138936617815017819346244142379017412262175126701711116223129229193852031451491091551561451293816421221852451076610787134214172121698949183282331871047011320324419423010513377184248103221831074212297341442542441621024818398973334816349109471942549385329819225281173273491688241178240224188152017524388563312416618816162897625120082224931479414318224598181401229635122321742491331323815422914620423021813016614025037209255203255154187249213154109175211902527422610717519810912753198213322510632201789910723227916622321628252214230121191222282521871099715919025213241126234240174252512922915118610717411821594239172185222891251731712309011924524515820227189212151234317412919020223525316092216173112220177481099620323913618114099481985743981289532241792367729217153120190357183144223231531791961172214325277691220113331134611722923515622122816318714714512101816109237200225239174609988254221130171248157119231381051752021552711216094229109487515369771841581462521511952481611409814521039188243988714520068114361332182092182444190628011618914352111741871821972421511876155228207131792251613112107164146223191162502251012621646137145223182113295121817719118411457510612441623126127169175819452178392492281617627161622731822236749147311563419415314223616312383196667454652806191329924519423311132211279524719119179261781621535174218174120169023920291611672027197165709177180472949125113173951002491381628370102164227959767112920873174987511518464711052428028021325414322719028169651822058821973211091129720122329171632231451272282111961742472224612524123901091350171201362267132002818181352101651175711711517622532082492512002271872111741162193104207675822223417512824411925212212623912311187223141562522062521582234728252401261521961273112124818311240143124150442486012124817936238371982471351120611756163169825412688103138235180221179157582046611310019107302084176249196135511181492232271402132325614012197168499562251105032191512212516554702251945760133110207252181491782471571446723946160241127141166582192502452519723322170171247195152935923023612511594247781195187821847418312840207516419518510318023955824259178105144167141012092161082532542112372171991516424712730223183512541201231667713663211149119234482172036011848227216129244197511081921381523512383142237756923514666223167177157316820256978730233208861011617221113314124184385080014101123292463915100116127162492172462525122214262525624619620622811525150206312005818747992482112486719114115723920671352231572232412192081952391341172525410825515511576214065273218112472920659119482725515325398771162468024616931533924716731223147122124111422231682541439914191231262405533220101223911153720522345232254125120239711762140622421134423822471491009622391651872231526124011344231582161597825181809834197251232270113924117214250233123234651721642122041437014612712412790239199209843215923148523420364165605234176611358712813410921411018892166222451282172205171892461249725321216270521921402102260147249971956974155231213461399417849110249755449212121451411966492248524239131227218207222248466070255220664024127511521253411081528121014095738235167136122073522040130481493419491184208312385582186201931326242217130199241492124291743321662261143512010065318823118523623410351431587445125341652482332441781035020211319714794142223129250159210109194489238142754235103202111412271751599131178672209225447412810410022286110801511279431063652101292021447911410716416812921420418744712021307515816916561292211972304218476241110225817683211375952011489143710634147482150204141244214821111502566200241031611611001981585249151236229215812493318120341236130134213361711572531712261501882420918011810249180137114201147154902081601052421615511221242172125144231982072182426725314456217352713214472521792032322515389218982051951523421416915697644705128151846122014311814419946122331801222510812054178801592052122781054384591841881091262292102322505313720527181552143955109721709515192187541872251332281941652476224366742231274652185583419137180176378190136230441101341723538241741365313216819088411119118838841751492098413421120318518622614393178137179658575184132203731002266262019021820245230201832044310513421101531492231682214229418110810686245991771215140141516216033164106734820417816451214813110374115162122105117197205179169219501715996141623321976155156862201969120119148179188122196244131107851171471095020722724319231973716422072771412005725023723314010515228189023214287218421744111824116830230149151156248182311811413371271612118045171785832149421250181160113749431803021414245711244108121193153902081841419348167124201130620961792032278544131741341751751569519126132841751528718510894149321841225713523213517618685641806823774206162371021511821132311019937106167180209254011216641203188574205431021111502331031281351622725014881934147223734135213201112724157244641241215254701358111943567178454768183108140577235191558636555222918214853173459225521525255225255441241177121317117522910822228255218171492199514112210921966199941041072162462053310635202521341086454247215175412524021825261191137235251362352282542261113543471178693608412611312723319725337231515015663881162548022513314223213923713618114044190161235111422616224422611164432211578528824720603021012176318239101240147184227123211184802006115125199118578312623717215719420785716213963117326734168181462251104342311259192130248118230957012016013122138164431831672441061192012111912464167182021692031615714218814725150762138239126471702471311042082491872001951911390292391341192544616225118920019015163142124181151241191781522511622894212741877238157772021321511598723512414771023616049392235135214165101801679555761491427923117231221361239916828241021242526022523222284214124114729219311023412924815685281486617323876561174014721919317732821202448422555021487114185191236981111372042292374119411516979198113223818716246175118237166221846818112935181219425114925015561121001285911121686192521521819214916410061402247670191346247148922364260215651332311523976217247118240240231201127119188225239795264125122621366218643245143712351906219124823517913996183195591475922314719955240113252233321716258841201686518820002071436632624115126146112987925016519551511423162746118228311223910824724657125239691312720223251187133135127613124418827217245155240254223711318823221253912412441902718511125122067111135246190235324881220169189153103152301361131541041316021717838516315054981763610780234146624138914710633221220671801327432811450205192131133441221441122013023121817791140724919322919072172192511791683713221131711062552256822720512913875157200239146175795316310461192124518831181107251236791827610725523713083717816943432031851429289901352269271341781711598722422378919979616810421512920722716117352111145181352452624458370214415452871417634872517511028411512225489602331121201372151151601321517524817722272200177122236146111421771901162592165452411321714918810319917225311120513321412753882412451771861751435525224716123412760902512131452022112512101431261585624289194241934116724616631251601052401951522461196662252229164125111204225212241932019240253816411856239106119209237142110141489323620459177391812471511152545824819259193135127551912432471158127207103971932252231341452138982072461535918377255248229201312541062103915515922324923424412511120622118512519816721916612625423411646658180161386200188140148246234182232126563512669502443361250634111542452293274016512601511512426119242961982051611022616217102481473249101612292228212977154261684821482069481222151801221102131816151014517943219102874415493209166158182251652058313826662251902001281972722715018910412219272766821126126105252243248241672816111912012246243230223198143156635812711912611730228247954691622223925223014917622623300193210781229612192126168243170132106911023012995146184113518911212184150112341281675020231754621433621621508225210090233191693779164149621474122069186392211102007317041841442874191126158112104235208133103225151218137203471569111235810891811241821371614232492121371294949150991985716415212302141188618517819512013613771701091002151214524112437041178152361131491531082051719442213104531696015559341201281489318120216410887180228215147431942012312201025201331902171519217981167158772721513421317313454651971608317974219382312126115569106181211108053139231148577610418221080146178902101945488931451786144169724519135831189523810411971162112138248192307518015424142135194222149839214188782446422715424818214197213203166228214206210230711786522910914424812121139209951112767422219953175796418521747916893147218176331879799118213218416525247220243131123238185239190731721122774130243155228445111759513312649376201169183115107167243281766132727918218061107517104758692015958129149016317825218789149249518447170493923121260151002046521012762171106106102245244172154412331492111781703916714922324310824061631202425917999166231213207858599145103139121041502532452083243181141185108219198716620022464205164602519122644210142179624267615023064761389624221610921016313919516123713516713480361132181512662111144712511812279515418662250122601621471011966426191141164217163183167140181922279491105251272109885196210742716623242106351111448820316525119116852383092520794565143952505164203369224812513122160141200517514415720554804857183110821182051152172017315011811132247231812081162411673712884817092202181200936199252186213814547200641931627712034100449829122991262532022242624952811061161446237150119202432421806615417712416016816251206208158241211424016052111549245112241217713421345151119219209184621861058310824319815213453201141139211235432022181141262546387253251255171252151155139182189150251234182164215182197108223182112251171145175189261852532131121792366121881825710025143651111885024715787230254126107240231111452362526723417718920815720223518918155122106174311741882229411316316322625022513810715710117821016846401643864186116143991420823589119592091991722086313811991151151762522148019720535229231581147011837193239161245924673217189112131501901221742009618616412725096230200206164211750209013211274195651772114912721518438461911981462725316555251203110131501274988241229643718421395113163175156192271251659512150255113184138223255209207147250631362331236316623118915212963362825344229232231201195159642914614323776193612421136631102252215722315813559252105222013011133461215014779254020813719122288191246235752151908871712068204138204423223416019217616110148713818920811221724516121002208092638212210716413810419423924716664536172412810921621301851635147891104268747136206116100152377413210233084989213520849101538611596011740219121427931181232501791866165762432081371885020519591016717524410619117215417524642106157162203132171641006376395612264716196239146832301961141021602521862143227239471911611471882918412980246107253101581708311498956244244248222124922582211141141272141351551671242462342042271232111912816924925076203631561061501291301952498185935923024412720231902746176129130171202153163648963219024616071017141151591113563772362482371301918721125556842432471312131831867517511921951102071911244823970123225151157165951189254216931422552021291881633119824719118711223225315216124799143127146116249802542114623422912222580222213174226107104209301551817321122093198166303511216598192291711121291232322121881072405126131431941553312519381801107319913014622621816823749161219255972361276321402063215222132232477020817720783190608225324771235174247150210254247191571112151711792506313619021615812716519162921121651792242429783218178261518825212471142168125200174246351561072076219039101232179132191232118231353217021925022202497226831082441972341667562201246778292002241705113517823624523121911417314322074477223133383712915724923218115462431572334557187471632272371441252191031572191592491535531272364318711432251196199919963142255170175236235147141951314822323415118325417116117017514355254227209134472504246282006125010518472451619513524412616137162326594109741191891754491121351234817123913116831115117191231131061112181491741949131019530169252227802291511312295512375174832252371852314102159220153602448144146227196238148512515146292066318955157143612299224163242332368099722514824216132069616614210620216114213674631361508416478175172164108317317013610282488814625011418420242214190162124117137127115160252166441563299161180619642962123161224186229243106150621546155822162401047424139121153721601498965248194182131364721951561701971451392147147217242221801985815811320932521831408419317614110363154842481207449204272552112021942412162231421913592134781323982752252321203013620533196250245130176246196265823323816320169419421248239661611607722026634414724879166151611561442556492238672411211120484615120420047898322143246124227492142038913973106461771871956314023824383231185616821711419265411232202102316162252203137224145215199837523814320225219313014815968103147501332261997928110101843510562154361371151115862101352262292149298189200683822924019821320864023993142010428463314720820217625014936194173291188521664178220229187331376388144202189833231228159596854533381432271352251692239142255113100581851621622007980165116115214169132261951011952348670521739180793881423012815019318322482112172799243127181572431207423322741372014410624123415310325314723244218131228741533112148811037713371961520698821591841002301991452513219121651312441971342188419125229045126742981692514945068208441182432431071502031262164137631412011904750227254200244716217922424181205235662091561974597217598234215365417379106881512222442122160160110997422222625131151472992541979963154178240249164210160226228441881218210222935113121638915212195682501432316422223158118632541332563127918711912650857417102126392127781212722913362210134197501963017759230134150351479132215138199113255194122101884734237199164137103126234143130147301402001204034243711931372476062235158123238191231158159220115223179143196228162106166229215611499024284106233140194134153691314750203159764612448582437111362763138725115121212618032245724314719163632495916113718415198229611579454371831981794466219762021681205817314015439243223359088146155722617412917938931042221202361491611286095216452391447154165240253481674216819146502242559410418233881553929274032594311251011012176681761712381571592421632402442511631783175421531461351709212227151118827861874272741041415411286717924916110116222240601478924596922541433450238157795421012620206320219285151091401501501372312541332171433622145120802295090184132152541529519119876134341552141391816891298218960172863854240130144103218481852536512042213693160169197211167421022331192421371808210722824745204164808413612910616116921913546164198153124194911984534235215199521731431749114521220814694958621015424963253251166191221218178249213242452191141821373013621611761349161851251552341293112023714922421512653247245952061262312291852391912618625115715222214351783040185212851171811872502422252427577546238471901801912482261291621171147118722072326925317314225414720163148221192958910285615859142236138135139932491992471663492061821031919411120420690581268816015623743225151192282111201872021143417468351235127217416152122139205180874010817217924890874915623998713019112119424924715127150208251254194353119915922014711318117124431143551271251182412151032241541739515910818156104130209423546621876311524821124817422313311925238180247125177692302248620116425214111824322713871186661331305919820816116921792248270165242197876138472472393238438686316250174210162228124872542242319351238211012137131810594238135226203833012924281391217620411233183561784324120020641101061193980165662012332461562381599142534618825324717189311992261112559312023178172239317623921516119518783601142337711991331312185015419423614122910724719121524123913514019923289179532105727194805312592592815725123869181243571903925322417567143237782512507623522315910419224323822360253230127124120239155655010916018724820322515417547466918121261825520121423313512723651071833321631941921521777726492472122541721612071461043103246101137165208111221288117425525010024323189229952461502551957225321519915519062189232235179754231150126125971531842242521781751435316225206238206232123552422402199718919113928248322302362542361391351178238731912161451271651712419115112031312551680641532142160133242441768325210683686714622520210916192387313915611523173151731951351141009012401413712324680462381693892830221149747711819118324031142558215323115229346126243159159216249234204163159372232364725525084116402361275124816315116718025512225423312515328242250925815611917232208159205196181217246248197116231802461371251052425820360342172169178181203154601962441662281813010713516210186111422397723524919566466012548191939613115015625813423376252149187136377921413314222014712382143237765825012122625455231238220582372161679951591062522501162431973891571112062512442314724611015511324164246215199235255126184250311422132531952411862356124229248106160234143131852551251842463114221315959144213254235168812324723919514525023591144132502271241232062419341157239206223179998619911119424810412412516123723517945951591102501991924512755922532473521340134918158183232235111391976169351052502507624321523191052271182311410114724816791167302527720020922120121220423338258451302121312274919120490222433616222582698611719618320753103123631402262364562220002195916535151148791461151215851515816108133124232174116211531024556220818611010289235220170197225451071592011742502091942442511621792381417225365100218148162626723587784310515481218140601442519820514273611282052402352861191271162141196718248171253229188184191156231516722823120533762061261141767324861255602001321132924624923115162249291946248891943622413013211557167248167260176671261681611622779232118450196148522492271823195204142226190255106110204954197253133122563614416413219121417513265581146615151130209194183801736206221332519618019124215352102005712625149671132245219822860222693356316464241133701711822414216470254201211671841507518435185197229239787832772217341891512202615033774164200489110712501842201451214421356612124521422625210158956011822881755713337998324223520162491351661129581381454814131171151169108144149142226151190148176236374521582116257249151115162245938223231497310010754116852838310665132601471051572251412356616425511717725108649532827223788257025141204819492106233217172422021971633621921212125612623313928829423811050013961518069223832147220024312111719692216186158106395125482324263331361021711272342372141338447918018318234252961081426013324941223913825112611221961512401331411076614441651733321752221417374104921592222509812222125018818623138106551346815122124317515814681130127245232119167696215582138301361048814119215293210661063141202130103255112126202158508219141421835476193169731787721712110110423760229249245171200152147732054579132565221348141158159114111104182481267222618996941941891152271444631561512401311852412476061239158255199324725220372392492389924761971358646134211115515693253761222492435785115751551944291231212126215114412712710421024712016192101261755218536242102207250187161137232177571011731123486321381002381172032501361348516121320316814120157536017461642011891921111601932112181052227025317159115432224334321830143149226208204113920995170197961732224121403315911913819864187229245196131691711289611113281541522201518724525197124311823915715911822319417215919822862151835517518218913816613659173176121821182372431212451154315034212048289014372160161621519313915024820316041812925316313126281459126201291467925194402497312556129622317267131889254109961923631613216345225110210523154636519748194163209100155180103771101451152422412093911020514323120316112582841537576192872031871009424518162695217314919617187441689129213176421901137382999986115891108310624514613325523512744253213214146173175102191250106242107219981182321801292921934116242641961552192218818153236205876622312237244237151231253230149160247951321724924619419531363122119512718025210679213181158170203135203463042225116113113323115221566315220714395254232210771651271165122418561164255111180751112822817224424321712720346571823916525522724841922491865010214713202239712251522571815242483615019132746418619084181922364724522893238201191123881241531116813441701074110244148222232461892108911625451165625519623884254253135222923812163242236129172271251011275592247245153182175474423122119182133424814335245255488425115671179531109248250881952157123525424110423714920613016179226184138127606812910717524765402977372912310401731322431062531213723431271791428085071231559615722743337422047245114542399847200119208131171135148722563421622552111841619373953017118557929191712181972394711870331961812012025841611128292211555824812125210584221355056160106161183232196129204253191922125321418814222371244125282152531352326723946641823612499238199175206232251362061221601331812031284167151902501671571931119243153191141342124166651322168819323764130941032491571131891757638130314618822089116981192501611196611314510612755821199811921825112725123659255233177247255118210174215102117190271261061111661681845117312011811115921124522266992521441111461461421151752399225342222416856223145632408192239251209125239711192521026212205415272541061601142481952483523919915822215311897952461496724955581017518318756841121631632321392382101758570254221642132291311213531372362196211921518215367313914497233802394218621845251441081843419960100224821831711318610120172133242126937222225254861951791616836112997428718615015118423886271664919824881119936972355221020112515315772193151621697017023566123254129183130223253477919024722315822117999206224712415525143190621872323179521572181552412491821531591111551299422624518511624121831127325024517222364312422122210112151861124116561885117146138231250128244133243948828141011911615514316422713818114682208375024811024029224107645892226189779916167415724918812287187111432397857252219176612191031411241847102661671542541101682342161992411235479251224636324121717538312493223411412323818117419423540216246156353119724625246982242531521915916724277160181252113184101214719122229621773914952249989269119292023025240230192219243250631401902098722457162243315610419515919631253522252281741488318783207312001862201451191811792241221192092325310110022714367149687015625225317721883123211622235423716315115927248489016637180231922334668931844086561262341502441453710315102177720216815723120172111632511891361635914719028170188578038172487810637156220351996100100648012217371964296140301282231355417215686220561711242091882181011433623126119126181462249425410624314730136207155148875117510210588195170160154165179432191361916142152412255571521532531792371351310519261641803143245144241119135198171918219995166412414110243119135452211834819246327817092194111149179247429348162431451962200342331121070131140835110781352082502162818524566971592181511561103018225202475316610119110011422472291148235636851213811160191220157108227821685131622823625520514140471531568718921220028417920217413048811340812616830209184157241114923126136236124237250133611121072381625332149128115716015265851391618022013321917141601447916910923753917159122436137302525168916554200301013820158744717923811823232741371941461271061311703299220142122279025320417392204163164561981081367922281616136610215054359382312127847108141719321219246981202279015316389178861161891043520423318515621831133103240884135207215112219856387913322211359238101151301083617525017113222947145150708620116119621254322078118721623914315010839173252573716524211375616511014722621983246131435916818782159180221411323115047130227662232392159172107651171323763241576116316033178975360120941219180233162121371734918117124315025323520418613217149107243432141012117312011810217811820112723247255207217956424911710012118616812218618720292102201668244165146153153153153511499891182236178171186103230174592391732472222041891072381168721798381394915315315389821382514024919029145153146171220521852465823525215196137191773520724711252219101182758192113107237211183883710992221462421291072321552102242242511342211807121724917021514513435244391107684137152491621898177202792261341785181329283205384124819515524612613224618618118318018176181244124203202231771117522315318619111123240129173255172183222333813018317218823721242221188221178208212519020975131227209386145233150161169198332012391611801731892401121572310811746227183164512481107614634122516311520625422037231247781061965106103858438165152124225501731091802011901852720614317518121252109190159180121612716153130140159240701884716711266821311610217821185722062421431302531561348020927661452614859431815812978191385720935206478924295197111361592251201002311552461291151889824064722214699432001422488201482190219164351732154613147222107168525117247140982141902312624624719846191491773128096431022382492719183191536621012320424114281986438441141561581681481231813619220414768915217020920492185603413125510516436175243138245842357201165139140781156220121157204241197272172409555121316515598692623425515021620386303118413589167127172156252116654141951111451802095411716383901412232405946114938020623190255115123188210325471142122286122624023781255448163778302261112250160512222422065243188992222910310891106171073220921625161201143122833024738632387712222014724416887912261632222481991891131432519830201322182462195152281231721902051891784193615314769110918620215917311610154190236231661984235455264801436981751694667871552522171275815619211820225016711914861301362115968131207602442089523811416519314320830151981914860186472426595196321725419923633144209271732378179244247253963123861233139127581448253324412425171171618011821951193724319914521239253731195916211152133762122499517324621171242153168241187213162441763524216712913220143170218239114429523812950151250831715924310824812022383146134215151121150158195718650942132387116919067831891372122411121182484199142721611454226946322571092116325134239247713508749488223161173752241135786398234411061251317210511823214517987902617122171234189213651288258231617913410618818674156135107125238195469916914313514730169213370234124912432375659691598393831662501659618324417612153303744141319152125921171382236311123470212244251122052558519128102167237153302417324238191200741262223995124105199188188932432071275159119231188142922191671468389128120221411471501186261901172153210525831667020613619319911918616219823412491164183140732035720315866199137134128239618190235791521682451715918617011219925224225375234142265315948109579721812010811721118319845199772656242173113215121235137106223167221177147674121080208256188236210112202180245188213104181551567718023918017111924913924785631592271171051411532251232461651701851741272343065191212021114191228412814028161471765831115551566523716323710125590512342920923821111622217851223254231209180201107572151551302720715223236891361781947414442334111634218725210185253146109219691551712452545510123214584159223104131622042262435521292156186190648724975371191311162552716811218922218116231522512083128174221231749712285235143113215245214322218057942392119122621291234688119100120137210321187138205847916882322336225175156107142175236451161202102751571542145151491841801565217462176184100215252242189114314441746118216222917289221916321013113920214454122210715218312594213225213694624759341903176120208195392233134362322001817027642371611815125047657323112781001514215150187162614214345723817713022124347109251401272312202266111202144417062186188238248170166211389810376174214251161521262677190221228212321072235125493240192321917321385203681651861896914374106146209204501581612181471252099317017713083108209968821621961271021809817114014622617822298199158667148272541181635788255933905602113246107182901031101241125321391072313516518822520240178181167210315834122361252312481981604282152543024119210140712081127164531252422251351082489631845112019386200195206233217674221121161141892541061947001321761369812546251173153435901441581813520862244872295351064225466215996174102101692162421011972246621719012376115134232112611414439130922206620019612921924523115315511291632641754913318718494713012319519312785116541192011891076218373223162251481721443024021723215021145896412561623614121224119123316872432115120113610025351532515717399246234610719111421924015174235254322079325112313085240202031631214019823719153117121215374112177205248212121237151112191121146841724613793140184145104107211239501091786311514412381213967831409816423161112471451031961871703120919435120221045177171667872108016714314156369024152321681672421332353773216211416369178136191749529155311445147331432083160244955137951551571001251132189229242521341251921551413643152243270116249131128241247018016589962378717832107141757052182178239178238432061461701758812216923491771413614523161459772111838816712616223016190715024111611011994251214138671141791004324324779155250413017111592234230195211231249681911063719025013821222943146179244228160214715224116910122662441921381448421120044231148451742019122014762113139223236145248739624631222902375410721421934994952401908324066191561622058101511823640233851301942522810112511211121080187177248164189311057210591691261191719817824111731421361611172183912026494175177379716980248235348716431891233137100229253134181207239446022317824193224291092617919829237253715713316217810021311851814714925012411112416386132371551981009039174181772213617517210384743241811221282038121217225892061107201331461337812084214862191161691761991801878240724920011720210514913669228801961361911702109414319946107886932121001128169141183112138215196219181244157741691312051933620691581232013517371802331251651321831464425251209194271991611917811192379418311642124024367143404422382311782381524689159227141120139140415215841871181203252156112302491961719443150222104128151457214110517964018716352227167162431165533237904623525423214824316519022144113147105194653230120179104143321009156491931894928254531052524351872487522019225518566167761854017516328531559814619545922076712710722625091831832179481164149219250635810025322249251155416995441120052142061161412071181411421074246203254602322552481911301192371435812236244196812391971927828178591172162462123327101178115250144213169310239247261592181892502209422713067102851671082191160134170217554702201081371852131812583862713684111468222110139188213421811491246621218328832271105966110117232173236204140199853861119101592211792329552531707923919219392477722218122212418253252031679324513615749291722221942084812442089323648922296532168116614718758248252672796196127200130136573193221212484620931821546717643117254237151108186242236224016972190156241227962101631742322724512925324978173167452614217317457180188250224501821171358721431948911596892431132272549218724111424771931451063815014039253177112672212012130473122711506414180174542501936126921741816201204045503525114923012812312581501621834510417219311917621867793034138178110642409590187108111168291325392217912382041411569813324520117520617615317138216772135915314836221110171117148567246422216432211361838611789021111171321172021818323021762232139157188190134552502497462462112291404314112910119986529517819021818602142241439320912581166109106141236164862478110510188172382182151152199919122190127117141116119153541258023021922584758118931092551945616814211514117232129221821413722402165886237253211104218119131732275319037720831151151191627626624406114481971147525341147230118612215840568810937889924540134781202162319978219371552341118716152164171761191402442227731899423208122218188112231130139127250482551551851011871319711845448516624775118262010815587177111732192575841931432531371471632336312369417115168591109212721022874173311681251734923286912411883113249844724021312971119230971711986391787819524119812820912219119310620725474156159161991111801351771151854111218819395182234562101101602021910919221717758191431311621241441042169151682371312682169067199106124914790119235678142103762228811917137841811520418918412520613310911511619916116150247159199164296611602501123398810125425417113254321901162218193924655248162255197253166231242314011919719627219671856731926518517822287951722392917124321420216119122010117619417319120416516719614514481175624051851601888715552691624390130174542489410724471782093215155212911140897437220191223176104247252194157243101182061971381184740218998017610712625417424913318713101184618418010978193174524519914171389323811770254561462421605912217620418122518073111145211120141791031589323793519633202240231209212251157145671651742137187202237187227280592312291101591551839930711022920013025215724324912123315521723125424465213209214591219945234208217558182130011152722123514018422220116185214103162193311255394227619022953922256292225193621426180234218872361362401441972122341251991706120962369511114228255204881818711916161130111312226169116711862402551091621931438342133924322518633124047191162728214126971552451531725714418022240621031749520417174925220622224721912392317360166179125163171246272552241882254317492303799822491141318160164219134631521711901322419425111016119219217123514249234243141557921819253461705581120146170207185212111063896712620217360571712411481922312491981921275852176131111841521196216657919913719379105362129119532261121771415029182907217215615835104102129361261142315910023624264511192411482320441301851113181116854615181362072492178153235277752322092134910723125019619334484842411301531991718662311216845143224891761574011231891721695421322964102707919242211721736951661295632268468422211485013889434340169133150136391435112743212111743129186621021219262708058522211551361251391487710652182121941582351920523524310616461751951423924518223412116583128872114369184172711744017316219472391845241642611416315223410152076511760206117253311602220145129127162979617817013625321250249995391203698141661912372417252641601162031822419925118617319111621518224193171453720366229810241210250741983319611117674221194651942491924522621435621247144782224791803324022251671465020610725564122901661241787414116537721620065207205255149112236512014716453639107812171663523148815250213727082134183120207452015920914220220314650471521871902312298281876158182772532421254107595211541823456197363421149245191672124515271214232469272234824515253235117361932234417794251581904452197382459920713127922115324958132109238141991911701361531921211321261024077161481379517121518817976251120817250217681268182200202201551962155106121681862042139583724017013319917115015816210172189951821442401331880321428991121522128457470862248616332148301369422150108201551011541802144212524392418618259415029424976972252247238977212585761485620424919454115112381001662279160848228136143468618815116018821819017119815104111196169761921514718818820183967283110397610494231241491418623320771135160245128180151001113741942092299037136120411587324816418178862537924019815119668106342301254113410810312369271991731199347781655914451272146193199225501932321702325356242341131909560141371313398015822013681126101199218247291671448581107144115298247471481632541119663224165433517911360601501031612552231159195201223116819422520919211157618910222724718283815122512312038147313786627316915124913024820719286124562499924955661851762422491731695954199591983825351602204624324746235254171932183123121102172244761151479245136814172245254253255252542451902163135351422924263125196243244331992117109206301786112311221868158816277823951571872155611919110522911321918292247225202192137134240914549183919911113936136186712180138241441861892302242782692312017993236867722011418719612401713817614596222725412720122815416965824223108622497222480214215215112921821061823145301661421161336323614397599023521387230123132630151981692095225119187185551001028419219119911011920124524718616414525381111204227190242524821919512091621691236172196128253237150802539112125221792537321510725212346217181156521736118016211420722624222113416559137411824128122212759121381901589117812594229190692457187244921801908123124725364281462241351451961295015113451381241912495423522255251221833525511671169599321063725021122315110513019430151996325731441691358447322332161631981255431661541716218512680205552502531202422271611201056925136125200169307397188082172432269411913210624613715049241016770170617110660201163145106143182921078212018019817122514010512715321914399210119252135209212167677379619191277830173241201221992081461031231673990215552232343414209516942232331441051213024520176181236602361391892192591092238167102181221159177231135825571771341230172471871621813601522083224154238474109151309213812192642162522211120837925022712141188296120815010743195118187145151184147447116012323316823424972611772361491222552301792292127811323914367201791229817521325018315917744221991522472051562521091151118320519510190158131177831641721202511241721122516017441220491912291482171201852311312462003161461582461981172312188531895790233567992475810017721462388671184154168103742521048532194642334611221811421781101561852102856902392199523322293234508213514024413025116712210145185170185230193646063591382818774157571303018422032107421471281061412371048412940161171146234981426067059115237122139156127821791811621812347915316241482424823222015963445717645415718815624919511211423512117115422717173252187291452475816382252658176193143507573159802212204123615422110111816014280364022683247237811031218918512731287226144156101135219135171611861392990115173581023616316271543164121772532233288761397182202130174171113521585251012216024223211414825579163201119591951872421091124725228238156147135237152115105219712319124981121912482052361195127148187109110302491819930592817256184172237130245213581272091442272501161951051791935055244912355107182287099208228722625588123522314056220101144187109145520223710672580180123972413019521025313992462521596318824010312128302452997222218112167351461127218920318112612288249213134128161114151962154822331971269517711254988238498023022285224024114381962191001922441201731831341261051501051165332441515617722925512721723122337213185284238134146209512259416924316320092392422342391533017620125021234117147172701481821211138823491206651222161921711822221911792476721160132221161492181586190184110252354991501881452396118813024121711894251372231089953246171741333224918024318971792489119421182022622816314792322346117682832302351388618515225337161178804931126130375211213982244465219218175195821171253391184117974157170744381841081661251281399514724016512512810324192616154433366162410810523482291141006192572228111291601637351063316162331582453322082140581321021451882014840153207255155246129224811613012924211252180981841291436140158584125322353716910520922591475623318778019613510033741121324952262559183215552363641311014514224850431621165271647228401591871361377012711823616624512854130226698670101176259220245158107810550195127224236319362222759511135125247691311771572102474331289836415518431573214689421211451921125241169891941982291715317014932851192091341831008166116171886322162327316476106115127103139483297215200250175107190116942511492351866314662171992454446228133763915751136166111802209160611281372191211612822914824337183115251701081058858178453226185249191011228212914216921106633559561392463575398146561861702511012331371742511597649492391844832301761182042201061451769436651201983415918437190241150491071011981612042072211781901127825520456602277743239891911251112141568510211310723538174142206114912471491052202181691291977412823370481095849731923713613514045118106106812032127715415816112714912550183140238128199142411481138223083237321422218622716218128253691911823315916072442127334992106218272220128256910116921332261501351671721382024813771335520524713933311373111202862392358621402839256134148472132264160194320287617591231405324815231471102002152345100284812201431943318517143374466757112162451972724158202207191851451162287841433825120125414510313230351742450515020016141381303521857914416775126169241196210629639237348253111662384715218522711475662114012556211857997922615419056568559919042221241836316115616248955239382281871431817150120061192621241435123510114018118284182851211232265451078659324014714422311714229161252431442481601023632093240253135301452011818041382143197511611242322237613428200100166200211822361751402022542086182413753221010318210318010925016720132511402235923125223251212631742409517920259205623619357216635220122725524819118246297559116362342166519183135220792911656117192230204193231205250244652032112517779239535719120716424017610125389231222181911711317183218982381171962231071431912192212317535238978725216330177135221177151869823811971169185243971999524216173237121176190211371482011358915249149237175154581652191116189622231201902471977501582448189213301015517819510192481011561549424422420964442471623111647163135125497961014132451043416581918912719110561128241202103125122196604054902292211182091665120723894123132140149188146253227642102134222318251223718723194124692192311512368812830168216179843215219157117518347402216219111623113017025313917115461095710912218121424718719313220117115379250227122102372357917330173242152146312531771521881541549113718314721731015816024022590207145904722425420172226612132459519806425220061014013519122221522112911011913395109142321751162910724012156241193122087249162153732189121213676157952424414342992036512010716821013122131180904690294141231205581392823811669254124372272016419410917618461252971112361196773215155131235207154183232161311648016676107163230177145193310671119672319422118595211191214312210612710951611151269720793240175219841432610116188244191127214629616624501561024714829901541871151262222062492318273127332402381777616815913324421611601981922384107291617220817617035191335122813295105814424118111712620523144219472182003221821927209335101238117199140163695923963718722222378814414324248701564131928615572130291111419115812524120731149237932121161941161841962379710314852475241821581792364511625520916221515513024516317553720367235253491532151682142313549023761922376190235171916164141510920822582222448902315982235131122411124023946113110188965780233129782112374855591942013512611814956247149187221232192791307010612438154224543353174542012498257022024814094173716367462152501829517823746112252113682440138133228341115119204353714548173193501197420214335419286123981177117429133813166166851320851181722149126102122002241711411268721334190820620622192066618724158111123313816116467517916121564185757119010919557153187179183212105184742187563414632223647189214282001271402191701897519821521420124425518449912465713042184209265220923214333042142466724721511581581681821398613612922029179139246444021653239210182151151832072141492502401868423723915616920015932022151594823847118193193383917831116199180941762344111628174240108571112131182092506510320254112183531211787188215166911310521928454518461127199124202861801039720119069901522810915991126112105951451792042201221232271201811546218116198156100231012161874234131491852271952105080238129981966752211121492381247152126160212692647221370521312071495895108168220219748862372171451071952541571828078131501861408512178522481131642531817182234146161562015630199911042124076151523617355262182151553817315923162471828111225134366415188238232143113132253143188163140192145717225321792012201301261443716819421024410330741289324823467222191855012820760223120161993410119161661131472071851901348316018223075126130511248635146841415323179163106191032505120045139671461148865957012820813422114161160174127701742362322765106238181282211951352491915869248192229710241681642437068881431822282261122971651622820570805040921651051711621792231159855313912624046223242151458135254243125227205195523310669182206107255961472464180178421061312813911950871631541131366813118313612111193793611602431661250124160123228131215176441601881921591681981318336321133250164170126157231141112819316412047401418712818372100222813168201291481523112187232161569116536249136174511379516751139212801172199425094181151981442519619665245166208144522075511097641826025163841933918823621978511226411925821221926802469529187229811584221178331231202937023520724775018210022224721611762541371321605620124737116555224111731045891116518517225131700110131237722861250831572502116671401373016971828519615213641056022519711390141149248198752282574512017018859923110919964227152537889911092116217774222164251226195214203678220868692359384159282511615518111712911123671741612302412358613216799282282505715814523918713223219391754021221419879237159115125992041465521610212517012314214515210010141372086628226961003411013712324436602113211141316274461217461474178207216505325255227831672362071098254175138204882914918160522118117656481372008384531542741962431161621939123514619725110661192193217943244982368312476123201719513321177811347229721991413513216015586166012026785213190120201265199207878310917019434147234232178195227184692471612261374011830141421951931204301682036210519486439793226248732011651768310224197289143828623750209319149118165602261381482914314125525191194371122460102471923315113216425692318816711022585861697724213612423610139179229136232129184245248242067373196165411971321371391624681382925219225241129123418322421610412818384251030171220621121747928119161418415725565633145491388943431571692452062283166845451934411335971142324112119719410719011917210923422199204207295119011420724911114220125521736962211062075210715987163207232201832552542071371997838315928124114191199217320610324621715722210712523012820523332142161532532141032479115721710311310214320121722170232471724661982091162061691911962317410920024519817627141225215235671779114197119903423818298971831651468218616222210821115713315821724310925559158633793134254611661870105241571041420885131124212161971902352822526118968320517521811643129541449816022018117521225200208241310112227245214192235173108255163381843225311391130842051251961121337124518370931212461199019538199513917517424917439110180212189302362191871681442392501422493759137417723317432165124230183205432541029422914213321592315010955644519213321251151180157179186902352472111125015925212323797157185214173234521392132106175222275102661218622236772525027163154134165171200190612236961862222645173210113153154127112383712719784207105146230106203181238431173418517418372813216325110896876472150194111142122031752422382166415313976119882352219396871191221172052332132051858622777179701461272475291712411051911006725060232142613311166924721187521585123945113129164239118711771334424586119621931741702131935611477122143240148961531847395240203254482072198419915225227231958835471832555431301191411294147617141122194491201802331722491201412395161112112169112222206511224180215113193230105951882321291981601988316629151108137155238177115179571322921318190125018721734532471041401861473814116720523818371782222171401231215118614923995130752023950402179913692425011313713416370291034421978153553155105601068411596251748217610911022524624952021332401412145122119901943811117425597321772371888521110517917710611122691271913517124525424052445686229135146236671781741535956568023454882386294239199235431812247126242115184202191930205353058242237155471922084635213941958594351322201619241217421171298435167216333718114866181632631671141611710118681021731144183187192652441921171737764723715213923346673617223212924114015919921013748738418011181233193371813914012978947424511114513753161213177106472812199195235192217150243230851991501631472252122251018319098199222341351583413520311762120388714284121321642192412319839192151114589216923025360107170912194071183218164322224741601941091762041332272101451662041491239137128831421192352001811746310976863142366123613766302023615315919110711024194310531248230195178313915478155118231217152018524422857180951761746217821721912401039725016218913423234196161449420919219116214221713166641214435147163105232129177101752026720320625421125110325524912511018824420510818210401841912502322021549917142154771153251208912099237183701511711251001261301552357138156139247242428025499220106101902132050942336192234126165218103180220131291741889431112173469618022017917519210516819611718820223550233892375717464399122382111906613515812418723051166253691421199013011118349517324518590227618123551136262281081613510118535215222352021833140113213422241533088241461803634109117252901821111876163494180244120209210253101216218222247855915923173609482774921051581782091102058619918195240225557322411540243692341534016112082523813218224901902388313648611662226227271916050671431702121245716571081251161731882143124242217114111936624926209244454846167819236208972021001244115564130517616214812192312450914811184225221821961359116046192249711115968011161951715819723722052328245422362309411268871511543717487531576210618817219112425423721921112612622817197794877661712061071915075220412420424313713111613214612252121174204187130188262411933256149561882333224417225042124982913835126182154381084181231120199204245145168170235165227144112252115981282418142684710534766250243341301072149422887401312272171592312320343112189106818693105333321319210678886617681173221321608399198200472361171232231211904915041155129111155244207204147546590112241804220161152191224247121612409225112817013951670122209310725501171713623813577321151889912183891656517623956135114253140302241842381982371641861121602823012219912622825532075530173523411310250391112848827915521815149169188387368166191161124117613918311492187372521092414412824017581511823391204192144714761562312510122429179216639785881867724238183117955717524919414120205252769317914165514120512919719324469129137239185419148160246115122022741168145165172332296119246103122181562521293619724010451761171256057254170149215140302481572103111216250178207145197651372321158110157188201341136149651922002812222522512813216533411682089146476077169139120931544202851231763411281141962021924419919240371737401375631011442168246230120203100509314942523918714547210251311971368381124841932126112410013798158695811537167240431385112420718711513960842351371531362042352461263161167711680581682128644032282521333017625313330120209220227183166110148193579449561641106534235245106982031945086160766211113751793310516274460941912261187655201761251994119656110294794119816416578213235192122422402042114589227315577195420424613819817118517183681213636801341951912372017848482596548051843130110181913037192163491641752361321668110040116815212717479114420994111242262093142591295119111491243127218392531631052246831597691191727951831681002312552547923212914899135677830240561232082292041262512112511081582331293541032479116372062385118918422317223217610122125199158982232412182082720581183901631105371222108138184221132121361882234624323422010911135131239180135193169183591662302251531057248139154245231761502215011039211291292542132268539153403387622161319024718635311519811368215912032082281271611451192189210224558022542421623780291406696176143381531372311272001001908115317235236118123232237182208206605924412852160791721531881822468110311695158672131932290952171901971497150862369182190103812292221978525115121428929412310469245129101229187132031194617221718918411415197233182249133170122184132131715018215918319021913418072159287718582391791401192302176448152125663104664209931262452359916420414970631812952225149127145261063224295218244412102220831169241236461189620365194683632168110202721223393173229199116522213718160610593109240131162964785131104221150107117185209239868724813112918431198211110119708412518742111231252206601231692931207248974024970757210312967123158292481201751031061541242331023512510819621615915417217951821022541051119121930113957741161913913491116211190662472071451392452451067190218417619198283942332251631262025241145821182186125961841948379124916425414930144158220292317215923312914716640192187961131231961575425233146125233241341579419681538316385941041401541118713150184126473021017421575415950837419217611614333184143861085711011417321023111312321219515024025177161216181422232547524611713587150239911401024021818501191705617620124205518718610217621618122514841261021623312816816210696113201417022417821217825113848168222271541724819020210718822295754116922123914422121961928817317511070232411183017224402382451720525390104233671051248025123672511422025314814952651127529255372281611961031648217019233721461132429014223894165244192602171101599112612057412431792348113411112151123240461497187842991197142201379522584721302412647208156452065494235131602151575217061105212122193220272237741572517515797122237147148111822839411018821133255151704222141682131998724614956161711018113480130174212251114921391212441341743252141141016121993104223114193130274110423212971125499289114192176112207252162611146109251401192517111719987141148187223239136252126322417311122019517423222550247146189134231255252225249631251282431839317670327794206124212272191201981881832002514570137641361621481582461982472282172279610325421518713025121923122923915295186127113195731471581241354353190191812549972187501191809524194195162221111071421742061481461341320187160258161112132381751524173240196492169822012018119814364208325021288165231681571752143878092149303522911083246145114116714020936716520618315413123818013413684168242682112151185202124712292382533717425337461004370221072124076151882353018632401935212113197104502442551701731831403117624125014115311741282532344220127107225246138141215251302252031635017251183561742531892532615386136175187150412418224990243189231992071671574518260341312395516611024214119921617456510192148192132230751261627248185728525599176817217512964213154114911235143179852431562344619715412849343175161421922201752331110367614809111071225621034411151254217216185380248511379513918022422110391634160244128180151121871212107025317822013030208612278521522564141185311846924014123123514712818519213210525262440204186192471288930331711762411168922486146648698348830131201891662502142351537648722242482407941451811442242222813111173343874641651791081451188591946596751891977682163162083152659624017512311297220840147155160158174159381101327910211359225144242220174179852719991031211201342383013481533911021491231471292421012251782206824517523312915218117051198231121552111544716137227216117128171241542129116832681812895239186132731911475233501742450172134301129324771158194149362061941923678973618413126125161186106232229991012243826146148209122128116230189240583288143147214222162118128661591522166193122209321715921943218943015054207591221588721221592467255132149172521441155237516218175251196701335182742228130276910115319617211931612435190177512664233129169206111363813010614279180732261221552044578107127143871472182282614414111122420714838140178641341901981411501581111649235169206668312219219810310511217816382356819565181877220716512844917003521843195211237203186224901524014289316216461156173206101173712018014847213997123191442231495236216159227291331922645746071189323512422011161881541833219490151601120228714621820218114641532362401969523212131637923512216222416010294178831631071361764641681582661769264484301372071961813096159242136135224901366768412497816699248314185524432271212419722813612413778321929191282312441281731167812321537201182323114820612621020915915918422146215765832190811161422654162401664225423212171771520151832451232155714813012887207232117121245220130751711932052026816213660224255317382281192813195179240542441421837921722615619021357237112071721271127525422058402211984720661362162062212124710023325525112743057221212521762232332532062311456156221111115122159149214310314722271921851251502312471549521810786124208170230184671996919025193552616223818219622010713719021528137221111137124216302531844323081872446720816775236190172421612616739121871711869253570255210164191208191105904872165621622317122185301122411309516194236249203522182062492439119719087272531011821142137964871531921224488231255216124163218100157181141691671912231762902252221161981407923979195411479925247219357111574324647129243170144617161178146125233221782111602542001701581118215120360239541342201071015716824030188100223125202162233208234202932037411944412221028817811581249190165851351512472358169249132112381811351172312171821565318721422411919183225522918516207681312122082032072141441872117771192445610521317590377518494170105234224140117132741111592331591631819413611815025327173655590130110163521541311103457843519224515032209317014749212372865121324924415156119212161291042408979145323423219920922820123521763141165130242611337823183207572512311558115237158244397694150202224167313719585942451032048051861542491029115213478568519822718213422010667104691922324817417419487243216194112822336210950110851982091702172081972181942381162002269221183341381561841631222431791311614064792493957315287235737010512718421130206193193502471501151501911725418622622198422551653010459111245164712452310681322161646984920846906613211942485722781453142115723612818515051224825162885489222654229211871311119204472191098250127223291352557614367914166200281631951057959162123472183362421901533514191872316234250111573124719618206157150481161634411492226588223865108165125160206127188198119172218276761922201631499435211581951491581312292381891929217717944134802317214247151185141212120147112288642072071931015142158712311392356262381151291802421212015851221414818513149187171150749126118235811823021943761162344111228401172354311811057111201254247677374151322121572527561641212728731973719027761242103179214220110132717124286195914012812637131109241521761261602125941111511051242058022533778112252321569023021842351342174196511851521251054980508514315423720218310956109210168218717453250195247108472151221156112916261992171820247234118137203532222081121031747723724114987106125126287412421023115215123855442206119112017565254142185249592311821565319194312401841231221713717121716813014213954184205185127254160962151302461395410496533437169227146109119190372221149111127215518715469861189217618518010920621712782141321923020239491085710711876323214015428752311911382529925207184215224610240164732172541976737174504225321821817185622451991402182069094811471499317424430421182372031192842114254111327432472841117239190104219121222186552071615521512616821622974165215881852517216920372169171182972171192331901002211242021844722323874149231772541832122512351071741442451654621062321117121932213186371396924104212407615124232211291848788818352342372921522415117318914812117038220721523612420964788184241243117712555129241102201272363325128249102131867519521024896131501603769122234973112363157213224844562161295164112622521601287076108901520012866130821284311659195169808208160718223411561651231891793499660938119419116171846913347213159240202508521120741238101111181765194561651876716136174245212247242102248236454311226818810841211221176133398414196240219783331121689250251390241801692387817952202131715182461272501214821941291881331067798401021420910920132761226651144124717090246207128102130146464919024161210182482236315012024221458981227522064124501944010213919825491838714613068969567188110311202236114021918520312522731185112216986346918411617010096563419515510612232153617915813718123132761981725235180451962084631254018435133211372432531814022721413180186835316852173716466247576124076546165720114145149178142442241653719313523814523617181161233144150212254218248114132235209320045215245162723012019920424613815823113182741321741204616116119681249015327469152241772417579254181279477211571691641891011061991982311091350676113832107171131901972046097221162192196185941451156035112524614134512051921491381092022207252765823468100128227198491078669102162348668164195630168314197106731923556248174107200202216108171244169105163192107841025689422493619015810919183212243111897312181746479102427110812519312523123620711712157212402212812296412104668214722141071247141502461242201782152177114813619820418711513240145442037341312018320516616452521392355812674101452522085113011213623120240891903896998114229175234115875818418610516276209251595915915144221951811456832145114533381271737441461136251866415016121657107153186137255458164952321595216724815214623212064139164205128184228123221012469910148146226891528120490244030197932111325112212841452502542479219540116184162064112232994398851059209317659136191405685551223423412841391512412054139901491211897011787211157214164179162472261891961193143189695244025528124226144431982412356311613912011318123534239120135100244192231174233951201032552094512113911780138173111148711361279614875198901992552412554127251109196183760782391155612719223820462171831234578237183194782391836017920722622094243243123204242247898630181111622272141512395994171221634624286672281732501769111733183235662382121352201106911942381821322201109190531891382082451821601072912921559130110180722284179241252851031552311726964243951798649153254792051083593135107189199235100364917215209102201833232207701820724232471991498424175247254011922922671892095864932311251634523218589131254189381571571367618923921358223435394205103769120790602341381230248186143150123541241871868011713135249144410112323213289420915923511218920224781912282288023422812021422811223414361241223181696110913718885175612019318110624717025212754402221771681041512122541594918721110701641266316471462271482411416127201942532068611071842041422225241023581272161611188417363175124107102448169244921911692522744166711051471467852389369143623913125415227106892141557712901932051340201922212391686122878712321891421128419312014115123810420915310331051771091859612968145572091992111903174188214242081451079111312024913310917924311845029190277414616516919851126302071842133022215410791127214172175204237134907223518626249170230252918521730618463238139718177492155207891283211217311614515118512866651278515747382282216210140129722120915163157811542061111711456552186854192154282282614295174245588331791429259193214661671071416513262211821561792081222241679523212331794180103161210317716021611716570351801991894630393971371763013864361215211622291232417295169246294411865150121501821006099188194171242192822336916642254203246442620411925016148152242991111947912513721620712513714725373168199138125751141911581732456424123813312557814318610161175187109225232129174751184628223011318119815196188823925313319885179128825623517075721802201111909685123202164233188101123190939117410922757139193741431879321010723590115485812203117124529169246384718078224821524414918624614918514221525175231174150144277719321527131382121041941474520785207242361671981452237174771034520891627382140196232129139741520040130157243431421721849223519989181411201622051489814822541642282452303220819124223250153158191208126176921021971051911001331552251081285928175802226980941152521802424175245624424524610613131110137187188142202221571286619219547215249140861231485184137149187242817211701561662471221632551571821441351571767372061171998733122083223245199245235820423212919422118419625220675214247219351262476250121368573130180729145248732254613175223204412171911849522911441981771991251135627206220149239192223922812515924619816323224211920471602321453372512233326911814210318218243198834687251212159483040116150246129235235248152201242101802382321702541241991775014320982247161342151459855246135109380229103173154781522403192271918024373147254124135161341672542251129661352032130192137282311474217892431292135145181512411142471552452542474013722810821226193173432151662451565145175631018212319418422518025153219116198921711281031229697112348017836341361962414624418613131502243743792582442055621752171393624817318512422482085914613923721510811790391151256445124224971996919382175207215264424814190113105851165415911511219214171241592382381522192148160128321661572402291803014424616225213021021718523342091171384248247198782401088192541972210619319298152126701581002528215188100233241154173158412920416116862211081364524859705803411231846419511252165115130208152262471401412912022846244128154154198341011924132189235182421621857482411621531729416473236264151242242224114283810818642106132121188128171602816012312175140204228165488214355226185686475253115107142153261299614725441168237190225316510066671844121481811295399145218589815415692214201108628871092317716421122699135183649144206188209187461932391871331941033615723119925515355821466438120149152136627314722513741512811622051741053719219022214617026112223119111311144235101178202518710524722638160124208318824895233129103237318816683206872208220591709088222901861251674412765014510591146731981561345710415718613384253123998701414635113017216924612921611740135217158209722132111619711510921163831932261658314612812523778701771781782116874130147441228443239162189691111271992142182353522246113131515848107171235218471110419221591522496249616850159152133254241171163179173146541141291991346334080215073277698115184210811172212492006726106244288958124253172234522022311224019922520514755827020062220242106925314624256670190252661521610661224243761521624916172444211627144118105312769101161468613216747157769162241691491792415566381034111968224229411372261731355917925517816539122015487697913833197228719913240131822361151872345620197149236191036638251791482628146918193428524412824285105203226255378101150184971216819823518219047911200244168163871724017050126128299869152196162071481671716212922823175791264117315874493912414613621025313411439933717511996113922356121524037161105186697211145831803072196116142176891313088221581374310637240171122023219910318010316243144157114111212262528618312516121917321817737261701776207163245146133398222631648010410517067648116810410018148152825203195517216551262411981771072311221981881082361902044721749121139752181033023315918716712623824149992372399227171618272421976310025414325515318299119252177111195142236115571852152542521219211232129125150167247911597015236179601792152262203024311187205138148821315711223619022853943011417133250126115220131150216745209159016230182686210613918107143124216301131754523694123401187116612151492461291101053115226792205918924320315924712316510313950891032241752379719117296192523619524421014593173661221713524419090153242162139211248787531011064824121212022691237506323372141395511428174157170292393218283157151158692392231781876197152503423913020918655115177192246292230545715425424311223468173127203105115847151282191058018219916613251195148121254208155321491902421412071202082854862361181732102312517884682142289619814718218412975110229187150211095544222105152183109110213145229871071241263073154287518586239135234962511645561324016447230817924419523820019918920921619517472361298811922812561246901811507242241838613115013413095138165413529381001281662311121491995389242578246104151149143176123237971041461551703134136421352123567902321017123714621128213931041514761234141209107166785225055157534757176424867151482990589223824122711220220716316963193761631057971919923525215464144922194324525421083721553023913959117696123613715710483615613061616571512238170139601053016421910180301921164729148192163158216722149223221025572051611817910110676130261351616421585189209286084238222118209186512071901871921612451308521969155129825516022104110621071291212822212621762486312719960221812712815518814612518994244641512216051742287741606166194111921317220411818419416322714645262241101072481201655514056942296112157111761878222983125120691932461218062861022995180195433018371612331362219713617114016499215170253112331053121610580180211642351105311841461171675314024824422857121511862412098598123963161208252114141472395092225169135161762917424423641118110186962171122061882491628523537271801291802102058162196164137166577224464149399896176194131126663112612261612451621171958924325021116618937463656734522118384352042442245681378701441214918515151187147501411032041221391561266415922051862172892127210228210246185185592302291692412171497186112241211254436192511411674168238247528814316622542183901311131731985138245167861839417623214424117215029151172251139157134841416210318724210891206155183156517142116231219245225824423591414858156724622917423612112891616124718215855199218471381879416952473174212122143841841314820053232101942846119271691123117124268231951112401912132813211723121721415948982311672251643918920932112373133187101862081626169315110830131251163105223153617023825194931851181847723818218572130186227171241432209244391252678155118229219163692415813214723215919310024217423023274196195133631271363064118118941782120155382558284191160841961342361431036023413823343116264611325114193481501131915318824514053021012620674183914014818622793215106252250242281642332241401979616151215152318711894176105611092221262061622511621172473723517411861891211181316978611851822051677621820615216119163195197206236176693024492178233184962171182061562282377166235634102180811181801012016678024316217922133165172136201507892552156322124016214919911170125642351292232172512411471312391211324514176183202248196337121420213319722510519025020821159106128088681512811124182161102490215536618124233331217412720373230231221251861110183830161723616415163401922452455183884651762887802291742441281801511225911737128134256101141052021211667166170249179532511062522291182114105121152235271314822417112482161352425812814632172551923515617926802442274483551956460172025412399151232040110129977648193251174225169591752172486691617015821941921334876165101241476914676221722001681414159188231553127821017923391165321591261111511772161224178238151441321291273414696166207696612213095241799235152359316718019812020753132183382921698362411281931091861371281991939123827255232176701021152261891841451041671103974612991961614512813232229167244128116218158210341421892292420023516731361354521219044601954840121174792818136872541832441921511445891523815935123100182221511765722217723073155125312162113311217035151481662022257013613158147246129441053111291255151568241147204189139671645554551066116046251220112101697112413418322481203341002860477294243464790168153551492191041471211294461223113812817010983101121478091551744974902322318340482091925511815811952204109411076912512145219103136306466176931715846152158253572151952384715318718998237249154173563622519110635891951418513747185174151149161201621815952231889140734181803012019520624711921422211116115910968123231483024010010369120154219218471211449325022118441821527619619431472165320018228101824282220140162103165122311451371221921285412111353234613302352272346015116217018975431031246881037359816427165131139137637113617965642241199163184301331958623511426719216819669654122841401249203848121450173167224195111312242091701441743519420384143163101225233420365301381382084472664252226913799139442129320921223220897120450249991581391111282247566210641121377312038133244852351911063114420825222211911871549292722351233472015019393168832100957934244134154941217515821431044522323205818681601979477114133135203112249402546791061681501612491052062021681722131772171711625115013236256910147147212120762116169111138832103915810591188821831201671242302518322249322021932115953512341912552231551192369018711112725220935129711556159216103123246128116225818519913017324426218107121226117621923621046211242131214109103937113825311121413263104138125212182471764925065672282531982402517717812642248194246941152322212301441874519324721967238117422382213231207247195249101311611031666492200149173234234352461241593119284247246121601619925480149251120157143136129948919776421851651229113417171218235208911061862702322720220792245521966250203931982341242121492101581602182821213820025566251192244112103177272072372071521214011014985147174532481199218066187215724188198163206232238139182371871224225460917022003281195182832302151072531272327516370111421016023714023356109193535133462105122811424622810423014312541551066726143154149238928219011910520914251497151142148185129321479916911921966594789143861842231109190217240166115228542421524018492169241190902351151794124030471741227519183271062493316921887524719814261664102273921217441311841911622144322923120522105247015219817160775156251139281231123612324210913574156165207113173183110252416911471072227641292921919817938291852141431362341415322313198247215921318884176103225217175636815641231632194192132042445117096362451351611001841885120717425414884177951692438714920519619614312519320225012819098236110817718320015343155207896424032727916119562139522616272001301881708714024281242922111146160423843189132774360704219398791829212842244411539162462391176862234141133104576922413257822332131181939021871985005317378022109572181157614339206190142865710161392231101418921720124173620133112181198239114217323161862255390238137602451742132493238319746451034517484251185023348812358712310010125418212169741520239922081141941161802002118789227479411310114123850529022686178107332508011746210237314216278425164199692723214719271202601365498021341042427018813950121113371260165877916119514913412891291788422101071842181120819961121732061362032452541361291717712981311829221922181882167368661857137709420068731701222741165137176167208145122344711329441151943113373816322930189514245103204251111571272876661862201061011056971621032251481452175923187319313712012621625213120210244220159622245671144766737174164361991272476120220196192234822512372021386775216541585011063111193172371566124911845103205106143173128215217105591112091261931812016516424422821724621582241862363516418516022513217183195181184244149106175960188210131160248217879620711817621613748491894248101138146538123175117559190138114135303262211253133100650171381061365714025421180101701752271305347114246159222191248245718821322522912032114113242902062281815399213222237231091801754292344213918114116522310713923220617947221183561112511882201091152428522622466812245313593203924401519439199421891202147937323219821914119320539771071417523280122160552151581571292395205816122521921399101307918722724825519524514359163111214724414714316714091791551161581832366768229217182159531115710921011320666183151222571414718815110817015451092481182141163254183132632381391255014412880199302451982011021123423915330883014917756441017312017073210122235204451681301831561319417611225159191672321342197175129146141264773153414311992672213436153361741353824910824312113417123017111314420821223108138516012811022192224111969364391181411731541332402923122415341107180113111220322081171621242421731281761722071601293797169192581481220078181151682546660901949524318516624323124501081931416117251261063223018568201105452164293152172826514724411993130499811253034170106924222463112153200841491001022511561816616224068301962272041462141272321716122552291252533213118315713016531771312361882272822481944156691818823126246129123412416023517685792471966917816464342252358968121107076208453811318814214019918173251842151876751243124227193226133113718838134303238146283995116447223319212468251292311601512132428247154207140151149433132231168224441692024314720118153159112746610613632812432192421871781421462321110225118157772071831516322461341896356174250841363001551401621151642551311112207415316012514123212916919028835316916272012333241803014441921141005037174391376418015220354514654147283321251810719095601441831924797174119172105194701466911084204714225167192121164181401333222546238133524514498209383189134621979320110122718418118850417011418923720366122421316810722082581663515910816516725421924616126113166177571181051592161671271011291371116633326244112973619321014420243248117246104212204207166192556322523922916116914251595817524924025520861926475461441109860139353616011863114144921921992041471004812177130182181199218164111811221922391172715918323625316517914415731591681302151721882166512018417197205541693118717325120244126291775013820452709681011721985172516611357702098970209178202245226224100173192371410196137137465324207165100225240184717782172481322035206406722414913013116619473226388076169207974410115943815322020653108167244128127604140235261383014417382072351298710112679111148181433814565424723416721910720915818415816710761641282322524322813311221322552142122451011110017023417116313692131566915103801098621015112215130230331232489113156103651211881393522013617981126117175332368543148179120413056163711236612024215194183209318883017427191363911960166227128189100225571994319850133127981591711341724741203250233751951006417923212920044602524111115317820938157849311128147179504411516111922613812852199196143189210632437825121239245832071845314211612462382069201190255243127109216179103205190253177135152493122123912412417520516918915039118155127187211244196110179191872047823754591892032442367822711598623239531075611022311520925311410519214123420815521316118317067110871352201731518921524122175416819664832321571981605977651831552111557222110131882172501116421413261213591681091221711738523011255151128819121346511399585191381432142028412819205111918719431170169692391162011602212194841432494137160582021711371348021089103180198191092401004015813957377710839310418482202031737822819652232235104183774127391771031113319814514249137301521042402358668114171411042421982182011716924452424625323316325217523114823754441342332474525431131511011641281262441927226168119173202183124183225153255251237254927336316992308421419518215218283214211231501492398982184996519712937673746143186163387183160127184100168212229861151610434291325835301186917812520825129601921641918087196195158168711894910823911969168145199225200131219109161106180183441601188729156261082081713412024120915921121732099547155218124214121381301742241702386021918211522173231204594689991092317358114109218193172115102452312041231392813520222118624223718413913578781006223214268272282391589518421524022624657151118204456318817219120025184249113402491267136246221642262111294168189227146109253418318431587133220841492351256920645231173902121001541192181953124519616216967723312383230148412918840711824816943248997170471231692342189423014114113198642501062312171192281867123888618391402152481245515256121378313204205186211301212114116715420615223324618239175219716624419221323627131292051032041931842714165136129435319017625424226164921041201322001481861931811199019464225219205333692062327202193254521561141636217623020020213023724310072128154951682501921781981637024513587182159182184892724018445242786724017318619214217915013359230235150419667217190197104140316146841128302446117215101322169816414030633241862281725924424722571451418919720687273190317324911344237167498954251126797679177832451372131602557214111995169107103129131136129602191662431501958594152512261262477149174234151201217241815621238119166205103451610577103452620715216123521618215618323620618371413314413474220128123132101781069015241637244252572321711861118719918217522620817851255235189243127254801662197133143172228165704360196243199211216130224136129170352032162261351682261072451261481331749227892124824842125324322201617243215261436912232971781081451316881102282611022520339667165206401212199613829812132137113111031992128311052616261439671181151966021135923124358188722511212352398025115117911210818025711202920019023023242124224978718012021822914023913514620817713640221183102531372111141501321973711215821811114180232495923011547591411677673316619822315824619861233141358524525269248158174921282392512422817324519986119931762545117314111323519010413930244011270391161581832302636232119611131866111171131675712016821616923516211721989179246115222362442292192472282181189417626401161889222511317319810318424579721411420210016821624910511120422868214156713714312298126144145122331968918568134861207244020419921529420913220519912617414014824525418721314218679633110815336885316618124179249481075662051932332181403215621145153240141656460241292051124216661240932311717623991141291601281801761711771191247724924916218575924015638961551161122282471244413218249126155371081562351931861291731762143384066230179643225358179213210200128111781295625513330128901161721848735148820410113811410019749142341348326121179405612117726810235112150135130206250113188411431311522492523187108101246241105611283315244123113150871992176151242092041311191323310026342715319970215185255262547212166198861992282417119842032281437313216514064154424079325309820584331032132122301081141711487932211631522817422513717588170531886814720014013817620623518225458982391861321302062461702737313572411063221514830877491272882323111122472532242238517134162192151592113122165971941321652241262260121591711859296241165972519622184396216412207858516720724412821891441061261657136691240104142119124942214579222013119166117234222249172451421154082129104131101211152181852152211541981118828121587413180941211381071641471349413064165143936141791332081642071341541508418924586182516515146535026213107415025212219521425511710015893192281431688517217182169159218103108197108831831521961729318148982321591804032121161952261621923613919614194272551931152533117218542413310315268101179932115811015518820117811512422011461602121192813012610322975152175919919019113159101221432412106919373203432241096760205191651075914792441965018224270681377614816417921167122211461282419010223377128713210118417325116320315447237210621172052492024210517916195252217523216512973102495720321471505365716412422615225013710123658431605440249611991922151731891760178662250711311023525142165198218272311991513714046191240553714238167762251688212163213182182142187713732114117154215651212068282108211183216165127102261871422448922427143841551103124843619645189251180201932052482236649212242155160448368180227147136115301991311361537233921218971717114898182201121101995124923167362414050931046223143642837185525215712735184281051391672331741562252442481165721272981137818111602291421681055196116391229617726157981819112966244130153187242100145342071051814545618130193421171392501113812202472272212351671820013872165734178144253246217159219102125981832309921920414320519552469172891714897261861983311814787242391291053125137100186135557251218184251174767353255211631973121815111210495232225189158712462183122199113108151201209291987118317362182205232219111861572521022131531094320712517925225215915123012517918010023124221825370931671081344718514023118793432411859325248160332448175216211246136311879817616729171521966238183622310914188151182476862234137120208192411764723412623921290483291141262171137211921224915123678874032622092361191652091031682021171722068331156110881440159117731222062442172312371269516462254252101218136225148245411471251421158781181753924412647119612390792411165283223923513254771677716013249949420724912148177472151901082471942201272541682322351851972191641250182123216263315922524144213253352371351901321901241991942372434725421171811358676841701216617410279222218248931111242037317921015750331052541821211012512214114818612621527251243112185622502442320360128247906731118132632341406815040223245199125223312471804724681183244261222202124918039250251190216317226191235139371101431239830117199602361401902233024916051234737923622715888193148254418222714994151171188571261834528208456192220134193824023522121424023925022618524238236431122686431181181213959472171304423614385122193618313192392141610211917415715849299916723619214625019198131371741511711249020789661235043171160731981732301614221231951379115596857718129198147166484612419016135729811431879916418611644125242198186201155235101432918116318412238368612214150158124772148157145102337146227801391575847891839518023446176107601072181242222527415723914335736314316734156238119696123779208189216714318912016913414738687087199106611602187230231239156951781198123137271812424210638571301003410016817147153258516320288165791121662121257838234124175213249141495655159502517524024810548171872131680123100121225142121165106150161162157622925122151237898417711911322922219753715155125107220116108117221225149232132178189139244180164922201132221541241451002337922477737682245422160194116713592174150610114132119333791207901468918924914337174964060247243881542611012911614890222187157145351491582371511082122919524723032622511602559919619211220299120116128367425411048233811111722341331657111310419215594237131154106589922211819315456161471906614622115014014424612917110711055135226313612913922320419872761241401523520145911229429125182112151652292252294510320547871232011941248750721122418922522823423416320397122828820712031693504023173231204689921837160916116531911301261451317023319228519210161249182186299664411462141469617621610516421210118021211717220477134216150184232781192209275014610352133821345977235129581521622216157231096924392952032469412341002231182061461626520125019063241231209180311341467323197181230192961691712063214810021110551822242311458415614182211155239136521941997228212421942189970148711468175381981741331871390206882242466622867412272291582457114126190531106310313312244411623089124419280145437146871201152171432537350206184200229811352001523321821215911217949242458224717381245209149157231091201620916615219552201371672001721661486521318535734101193125181222159194242511971123491230134821271912083250163149410720613414324920225421411617021020131155491892072152374613653142243253230118621952841061511914890141152143186174140135182089921601711801331338613316421318828138143248130210012814112411811851022424812243731341258523114715637161105243253226641273017013765711521522719961211314411081612450911737216159209318832721139115491672228075149171416117858213112023420272195160362401362993872341701508422729229698255241208119156673227226255182831368416218742733253133168245211205316913113251212646716913120238842451782112118068242125183208121126806244432277841999815319819644113192201281815247195145227129875317056113103820224322825361182208491429339128107141403421510073424637193212381041601242235328481461871581932023932292005123145143625411313425424116611310777982141882312825223411699142189831701922551097123321963520842208181532291862381431321051541761226113412848176233231226417917213110058233195546178198176136148253672477222282634602194368223121314413386169159011524025239165107103572062271841394520815101114922141032401417157246332255472551612364710821318823960217719665204405810385116142117154122042241841091988618141124685320158181869616516016119621121431130127199332424418372216232148245516649215208632091925512611396101881875640217561221417723410216916420725212491765834115898021021019268244128932343996186105236250185158491112186404948173741361658811935639202217101221871881722067124222154227512441249682372321641501744112716972871321031861732531632352186316611991724717214763158239212531832031092231822431792281253550861341642183912714021736110116742551161018821818710075196198231451788224568226167158232453517572211196245248577011364171160240651182482761160137159146662333520611853235168317418715083252671762032482043399171892206146110190792824171157225164226382022147245014258213109967135195016515516756171190822421913748129227608208167116144921862361441161862361881702545322515023210698668137372497348917522013113574243811203851382554856158242153528224524924119658145217193622421366611113913177233129791172510641432545277216248158107241095608621174169291657216242941203526961661361451797478164182516571003649162215461071717723019921415315510850549138109501429018742562113636219541061899125238239196245129201107124163342521946121021524825522712714223177612532401291643123661423724560180219238208782111312198729252102213161631756024416722971254180252219634763253245138179954767152281261891641122191462421577510724717410458180186253152892477317122251182131232970242291751481862211742411872232411619141240110831922377025521914112611915432381826221105131862132211617193186122051162821040255188233222685154115229141182641181741836244151591387187339568139235182520625416214522521576953518124817011812719810214263127217181222551071732541781092411912182281397718096622161818622310717312623414818676932019392115171855617524515657164217520315613723722517316720474119451488551632192318723991589022842211197326198248166166791413930232471124222118917610425125220212575122462166214520662012166817312723722514919721923115123822701726117822674165238825521180181964112216072205112222012017933224701316318850842302244641591281398410354248951752431551682462217114518519517520028419412422724519613321523436411211225270992081411341602352451156981392407705621626248224160121031328484955144142813511723818169128236108217716616031641068661959995219222723888200143451088112191782351144902361921461381312039615717825313965281698215720024997329142111591032139122456822301221341513475221111545755360325015025421180138689976422361272476130186416184711116420827192342677167204216664818835236210479318045914788012416016111610111240187209284015715446167772228824319572210104149103791612272451669616924584132205141322092372301630199832488918212720111625119224312232227102831601701505419186239139392322441919043912616570381153611918078192672163114810872112032130232198159135146208353711502323715695186872351295101251228723691130753261444178982415511514514818410821611242231461382537521920790222107111514257721141692187100240016684129392324710613194672614918614556228184232192222562331571141091311222395226218122193122180202251941032014825516463254154234175117149164171243135249174536162221262677101598423822214510713910212016064979202368110516332191591165919521344126222110153144115107397207902348914311239343212296342317875406623521055115244101873641249133114192223242182171701311091158055110616122620882321584132194394716722323987235107142467232241118539316623169742182232100113951616110615315915637117212745612211236185113202242100139102208205290920423212281938017724348861623822241115197109120102332252208117196132172717214829881323002051211125228111199115521039924863238221114214130148215572451683911818821415142392041791879023113570342037020222011789211211215346223918013222519285718616501221286840222179176120175161158998455298015472881041261145624512691413622311420217223114693127190351461602331327321192591220240173522392174240146541292412042391232271351389323514317323820518119121128741613586203711619714910631100958425039215136151331451561941391101831321141414610155262235142175466117610016421075102032291402011075716210212223516102823510111592515642132205391531434631902052144743850822432436918119823792159104253237726184948722242496173262328931231187206183153475214322421921541441511321661301311241192491242546615152121176191421062055161144243371591092001821291221501778886201461419658881761318961961328112252121612401709024273171217370112261021584173166233121211572034118220335210914416013657225642521927881728512152431026831204716519181214041134861293212111128821631821581056853174235202120232135183211156193433115234149129661181165261991691347016201152201952263821992220115533215197331054012912162501533816213629361980184129105522213118812835411825811829156971818330162251130174210301901861113214413817025122821221978193641372126117123410354331478512136122328823312912842441281051082062514634156166245128172101384336216716071202366192387337113100774924214142712041679192221449735137192163693401171961877517840518150106131732254929238115863441181230190115188991604622275153327622064708132164461320312820421252172957213968198863211181801020166901133559921601001982321022542913830374153234178215672501382103288215245127681951442121461432141902321232802188521219214318323631238551082526211613988171509109591032552224924311512812310511226164187132135250384424479100199405021941243115231204207771631151761213081191892331802083922254229192312364723721062912214646774214190424813414119116822331603414621237141721810310911720617117271172234169165322189521532461271697841919387788919118374220180196472251111220410318918910017467176891121868512018299220701511961431571854123101126972615424116193192598662216123182254239240178150222111912491889723324559434716015925561482198516817255148166232042202541101813516561591512551517012914221682031812522477222210015017614135491382065079882391441852133411319105664214562203195501022501116199121151191208356152254631956322253151322261341771432419551977825103199323230238231741401641476610023113979181092212041301047124321910220025215814210669631819183654910612914142882514917324464582541661491929523512921715820921066371226479134591637822401069223261151127731572972361224391226419817822724211671071022441285283322331493017620622010814918520938227992351487920499551541341755315205177995235281812145138217475444322023754197254255243223991192377256180432262321101911631879314323818261178219226224142273951756812282542312113525521517816325518023622815915015725110269238246216959871502379081177107121205222211811231509724512315121523789861831031052052386911725115052318921711320211648215238741532192375822313517319314321867239547222105242191223261241754524878123240157231881592372439801551691161911638781504174851732551166919019023012611119613119020013525381247251100712771172372542042451820647315113142641253718323520318020592121187107429858158981576518319721491771912412325022532272157187291611609425112113927245254147215178391992116524021867203202018715711741832071712161012081211982269483136842559515023822102382127287228432431685818418811225125222615761817186242573144114134235920791862389184121192389080186119972198924312345332205057146122291831584927451151232202112119153207311216322223911416519910418521922942207137581298116121026239145822332542191591112231172091382325315754169591901020013481482481292134254111546318740423322116124633072110160200251480125601781372341951424042042079620511242219159972416516475102342291993322511421613001611214071119106135135642219251311506425841291022612218131812930641321619211023826401141056210970361370140112336633156597189128233167225202449152644113519125010157192411689312010152253135129682167511412132132619110711774152057117231219141851211281462231519612763152321916178100782222041452338071147111181618315618340217191184237162245173214801532511049813153411330117197240106162710625274247478612264221571251667174100013624517075582447317895173246387117421324978160716961601061694363113151782331221893172012082411142471591352083170125224401657621872446619710820324720217021313612913818913920311827206172941992172269361361299113651462321521578942051902132022476714450187188210117191172541361861586012321024074181175126111136337234196319910117887160191234216170139219230212157487018602361371236641272361991744691098320991194241221171142173204219411079612923990871441012161631104423097119204119313763123712720715091901955847741958120325139230211230248155482415324464241481531712197212162901339762007725861131981882302164220351371242412352171222517513093243193238174922355917333631417114216079130183951762817120114012187209241281452481482169218471196732231051416617664243507654207182592151661911929716020811310611253235811210227392696176216105168413224172182832373100192542632032201841772491809575657156252227961941041531071971931971331925814014160147472314423918113225352152252227642101191892411953190213135872281111592151211932301691362345210841993791201948814955251964315149184142150123827658468863236140166172145654010911218823023242202112441434376572168608914564122163318101194516017616865198169215106253187472185415952101219151231208124210172254152812351051155312619224910212522483244249886181578833242022464619419926142271631832391837114695132672251941092009236121814644171621861462361872092436255181198512092371918112620207243127254232194551791351718040641242332182681523423915330882615020218386227531466416811925387124233223117923091111679812417318130120193204217324015810782388167732031901251824468643223211766921341851935663178249180131111396782077240261588820156122010654213122641368924523982551216119271148239174941732146410612722715071100152391311371941021417019518267419282491632332452002161941012222224162135819217819677215982429425045419621384164196153231451717170596212296158140149140226293312296277337126181946022324165466262202311221992110107120168123602185224534182162421061052101238124169140842161612502192008823415317314257592082461621601002351807965161631521812000881211428714015211912632363611911263168331226421313119424402441702325310823248377221441201671648143634133848427521918329131651918720416924612082173489166153391431213114720831361296919381775716222717416117561211311111372188145332111229618287528831541971624941315922826250196206122432414816372162257018223918713413123922417401436224914117743270163211516525515041312273362110021435684953223313714233576458829451937917421561822161291957228487819324421244671982102176770148242226132134661921999221425319310925363160137279114772422002021351044014123240182125208272141761872231551181243189992378138176932508622412611711620614622421219712941612692103138402133611815799250231141051591531991725513989632195398214171119450118115204248220131531482411851132042185730209111161610925214913730208178240539111116826616412420419556517116695657178252952143127213622241423020024974228742263817913623618377611022532537472621815225037219133173113137222224153244169103202103158411591546166206115825419221823912543223247109252222179241123215901182221782441262212022781771134813893671481642148148191551182501731692351117615641562010910415516277491610821014420521624224052203196138673278771101971982091078613410345111721318052361098584182228142154983126702551912441161325147177229892022521317717817816122228322541384015313713915924980771301918491081424423117271192103232261711652161372712212844198183522619542261651911448227521224462230731783021776203128222106127102135681981711738224825538141721627210622136120524491961701911442321174215371392081849325011411717424506923695213325221521323732717351621827421798172471771211966139208282351442813524010818313624215961193923910117113171254244771942381093371118120292232331169815121324161166199246152302171091221001352412091751411902532431701912754582492318523119089851762191842261288925317203246192149316710812278892471561802345797213253173691991714723034317011946172218105801811239721330195186672032187926143225822016924712522030250168452288110720024722114579123162302477062842911715881184234120358315233253231120298312511784255341821892252242512271931527132092086382064572130256112810519025585123628876223722241911849311919189925557147946722021122175558410916716225320412219420857247581952083292314523913023618321477143913235915123989881901076524914224916522320416921918312018821622923112941122190160106101492002541671291961075312618171862291091551152192121212511518430929019012781233238519759230211091591472552057169187230245230217126167122238242221531155792615215761104151872112011616520219100153168242146416527380216210104165251112169112092441113171661692401287419984247211932321241351421391821732311721281051604124281751487031181281822546610320524464137224227882501471741522411142072229225124111447112712476313448158116199662522444406447179229164127223159248244623613923170721775921519024611769110655692423654016624318220388821961921692552312912817524914057204393128708223918371192154196422238116123025478316391441914519621678374247452101891711937124431991651782439014144109317387619515524234191811904017324323510736131998239199193220164722114511959194174535116228217228239941122382351575154623746112188209283414512920419850162483162113181198236116043107852511282257612716121945193817321822743718595115201142106239431491464736628873102772395694693314818718315749995916372341421744022057531261608017191767218121916611284264914823688321344221610988190111113215527233114622175178136309069218852422917421573213516729315110897241271312924721835164171149210048581211221794982429461512092013167777514444121810315218711594249225229672293014325122612860971221773618279718144137710345741444190176109246217127126315417358188289415623851541011961294199151164193231250582020018918281441511218213872274341121117205221214112257917212412828196234142175301712446623023322158193181832501919815669482281101551551833155831151085222251933192436723411713531881271801942371141812352407417355233152172472291941961181645797817641524792178659620314421760219193661961281953221601921298392137177163247185178251162761821311179517823320118122956129112495720018222914820114158191159145148253241151432201711446412204917510015165225142552192302132894498823212418120223174165558219123714010122255115462542336724275136124522536512316411224614514967371101311971745639371433135114997174220104218211222567811377217254371652512219525323212919422169818712681422381527122624014727181121581682411312541711545111589720217917616134151187205161250161147215214202118562451356224913521112022024818662352073122912651187226224506851964713811356149244239188100911232041361726818016852522916211414118141176228816515212418518099238641691712424311345416486120724419220216876962611811919215817121215923519131721881041743917215617420186312395529252979822464758160319223022713678284024262172451282271498182197190881738196281831181291271881342718221112264190160255146306491926715413420918901891644153715860512422521824931811942122391081652061498107211122128810753194149311842039668248134139145581562247535841911130351882996180192631422351212255114594713611316169776164602252391211706225411114115612610734107163666641763085252385217258897661861701956121516737721660932192724613649878582511121639780501044014632587182214175207118238244170911707520484207120182146869271419811456781381451641627212248200103237314623011961322321721522232232212547521632983272705711135537461476212122224125151168113190155665243186168233121320624314510314869146765710576596112601781963264905713612215401881582143246129168171107167644321315959227931511762320420815619410042113252964118914419196175251901922509819341168814068128231116251941512235515817913465412202001722162128241118220785620068014023514199215241190581701682310427809129179221251621157415361281822231781520236182172361262074121234971633183164111117200216106145176105101120385096161952200187564010189721868522610216714020745226542163612518834362538551207371201110579518517525316311524623910983183441072387622162481657164193196239217514315145220101126158164771926122278118128179122240324925117112222420523124519258165721412437253133208397891347897179126103562352291212031561942919521512019611024278248196611021637122010221914417212121411111741161212232042359351175151151217191178204225451924755776122218022611765846722175417018831481261072341301056164185214212402521631602482274220121491653023710121619222179184181203962382081222113817860521251011002226117129127342541602441929518015722433537171377818551137952036319158142812161771973316242302512252499756683249556614516772824813716785234102278920925219249135163218544919953506731197919449208016813037837512024021963625412816710513762165719615969142146200311211383020835221492002541533020823731749718413846898218685249823859511222242231103120068151249814724517721175147184217441221311012127025115277214975721419341783316118215886861421792271478725524315916224723712631882112312167815122718710919122110911310814324924112515016724689157222109113102135217217237166231181522123649175601082111142021772511882357219023121318159235165190557412511015125199215139611994657245157182234571012221132201842412082421541251391712472654308922212322222610618521922170255135451931432186631119133632321018722130116163855823722023484125129581004996652344616915815115424824632169113159549325112611916623094255156611312580312552235116233911051152154251722172432512503923478155681582271781201532183321832181312391801359417324123818896117175531162427020624712517711267197158133211871374183205452491227821122521551711241322222089101007510110920220713173224117247692192106117816149174250452171098000125243811935531211101558318621916023322810616681122467423021123823219334199182179102195322214358352083215106124174861231776924160158479018115718323243176714980814358341261288971116179126246228173245124221111551997631616477117231232186100559223462396661043291115461121024117787421115923988119116852291291652451991405820690331225024228481181222432812224228186165115142207195206104153127831172246521112471327178728713561839329224274071552323230682817557182101011629783113190235791441906416204642262139019119814716648101245209149771672052161755844253401618152208249206249413001281161012421502095232166238911631541631715846216128161792512266831401651302391199067382342531981706125113829914688521575317359181186244208982482302262465752282181452117323172174212250910516916691698931753928105316412923224132512211722921812663161433007927781747018160184842531802351201335948138241551771771145520130122081722453717958206911401491877914379718326691520172303053158120215194234195432341432621330948917711949261601441351265118324611602122712916510472184147172249105401332462232140234471146205714368239161142154781531421501237420485122222107112313913776254214319593113104251758911310012120919069232129178672032421182061911761091471208972130239669916071662522844115671214462231831373323121218864118011910013217019294160811491001238193891162007972196145212187173972285791561682451472461294321790150181200421403619767584688197320157168130174232107117254681492271511901531413018424420513510172213150566323813715818815625416035188243146117871741411681754215213101721412114011927461131661281282511316978722205253801786422889185228139881534325110072491941012322371741398610010741872542162021543520310614471716117818824113281219892432461792301731032041669323173155791533224640227633314717018817014464521662151921632409425017917211129361685818414060341671018220731871931162281802044254154254176431862331482520676943292081894040142224931681041609218622214912314692833210150986625040253416123872161241528191240245712368018416424911060243102671626160238168812518920314518247155245129501111932135314755557694912479912721023719822420982247158752461322317446218101144251245236188111230942502618553717511059111371011033685552322133091133222198139136155528992149381391379025520267203173919623118113219179161758098642441921431201542501231667192107216263261754915288127107249238194169124167161106118323456116165251123174331241825314835335264642011122552101765212146230248154175561999720537161411605412222414125611601861462031672444724464214148302241791324924117133185231249202220133612924141942271363328016016791581011819178235169213831226471245165233246120813381848210727641358368210627519865218164111338812666693112170176133661162279158223934179156545013810513044957484451465519516324024722317311825417316927172195219119023956133188237367742401831521634495202599818612512884149238551061879122308620913414721625013121254170149641731013861133230122199225192132521034131418035215168246129175861712546619210551062283485193157416116021281432303991112682351660142121235010416126600129459781980597624412816516442498425313310221871003481222116170125641733664174174922421948482173611061989120518224413910722821013111081449412924817513620421991299313717615418821166231197167244128267017848023743888118965012925122484408310736941211619024796174791562663176209113205151687317128020440102173238652061908665186245066371462327104149247341701701577773493191136452122541701332475914658059213682241522491857724239388157203131211222493844137489204163125226140163114208315024127237821821769321150233156249133219154175921791911002351482491972421761210019823521419010816521712917317320420244154165231172165214111218249451378157231211311981767321722614635612241131761271031273324412824315447157163091551726717945189146942522081202141721512302618518713517324113921720152240137718814295236102215176286713912824715118512418422024522914320410218918811221443134191253192228205229206239882498052761471002520841417819825520124723204220208320121202216715621574296022417449931001008022620213612171164141118233159329441855266910217582032281411501332190153228171781319932111801157823518962252115382031412427280214170161146167833021723416219919114181487250183175144149209504414621591165110162568311413712232351861212547724115314910612679244032142236164224224105810811428169160245128150205207233125121207190180151641383080146224171952321292332461213957218815411997171149192191951517635141961627182218101127971572501531212361021472401172301723523698214911331011522517121925012318525015513370462551001392051592544122419211025535123220143237113252118143221241221861992478815821811112523812820519725354231199194220979417620317810817585203731511616022317766191137182559121129151066630212463105136248190572347367248195218224592119011942125110149123141231592451591797024522888214112112105231411471616021998465189223147142176397228919042228110103232615244828522327249184471012316411830202200995720020651227103111196131233234252153138252169159207245262502123515921812121631165773124923538221102248253222176251189161216611811572542511819111121812219531252242137181238237146101137594688612368159156200126218215314823980185103972453019521017523114812651167237219213119106338715038782381352112132481295217722521220116114871298112853017601624919221455312291112511681041992201702531395920615413114363244199791421672555215281995230552342031791874766432426591243422811011524017319864112711226220561285611991668014631537202180578717938199165123146989821213611627321415219163192204821963142114185942356386230137562543243161181851467712239183134115101961451062336121013116512418397252512021647203158691011232316310315479154941742401862212822021311618219162150254164119901523653132108164462551921880212533229150742201602071291821522234231432452547918411392245102153881951501238181511711251547915519515448163214187162022587774167296717346248891189620164177111061351679511184142652041072451210103299425741882172056802282161132091782491728924518343208051232322823715413922923915887184215321271836530332399480126120121951772031632222163116715113151851443716271182043137136152512321293161920831041224464253935169165174150595177209312276106185244576512322072081171832621609323172565657146605715612418741176254219856918723015123714925466101123231454136230721695912087123100101249190197122124973205621602011421919027117961631056811416220631128274014618229841968464987149244183916611872343543431446351971641301212312522561262071941941899818812022594195921162062385291851821518699126681721421652012413124112180122887188127113238206121220165107169133254734319481169161371137352112362369064941169218065174200661232531373578232201431495015821191663551574865023110151185146242183205189240207311482365423618510011918954224123121163121241519837206103255892302356024716724724211920669060236138196141239180455157541932501029100221605021516182252260882363622112616316272813513915741411572314518747903253210167174204173471271706512811198855424592178105571092101147438217196218212925888227137213241019780125104105251571151165687222110102501614714234121189214183234208821044185861802116487186231125517318412116917925520718752192311191581832301492292217121169292995138815149186141150123160101128411618424413931991239819942189208177122161331641705025133127220184245172516218325413211320520914924812423824618523613913830207120216331012513772262223382409379282181603921519024916425148318812333201782442444485249144253551154612661271657773651732336611943910015821695232361953381063614121232252073116167116711751621891341701911441229225159140108213223516196165582362341021182170186111224230123151240145683287808551521441731671991282499011513923525017510850182642551705047121113136522381794720523341186209073192651742496925119219116275010119072801551523114620811614472622371068916221311357322209351586013313117198178121139156119411134166772331105316421024019154231535346112478820775653315666781128091221746139721592272945146192431464514026145562202061412009301701714213730811332161927498248190915622047117204102501431447041822181321618518713618519497613915021510837611371431381822442401212012202439315148932071388351382023619866192431631789729210199117253311611211368924419215447735812838211547373225902131111733215725842864731627139195851763856238144452213320414754146176188411141101211202181788048462136012629122224321520887149202341101627281006417621038325313313621220324121620122421520713215698215197683022720983122642007317717213113090242581221412262212070476477175238682441362461403014419061202137211771283631272562973635173551741429319962199121101962093232989122150161711302021206891472488322414310345230174232282421390518117919032170288933112142301441703118471144861548137161300253591079583061176208632094223399232020175153242137692206136127736450170023493132254137206177752498423512432162454367502821118334948151236471571791261112817924631514837668154073224247182671929124612647153186190235242441826722412790225240161911321151823425111615310915024424918321971022440215391081781320717724579123233352118917912624320271382149492221452351301918224819710812772182343015499104238255214661871911231032131721912531042141722471032051221112141112302522211082115520410018332032122051581552558179912819520724513738247954811512522345212841412141331884924316413134651789471011934848971619522020224011613919613141531681662074519559136108521378918782173193135966720814620618440241151891221672450263016336178165448366165177462511151991564716420178177254234562491912411581072161234697196240125183224552925321665228243175128111361492272621010611177342061981131071517110024131671396417824175128191173681022207324464112427374659959163720012223702321241106376126217621442501072373901525219921871362251403017695243133772181033820927209320325382231856927249198155249699112118713539122126246691921272511275110255381082312151581351181851572162392522371102191912310978238179621852232342041262352432511084623618220422110985188207182242160932471212391371382401558522518342672388456317213125842313430248174412341872302001677722579266615954134621091412521020122183198239114161752238920315016317115414317410462182162227148241229182312192451901521813031118133632361412702442074812515636906023413912258242431164824623302192418279250163491451098145831837620524924311155652432525015912925471320951246112322341531051212402201909219293253171525119531202861552221512724020412022047630232241618390131250102362192078960145891721120933569206901514810915591190125942511132274161481525857121451031381814433197169143591631931665920516112420327143278729928619011181249621951701317521878153161424824835989652245231193682321913921516623319610664231102131255141122631821921322220839911692544411518722124248125951561661271101242083013415614457828422316124111414327117110610097214228229442161071622181834720712027461182941113235203147149773173951481802391231916082208131869158423891821771031452484170841381678417511919612241191922334545387178116551349523412913332351221605920725494911961531376314202192131167253914325122616519119322912189104177238192551684310216420416324615276188813319234220174633726152613418172116176222573117212082511015622499824186130143111546191901882306419468157951995203234352032021444426117616811231418816096207252130611113816624669910473801221127311114519177146200128861511017019713725611762196426582464723820618169102767872127161166831982321221624884442355524523562442321631661442321482159352162005241802271881971494247105183257318521128212112124854921639189186201253197232672122618513112314495252108571011421112321102235019720823813319228220118163331698325322566941591801091471052512211581824981105220184209161327840631762013021240636915316212222237514422219186715922184915133208149111255160592502511613636193152001612092123925324116462395220142112146177179901520014250221218163195207219621433634119421547314324720631911782309014131175015220212813520389901502023216916682899710924719421816317118647218221106818116307318721324921231082131856312511210521923611951278018412394791902912222423114522818717333136129202195752351421756613753158502303921919814717127142271451521481451502111661441252351058324411519518317115478174110621014411212711669205225101117199861141321799292115100572511891214097183107181625569176582142174213250141515616322081612502405029297622331381624834917421524916219164125641417752117800025524473686584250643240581302182102141031927533912047149155106372421455224401687741144198129741751341919893151108239181711242151512401956421023723080136951702552552521611181146018824116441130225741812391571501761871092251681871557719372223202672037222820385621462001951697918698689240239692051017625191902292191181981782502082425024416426121162913221713824831461281301311741682512142329015763222242164391423313695213289169209147241935169147552156316532951782032234931491922451042112410218419419253210124687245076207215125230511525122381711621017633159103131302111684213922161101164317214112064126415122290401839612416722917128191221185582115104130227198113571321692312322614792172048427671291241523369173722835170230237547918146831171232337424200204631242421214697242322261763264901288918315232216106116321972084810817151861591312918816210020760153862132354519909823817823843452181352082262011789510250165175291821375522926110228691205215465170162227557621522720218488112971821035222017519266186235188108233253178133151244742159313421219473832919921344110620612322657379921241631281371391511321661191321884460193748207391424592208144562321518183237370491946416424444612264538301841627201819626184137301114239148302002491141022521289012331254117032442053497189140391181324916530248203241317659493621643240132472419917323611639122128183641531046116089868323145114012059146206117221312098472130579449287179230250196731877123023145616572148308202263921773106157236188175304012238235174225136443252232523716708104131213801058454808201233227132418265581331751991752405817114879121318212058185382541091079732212141787126232261905858714924723929210183581641251022218914491764440851821931057017217547331995013832118253234240441512442071572101821621015650621031071491842011923930130711516812941261112182491912272424814267192239192981114389115862071542451981279011011114742237313661181502152061160226243188302482452461107825238251144442721521615122392621072142231722416222914219065105225136129232141145493112312216518825516121717219124996214172555743989621418717825521025287865666255150105155935525219312123715156603713322664201668417915723434168248219421172431621442281851904962542411131812252226208144198492171182339192115190180372512106317978254216565819910018610229151322311201381951803014424119614821941674822613213217218736185174251202137127748991157215124225152253185812042624418220069414462478918419010023324618283192108239726021450101511331511302046211014012032209163601191491141522924501731662128241921361517144152601677522051791572372116315514619697126209622401711222241271671912081803024822038243115187172471098263711515270172912282259219210119165103132109104172107152877418225125524725523186115123228129189651991525030223239246237110187227123236782361776218520723422862139511234546236177188184203601271436924933219186111291231141253817019423821271222169918993211201915424897125200163134176199141971432667315446310612126210282421645724810575402461606222486149215229341671581152301731998753308913442232621116294234114179222247110752241571501922191736518321921216467981295591317455251775225022210424119137752242202521712372452225591741535461243207952162432325223524625293872612548181207222431902182366120934598726189174521211771892202245794239629423949862316290235129141212184158718717729170114291701162944115150731220791813695206248174592501141699124594195170157621219230851101592231182122328614917580142262523953244195201210107104565248304011218622124122522415713512938106124391061241282481871416522317111773391112287694781272161749822342193116941762817511219181231119189206143203468712216047020316414310720936200128712917183263962081502113822478249254692292511343154616961178162245180249801454310682265115824921164184214159239216118214178227156216190921751122424814325313740132234195431021323487229200021362329896215194821013721019373221982239192142142115415583439175100107610157163732197162189134010122220624921135151151501862014423687179101421492412443114558227501013363127281501172114234106214189142200246755424913612911110213132241204136151298826651388513587647528188401171501152778154762121021172242142166188261482096991491581731032052021546462181070247107676961972512398106127971933031205511121525217867752511389322496731247613412879233129252157243173624209232205183255105561051143423578107814128302322061792371861003657413524511150291702075819814262136245231219352121820715495173246158210377650107241238516512313324517724617915013832831802252774215652124187186120215661441485012514647221185118323818622916716120208176237156212206951461341641922294223916683102341538493190842311110174165624717124412813611821068123410470153620372982093105792501925075921841219364118162001483080146128015923562363694836110553822341422322599143581622414918216271986915322910324409615419177118120412241491191591682466760224147149715141961578317610730220127189222154948121372271131198411112912519716137197123137424727150318813254168581781218971842272402451998634128058825318317123414217320819811319609815510722820020921176126791744523225518451242711415613013752149225614114799105631419622310914190892392231511111353022412213022981222241671931961912083178142248193229117718716123212014520237524318320569211441074034742117913120118315567234143271512379550902381211811981752382481061522511232135914225226461154763184844597549118021446891539718820225111311912106110319824024023971881203100247961374334651229716111617412025414910830681063524213791716631725012778121363016731281101612244061176250909301131202202917115514617014217296139234166111236116175244128441457094956819123791609222524524310458381091379915390560211312471249234243252305120755158207191212241171101191208623918613440782119461011719129158135244352078621923015525419325114725519439289813418516514289247578136446853996126162161202141241915619015715223212916924612558721376249511220227511696514420718212912716221225474175241196149106180381577828100135215137179121242198247221661032440219191210315364617516943322172311362615524108150180193117253311441013611718489719491281712722610820157141234322546894391714394261582501291232481353014548710819339159156324410211251707410784193605337206602232485722217722419713530812391851321892292444239432538213212913627417384137161102110244020413196325224175841172311243716322183314024912691941811372712115015820772301616494255151925515697161224332371032187216170251561662511120523212131419417535246156307289171451904444117133210318612512884149232217251190233721507718115188237244418620621821548488991823316679172164191802049094281261302552001019834986410817021015788171398171243262223424518429732431666720811176220806219218616014621431701912082431220638112517585152517623328210223315019142115479758202962352072001571498110716276862327175185133135114138203112481854950155641841341201064614887831462161011519113136352071308323710025219223146217951861752491318519416614916125752521478713310117414207942514697157176217381131799921810321491557634214184102124129301127225312133192214622452111656516912272496417566246127131172874301363088102592351311491271871941936012613124723025574254242130216140303221721781122322401171071918720418913621924217676942145723115142742212173710811810203113246741262432921219775216239222921782182122111945820021621220721458108193711501791021893524655312061542451502187118188572355531253102145213282394013921220518611812866141212167188160126241120931062531125150821281952042431391651884797389181561402071721382041767222096151254169772022219920447236210625114121964166172142831572172121041058414114619966207184193139230110201322345220941781163964303922517118274251204799311419011265271722551381621352421241932042532391402894177114127217202245371115187173811718492542438816712766217681714797553872643114616124892508935561338241140912261022301701527267220472450101132159236207241126166710225011124122069233671818823517219919798510317622970101255182301922238138130172125216382272478610595903812711026243177891966316716824777189140124989322751314735541242625216712714261176471022551101592277189792361195918220324619630251227187109142239182561902192442049424324312344462365245216103891172121902331802036481192245154136591171451191706720831191072239213661168111212122424618441236731152161191732252231831356311014122208224255168492401138320811910916121620542175145225178961161919723712969189234411121424960108151252083011419135244126872161891056761408518715148582461492162472221917921321495234216952262083910222383108215931082158510013911722217116209011922218768914514162254191103220222419121723342178238441782344018019621811442182422052172341572146017915092211150751522491405395501071861042181161931802291888924310519244192791319232129239123983842611072464617021862191226155185882111931012152026016417918422663233183321420054245659119614118664873200105362532316524847891341531438252220159321830202198940141177114247198197020516776641271001921731340184688412923414346453771291142532134472229741493919616965920620522362167112231921181001272191561781251391601772062435419213190791869816415398721501961066310751841121073192411931392252121292103652071112302010815587188991292140502151411522181272146217616618024717320910413339188162251116123783122023884532081610322920921672293014325022668614016516141903177193721831591992101010436413430184182230126119116711589322217451855923121130152502408416019156234205119228416716517820285205491531315133027611451181589101731391314615189217324110919196547227410719225266208127255661053124816510561192227148308821487226242184639458204722453925010013192521657841157119716110118951463143387994207190211381221602382481702067521415723173584788245229217245230218118951461451691861110217209113941861631169318023486203632052321292191411298312264213253991091034410012224814518015972411472042012352352001414214015018687319019310116391601212332352172243523324015744114391079653159491354173124216238781072412786234202123161475220254147171861382361191631014467162710209318723023236851226445531331824873242402532339622612826631283018418012546558628928611511685195999196702195720320613950971441699130138247136306447931692422491717568221318024720817621031532111226412210105482051592181591517634471718255176188381994772103161247245224125173113451392261281218722222421511619816410015918611811217218160226240182446423781136926412710272381033167122121274312201361671048429906616619224421017311052524425516163238105792441311824811422878115162102507206210123411461991758412234237200184251173161147195732206920921112212816823474119161882311462942122180212361195919225221113515629461182517323026206188221289025117317137518223813712410962109142393592173821524611214165251221312212101983441105722181381862717632521051222261663161819311684424846167481652741176252318521120130164175571881462482243669200182291118025066119145206581691374816625318911418962169365923420618116752201814713117811616082362351071592441961189218081357102244192146145741593171210498963123609117112810312296117236261612221521086216523667132165431841042798617895481155712910893159205199911531991231743322019719921969213231241193384190232485801932225176667721720110120319421192205011724392159241901519614125402351114831842440160046835102112924225617524917220624514293224159562155910219095441616523726235813264971861992302401050811862623560163752103199112611425491802051285063371822382725572569078160106814420880261081374520491921417517660509320719720175113190130235249185365211785116543266156971136623017123917824643167288983221220178572001909338811491651035720019770178150664216971220163240169129971821069649734524814148017217012224283232651413464153721912353251628411419518110893214253118637100253136183157130954869108120112231687824983731732165613225313384207251446932622299916216424408915018544441091051041708925212221118418123920112098162397342178801501415223425232321921821020811619415320938322713725319871991745193185146203417216725044201721341514480149941761451161181676321733221184931193991201481401822424817518015168117154731324316477242101062523212101149186133841301741002051535213040172516271130176229468010873104581061417131032402262101761221320972381809320148242129123478402544135462442429719016252123783311159426248197913811011436112449917110924219970225897521461161911022014518913813619710996103897215445761562411856725010320615395883911070632163612750207432301174322322389202250317020714321517122158111218732231612479319422536191301252501033027254145215391197212941619623717114615718424920182888214204296917750441955724311518317222312310012723315324913391252382471362855223228183223558212222453105424815555103253391842551321338128696251222223721919321983218962142351792542461311919510412920055792171681131569822471791817825141191572372191128323813221221324817418354188101190119180129952202101610589501399123112894205249210101205239109826317774254216606523012369155123218415930220162237583183237693955211512320122012597641301542613621018921310520523182105911721475559102125238177241312401914839110359019419823521107207215108189951792419815911413217623131151117421061121471212261342134910720011315615619922542148111451301061651410494552014417016811021395232217248129256119225515619120832205196115239414195161243117192823243222347045925456116021435211778868732446422814030216106153250169892521021392167715014523512286722394105191220197215455858362012311791752182111143621764723619230175992512211422391195819021523013215221313722110219911926159222101114110167233133291981011351082194612224521592173137184219281231834924211810924017310625521921312618317112517759532541526212723213615228761242182612219122225597992247215893215105147137822153917316122311913263104102843114236561098212311211325314516518915116076143123456515586631245686023714319021525122179197255901632397214943741605120717035207178512232623542176193212142236119228811960103237249862375202242173254242248127196228174661858175139174341551101651018610127971579886157521817218111711218715211712315885871581411721331161988419815922071532878158168240172219191184122167652531581978559122342464630471122548190243831338665237172138048172632252012081461242065762158169106199209010713210452028322415192165233164113207371551458223406858873203128167768683225111610926621021521476142166941712455611931571781891921866522520612169187230232371548717699782251493295918312024766152108184216853619314923631250100230211142115214173167205187462169217524521515715461115720324646150235118193619721923121528882141212141706321597168192185792138819517515669151926121313587121511862332507834175219764210146253139139246262302371569511711619780521442482117217023815820686113103267112624741981641272066824613117423220692599317745321906716688186192921685361301412243332882471632086113319238217162101001781631801351572092321325810412314365254142185185592302303314124664144139107191932131202181642411801051954114717016320317455187132421192053914622913515024515118460691431767967518315212248331201096214611175208371512462305925276154791002211059110611071988325010236710291232131485320711125124323771028250242237812100348216124514023321310647252064915442122224248952321203105169198271696138177122524146704211211220200315120171210682301782820312841175213249631502712124116816922286591671021951882402311436419520267203907815524723581454467101238010424119069100139194156157238124135716150112130124145122675251126481454443611762281941822171221010561813920722511811588251184592307311128233223147103791021139691871651071232331906915117118814920285227100134133891591113112877243190153171169841951805422110412820316166492241842302001382091142477291711991671773176910625448144112187571843920717424220821017825313972252198147198117199869814119987551595210561109134201154187231722192078911416424113211325317785531351518731908612310069231121171235181126631462031515119123914118786227598223421812520913443185160225248106110284011618622120204536315381612012395252232262559419112154231818311216530791729978241185812364222253216159248180592467416511923714514915623720311514849571511792381816932104652378124464141311302341141652471431317322324519722311010169621781819791136207837210122513310116859105106163152168731111454802517910690224583588620125516376216127212171332633121241371960813410921720926020716959106841272047214386421561062191538712719424812267321931262231591366641514831889011712012195129147116255187190246491222241301412442382109652321291461257570431241262678255137156253856104099160191218145142612241752342491472041181421191489410841954359511985524130414216522692245344877881915641861302165289102232149194116831901051945824616721878414317248134111481597993812471661252248415717721431071904485207998913064209112449719424196102001626989213033913615177210981282161064919219021432208205965818280915345181721185146283912247860731314224325011118742052411414978881873442115174791802221220133782245013922814123020127216114177302267680174235101453911828178213228173235164118831632124798122135219734321319195131242342282131738651321581092522221151321122713410112121212025243581994361745103161432322526134541641669511725165121922823073155632421402541411374312264213951381860112531961393011214824913318413991208211639176216944127621421315010824910518191193561102531874616196147238169162234248387122517831446910496141482112624412876134163107220161246213502232326110132225166114922516824416257175236137232342057312118196101189172126133186517792135238661472401182082717324719316625611605977241154150211211652022351717333137659749316865210624997174228141128126238149218981054320021421198232221774016963230149731946123199252532271631341324818916115015131218223117101946211611931715823801761021262301442461379323419910217757203130146245401302293323375213194911321885652205324813716420810917174402192481338106192241138144244119236295711588249190105357515818942171282481912352418840482175824999135140173788919111922515016477164632329131146230641671813883422323325113016920321924625438171532381051591211671091320024812564218861912487722222521718246171751891771122141722232061542451388252557310995867194253271451186179144214625212412521417211925512619018552216410811486235145233242693081821442502002271691621679021018020714710114817224919017772154217238225431942112083708189214201155281796211591247165991501722081401429029149991294213692195155190982381658710022724595502451202171224312421319420320863201621251711152461511450792353110983183441177551379371230581742491466014625524146519117915124219336376914613046578204245138180722209620512715518079801717119417986132105242230191208582207328126131881861661797221876941391862482132413191108316414435182103244192234216117202584375713025511518921432502222312446413023420339771572321110161164801721003667184248271138312296432017512215419917318114291111291535322321424714119738139172109936718913098109190252712071571876615236243591882232292289715114772371422391795617722322622862179831237779238525818922123225214227188931662451679213443194174214692211061371852212611717949228118992082376255187131261192341241102131201791892232322471258721622811219414718220821911719055171189642552021896452231741889222625217657232187142240591312699377810916714143246259617339871431515822310524412721217246931111481729422029241160592521101032001412225513761591377020411920224816914292107242189166187250180232229192126221254186471616615234227512512072192122371732541785489751922054111842531482217185209281121892017917221712712271182196138729411110184822351151634124090189952511211124938111562298617395243145149232129134189751061182686239522366199125183628819815140101732232538121349125562459712322817313432813715570152128230831811253201795816219974221592068952157886184228116183572486512321620561278151175012001481888222919752367275194229140272451269292121961132411742498010064241238249165123137424746204223625923915521714412930248816521584818586227393649150113191532812120812686186122016516255154629423889125104575291281502399384180109942111831981832352191235146168622381402382031192074222366418241122412121768169424812223137912574483163241783241140851209199232170119132201541051802014123317815202119921768625391100601012093023317863531033715474136638323415821771023235351051813010445925771141634982281301311118213910186248245236252157111061421732341861001195101219281015922110610129110655218985934217313197174122138361575616024968181175162240249403181516223420711920813562287520341147218163203225254209828736193801777611857823483190142159179639038195139101186275723576150772121202031042392092129113116271186121139637105171147697290391719622319215121193166100183971371061443319318518463223811982241702291748515242844025294115882073759226914178371311361212538116316134151597733152191972178237741491510575214168106105105250232205119681012531721368327180749016112746126354512231255244337345362237149924549182873192172131591004612917637642236119243144167228139180125201248129187741532622484226198912402262125115114477211228186015135206282011117222232292461292231134111141717522013317320917116325152183458206901454716488231571071301735918617025421610684832155912444520121312520917425317210123510513915083501661501392714315520023676109145178128610521318549222613461715910219689827611620054161252154195431370232231721514813517011914523225197135823917025317014467121640714720230656873191473335122446818987171124116302211119111589782117962171041695930691484687120241349220479210332323157941031602422082421451141522015220221294515713011616620018696122127202219137247135828132164192571811232145137211931464416494711418749241812075336123158120251156188295022317121436010116821214123116212020931041232514212711525315373201002019516571001842061903799229222147195233632271591511277715240411941088410718769242381528827311231824849959253218791861851951721288198621592252479267185128203644824562243912296190952361621614519176217614821618415323424763207392301192341391115523474107936324717813321591146519120831388624572682219163413516145825410884313639230208185210310722211412212967719613615823844132331856178681411208111202237236241991759314272722518824118616601452285647142531624315611949518011612719945196404619960121351751631866624182162227618214105850571719173341841452403753841971708628215917063911213829140351102725419217194681981610998756013745122643714284228191231261414146141646232128121441818100211302166910611739193775319917231841732557179196141961018130439515230211765819524466575412616448591115953371617918060164202202331282031483014421796148308735121611762389310324412852471614814643216910022315514821432541666714481761422341563514712316271284513034134240192519201172331677537183905024955111924419292159241815613234536054253325113419373164337810414925017721032102503312247761536163724042169316714016155502375468131187244141197310324116420516461832438371824680331991142168911642111720418342581031821035212024717818539146961701511911732555914129111641051821901112499173146551851001272381482491539320219986927150716744117489251541855240217302111751422014913791191506020338249191991401732068919111920525421050110195170208121391841316620910710318713219110623413736120911981872183318024812515148227232287121293134761051383048149149689144432411519850163723615823312911928276163178615062247782552206324324722273911242265418651652059510851235111161252872552112231881661001921125523311194253187191690252782524414323320666902718854235239621221932082341251838013984252013275227216244618960342910237155405624851141722556988167195214235123192236811715518520624613648142206541419118758421173961531802091371322021505517876218188585819960126195170136172119281301803032133209374912014721758812045244791803919720077181110131109234167139314623716514481001478120490737188200206255852002511851531339517924623023316610620683717838253831792481317116321517480456618440158160291984211713923216042489391962407681128191214621926718519713315216412719821169151321641623314516910841862082101196100749252692510174168219724055114147219913221039122321141066017715715422020444118173772526171136204571501581754592185216218198592024750217233191252183128189123352461637246137305611319223824822241611121221752172332211981031182415722118242111183105203121175137134184123157417925021023918119994175111862131612016733240126992241896255251141115911301581805632378249141782398187832315915210751148103123185212185237132812272091011952491181361351991091611832341241987415721920724095219621618582249255103237631602431861776179148118851516757103918936197156115206572311565169201178212917022215723824710216618716723124523519012511157432311561919736137841022068114816815617944912391831291431482361701582381212351132371331331311311311791771291952392557541281605910992401291993251436503024620323422559612015558226175203222157341221291931965013123523485118912011998452392436618622181251682221821224013622221842032391581541657616143233102103226141142132113137151176619447114120781242137180198931117918821028123179612337010712419930870223175226259524616843109961431992412291661172555824920011921127127526218222010816421895206396199321065747632255515419712341306412930151125949656132203238189158610154291741411712051431731832417224159119681501195623091095142531349458301132496822821620920814525019225115716912210698160218167971651377611252561172392236258240253228166117230122371012119024367631299010020080195232171632301281751269159435291309301313624016424018550343291921531407347236220817819724181103134130236101014511513519526215888014861187121588819011541252101642382182393732524321319064632051281520010200113523511149642812599812258815317269222231165552431058810111872185236314310025534208143148477664226138722430148181222022494119198112125240225213102224305236220247221100201601449110920121211691941331010571233620143214223910616166211122431951841724812019242624819581488343167415228891092221231929114214618462231789182231110215147155108186246186659100211250106315831249617619818311919110323130215158253178114128129274250332239117396622570139254225252192125140172113158409688195036515810245823921962409923517270276615940234242203961901722087912501289510571881612120073139312233291148202178414965131218203399926215911292248522116710562128229510174139721156025202191116346251200214159638167162812501524922123514667390145176597677101409822324783198231710215711112151183805205241207412658861424310822223482246176821011706763601852091508039106181495313784228113472321914252771116019022226124562234171207715324020799235173411644126102139352133619516977118164104122192931721641252251205119131186416522519415520513712410777107173962218802181817051192120235115139194175168695318884172457783132261696225363205326822521429461839014741251662415121713410302461002212357287620716724916821496672057200175248644937115235240745115321811571441751661131572138093162051932352321745213888912015623929393200104922983532536119441602282211376251118522261982511728193721722359601322181692537022969167182589261291757443188168118122611851971588018233623439752423343190167251012422422020920095711381451679914966921222351621601601881601216124216735252246388651051471958295118104179261261221991611823020715822153198021824214766817673471311514482548613971386423414879611254505744141958019316930191153311281512829255142152322491292361532091947166132165153196229194583231481371342011461192001748212464128181861865616652212124023614213422813502403220828133324401698724115756712140110012890832056357618823329101157946301142021452532298483646964662181737224018928137421153219289561341097057113138210100643411016716131793231321649949227216286117912336691181176885621043206161317165128981773184460971539258574429249565651552328179223114193184681302302541924831561431767843717523519375662372351549803262234932231201781691493226101132181101188115130151641501715419823826215225461191423711036124642201362192079110623814116148624383219176725720210391741622491286724628222811442287205458021937236213915331128529819121301610160152812378979831072171971391376201467793318091142821134253931123031791761225819711310466206102468156617629151623018012915613025475649617824612820319217019122481965955712131949218203142193111128215189992232411481571242243239120691892291724111396349621572088918006222493248185778213710166145109106572002136018219244582076124383215180422352322191220249129513967138191124325121845173106861201829982185952546624313615611915619422211313724806222425253138994824812010610413410723810364972232104702081929817120571351391424118517970180223678782281252115924220730974777240129210471622021911424125121837186208216572261631532061272481940255143200117012748501226569254100100244210117017516825322811769122228512668112134551402224912521120631620245213160159462348319013215132118161992439313627793715916725215116023720813136312761201974123221199192105225233788917922111621152061741787345113228223662091249530412551944523911561639615782246158119282082552531112141251954521071471041622481281721654625134104246951251023153712312571230208151602031502161028518923727725120838812911210290741192365522035622401411837240822352210078134174722114315177344046240291267522316017124312913672185631160425331201192720874157136398489771871412431297412229128301701727424812470116141432401722401337120198710268229200199165184581891392081547814680196199695721893136264632472225516869118169691585722930412178328936215653195452001731041182101944716225520363199174912718311885240134851269121412011193229190117165203541001332111422114187150219237250209106239143214131079318717135471582061882171582471041762448112722523718218015520592157919722056211251715724694911941951741481359320124721822711015813718612234108176218992241602511572141521996120199712901828815721810422218921923392131631242241181152361651662082069378199214206581902061721231752031971662081231577320017318224821929911918614611018139921071421852182812569757524422923016875106601582401462620019122026352102211518161238749117222461323374122272531911953252255631482412292033410610117913220714712923523711319485681896255581461101171659211175184535106141235220235210185199249113111250211171179159142299557181261021818523719176110252193248216822112502391671831081801911175822510519124216002234060125167612452422412322252186412617965481031825609242111721795818522223020438251214109142931232206425264204238189238250401651619019119013110620768181125131966428157101167154248211912361701271522101761942482407414713414919810318221615710981861184270159976011272124154245216167614818881188131202381881265812616838010111018316660619514213487781985411111550224212101385363761112212262484124118174842446387122229684414411606830743371432522419096232711252172212511891525256771827887251132211313215404047501262617415095651593551911441261902289479102219301191891041811261491562022121761062142322094812923314847548416316410021412072392342091165176128122144435271553215716664216249110711542288725035053170172151132342281059010357383329112422311724922478138226461651937142174542391311512229611898224916855243988318423622484316411518023711658189197150198130122087012213175226722159411920525465213461238203212243321520716824532072051502291011261282471421912532338532021911246023022870218872201325212059294582245217701381685066688359105235312964787419820178116821617368104131431509259212151841981462101321564201512524728240185223163230719614098766425522983177712149012821931691782411715825877735241401520828602012862192104292144755197982321631982242432016768244842511112052331328413220417677321721081141812232710912186812261076184891431726711711675145141186240141721671651801771141221317721915720200128240129245214148134149232183188691655996792485452123180652462151862211501622131661951477819122124720536902222518920711742382492151432132608312214249169145116122455612815811914513590232234240162155457313415498225139149181831211907725417418915810420015112618262132170181239114163165164192161130591091691803813320018106181217405218412514325121351321171171248161250106962207139106419714024138581624213313625149742525122518916213125410221376321251314210711944225391236129254210154231229162262717373559014611011916420216419624156185289822311519212315615762191712317142240165151252582522238963192111631521403136964915212337810162225446324916085611221411041802532062481416423925119910712412115034021420521211815622411120008061121721015114918419124642551247814055191230222416322835116217812111810217218425183154384568156114231146231045193911801229616621521321622591222811041421820269359196187124496422052622391311281201126320710881511471401844373014716813719675206129111241108705779129135156115101175114925157100207254563689157168901611481106204183744356023318913717282752251278121162301772111722275812282153315033565147176232128797824319768475747714777492322091191123152685061501551162161710427432332251121604523024244891219176731711122001543596692372551311281144238402465120122223471144196356497109103102552052521282182242136211171142243118111082147129119125100103161635742101361006962331712223921037122231801051781364417656372407024802041532012014624916421615993671419911518920318116715011657247226249180815013516489362383442618821196511110612664243144962243612733225324651115215155192401201871091981081392282101521820179301692421561911816121490232108901211853165177203152253979621017178333284571462045126200254142872441872405215419851114102100166107206282391942491901971125220322591028421816614857102848919623193744227109351230152712302531931962271917512017517212133379562312522515454219563619558182208512515115518416214361227222117141124952411291512363223112135514120124344922247110719485138221862017412221716521524111912464249117724012915252226236147753139227015012521941841201861231722091131168912987141140945450250195112264144924855741604240123834802104014812824011716363126248202842511191571306314781142022551484713922209147102481245851932610123224342932549924091442421260841471461841555142202114203251212151127356924323721120323751202157115170100164233181812092081082152201215441229194715815931128151847040741611022432195251149125259224587223162691501771332401203148501832261331185711522224113912720551242109191184183124982332018125825721569126224155128131571792312027321023425210512213697215209682171231382077112021246410957741191819153231191227310612612814252276280341240386415521374316011159231206163204143131831211501568621802311029122433106242132304195712438991822225235576248951501871484722522314285981901238615310782214711821483109204195147194255242255156251207223204254105892061542131132358713519275417524222018620299219422152372007423115743281181751762191872041669715791215193200177192587154179175521032212342001252168724818447255651032502372302481551671632391801966123676254165472278111920217323016843199676171221911832171402924612758146253116482271512542442716735591192183189572532162621116167222183206196222109141191212242101892192491965817983155172122246185935830118175352336579234131222180712532520013119018025118913483823824416422023878190213149120171511451122268417825522368207181044920427603958207205174164219234189227187160166322509641812311691081231221916325312619119631200156702302532542041351312172474919764230163129140225122191150237118151142135631492291376911978197119108176111252126230177159767817448111906217110516589199118151107199991262338322713919217817919763433114379325192262287891101202261981534128218245147113215781969262221212451002441095710332225234169152203199354730111350925830121179372251862182424123125417295135242302451001282482721515485255562452322348977107205651531951171178111709018325020302392022081361066615421490143024212717214280151220235726725152641531771142480112741211672001371852457514115555596023854561380137208192121652315144714844254662616007621325016436100160118185920019010518924518519811223699242246043203615815645148221108701321819271002432511151971191331518423316110723213215410048611672481281923261921709221069522271351671881542011239104175702251082296549243240421791791781769111216496351481649250115714249111648316168089827169155417213385165171302222686206146173150212810718615324523824712221614716149253471311857925017931247102222109791342418010811923621723912178296802441672131321432991292122452382472816824614516317210514811588169224102752522011412141061912091031241281341448717174816525020120523036324111981218310762208186221153106106107235651043418032109742032343838103227901812513921578774541292331781988778171197508410599997154169175218239652072392307101212464109244688732351752415520865228428012464108168248192761283812215863181661451741041652481285613161219957276173144235848241542082372071081171485319625525049219416616824071230612020712916781291764422188188511770276665210169325042721512617193501675421714713161436513281967920519514973732362202371934320822291806133334284203109213285263492541731812346323210322484881021680157225384153108154152408288232175131124107112512172341385626234153129150109784822299846152013741411643413819311420113924641599922812522379161231119238243188166142041501463626332171821266253871601222548016419112516717117413621415394218189207759022521010815310163219159431651088732814716815458108912411295641712222617179131204902281782448112714291951927126201988216724801006424812824811149105222401552491131182451525563249192869661151174106167179623814811257169203298241612441401208715716216525213666193106037190312024362013012936023641801042152113220167762022554848176816819922522818325212713015128255132156843621601502551624813858499465791732492192222091541518837167125691056212814664109248040159715242159924940925012081633615294207151045024017017124824419511894117111214732222302452142224121235318160159592311631606824264019224420142131691877392463712418146762004514048331881715445122511721898148233931822164218142439873101852171762551011999664923265187281048411601532614541148641095244025199181502121733517810083109722341525124714722484133197101203811721313615112563189996224079436121149200962014170230113208988726961453618716016186230831577420092506022733011414419417146226243514550111041971790381615102401181581491738121324413312510221143232249111214622631792210214132240123613722117660141226862445716613112761432025014220116522192413708771569201392052151171271581516891919780202832001631043314072230750171629733476614720880425991101321835622920635131831745620185228125701321666197931762182351742251751871327924811193714819180196235174161312501972171651502501504412409122695186216352555117122822689113249150969214113691429165238201149214658970175207505025022861243017516421719312113912421023021813223121770230187398520624078122207542289915123214361992232431361262174624093207104219228501912103719037751281793013311285010327199228152392056231206491311520815922119596185111184139219222279414517512168188236181231176754124120525160184966510022518135144108163637717172255194917047225395120193136632881291613123100253084225245241197310625319231622522112512231882511272281724573721701152546021725195241109186521251497817139253232192124352401186174204124372342072281256313677196140136121512205722237112522021511202212623815459215581652163816521283454111820415622715024718577234255283140236222487184200621611168684174521192092199220792232477912422151108624015812721888410211119811995125207591181221201668321492821143784253133307817516675211391241486782104122135236185116302501817214318324344111151141101233228106250157150152051739662196210183226439320223222335229802629146151476267111212201511421378012464232495282914314198634922124123215014257226206551937172211428013117519816310016175254921352446614323666155136136731822302141101021371532542552191274222217623317924523517921417314223184381122111062394517160182174114871241921012517416793171282471741141689423712010813924780672201731421301996725213915925110016824423111131981208208233721862172812318361241161236104153117175351132361042249614110325146251174611422311436220561912119143818819310423820515023214293246771071409118321714221225022016341712717749164107151211201141150167549124523611919112213825220124718614723924716613822780955817401409217721788193109144122551461728912918424725224688226137681372442007310320713919024518716712624713660197139186121221511852111471181675923718520384228862344133156169349323273301942121232211699977979312393135106252301181652435925016459107228128952112108913223205562501632019722839147166149222211876017528139121220155436316223425160047122170832384610319797936812623022920042217011320101161168110784921594716683198741292511032353161113431411431744910790103222181199237102115188228145771382022291242261111426842438616718610126165781607192191522011603111215323124012913914987791982142656071911559024322711624864203102135159133154024570138174157138236216010327212206481632611217119320039131249221718815252481316091727226282231041232251841147018184732141132021862139254319811610016054060841791081022531083176111122522521451369521215311019114129251149197128356769178483331621331961931945945169157592211512611808325478431021811091151901211381548219911453246207277512623720359911912012015373245183831512911127156209188201254748314817222952292321541423931101406017822018025416715325022413316343205218119561391092253192122125801711382522101591252541121122151102152543222681981421321228244301098234632321251221792372243395217160134182147245301481561271674523324812275616312864901862461201302373896244189206244751991635911918711523192170234816199218144702322292076121779129714170622362022366322475125235212680161851923510946537062233205332071632387666137116101941081405618119324620824721124612751968203171251142501947565144191244231822302272221087413111811941291111672362517014221716216171072241531061256012570205151221341928221223815027020916116171139223925422039331615686114491244641411821211326265613412325313714722268712656226746825560913166874581951482326187255229163163171451761373223919325217716317605255333910418712115519120247240202892059129225241344617318816414826217216221141171774114625479173531546183472026555104100251465521324310117713245146187751031582181001351581441031765985163171171245320227771772222461112814924501789664145372429557171954524514121617920713956681332341609723912611122512640578241775717821812424719112612422425141245437617014914727252191017014313215711113812875143301335788553010713856223136132223106771902191581386284285318016048541619316824222722215621910941881528618412638652431249174169248502271501574623796863234203129108243221612382071256019022920917318220899921115620818521567243119461223786218821822622624121619917810518255911701322116819110312405219817562021538189121642032071889079921081532024786412402151711081456911417216154311262081702220178161135134218127118131221471291561061872419565464722429486659217591001121108819123123247170218227791432013318871242249322356126351254216201137812521422542532520216125130152488712965101227812481349923815611912499180203132323181470173391181312120359105221312842146715791687724564622414814420200081581840135122120812124618919212025115642205764661480661621788423161191216635724819985513837312105178143202252484822512525518479668312051511325834181575201986222811611238544161642446897532351824913883240171206161160121961357124166229513514864251112051361981702266110115549219192774221231431231911443122498163160615234025213883200432061612502209519261882316122312017653572532131421656019722713018521378591221684701001123881661482143055501161068821332441423812320747222742291136315240448237144617123315031051291516091431311502001433816910492366673152739222224312403210973813365207522477523123721812015654223521412289962843231145811196414924012294716424812822516010122423182221724314812522253176410923310524015011587799819222641382021411871326068401442152011051816513920928109225311112368235245196111123200226129119128227110161111185135155702312482047813293962521622495231292226054223505822351109142111202156233142209701271541611242442231242153432601271131042066621914428187144282391962021517367945524612221950240109187144156199951158254216552095325121112817847125138221232347661219164150257110191382213017020522724322324213221213323411124013143136551048795811824951471178214511125423114522995197151255533218523414323988200168255139111191240135871338104582402362391510622222414123229241787317813424813211247103184781821415223026249177712041991931697812124325242249619712314412620663119020621002051561611901441621061902505560359622440246142183240165251451532062178522237111311701902421758822681248185891246213714215385174185159193760112358100204254253250123180226321141211026147231831863616066142991115825321512819419746137229150495102137197461332439310622554048153206243150792361356520131248371882352524315887441801316115338716718522812442103721512011612224442182924817424808418868641241422364742132062224242521548340133188229229241163168173136107441251401901731914110451159244213608120670420521916687242249321441319041221201249102137192123229127154123228135129732444920540232117244618718121921202208223523112813921022315624223021810214812221861221002317811311915810663434021435175442282552453121055108170216188411252532342242051072535517524621817821819271829311121321523695235921792142492482223912921823217110350312442422518424923548144787010127252061891538110791202161472501683922712687261041901752181899914367247126231177198192115712521371521312261232731261226231861122291002414822420410213983274525024618795592512118757238114831042079487248192201771502537611751571421862172611917945238781032101572061969123791195818111119232147140229489991992925017511919695107143187170228741871939523211916223926502529315820310949192411371562155814810447160182682287012314614620375815812017935251851418217145206228917411011916622023372185122421021682141911111912472458311317810412018423221416924822293158199150155215126511892301552331812232051722552092282161062352462372382312634110183166241592531159520617525216626152061429992113182129182004130184194131503980208959514222867015814229253581522511322001041723722261481892021515429936123521658112009451011601335252114119012521215553802377185818619828196320818915859283817422266696864512702072231107810918215165113651501143224124825219243114424911921592213829602281519011186023620118621715421219019918912223314018621166532031411491911441081212216735772271402192916942146172471111823863236205122216151131618520915421291237111451286916033152254240101791771631921164811620121165104642411631582205910923355155831101587319012538229781152342212308499121081755219818011011817425411812222182121777107441221181212204196116100252220153249176452371261152421952142121871031461342472513091105862551951403563253193106210188193110172462281267520222724624412320520110032231249218224227432052712615220907293382314815621896125191452496571234157150196251237201247219831262332051812211216125281872507214195199141672542531581031072521232131586610959156154183218955725372361450488201918411842230108672242095317917012716111117228200422432461571102311421321341193961131763581810012200163189525419721819921490158171151291861402146157111837621185612225178101179352121651131652172092117921217480150325112572135249156173135887236082195611620817511513543121106190155182255956257248173122343169135142498320024925016157127184581601191431032114224313122376222247175159236249111312411066515311613112719271210322318711619446722398733189142361114523263232717661241711562113924801362217064101169413712817953200134578020761281671601537510323825223115017819518112911684024713370241227719018257183239116197861992148920921122021014110125144578917512317539210181215179117187115431651695710699620154255105198137141176531271865213211347624914873610911534188207614313410023522123967338814019997104132837241026924814417245536512212228137208137145186962360229323639214621852091125815712147183381805824413140182247956319322439552191592182261129814729140250216702712594216201452463954219157216100171189161962323216314047174128104139371776101138245542192435817814525227244425213117225516616814261238131181129253532546171241862461231171921362461841951940255244547166237817012666896317620212418462244110103166252155264118511838731791281031241921631206219125026211152198231129201161262481172501701571441524018174451170130225212158301781206499110010104128753253370326420419298302091481281813681920017018020715093652232471431351504310120890185178104110240108126641751085191160194721220666227243350226254252252017462093162160215151621969209741122430157122358631841471031935212252218441691616478132123824112112825163171213210160174215220195136195715624223182536150234912415111367812517701242248515116112631433106412519246164207201225105207510012220146731324276112377664881438032239523418923817422223564913651512725213212150249642514419614811287630224242161732481281582214412101320322418312510221119129182607825415113315132192740221073564100761381091932082161531996554142571154115971295638113504114419200941412291631491931759014713815314720912912961071315212017516634148122501878332180687982402047510216911815135254179812717223416758140230311618241225105202742171591321641307739133164125281565053341392209109864225220149233139113794210022011372214110162618047615165225896110620322784831731151623140398998811619725225803183106873753177323916318520320663086144226155110112324864212107206193175586781076116201170130154211811017520824915819711100336511612696238130160140207223157233991005269237235255190209159772209875195114235713423561322315970222612338190502052212321091391517618962240136121199532103660203183104819624987190197139125138231106205191014116317910982741561152302041382031311525210212619251242132392326318713319123527107149802321572531051041931622001886933411152231532261627025322312424114317510742240194114714279176462442521282363836242194164151661872051141425211813715623426249129912287165201206249243232231191240232792151571815862533413114277951817645249565613719020218347901217018816522912771101579318816882491016419723941971144181116713316591371515610084416217619246173226612391842159319448175236476812712054631697281572358317856176242472542195201910713313915614720217398197101223572555105844241532478184208123254920890113229146530506324015071212396541142891153231362301386412715816524523317424012311881211245324482183130249188235211359621620059944910434124192832480612464547896332125911572066524723025117820315277247160183642039233961001601241141262014866312274316312324356951018914225510251162114248202962211786469572924169200182181158152114232168116872721721556223183164202534524367743757923522021023247254154246312552072121012035054172759219158962111069522944367181712491231237432911817311621618721019012214919514511717410318224911623813238612458882711322910024222114220415924920961912482436424616322214071612331192181471935267181621571232812324618715663260244316123621518820525022838243243141129632471671937302471659462302101791992332321702571872524723811518712650234126712101492272252211239315175506217921323066832001731821202082551571741642516116924712382238117203491981924332181197220648238771891711423119022115166136606392402472421873140117100348113974731892131551302201501192011206311417555253941111982211581405922113223320718251502382471036224200122644014624511232235241802061631291722511521653512117281118403160232434311071138127237205189115421131121437921150243186239102214126631792387122721831141235150154309110721118521911581128631226184121582257875242189214202281261232342532465222865123218189182212187109201119218147682181461101821961077161171391632451211001517968946230731321961397722532782412090103126100149411721601231592511979917215207196946121125233884571751571382291171571876126215883091103131842091631556419611281032187124601021803322810812524016522720932422246232312049496324027127161211506332100641431091751565242224410168817611514371227581716710639245250851791282013171205128231091872212181924013613818023811415713624428244233572242211852151477521724310318542258624022712248192520577074161414312211470234661871181231811081175717920117710113911521986151113113109219230747422774139154239103289462235811212716924124121315029919325011812324523924123821723320918122117312313512323111821521123510815475312915289410612411618510521110179211235108581831851161091191092171042231882091425636225240791982001712534272281032291722141732462372192999118221611923811619021224254115791661761751153724721814671412011923711423722323911717433104160218135190113161419288220104209207253217527123130183230109143954901692452231061361221694954431171197361422181313420108171143463834109161118131302255217318210492101126108141101211106115325915116082208176238167153146190202188642181123410611320122160242154318933343976255521791248248227122480157129146271501551461315848113161176122424221941251255245147253223768224021268141581431191311712918811610220319110616092521495725101454512536108881292421666816141861172061252237616214211657161145189217011324043121232150123255246201309417019249150812461731302106518024410012232148962361041842410618953125175121155192412301737831352521011322541242518915415664977616712518940724415212252372321923717108117087187365185756523124759211732091542402014314714110146838571141471581521716549932121371318221222965151901151431223106626454161121135671611968224721046977811232408012824250146233322432164661911042206214724720116667178223110245792111292272512131309934361062252372185060133104911695722721661123671732491328715254168149211741275723727202452031231502710722360628515320583155234146200139160241188107215223626224013128140160142361558625321120414715529135234661981426915961281269814713110212072051540136236152312642214110451941022624310016232732461642152192330100134261791707720810123215724020710633236712416023893182884514721119220546401469717120639649243221614025422513215761441208423622593223561552441063189232179116932152041032814710322431222536476541331201504420880826722212211232281041417621412402403624820135252371990665016817323810199341917419223512424322834865162571868195205401801144013516722431112511976454017260271681424913421980653019321223812920431638807117582891411416284921311261762017515216914586417616714264618453431616414017520012472291411751285615767381331661318939134180975206185243481972121367614788241234153251471031559441104190196486302622428517418823720114780168923523012418156138169533716642391160143163401081072401001613525137228521372037193232145120248017623332556889891711520451338021218762113208630231165186144160185255151529241181436555224141081935016520501602481285869751092374712873194112211248124266647219310418082970894427208152371532214554364224323216681298516363152198232541101261281381042326112102022111030244226102263010528153227854439184145129712441938850631444015827224602041653315419812184228451817021282481422481471927192172161472172512552012062479320772235196341591625126371391241001561201908013018820761210231134229442421431692482241911919776250502502162002321471544131662116315761581072315699211522331893252158101144145209594778119253200352463520724187248162144178471302031908408922887188208411632105816920052387602371545921544622551171171221571241286411214324021560359524713712121361252931592418719622612815620719417863143204248604210517416593132226317525189248182904524016723133018824213076111122491662187785032156193232229251591527204116142153236202451457524418746145312503718623012719839761632321692712253223254199193201116105184174117902172122001262124244121203591381112376122321655224177110161513450281791021232012623817114212464689104169249648213777741851019813790859212421262134988154702011711423313292190230281022614723191250690255120219081572437916913923722713817316211204981192228212191197194111157679411891256745187238117198202131402483232201492318324923981166141601682481389445100794541182150320923214710111675216532232092031465188294624138157196452422924716855228206315316615525147382167832411210103321472444058140172174734216655194301178711320015875119229179122213133255141122912916114712728148661581281701916207253396989101128677917401731383339206121159218100148218102222512115189132135125108555150217235159254151140255246223114862521481861061052441862165155871231111501631369318317311822117821012121942167237432911917217621935139717223521556157222202111859620722214422218919329591245811924924429240191118582252332492109522913577246225190219145114161491809918321117724516612521311021578711565922615496425014186332315413023811737602920612221015911825417625516914123024575167158881111261822141562112191511212441126422790126831411231512092591912519742083012717559692521339651601272250615126194594846614122725114881365512812634195014562129254137220237796738821581982210110245321691831232101101191672222511948214611817183718211011716576132581433310355234165678780239225642502452142161829378205912817430139126584017421079135138238156782382212292131802101782383911221820128169249201164971332172412455419955216156218104219178197177109155115199118231452917415759171831741571101962191185613124291119561061052172383217820516112117125323320518234911087910917857179197142116125230128132178152216164105173185156168186201134108128781811621922462287025135434514175128518816213124616557219162441165625511012313821810713311619310916018035202237302481253253180234239167130292071081801918216315123714912457181201141683396752371072011799653487104733921434437614175497184236872518117035126212548016196168714691001719197421071368720682176671571224364831442052162097233334372475917958118122212471558525322124423411116721312463831841501834536320417225319318415024071227195203204144715585199371211901558925518911313118411115330931067068821264810522419323916721525556362022613527161112481131022051198315125511652381352337220518383271261549115168253976018614802542111163721110612719656211781741835887312481071271822489715232201101423162228117923222235219101321324813716720857248761931412305623215216023016710511720312818521121321479223618024127215883264799652161221367532421951822106412810852329759421567327213137110114884137321235772141811511553025011010620524721116071351901591989315714160688172383025210224212911138147147121001711662502237922714672245183838651531802338010922467771112918835691381524230723238263411612218142463696841411781939155174130224221311668132931425412118753511225520396254229227209321232342031731892237621024876710024217113111166180239116149101193231203128209103276678110180163311822381125718520114187656810177188662282268519120314121524117213213832082371177210202161119210712123784156120248140150831801742461641367142226332271609542696813513017985513735201421224810040138108139164565114922501071427193208254661241043619419200762529883212207234128130199125572281612381763215314548104431345816878152230112182512211001171081798021453112016965196861061830186141210135421071810115286827716017199105502531125801231278114101302528162582492381501155144148159100971371889010114424720222512824019147351071721542142191823825021573154525212625312811522292111977128197906420117918242129221411436240103220210179126431078728616903238623538155664074791724020066235164176761786128192719218715430522292318314125191422311451970206248233213238242252174187230127144425577143202110761392041647671811681717628227215206219212373725316313715819208238559094118101241995562219383224274245220139231163213148112217176817001843914157022310792783311112269192722224213718220317422817943968162100129109102574716513021225337167642421311419629802251204104192237206142261592015466177208241841931404033636181707313176128175198885410510120218233188236224015895188779013310317710818191781741932281763156168281411401932201123911097466810321122019216310433208103106120381332481481271051598953413677241511791841051205225324010160146121272021905822625315188613131194212144122611702310412858199646025410517818318822889242242302220215001904133160234470442373020512318122713561371561801726011247831115413788418151107571270912091421324873204171231106725514220115716520615113324380111122485704915327145186139831911120629611219189812862122114649962896265167146209253200143314711482635234852214864129101566592229220082184180839488148911522224779201516255714212620361226297911322122213412325323122418322019416613516518510220712918248150442448261421762367522322024912925159592481017851912424353273516320170477671212552413513513617213380130899473861153126105159902501032418960205232772112471563516624838583714919476643190104491226951782004918998867614273761427710616911520628136193271101782074715713220613418870196592662240182103148898418212724618821616247147101907620325150521702281811194521236192272025323279421247369228240119773242311819025217424584235224153782091472835631141421221995726222414639219718721201226221321118611990621915248253222427971692534316372102372232416821357714320011220115322789523138224831868989615384431481372011817244134185610312710626155791151882381846254661106127334653551521715323789180481286216923072521022581981519019922206138206179751752281391602019424713612420157228851132172317515119719690232225488514124553133166243672521282392101782021011591116588957441291527923321790832141516019821923881239202113165022819312714616921237239511016112367119233931181538519443212209194252831461495417823323712412229932441631601001481452381731321101431882352771119213198915417418721461601432091411611811165758170109701338590137991101539990214203111111595199220242248127255311398717215217912167241154229177171151610894227179105133226317192183174114217178194113235101352372032372461721801072162322141776310017241229867522222118225223516750206214691937781111132386123211917559227137218392287312723824521111325321322216718388159218984921022411523312072255331431741897810327124175156122717024523457224582142412019143176211217157122176218243212613999107102117236112184212201221674522520213713620661206718627159216729254151797194107137185221145120175592538037241593148172235133153218325511018224255174220124182199168222123148196844518317133242692122021295922123311912350238246342332470253134165218215162831323324424863022323876286128216177211165127159247141147241178187232133170167131197551421991523624359190198262401221161491012119015518610117913631891018118376182181169834878322963228106236251716062062489252497710016907119314220316621545151841134917414175521699549179110249204351717627862611214921011415411624025120114624916710525119125342448318321216497185251001601261858925350252276017719312217249236151193220751992132381621011441123635139168718581862022522401083244491723124312511881185894124632121685411722589224173347181645125197174546317819822620090118025419023938107120331627034117686352131682282252132309214683136129581811289140641056415617735145226139133140148220105751112222267621642522456315330891101261165986572281420817610822225209149227717117226878954174180561782041722547227186239102212125631950112108133229145159102145114116153217177149221412031035317415211712414919717714923071151153308910666168351221021921675813118565225203140151750112155289446972532102337190249474112185416629209378120245120100215462151472717225014120936319247100322512331851625910973671812541992149123625321971521381102172181655216814025013124853712886105862081841981462482258510252227013495233701052262144211540129262481592138139801512623219130239101205131194250228129186047210211202502411910536131218667463371797210331691571001664242119151245915387152156262307134100374324197181210236074751769532381249420064881732506162145461682362482181617022120419224715187512072914107222234362357052204291991878143192139206319147124511149122244291321411041593456246104671362202942160762162198220243175311071251809819502229916767174961482355226165123159432292415191282016291651061869979841321164618186581578217104652489381862191581701241351031116101116237241160168190362253213126168202229133166200145186321681111321016121422661568811217137169119191555414518286841013249102482824846248124521316212174141321742542019679173140110221816878125532422365099157142134207891282551511424625101308284921371082391716919117253341612327533121381232081126624102302522093225119115919023115541154525213415014865165224998128691141783024447112573425314714410024124620115820517562801484413610022010172791701472333791187225318595129137531998051123778121019621764611899486220109101147258988441912291101602469646391351652431872358934139137249132214415482102461574616720103204140201656111213723039611011260154131206412553180211633215880341741615570248221113622243591121245424665431061388617918112222471432112201341382402002712291851817920971299142185115124212114971592101971901011602017915711463549191239232551112363941139125197532443723196144202212200762031805023113020725223125221318110419012174201140216156143661463871164771432011305077139206156171556137502531952246817922866183226207157242231781412046423115193130942438155281451101555321919136952413733214001911541962182580325510210625531144171166181218189741313271541322171772117183194207932422317797919914475919311817682402047546614122312523716010176341071303318118153179155641061991561852084890228371991606321824919110422725115491196199193415274728523555122150208165015319535864110116813589116824821058173252147144845606414111422280131325208622117518520120684967718674240167127372121374154122154198203281361664110524365249684021756702480581601581161818953802172322237226118111147906237522213417720062179114102842461236249111186135322922316015518513320513620211643252204167242111112472249988234172216601352121141551963423519634203196341472481881692091538623310115810113944837523318111121741111272058512818413613523611579248186171172341767846246459323687190361682342351761212552288718221641189194505425519175216119157195222117912323132234269724417720510711865621851591231012061798205541120411214243113794412721119420720023218923385920510762472032505216410481120233151972299512210112723414484506136213501612081739615869823322316012922312213421167941131312613323813151671355971912392910917159239852401219623322622417819797249243220222695125233189231409424916320920320013970472531932321492337162611332228717922147255244150213361791282518217831081943821713212596192421746721614822484193193229178651921215120768791182414524316576147512520747228320813320871127254164124224311599153281462261465921518712012955148160104129872251245990454210710672170856614511124134219228178247609922211697124191173198227918512477771719218722224314217978461331513220425316716020219124822442442001561071995108261571032295815411920224914814041229223566471948175186133190226194101169012516144961459220439128230222165139221112321816687205138431541715399269110415790971579010514762219441612286122349720017692183726157031120207352501171991608710925322211914317814020624743922090241151192242175662302001021901167225015876401698220021075589314512782113517933186148249138832001592824821480143255138732281329710101451519319416015416464452441081311179013312182185113761901051001466710884888612019323614412724723916221417541216178461052372421281814360551721182211841941052031016717320329183175116218186212110251502199320310814172176235220231222451002502211822209512213912723345186223150125183372432182411642432458161187125219183187956222247116184244781072187210980203861355115510920631141841125211224014425121712223911513512520729246185208244821822451842276520222922719311921998311312395918206532481572171081171081737325114187243135253175159142285926120102171852279022717412520623143135222110139187215149124191595145137289161155124877843751118432311561402512532524765014923272198221254140591252331322271379012252381510210524922122118725360146126873020418821515912517563235254642461311291561353185143724331152125286722011236014825110456247209722382071031151591402306157151247243168196311411006326206126481521131875973298616123187432331249910420311819923812530231553430131153134139126292001912231534982231249818920516131213214132106143197192351735108201226841291167717119725322721626196188105531511925964301837614317236159817067739259851114378136202163115744013720314123515120510488628321101862471918414471732687219288910122117619427822305618120124625015315225193412918792520512562770229146801636116014064156115122247195162272051370411108114166897217255190172156519421115869191624739242022101901817452592151321621771692421202517115149691922312021592462311591711362121009562115717820224110246247210248188445359250211172231133148166101230771321812138100621019324820918411316910521150178153309310621018421216410525151166141203761614200145101386813616112422462531801542391675411118218711342862301134111741591402382212352091862139718046240113791342832611522151792072272165811891245158310610532692222341054425129623520310417418195241821025512928220334242822524521511380123237143501251616924376411217515712718014059220145232772531435127198133184208919740387416322867508748181250251105244719217412022716819311113224813319885820165181211229222191201160190104168134165181192481853681143124352511981992544116100172160179108344441902231531422611122323310244231145189127251100247191124196135131125160172997119537243197202167231203100232552372062537125652131095910024164215947923724667302441644716911920188187134194901719353145121524821917647231121117541361542441842162051932162551731218610748173696117423055126758416813919612715218223519112572164115183251205230681685228228220225208158125941955312967213254173401852031252367221619219546924987208185211237198169248951481712623820318911842782432821716869712218671061682211442282281022923883203130394147238249219391527520622802111116825018820613218613116910513105201531908351123100166124205214184212411141691787312613120035532037614455316989102902531472411933110328248113134102120724801912443019724322113923124312315188637131356503251203148981521281097051041553125424117742412761061911701822001242174124037199128151283193702317968896120423917715921816268143163352066129239719619122628252146250177156240107744190236241223222871244939524169110618723462247184185122207227231211568615018626199230665740131401949124412837175641031619121410149807611113828015224661266122273101173417413315957229206165180731614119219087931017985245184907317274322426564601501614662101139324981472531945710330560232252113801382082418324087220194951141412152122352125365112242212232108243148822311302072217523572301271061458650431858013989741451428816615121810287901641501241815825017012323215915632232441371541814997155612191731001611032492394240129242471242139710096116242091402329296132302242023122717257621141862145162062101174232219164203206167163046971048810812284382082374517582342451112362532222411496188105166160185127129125117241174018419923618822632556826136214209436138133166120218516572271794138221070571591543922131215213010615310822114717392240612288453801451549180187271211971401523270209151166691026423196215287591419316232391791810025221352190165392242637149231602336644015524410200128140143902118116205157103157841388819611172183734149141201121199512422113512821592662221620828244134107232123190491482369418619216312416171153902261815110327872241448022814488108155341991141551672121923186209941441921511562165255184731031202059386150752478011232951131012221733968211217812570133872091242374623914693101261492531297920410720619319211619455926622211613251163149239722211346891591222314711272441791220518214342112794218313207492502437616323634924175141169248758824114622419469193197139157832021729824223614674802015254119741202618915124726581829120043742544442519122624823115326145110157812388425215312319719416021020716283111572041562552521942351275225021115914094254553411213187254322191401901732286116323167188592172131944111816677228202032081698697239153518899276045362214112317487201985115165231240177240111193541792158166152128124808316211342516414794117102505632193651598861881921831201299520166231125719112186761421178214583230108102315928231176872362255236162521881882306851133170115242102917923012021471017224858168244752071721212220924951351787722724217383203221102311872220471421914525121610391931498168725412924834252155181071641491942532321533019713993243232181668589196151903814921916513119743769813962147425517975184156217231262541861152415646517718322134222118111271994522612524723214318922616771651556923121716786120149442421611372436313112240252345541611425483209213121816421395184594550911186411415118141631321746237606716624214831643820711013348246121206185178178217541632025216198106681618312273881051056610582201167225255241255136223176381072512502161092351305417324592183210971951019977203295545181223182220972031432142191261782181892042302087413516121818412310924915218243301172286123868114311172306110420318921514612518141161111175127215110159225154208431992271111597319011652226124125208165198144190125466112329206531209310610184118501322409213124772173199961812351121411991492271931558249572042491853910123214471211154153135151791092231101231694123221820117614222114240129230109863524562240129793201119591462381183722323876188221145112171612258671226771812052551962502212715720121585401451421641077212322621324613217118381147322624316211517016720015656145174227215218137167220232766911011816622123820418421314512617929738314620622923714224491100232144181102001241945110316415561732152456166234053125152218173206196107451136724512371879358119187142152502232397423224114169181212518361117168381601211553514415131991319724410417496505328171387102421531613524575201487713719353516924997106245119147151251437616924997101832002141761166282248220961331131631621392821424116322688989025521117213422922181631532132521041181201338519511424315431103158216961252387220821762551631717717112720127160113011180104711120865622720422721788701411611301141741581405177137511312612836602482531116421024350150254945215457168709719349114982511187453225551471711852522191641863116615917513122588024024410820116324624419022115822620124325318018623919714716724618725127472452232051082488616494100198243822472051161321213420341002541102302252397714127111922552372441861111675312455189225123242721882541871051351271521212281351531351271521932710773871724150261433224012329224730183135157169791997417515914023321923121718519524912467144248179316912222015711310616377237501727414939659244607923782116610621211821161422031202022396916311867207209982420621516213524921313018915128200261318523014110616511613618174481471851451133363792531891685077142172148131272442406021042546978218202189113381611091674314812825401143736142001581612035661321163458391517187918016044680174711518751101104952374674153176104801819471156238220237492181624216463792423321722612329105144123268127181952231952486724386719655312637648418624712266652451001147106921071219211834185332156262481061602201769822140226867518108044379262172114210318620125416713224156114806787141114963817613323122922870681422722769196591181852015791685884128197250246123143212413025420711210718720310410980247110143190189941891236091182562462362462421623911583156511013992170154113021156173151667024129210212170181352311952111552371811568213545156216104139862348054271733012117627861062192251622363193128139109167214841381381919962228711214525011393719314221211013123724111721424129141212241352331231911571862392511052511901921725519511620521582411803540120420227119201941922724701311942232471433102008165135761716145651161432405519979363241811882271925311311221022817684128151250611509913741221615242534848129108240121763717821820711419234112147136140171651514812325071652012111631144414675115417451592431871072687486182182229658588101161335021112201433832591604149161380180232137266116352715242184137904817324680425014220522589180122932811713221910410161201128230631537202220662491621282179513312425079643724010632282468985147662119511436127216203206331273422622174229132071681831252266212741531418744711920016917820640179202403180141752512496701082465912649471955860194631477497744112461562313444691236520847255210751731861031281791036822924199228171531493240255622615611146223925410414109152566522031311793335246779101822355819011220417473822115484147198130802338323642461788665812802063933169112022918294941362055219007619543223125285134228533180591955822912610691539877314445222209208364631124252081311841804417320437661535217724626194218180232818371057718016520310522345251888721919464132168190183982920802511725724472079857133777519223617510514289113522137197132166178181542082557924612647572481912382224613427934323211721520821522166223243143517320418320440115200147153372112162820817085661611178217793705714421538171130118153281537818720010611422912662138423166722551516270153226168192411581192442281442020316434881225244136140152532262542362024410319916018323231741611111472056122637187128551561952051622432371467445163242173163242451951152899139608342631131384812224199163151091888342992021901384024919463123158119198281991841628997153211195210481421202271681534325312519322622211136123634825461681731471212073923022716019625811121911241991721141911301851451218597241573178181822226547412091991418810524471131950122225147631901035120138212216537819645126186752361002151522019424183131210769924365189180169121146124107224111422656156255016925431681856522217122234167419647246319156147232108871172540124192175100819624918183156185118201371501771213897251983310531122681912352624112971244251304931120196188175342391716113016181143832127190921119450205226112921010318722920411514711515775771632436817116498581281721504189108153441991351913116255174159180142234714119772511661032482511113831948329178426013923120203413928179621817442155218710018914845341231148823013512011111842031013224712422712124513522224111218215188226381211978941671532513918910322925519413554701111542541051861551058013410323825212874113171227211802712422989165148161140125102211252226515741942316723119611014767211638721242118317340128751877166173494149425411120035149124191214105116245101811958513319116491835617036167226139156127251239512542491592272151757422218157126247150176205235188215173112216184194113243114135205632171109110219124571711096390237931021151201572358899210131142130723718524721917830182103632382041291884923220018722315412516162102227191127119221255246118231110159123109233143123178238182371698319828122247591412924118911460232781072122458397231143248143011423521723121612719222910815724721614512825129979711152391821971182371181048862165113245204129131238871421351430242561909721414553511862475711312327818521915311617559229781032261577833611921322812824222249248235791842472202367818521714916219527932011361963910019411168472531532008211491743518910518312351144917214314617420415529255521821114523510910521521982111180195416566710602281025510019217616025621121634324110613515614011818145246901232362451421841559317821210451527011522064141111243541358315510920729912521614737591759516822410325420164301529924014463191175247128711712045313168231183121153122347996122133230391841297225382113883968132242472194116253136332432421537186152646100146971412171371172216754881592281671251732451775321477107108142174182110929912512418945891121311586718119018972201431731272301576616822621611217133129250152502152418641161466413641462191144444810192196133679914522100272262441242501321041001631931417030262542181581661921311816721421915621796119114157117235381351077720922613353882401764523792778021922199142173206299115721818356119110115251141108117235822102539120913715791925918318472927118218413814497155123239118247158237238221219184116238217238218187221173711962123321922514224423811223521823021017720516513920014215238291101891876012211818635196591191842442392472660232125175452492331331782716798251246201252192217218128391898979207151602367623521711182115233222235222179207991761981111646222410812522421725016014558451935821615616157561082009620011818246120847510920821721832662266801571031072914520958672502492501441152453313219145115192071461733816123346816411091622401869615795712068296131236134229642914005871212114319814213415215613021514517719813613977145160124017714175156136175725123229684448151803994104140481721666187250203642542372141002242481912513024280112413162709232635121101341929317662249731359321187129179122207310611891398021227631672532206227162140122221245211241132962531792453371861532392511021825219100124322411514429144212222651257125120896101205872013251661472351825611988202684010173174158140352121942716923661321874016918169141158189941955312532511881655111111316411712224612066916200642236223919235172591181866569301398511524510219688248941035810219374401278518913320024551913223416518987916915188911212617741234226184134100195110551541949295717715223114157236217376019197133412231112153079154154320928231543420924625214511282180144781312102351765122323322585102213632062202432372015219212931102289042119521112019870196224998018719897218421321895167220571631281541584332151131411941291108573915231611342151662411141517519772212214844076432015816725323014922824013110186691921421792261012551613218418637251105130471852121122083312346408317334205677994138741885774013801714937111238115535778106147147144183235713262187393235163872537814120897581515833350376015710324512413071241225521795185234522423131886420011163148018425297961821415218150129761392001562214553574429985145501916010228151991561441031247138201158251595945382351631441641513018386916477137202152149922329248207173100190119229146646190952498596213951193176142344618282219101292036520186169178942141738054224159224322213815767617248148476918347106651151129376413619214851183201975823664153502417554781932061441292019760152771924011824815275254231238691119322310614083212227165192354633395222166322722012838322680321417210719423521220470142901746135169771412006648111757018015717760141133982061782473437200158482098157907871618283346225321290209319513771641631281152226021270137652614213919049515412318894249122375561713411357242233633207461031826711014910516222053772001837443129179217231204182724349131401662291166201135322962781361017615294199119656822620119721420119722952302412492213720817998179164661918110159301011814719545414696145805635342035642215421612417778441777742179754017714141240741731220393482173320420023219515139592491678669214692062541561962081562491828112110217718554153211541849036239114111511715524411421917210132187112242332132412491182332292461693720625372541331591348744104215210721146244250767163183166252537345471262251091636318811124420222863155122762431361791420311779158237154804614688238209523415284238152829715192110163782431972128616917821140246282552261802002152371446121933187202621075412514079210222101558923315863207175124137311088614107912329518221661239831992125013524834251232124135216661551689223516860183180217945715918716520711377171114731711147217311676159237148531993316374150293914988371492161668621621115717823118622912723814659207581851161661161584426218532395118922421649187742713286166243208881241015198507719114204181154514724229502022212422301212020411920515723114489101155949714990709212782202072121416421441101865274114153109821699382153123828964124137189912047517515524141032482271161924716424022619113286254147791451726017772412138397506916025223540205549918291193124772039324262131428062223209199193413153819242920816518124199230235207141108182233149144168160202371932495741229412552251912069418217810821779113235866911121916190121141207186211742358756110921101911211532371501591721194618121924113121314223945247471816118521723521820124471935247905123918216463104203120216154254168452432311421561595924230182230142391515929102201111031802336312511218233140311673912589552071969260261201774122425016920827103194333215781349410812241721182372201092151872071051762181891031755117222497872102111932041551673559212571011732191084653595108101062179721917610690235781872351033423918019722310614118721937766414372327312120815112619147671182458166228110159568331831233718816366181451232531532261152144121725204188591523750148117111922381474186652005772982062211931132520018921915112318355239110111111416755239787920615719023618713611440186631522539648235209722462271795714370178301210122223713587641818175119197952351401892181767120187552491069122018599973571130123141221812361161462371161181851321372211047312450152391552351711478610123617962152223901261226561951352521351701257110625220621451401384142130171073701062526910685882276312420014310813222836501167230251508030111223238449168253113902274283237922121822052259212522422916613617196501262361436814029137285926113161492522421371361771633332209433934239118369459211172387224013316682401327011420711240661281971531322511572335022216915422643215131184322416062081351426524822314721917341183219828129107181531361833879200173222117011423852392211077819011970133205201247918215811610120166237193194712923311920736611047712521638242168612538112366124697913833242152222219422259919423113311673204120212146161831361043320617315921951126110751272121542501683724511391261131941991731051811120712021015824118461157247162204195246522452222441595951301191001614561769114731180167220109772521654725123380222165198240142292061675521820864143187511581423125521815924316043237113111166588616224015314001272431193244131654112240153122283396238949164244231253138244229254210155163207226430119103612382021481129272124242188168204207632425112118650177173224639302121623114872111140253103160234895721675171744090169185130159251196933020433350206276924458221243101210115468674233428431511792407219150712101351123310296113245248859419645741317823598211821262081491443016824632002103123880201332271899111918411616811515120227513020617124512317467113817630321552526017423116318024318642492407421725413624467632012172011962011762431596332672313015202205320874236956815014598180943474103228252209240238611582421658725118310911523822222914191265823216715364231142151821737836182661551835812918824941761675819377782092257911401452092521535317642161542451442813061216424842209193366255193981342521045384192215141221168231249619158792502442271040771054014114487604717012474230753910347172961712432091812147723510920710811923321622753923117089192516202182242152213725583215130121050462491492295515895122252976461142021552351698676138751741842244724617324866201181961752421113522532131691652202136225060194101224282241631561064613236178413164246402944724268742212452127217926234862512321231719968193160649453236189196181966248811592161701931532702521215116351154107161721492121768816411614511124918132818312824523264102643916210348148741461741335616223513923268237251228941641262397510012712213157291151001871222151302071375620120186148601588011670972107311620415313112110916049251011501051652301525217313220852169128136672222815116220760742325020625419412720687254115191148012402282051874086972201082401353431781415817176477221912913714918510024516413820030145192051322305237322116320914252177110172613917016121137138536518924264234321208825192157151827121813670209401011042022234211274557957218105129147286438143152392221916487114731472091724013110116411321312616616215521810137202189391825315221837127302027621621717324011518776241394424316516619472321569114938162611338073230402129898202201274211772515719683535223723594603159806233852461552531655513323127238152632151419121139971702623610162205172128335622920716557602032211487245100131160242212191752427510332269524916512719723254962232421979419711610223354152148156186191944230411581652383713925320319124247251194175100137127201182152041854616914954811218616115312915315970228451242112162112002321411837618818819202252831701882262031301796211472493412810620625422412092548421952481411271102548471681481451511504514174250581769873642331302081386922514913913113923012116722917377611514252192202227931151831431081256318215156228242341891201522531219620613020021019168149254371218146191401841121771271933419119469402339988140751392432332017165234174631211810112346245189203391432008795182829962842171551560111158872252316219711932332524116511016921335116711238110718465024121017598231252219136138191134148125218025010164249871292195991652412271532312120924721260128103225214313051421538538209185240109186168801962201212415086192321042321465521562832549208161745124146159123149192341025923120424640156239931882161838411832149222162186174230219170911704693178361657419112422535017824813920818021731205116512501957110622524521970477815422624218525479971792552323934113163114801232216917712168811331251021491495858924785972421152541095165912422236445172159195215747223937131362302402552315125312516182641972316185956815123231204203254632541012062507724354172203921914210224321814424543602144611522217619410519582187205751091832541001791151692372061591081182531041259615323713777158151143165602344418411311046214100621047712721610432001222121502431801911882469124389472420552502182419538138471422125222105758410321392221091391852172811391387661751568621272161672551281152314618719310618320961592221254620019719816071571371912441679559252141781971701011712131491916121578711162371151109210712412213922988992242455120921520719640553311322186221145120167751182471914125466345519621339241218111692201201861485114313872188219322151444613192237741862181531201811478075162747918521414912216339771645922711811120622119025218718924918318724311024722822223820119021115511716715125013919261238131642233120412891402071519617116312981741171966661623211249612168125602261248321696930124224200902031915523712214248925915719220724321120921016715123160189562192401875915225510715970117217191246137602372071215814425111602032312522181592531121010314439189891361383215502452291919222996461121152361122001691386132031022321817718615207023918036136475921613955242222118579207150220461591361321222010814225511716149128292240195579810127232176844842242208183144751798510522301641016495174146681313711610257691812071061531202820924823312120923216131177210524215021779474025362170112180122291658817611196641470229165148802492446050251551147820168252119145209202167231148140130239137171116236352398223918988245244162178152190203320613921275696413281668019416521214351685134611417515713623822123512612216353108772481921441082214313515921741441814681041541152161442522076510317242162204726820815205037134315210113939731247813241212002522012396816710733155222262232401844224311924915915122321817884110669043962471311747696340157302451392264290617718819969120144124412720151842402351287431161122551843915568202185211150101722152066915718722016120224076743839102338412182206214139192091534514100107150771232521351062197591915417611518372440507315350207063813949432968381087222621314717717321915716111232542452272532231361951251739097124240187103139114124591012471911241802471111784142250200179244100218104168240103197142116165116189180161272204323114224358148199742475951965661123611991413515717111110525023924618412036252124671042556223919313112629219937218811652226921257224322711802342182279225118722313221235361186511331201831676123220432206171121145521442235825329151150149751081391852003518310447190104122236104201205230196227235229224171701852311111781572352332052461526662821906219019611234211158248421851561361681771217011524584194888324419722717721515514711018316722313116817119110312412895119208121041222822817214221766236178422253160734104197451292910151240317281233216139823322344924152128198220687223117341886623141004026645717825142194136104717061133163412241549574157238632511078041191196160183169172331791824219311240166394944214131159132240229859248742333425582661761976611117318216610741169315824113524168669326250131123965612621861702253621914074892192643592521606041168205458485824671298446719241151173199133208113611918512269249344737158101139196157189116129103249341592179524820517132724816321423813311228451061317720415936222417020012822215019610723613523313814714354145183420720001810171172250245528230130182082081801301361062613401171861039109392508315440111216125726815910832224169156501320824164712418112160702203416919646995460129223627136717318029413816998199692333214953216156786616810978139024116962148032133862413211099407451129231224294875207562171018482145182341362219518748751979823920237321265615210724123124618585182202712004418520038179194211108618220875245312421311221617923216353688410517010716962143245219897177176518112517078311511751961347413042255189225418195254662152127418715213089141230254169116985158209197127120199202232859910720736239200342312241081431681621602202492449112213623415482191331389920023259846888135250241853722227821931134074010621120510231185102852163721154711009013210121671231123164856224484325350176104920822319110449188018836162268118819617510417715401881123364282307075652161602381889321572271441106081711731286513140831881921717211822181308424015314325022015611523121638211873614868234492031582551997923610175372356420319224420013037209197951352046944253661046424198311681368173716816140129111233185717657991821216614573116158105761581019849121190161142136942289118820845103174119225252023680178321762118244101200220175130170190102243172322525816022643248134684237468224911732237822461019621715133229951351502533717224447145133139237252191402542051232261062451941877047188111244226135111241234229124309424111711219721519017821090150221671281762821672207933207230731781394031382235221855816758291112262552438149249521951673625386561092299517688962412202002101381321621641941701362552441592112151742052191765810219517022477171125541751142231801941172031142311097529118254100191235711556175109247253100125104133932217413519818146163245177247219114239158201184123382379791134240193368979123139247253215169174111252124926138713514021413518123711625174245189126382422016421819523813291205145183913411153719259251141822061792551282039618125113316312987791321412142511428116311722461842122424418439229739526145145902391071671941115271245311141119011111412419517216190239155451771192250178120642491125214197923624635142671784316824824916813618616996144942411118624511911417947237102111234205941949738518350110245101222238207188221151121167632517812723829248641272251891292262511311972471351382381521220312021916314812312740711503820326229124012922218924486152446778561902095312688178138220236741902211491141894522521023323217914116167135131187171125207108119105222238218189223231236145240107167193124522816822719864219740181136128221241311322924509618013413769106889133642461761156172226191454948742251952061801931316214411893424923274211211271092062146220111791713016651001431501281687023413119355141107444712814444640244151562131713235229100180241144608171932890841381943126991372321089015822984276209980103270517224018418610740801841965616932101176802141220091965792512431592462296123720569126237201249165399113357191116756818136660912031752271452318338152213243662261751254817760128175102104194582440124954616172127302419512211581591681931206112462491362542416021413192205248185393179956130571121922714621418921923723023356125108217221214164123109191461241759311233411199114637124782381803622358157112227842202132274921578196222562112725112846024921415319623539227144274215616461812523824184252205832411321911912515198175169194131618145242221202298818015017158603011523388148120429141892082414631109829592678681123310611441250989922813316317231421321311223966224239168242104184716658241107661842121071061451749311239187163106249248225229166392148918311111923322123573158139104315311023222123521318820125421261552302051461123607322565237117676238242819714852511373184932082403312761255623670136139143622532349221716317476942211842027611117117067189551072538222767223772212551837312325522999182091020531180167209923918316716212151821091152309325325112580320512111722362111461451901899436345834219723911471672057100253192148717720122548244151131225118186331031073371311142052261465882190221582372182291984362462511634601201694914614243164551351382201117935148142741672923111150125164571312527581124224108961231196901711543116631132825320319980157831552374731143134201246291249228181168121212536365341787171250231160565725517516138294525115347842536122731022624482299460315247148321791944683781631151312322110632111311602618617119273180215216751391662222015420012170224113102092272419225321223916597108251119501422369841382502251722081997220520914272181776824322138213202235215253701001711475626918109441126947325156214218146273321911905933164140911980250209723264875166312666961719116123657136804722630106116124188102522402031111911441291133535666148104983232181984915110618716179157243231241102241811181791291224034232776128151242701511241168611149208128912114215232231494519474102137521812310686661205423516919724357114235871094665123138201104212162204141661451373317110020083511208151847114106771481325121106476420123314521714719522818452641815213713421152137234235162158179137862199614123169192165180133160913296146644624186421485737160170226020768956621156243621797317518076411132011512375011786485671771651391641611051101701691214232199218238372432924323121823184217101207182201441837447181206401313319219104142042214199689820424119097408081213287104100172200240111165822081791810182193163956149127219424121522416237942338520611319723025441221904117891591231322325224919199157712522119524260351193195243157227138921781702082082085112923002235019249336020896461252322813254158164817711120910315824911522111517060501032191972289113410258391482481001272688184481761041131601621651659561511261331624147893451319713918913923137170170173419510639214984115162195321941132154150109225421291062423610454561201779911814969108301081966316520233521992321431471001311636377542502162144117832170232171168242191134852548514234222002541564021246243421361302391261019512220204183734555141201551412052374144812339352631762521391765712791582532122012848116141881077396229226128202371149954841071601672522231613015216791741060100145952419817770209231931339513422945152100229163118104125197232197247132156412222521811432021145251502422111272038764127227751192021452174223118812111281682301221321467144100135442542152419514516614545176196183772522352322432162344315216116902524224821817123675247130207188243421311141135178163242421942542272555910924517023624517199214175122181842022762323915172112217177194121247114199617523724717511256176204182971737521161831661174637351742979185117502451261151981311502447173144119779017823815720118880271892331271251192231271571181616226622081851991891071752352491631143122146126297212320825737184217281371841244424025297223117134631111291592573010372326322454922271172376824148224215129244712217355207689359291132461762392411411791421741532171892072297011520418917422818715773250845018919120822115818025112511424815162812802549640271711662333122733131191144184126123926244223192414420218651144614657119250243238246232202740185096224313315415220278411114887200201931961056191231521069896224315773122902279010725219783209871542274715913731572821491237223177199179117391662433017013305926121237100281922389771186184193819820512321815724318043251105792468312619724912123820724916555235231238140719323314318621030119167131538592424463172323114724316579135242475313415721710021118012221497181211022274283164109155195721412552491341602431356713414249159222226208176194180113141229801092243117112210207125575520636220108781861265825417896190232112245711312320723993110123718253634117014413624316064241692543120318519516119217236462142213133156175137020616916251739266120401611201861925467225861921041412552392281561020734181255641211090101672285366211222411567134401628166811721341823513521921571360591931811926511216123180181471012029822615720620515523721818359246237243224222101791991312248171063317479156208344016184169162316834162129351374591282132501089101162628353618211011315682551616015965631171021472532232036822513216721421913610817661731842098647901092192253443671825718110811962177193864720621791971771071751031991101192107917166206108180717811117635126106189237241538610619457517619092174539274201242342191472351082282142481711372750638783212351961425325118849591736451114571524897252389840302091231185317450215751711612511796253101382162499410713802171616624231438356183106190159381351784157244253212323460102136118221631311821931931281110125203102720271121116671201392222421811051495713714816653228656682268715414515921416413520812113239236243150110831193916010716118132651195424264204326210244219931692451772132219921391196223421314422138291078211736242311161641952352241081511551625212122718134321729613091408572568412018549181558089577766237421318821314515952521331602291549232576136180228282648166248128190165249128121061441732481744932532531341510410013116124412823651412307313321410516514257850742405517141188532248132412278252102139255034302613016510019802879912210021877683468731622524817658113345893702122011815672148116251023510149521924218141016821321013324689162271758015522813650261696014713847196181328243124162228252205165302202124519811315810080691134138422112224718218129836519573114156456325517424921213915695115111601282302071066521314819514012686187248203101233981521687217984723616313275215162249141851151091961119119822124582102241811692819414919916513722298165641241681965022786122781217955234451181621121490451605333383352101677110115416853319156101604421387763296246215962317616010518110424846771601832372071916234167119212261001026415139106198509314140751593878222165228683119737681161291148941161138963121312138186144138140792457225511343252220381891563811820515971281071189184245188801366822832188175201961508872126421651711751558242136208154179191244169922261319217325082166984215184340932246746250220621231821171221539386133115254167222229139492915774187871052232467576145751841159238161251301381041531361981221244125319422312819419124020625120453165220331661923836211511704060177202209352491491191722552521902211220316103159116155128116187164981361627617192220232216846820502001081282341652427066941736946232012882521671046218872249170205161571026823115319823891651942401712812917613321223130180208163681022341642232245847511123120149441462171280175165721346122664119173231815510213762618332207481501815319664676990221631311171062331721681082352084416720815610524622523468228143141942482002002322051837718828323170151253513124820452424694236851808012110105145562281961111893761051147225116197411151421178216910113017219617675411177643119203158227911801921911041611159013310320622016622461465621971591232220524340252204312694180144796248238152537115037164871222044160766610151176961291112253415918813325424975130179231189103236164150952351792614412799244226251102190912952436723319521242197974922924924315317921874752521271141012074991971641781122132217621791381751281569870177137761162486778421902464315123718820792487596249162192252822391322425524167180282512552403135214173782171885411422774223451712201831741162171861941172311021522143922461731122221912201611021818322110619922715560901822511582202322181782139916458244238153180391575715902113118016561108751912231462541686113919618720523314358178175521979459463514835181254931239312215186936121250115127202175131105247592271111561341568221110137190126422826112185418883130139141651441291931062471459017510739195159141016161952401605124110211521288832082017723013431671812381761891185823412687202157206164599373207246231873150131192244249951924337424425022415522113437197191243232104667227972021411582122761132191461221892773187222157126163392279087250157129220711037523813222222334718820915711516359235102792141411582041556115355186211111118167141175938621910117198752163322524844129651101025481205893109137191222150116189532331942411521451341761583110918718815418318518110811923522023721718120313115925220623746611872202512471201223624123222322921419120311712015923121713162103171125135152501223624726563224817812719123119265239129106159193106159161671781329622412855160115240160151132172052309220114722223659457323123413179172179170251105198225229381327191157121225617721423422812223561811751362181811027024794792372102406820614813623921822721718722315517612516743567947240109222421231863239582471202322978521012494722251451031782037769220116102101621582201044316516929226596418018712195165221106243117681022320517946234252532318610018783591782131771251396721924317821719011717961171101171128713358503322715114114107155190361918212168109155227184232751724012219914391761232317824055226220177221153136186414859171182381162372222372221872151920399118194129253222132138072272452382412322172352221792312423921818721510922412823122465175225676210323525213517012518611932324119618510715110721511087913226210169692061611471122261501221639123994159420243521572246936182131197491692157210139123520823861106113421368314334255247681111071631991761653311611523621416122119673422518420811252251416919211911361162381663918715722210811912413121317724515018090223123923818930681541831623017621617410113913258126106131531572432489075349822829465268156112719123149109219230212186149265724011853174471321381082282091331681797351245236113231169193131190351351009313131291371322281081787185443199104219230220182213732111372141737816401636521380187135157251068217123223115817213971351763032302242221762041648629208641991702314135221105782502513814170304167624310931781842504030194179194214198916527311961518419912823267126158210179196066681157569321331154213422411719033152138232200727702372063722356701926818813098331568168141731241754585224248646220415362645397142201301888112594113165417488193160108201165103219224632478284247227140234239167238255702148224321223105754920412128245131791101191168141146239119101220239761272121473751120228331317620322181217922897111174102120724812870252743616222113220421221452132118138902321572422482171712681466523139981078813392108153341425321821911242292132027517118082192153173216321134514014119973177324216614891368415511291381512431734344111492021482923219969126988374651352050415210110668647210947368120292023240243278120232228209251581371702001322321381041811292032212216918090159160203183782321541155180114155180138258118515941671381317417228232107150722454966251921125316926128222581351860223101231721183771594514612922117010851171108178148100206182201172178206152109145861101509250354625514717624441225153122233237140232926815919754374419536541591031491351461213813117012923312222081228185253133180886831681738702910320116625424922731781951819696166156142761292122454191178471961292716416225324214967144192751851141125168172131321651521382438249205651011053514718421681723388131136691782828702885201012117615161851701362161028420242213244741311009611549187651277649234244195824109454384615175616023983627871159243239215152149116170762322911323413323214616916023817424621714918289212142510154892111857179172192367423576181174672371674124396116242236421871223372601681232516857250821397836691192725019812771232922921013822031163118412291181371651187316518273372141761871362825117628239200162160200189113588163632022251017012715224624625114111271237824275487545158512175451827343179225452011978617870251552035095122412212136645242145205821471392048214498179148210895268114917211228210153137197136113124145736617792412289822714898147212188319212212215381733183106194391651484610615913325438112616210618051111611781961738224972213717462121201131164148883622901619711417712166622181625125320544422194918619235178112178117176144157262496721126100226222352883100159841021559210214782102157252123171392412371641482171668556103127234146253169992181082511481066231140421512044213918425273254923912368189233242521747515277921291272251241591301219451591862288458208244892102472121968123317224822272329214723260243248662031961817122882138181734118374441771507041119761741161394312412514616521813993824013420931244252071111241042272351568042231121501632084310950426425217811094782011448523917451591952103330124236198234281131902627723825516618813823112323020724320425522018782181791961639616112325423117647151252249301211152201465023625222018913010310122921925415925541108221154196771076754173242218182202101251422312943221118173112223187194237014896169221225245174141279279111245238217231241221472351692451422531232531101567212422014524517629621442501764523765139248142211097818921515024616455151952087237105155921017429143236632322091772191902551442352372461683934115186182381821972221051371852112611525384196149993387142112512803299713614130382379239180198622920412058154251115127218133166160831554523487761092221023311200318020666218101232142236611702006415134322116918312671914820314410256134160221129196657219423118913411024710322025168117189224562512228023822119322021912557119250115311402062264525424992249147243179239152122329200187631481271114815920022125415659189891831235011024716417121520122672009311724224122112619524616334221735518714621220110110518318713218220232721902141541201893723312275242133991131032716271061941222462492452377731202434322217821716112114722123311715039215152157906123521215489103214154159891032091862012225210121821710615365681182391132392222312093918416017647296029169241187391912321977920787252220157523002521225448163701571644367158223761698325120287171351322191181869459212072072551751311781217620124239632322191278020679237222235165143732342182357381153220861602281212322078316413912825485341724280212801093216511723924314660160162071159114480181223112117192200161128209902171751021644615215613153126313512414425410623919013194722391207190253158253642259311061187921231291971872212501281288412117519919262207651762241322361471128130164683717082415420412361135228210103240183561261442011773823466128951061318312875104216324766925015192202188135152011446325206213714229147020621371456612624502331967123522065541561072406321516481183623298992401499997871427192106122271501261336121148166227160942534433121402431884212423611213614622411716646301318921624703315115519417827023522291136195113727015414520924118912824438661342031342081377545134156421300821334691377215319137106246676350822716410311161551561731514514832375192232081792231791074722119216521781811991811031917412414120616920012367458421321817971964422813520620437223017424121125222111921171232471211162361161345923311833152281352031371372074147142652012516012013346147181202817113014665204116451605123292144183154522322182333851571816516097771548200995789152484319515582101751571361891123615611623411821912122441156161632552331761248679717517515913613151023821918313731517519280163181655019215132416797921944248641486208182213249204701232483202208222168310367258224839488445467912421224443901501442384177228316724520717011033313281402182241251221634517518721114614021819124623116154121206191235191188191253631911872311911251162241557353637615125137237461487669180992161411471131683614736376631789886237795124612759249208795124810810115816141601992542458419210420117322217917310319155159542551046301392101711561972191061808445394824811221239206214442242531208192661119916214418919211217094237351963716071684242661137518210681592431623413622234701397815917147779223923513016159261452064517629371551381871211581282211682818112115910868163125998460151952112019723390410139801781089441811522815010374886123341292438209147116173207116173143218200721714211532164710466166696212710520017211516242502418183180168242101204942121177211581915930149618311130162246718221171216220683502163114710734711472302519922925832336781371382041362051572214961376621384572250534019111815213716714411181683323137501204762572080731291212042266440145178692261848524815333811502371382152218814841351975210470441461391738319394229192358032112807275640742466736514616387816842228129171521276737148228222182372375117192112305923120532381158717016914219862432711414815246129166871619419925214313362131982101542022542445818631117161342625311372484531322261731341749324223181651221812128110945165247188341421524215314984966122784636130152382301151113881168319523485148642072314117320768239162215771643242781072618255145641416876145152601791521242431521241391521247520064921901091161901079211380748580116153177121176145209391067927228316387103782461361777546177512424361198231257110320714020415617145496134991345822090244811061042211021961007771981791031629412419093190981617398225204120661206913716913219738736951192421671992297813720615826147514554119166236204352359723215913221016066252100751772415824285202254932501152142032501171868619241616516317880822441402021542115110315880961501441112543190799417737211237195213112075109120742282212471022492181332319019921906424819138204226103842004614632233688173129239163726611416912510613399106133837424917220812163233787017579511221251862091555125510023097211552350217346180781292102391381111313323415237202015521155634338952233682312053430916440155153702301547123021919815056692301882411371851291518824015020931222178624019459318812259682312183921217405810033251176149804431389315720719657871662188751336011510715410814244124128156484091361651964616520446117182109234108155202253380321681571171081546710018411914879971012161912539519190255621212271861961411713551752422161822181171994215115743932471721162231912021731221491072535818319911257810924362179205187119127112207222128191072377817417761912924416053237215158156199292524011533410477187223150254176512438187198131174180715716920015721419617116734711525124729116191112442329755191762171912178219226239181197223110137189126422421982332002716734224621579134671520653128177220250151849356181121756123823380214163222202486420311827248192177131794629151872234512464159633283450571608618183393421522913213623312223117917952127422622815593418052281027917044213221234235452433252208324812816642002052221240193227115197143701391262522239514211454250207952415761145112171552472066422215725415621925357183250178111245102222232741891417821510323116382222101033017117981369223976184218303921022127181532549010719424518268228106752262132301644310314620753701423013718412613442391402126912215134142910148205724712331155918359182109182109217961171061418924358139222157781031512214313080193253251606214829170246579131112254722002491633399716719914288241371061082181812032152411901948723062291711842151536221816245718522218610518112119550227186165512351512531935323522870219129106191911737317824004489212018737732201171482111479124846281413228169132817012461379518412023928919711320814611822872321122422811640020848922772301328419971194174158140694654702282452215325321322410224114470463014124107829173153823152171001371031317127130701671171195128108661442266515911518112311931907125711425014230242599519112161622482102251441391333681841651011726223234137902672231273373196801365103129236135124652191301791434159632041392144243132323254141810317013419275141161200185122652312161501449123142134128210120144601302161421341302001853678101723818651151175542112185137634179631142411042402451478121579709510622841208304710190120203524641913434035237722501333516124018512048143921101307572168346691617320718512225696230181851282519765631321489725471359072341831361591735214757213420958116166142331282093314983158419175016096410914414413862011665551216280276825420925032589173601185215620333122224225160621122491175944858240125471642091811071432708749401291795017349206961232461844311323512922419321424612311720117213651108141252116245190125194342001407278168224301199714106164921561721962077456620782142526581111611181248017015416102322462372067424364532056691908899224128151202502327417923020524621622821813715219993153212747206221104884321071669197211704517033628401151841165216210915583227741792141731421885104141011121923419691224693208961532161452491699100234641775316145012317619518111915749810111569132129134208251111051611062442468112212318911651109101901221521521416376741342136472781111801872202037160124882521572502471212031061352391675317350631891932462047059113100824676164131254197127731859017309199739823715211225151761302343116615721696115233241652120210428519820351972081317577811092199324410518213223796141338810111812418911720762175243711941111821646025442521851912241139522222725418817719840205215824116420718424021924676366969442493720317203633154180621664116063248641324321301604681991895316170156186168241752415321525454681227205178151198213724619385320710623717264192171019497920198162212111111777445129150115172021118338152204248235158971511031621821342081151901091451131364479169712739586311941927164141188237718014721121184156200169177154166191925313158122481372472348717180191148981693510126466517192492083721119061190149226157244214163120911317521056632022281644511314231231438217247210513655207864411346156103145869828159107287824423010136140150456549561507572096466691212335202521361982445213519295422143728421381646310910315952516174162891389122512413613210686213184050229831001615326250771032511351304111613932141372082141541860243992091624112911422733162151299431401023732192104310432195216182325797188218206901361471351872061211592421609022634254541481602393452196685141145158198836145190247143132244362520618372441801448054336917214713817318102914775189502312483720714751582272281539810052891411571951022255122971461379984108209231452195187229204117204168176744654139207147237772493624513524091431137313110195816131146357760241133823901642221910015021910085164973200155171511312081910237231541672215516720153198110117026201201321741907852164171182481881131621121224119682237178421624211311602268624151411313323811337541901697012754161947047781862240199412392072421171402041831671353620883722891982310417764244110173848623028138100218651403839732352084617420837186208218391972327783579423716520122623525523414810512973150912151163501002032098425215162124617112516422715339206545442271391722261394422621313745176136431801402061831384411214247247136202125231195135163631693741752031371318190511972022155358215585871102662102241385014116969157363224363142171151002311802261331425711573183744513539152379103152211551032515510329951001530740183741721807717016422620673891102414915820922220910515825525463101175888118412611721816653145155871211118923318612514921120614914187150592369523311411214983237262312309311572511312191192511592172262091902211072288072235381351343116755175183190201111195962252111104065250131142201951467119424616425115720124718782238117161666123220118821361861415821916118229120220163174441266515916814915419124410161238781232161531241755325420615323215539354631131861122162559215720719212621514526175594549143186147239180199936225218185199177972291802501492117014224822123814019121330123187352541027125213117206231611383624248641231945391491682051331482002253154152202381492119858124126558217561922482012934325119717930140228626295240228662092452381482049616321514014019042542662221151715571166561142392441032232382071461012022024920111223265119202248525175200224695010503981832518358211110117100220234204188221153117187512311221072302135116912573901831879457158112190331741119524020816114412624125240252202394917621518110313512520714135174109118398615319410206312421891253423423017713611117254357189206213128990220190103272524752133329932212382241237225514716396843221230217177681561281752042492299819719519318821917373019912602146517512910631189225253133198176135221233791352431581584712158862461765129168209187207911751951811592111396210713018022360136161161172451202042451471131641972051910881321816825319129626473222142023915413101224144341801609031220181199342194131322037571195711062002305948488921648411923210641815419213301012404996171181162461282072326522311181129151234674621261571712462715016904014719972181247104173239185906322860118171614412115817324551511432142512473124023222123154120200107164222111164193119184206123160198163239160219192331431791172222002083320719310614324313533016010020714526821887110612547541349259171132454112281521421346213215115402021682342053722911523521820172242144126249882162132271922472081151322411423997242554945917121245120204421841751020213716666642491761416179942241132411044077709279891619111444130204154614415960604025216114250175217216626721291651041901611123620725014412016991346430132021254015016272652521693207126239129672542101522510522751018620116010618056162199203105104192431331921455278165240271679864174188172163931192121391645105535316223920675169477423481124229122966200935664207782151906123822159931961671071559924714151103179641232207246121143122432411462331573222351528134122262233583701003512524816015140162135818922117712518735841244172166262120752355471161315617151733053101129744011810214723720124515016755902432024923918036252218159243235642062112252891186386170232322552201471132357625224514749601261081732491775310216754881192371142251713242183239112106221106792012075302924623811713515381531088162510538462255417623612235318420719114107168141821942010483114478238173120175441161452181699177179922146242213240895311111810422323811422710015656591412063233205129185213253563506417123310122618026571611135190147851671911492272522462551091469023337189193025210211424518383224121241856612670976213818156472551816314322231214222255246209158127254112255191126662301892552422412062552426222952445313411111623924158119562262522251361791171613518133167545810422240140152329511668176169132213322915194253246107280842141193781938522812242341711632162923618457831291972311997715927128632282558852226201531693810386149245162851411791412278422517757168798115471465319323213414616858812917851332232241822556313913610562128509221611804981181317676591361732122049246491761302312361311362532138313410617022588349647106766523962042492662013152965191622491288724998195262291141136115120513919818511241921671141379120112421917210512402824847165821283452142227213152871563138682431191175052108657713172592341665277161091771738510615320412228676381821399324814614919915385128486710510620119311524292512537987019817688247464221133121402071560476612212451861328323828219140114112523055328716517614870228121812246231591072221718720721116014864167501922352236224218811287151175100342427652925414312761541736418611321339383202221991386719103135199851264821722120010414620931166741042442254331594103206114389226158512155717120254181846221227243205148223215239116161719923120222812823460114222130581081516415142111341392121818923317397982285720941207171141104134762251925319492201541204741721561362171841341823413819923057196211213714812169235925110319059213932480132231229233239155249154716689199218838203466322624345227243919973133136102806621601963816921662161216371822005432221232181153501322552422016323635225024321223365201240129169225413811321724012451332341792132121843146801081795837166216951043087104179196258396278323624912343015325125420112293524417034311175248194123312061141198207180140202827694253179154566569182262279515023621237160219671342451099155180101392024105145576039462237015061148913785903920518278172160226142915346113493081222225734625523319122847951581911108520219885225155861947220182173116220177194971995013512543157151731136118819316322764216806710821525422421191607817411923422222912524680962511021351343116613238241248165352271058724614717420471157105247219831618111742101892061641872973119336194750238117103220106752910714030174146132136191202185182496522910311748251231158180199221411521919160424012924311719067722112311859148712322211013725416563253811112021412304048892279022719510710214028246189209221151634525011871220205142184911571371831866811011939223865924612818224510114120017237411327610849423271238201706420722316314416338410056231254722061891611082282389623019517912179198138301592031275215411918561113253631911832461911881191773724978127254227209178711633715134113012231223272041853975150179238245103234242145251313411720458148682064147238180187221251191871792392472306323243126208871141831872242421691481612181442251541601391411772312349913514691221513619913316013813122224012917410918212518728187183219554515921718820622692181207173227145200197186128161125302531232212502461861172391132335722462922311116229174243592191656842272151897036144261924917631642811617741234461722366618544478610924141221342441026223420112066211122292014624867185792501793111710312861961471612187910201421349559217312322202332141632203361525093106140494128631101581382151632061944198189802442241771762170163214741381077493176246114702501935518112923114213293583077120177492428283201402262181372417616930327484122010224417721299213514201160500118053724174246611232002392203325514512522235251189207311024171916623216202197432124160134606219194371209313111413612243023541241251702452617224513218122141201425424815811124027169371552312496236721922175815997197720666451472238175281513524166322316322298202231193288193104157312523818137601321354199146243823515262152187814364127023519614372671031411431205170225252225336981161821781311846811011109710110193342122521288183404238362447317314425314999145228196984842104916934871342491010997663315971251162522421772002431356712324725112192220170225321011218015420494062641201854924217810641676767201011023206641032432261175578197242342254277225485517337601121722231331681123113181822237244076131218525239243420835208128174237206125112197125624748240492226876296622022157512850338815311016022524289902551601522902471872025322414121686159221193271376716280122952138386531805119911822161579211111798157692358674616932236235230233882321181195224602191771952492043815519235441431751811042179814325484150181685924521377937211172371051346220232254523177703411672220156246121805244711151706177161190112301361291292499619101222101346112342229924519417712311812314877240976691861191239259174335535197155821022917117215335017711214157230366220418217378135151155130254193244187255249195125255242492822422418319449651320376248246111157732050321791317823114681241606213271012697169491962241965810718910226214812552112046722379175956223520042139163171441517518016891541712303999205212622747244914912721436457252216155168159124226160436418722036212324624316887991302231376131911910812241401462131281772613562532432514213695156627246218872422511481033719573402053489483402065711117414721811380135110261591692157701192345349210169356920224790701361244820725478116250223139944765332504511236217190701091231513648611411922012819117719223913223404738421651815340169214483213812440227616811530382481922231152192243183242155206111780190200119182236109234931778822209230861162051461644548501731601546768572468313562652117636245508876451681441577913922916989111160601511242452066321951451101479416922142104622540125705738154230255134837144147102301432431195252128102258185623110741072088114914791371701621822341682492261031759015990232629617624624810455172505761138199531993516711015719115123111725115920119415736992221929516017383122133839214510310813795108153157103178193101232795121268193135211236194124831021352045242206157231148811691668410911206302158913984132254246921023477204119233204230201668617310193141971291345200392401877159232532482558068311971204519963155373229230991186142071781392062472012501481362091005916922713931188108230105171531091558810829951041478010021471479869208131275313120126126160216581692438160672481281071081451419517020923519819472542481772094383141166216155134165911982292061407615514914410715390442959892303024560211246486113614921636149218166200160621442211344817721246161204571772104318224022725542029523220712712065157630311202412531191035621913416415313316579137515526118920715422153173221291716850419221020110921143221101191932171312005723951199156185178124401692164617720814215419479629375411318586145241118173320614523819049214169121542552524713717115039110882517710513325521414923891875810762176115169253129211421171079314311124530170143185124602491081258424730255832715790182561591751530107858181206242212902032031356731181166252210157249164392439787218253142148187237201247588323811816622023364822391191036123420312721287120191432552182012442092181521932539799245177247911791262332052511654723111379250195206362282311742287115713724790991111568191116361121802142311941451287157979751127238771872211855842271251241312171452135171262521101831972231081411872092211917337230122107220245182184235173241215218181741821979570902274618319895105149822585210219191741801971942631621132492052121931112281545812422490872101491421961711571378721819198154994618119722323879392538291194157129236107931692317919922223420366461831475724574712422131423622213026188781911578723218324318617113640153112165572541061152101412141401072051858779149221106153127227204252145186226246291371891231870107831341709913410716220721470148613514291022271423811923921723320818620917811513977231862191917114015521515515961232113173492281228321618119817624353126189187921861185724523611527168241306118561184424419424117611514119310319315464210195129103235313410725361927071881232461861591731518821515325216463753811981386924414247481321775021716211632151102189216242221872151767916230306422011078265928218190205892516715851131010992572211725310017222225268249962008850114118220233124232160951592181214566463092312214816010314316721811983176419185547018130502011152451842482072410464157095614617411215512693167614237612072131471848120208107413612781391213210317137126174198111172620579523114315617124521176011012812351068311291515617332441114872321914215102323922925222506810380113127184193961812319653102241120519541742811187160208255165198166121903118422036137684653133945917113253361811637022611952118562401942099621020179156146121227811651322524130247192651481722411891205213215620862419518644783378113140128411761431543116861602043788159108160912420911711417025623760198271995713124277821848613492233911511543420653132762401291291312262331418119501601541491121721442711322988244536714792111601171161471291222097465942507056181275918769911723911833285623257124859211336125124618524721110071891842284181311547624028132332362432362212372181772051611031512032081175225131346760206351232217381173914881095817615218224781241268149162224213183232632451337349387064522501995024132033217617172682211852033718425525020110412066243102219991072041431745257190214252212617151155108125317391236155552172021692222354497211262261739123724519681022857683513812149222520884132144505351303020864228331572506661604624017710219225012238474352202301442231152115174935915610119896175172123332532101451768197386669322162372191572081472482372301329525017824915621317210824621116112413114020622920412322015712952081641091553510016623013516971911571162322514118111494225447416045174157136150204991011912441026323272227951835677157451851253814511125225203189210201172431161942139920912423025279144133731782212125022219177217255205212131223776324419520421815976521112019875220025471341041179813212311488421847417588514318621126618201081520142128174148231291302511972162641232211621516122879146115612917823056229124747292115323791341924914219941719212611422277616080773220014418518811012430128242137131191129110162149154400207161125691115211571917197192612672105132164683922978200569425271944512587170169202411610672138264732515021421480249127875612686317169107721326824840141199129161841968514113147173114641831935223502724011976642032392481282181981169184127921502322212472531001191571751241021276513812323322311941211457114244175857425173240608515516225323468851551168917912940132311842282073247232611606075127120312117161702455413917451592191648724018414458779158227322711824819996116162165158791961464846109237917384820672521031279313236146714724518170571641831402472342412001962481833623412244252259618511522431221461292212123811337227611065676820768253951392045116209932248174161799310616912510816191761138021010820714460163151651831928020012812021627189562012203989206384394232154592155418976151507917239150981598362522531871693170996025421232802061820615823736109392357324811823211721051214986253831861741422322182012151739065932618245939353209103156340145184248113720562401861641823520092251184661671968223923679173341151406218052122117242139381741502091851301462271010819109173213712815168162681981376514510198172121949066229472095232269110823515925419914323614094248208232229411751521208869100251230205243200174114205153109151891061459010015882441243289249343466674172191645013514042167220792211008123910311810521246732294641852229691592041321741927942923131111725424919155896211321125222639133367914791591025087199246233201762262081312019723315913216420614020611720424984246212170250111721921791004922918710020511872421801611181372292292292149197141372491421132011181765193233651972432272225453114217138156205235511821721372201823896219741831091719218217311421817721097215502511311711562342151851582182385921414811616753251214153244757724112525132181821872462382271833313895166147107204219542179417015126208154431120220352272021431225131246102622322051841751665302442286023847124220872441159520119517419421910317817529792722031218185195231198201164251109169557819922056291172438436100224151222212167125233191244164622347218421128125187572501512545224819222723821259452410178147274514317254301692431872212612717945254861231942051821849123724118359147110119382232367619022214912418159252001416615141130206103187923314931951619162221135244173137136222892321869711516114810722120155123831851322722013215624410312925417511916722125200210911514511417987157812081511131875512598237178204722001061021372003410229233731874514735724718613923811684220106249244194209185392141662542511781514623614125493222317917311233219276112440122184389823280248208332177510011219191247141872301323020523520558183218180111182106223981171822182436615722388173159240129901912541891101282069145177183219192381173963252021261224625520964198195190180951351793111616792149163133671222461212401951586232222229501201921996122171572468111923416323814825123713715598331119203221651831552271118160147142297818912360641292314815920724033481833112015756174612446818413245161301119711724520212438106229372171801243182013418411652226114993619602321514009813041531901881162126448180111140130104254196213724220433248194209808015116421525024523711527173247187216723031240189302452314208161121742062396667224229198144203716746301434176219293237476841009421971402388169681292276864255181752433238115871612132087713619318562101011749616801712301192244321236122217511524256233196159374220847140194176140561321674235311707170892127238821117011518591182046108161411322486920214512501221313021212830281694651942347331123913199165383262359943210137240224168484611933479169252332022523784240521281141841231409531220171252133100145119181525577411009615623620913623147519918411476783312837822613316020421322781688001241405346311119672913414712813161134141212453111239216134133112224160196218223101017861187221186213262411902211746118719219078125123922519718825122074165196191103278952511330208154180233217672221251239258182217247238118301692218264230254253238188174111191592361459152924285131241507711314520771214216200386916755217116242938420322291422920624412717013137201151362318624322187214109147221954135150173246240413611133321611712211872211842281312131702518226180216618412234170255128232176422218814880239038239218717185545819623219891630239225362503317620748336410341106624013212594157219156218183586499611228135429219624813193157591572091291144015072203225922251712491656391188155701391614247218146339114242221961742875501562078712718353233114834111111223238216742011879223232423220226124201211139229791352431742813984179401931781321221642482338019314794571429022699234132178145226199221891631521272032219919543204118255203361002235583152531049224324712464255162255783812625412974226123161471337070248202118123178107137275801752639126134271982411297039656162220751801231241128635612899206921263829179231170109580160226227431849520518128262452521903281539810918879644142676183117941382111381132011231011321902321151432265642816017026185416816134181592081353158195133621616424919518424226188226255661965142381552185163610813014192441606018266431601522141298776401281127514054781896840762152132081071034177155250121172081115621652261911471137933349242313227162182218366618618421233187586929449615157277416015467221204062166681454990652411291019711641661321581971446719522812828561737869144891308296186108856819617396190931981081541461813292440129161812542391010219980741217155159909922337120381346170137195185316619919415225389139143183187225822491012336010016691683220718665310520154940108128203132741842122437225521598245927222582002228618212421814771229186196225165206241139411251271861671202161131120952202261416250122195212335063281988518419253123142677013310849411776149201431481454614892108331376154583316217023410213410874232171246824310320472107581002031863242263612214223171137171466862282131172452296858162212084625490024117627712018418079411172031721142031701142051702424115223915325116969116206391901132111301461091813910814775172181010122495112522419017237801331674177227981413673196381651965419020839101118112234281711281801523613016712019618436149133148441446912367118344156231148831051558910215781971578110535171228432372106928210103591018457103206113203251220171415425316515611821121617124610317420185129412291423833127120241533516387254963231947941262232205848217543821556582035638199441291022243177881671501924293152171245202194153149215144123209664065208220127242871725616025211151116407113799218281352122174610537467389110917794241173197332552511274524911810519317085251552143623688231909914123914285110187861872389023717810314924322222914117107221781102472392163112223312020218924615672957119905147531972462372475711581711118821115619215213137149179218542181412135622367222919970143522555815625124396206163190156123935724758243301162363232421252209324910722318816719513915824612712219046161115187239217262416223124711424016019921726239203141655578134223107137125212331155791868330119372552201572421645529621121875723810818925523345214712151521221524922210614118722114512023148223221271755924565111250189158180123189226253471742552277865191147137213212218733364312313261722768783714711719817813145102391410022223477135111831232203841992116722331206189213155113179392532066454100642431295966924415411951781194914841041319721651982531901727125249138151482211041582532551532471742473970198471361878815217720924121312312358320721419819471341071946170193223626776112211858406296222181213182123155932475421920913115823106125472142509511112591197211223717351497913511412623820712060144249244921932111169797124312629201331245815425510048251948720216599225125760218119561162361162322182372161832071011641982351241892552491221601582231602432021352196910910623312152832064213024924815371901915145861481398562224821617516822003017016017725421622517617724124531642002281281621178126642051213624373611285622682832121331632251632452464195377094105138226186203221132226443342248764237165198176431993418452401818486237521819011834222091306387231157184210241389258181721332061691601530113821369618314567212811242501819914312825413401122491041571912462283325334133521011223146184124236813719035181226104361842551769010022036466419671235253201671262265016532131253128108180131502103297113024418215814625219464022624015608918422016323740194641822353916340899416120274910740152306239466713580253228175230794145435009423244175563927522734339849491663801007018442311732017312674230214571135510105219238210181199227194209821811016821815381601671373261802487213205421239514280209101992244550244254255101239631922275820611511312416911020315010875150213187401382932122471878823616224722259641382073841461782939185557812414715522320577179186721371891470721622471901252313922259221577722625525310211815132412011789924938249155207251204511032061561052311282511902431255183229129231321022081621416672081511747524614494761046590561191502162347523624023820811972324043178242085024210484013822241561791931275399213158144115224253161891021301621438720122341226244301531937172006205897564123142364826202157187751611321834020710823769182501511741872458943249201173250982512545021511361442032062022111501388322221160227872001978172201942551201929613359892341041911692196461321201441031953512028266571451592515916125118411116222111621038471137236113601361872521821820123231197541973447169182441362166366242141861047921219119611316421019170641232142614601221281881341521262497706252205982202401596254119133181281581116118611272062484319021725189164819387193231052242113123867252271516764242443812616114318516619325518614513620823313210022721915314411467275794391501572168224122275771591733117424218619318393226509615214248163165514814614119647582271662612585103109171631261632522538717525225175871262518222918925466160158959272224273680148823619376188568522625184147127226198752218575919363108147652302402489468172216233253248518113621717753154118571649511018222733210233227523127861142142210204167168105227631824736226188121961351042110697119145572715312112620620917154352260206461911425224111166108142501972079517910311124411949625712021322319427201129742051951013049121631212282414439253241033024282150386124021184219621281677291122270901741156179111561151015765151153661607286161679062243123198232237178138392081502374246118982098418818711910814688243502481625526192199014424224251147502085423722086128116251212926014224720022341312581223181241601204313617722635204218965215824081226313318301696416632342624473462324743129851861062402056458127171363516411021090109163216112722072291832385262431231451939522661881042501113018413812521957250109207232932222092391842491031081781524920917986761560197194312542401019115116818361832439383114237226119907010189682115810110140162219118218196191109205190162213160911723465011924020121571212084886401351671976313319192932625574205192931006715328246201187237147222113762181321639190991351761221994617311810515251116902482381381751712732201187932401851662386922317322722370227176525417545059160100838240234156192232411382192271918387242531421072367817518066113701451231061749123494103100721949521178219148119108822462162242552525211114776160211614611515783242928223352011817661531826017824612316422185682392411411231999328246195239992283118515914819299100174185239167143621812225756851521801994238103271327725246155184931801031041814910515117627412149245525215641278010012819914211924924927302172511561472475619819122715614823124191211616293154146228292732141241722213725423124721114291426324413722324167162115135221206291801871202001662481442051971312141971591081872441451012219772296917525415416021724616810110123685852041784212294306282231173561092171212092381545822616638170191212731181161472522482225221220511742222361381902133112710702125123370792101384610169155113851551176719122786127225173225959387236154169791541077324170240871561781115918285126202162183204113162655682237589023714246542133254180248172200131175171194110106194191208692222087044202313510660218791091706124490111185179652301561176164131558362051716623532251112416781901677523571041782237623811095655231444716243203417530114236971266820416120023262164162451372420014913650171661661493314711460211948691352071063512144115781922164151762119342001041921514611216735122222412402585216180502015281135205168195103852251121810413150102861422518017924915211223514315241001142202498965227652471931382401292421921901143123212533715117482251190203246157231451017155401421092101582221706219081115982272243725113774183169106207185702331004577126474313019123214289214134173232194339150116972031321126817411769221232141253162631109425216952332201132261731663517541207110212151901414821924593177235461829924314546189165781602932160180115523224552211031002217741922082689707815214142101515014313681152127310215425319323319323039271254110824022521718442882371131261558921024918116020616017018220662021201574212251885131194130202140213139651522491341464215148785314784224187232128642071807210391145153102226953309624024816218489014811317628212138204210055013713249821802281810818121198152871520058152551032281361281961635221035315840141441253160203017818514841144735872281113159104161922717516257126161199216228208223161421401401625382710513491799144186224758721234866761021821227902823512520413313710712020734142613517224122013215524408381567017554146431128301113723522714511318294251138070012181838023440223319223356101969114715921816618996143215138247213115984158206938748102243251681922711623916210118419812587113201117551224801471522024168251652476525018501281422101512163452272119523821011513344451162019521395231582177165224196142160185191813623770170721882456484152921341846503322232192195712274237594788171207881126119269322281292502048612222720423311227148269559951555986452249703411014518714401261332511922111420965662971437171911318212415319921715914351136187238188131065254238989824018021812976281821361646210206182220239313311925319913140117745522128056218192132212218512193237024112616161216186212891158023064153271961342341722119831192235232431358177231222771206524851041823823913225512321914311116225512917556795525121097133221113228375615073241001031591431001447823273888113298112180103173266393912531934314115919016959103558523911577251218517498939165179255174184247951181551102401655119135501052352132541801011215614812720710158821546216424311892522021432281041131524872249762881711377221147420273210871951249614724128835820020120242997715814213512613725156761262318237836523210514314135842181882075714723850667315621062213120102481631611986918060981102181156244921445770251371601959683019105706128141145017925219252212241319027172352361728622717710770382026446611561732261824534178170157183235531292181241191023513625166146918821617518315176185127194872481115311271102013582131396025421712316119521240194188128156233962301241101224923113642394817084352113124229020367239209121667216336252104103221785120612812312325311718425127991311152311617313821110417955142569413127477229311311052442386123208184971711854164179199239122191951135522271311911960632552620960143156125158255162148609723659146216616595190145187157681371560250382572164221936747621092252291451561391564641961801643424822712413985103180147297370231941772412251891665610757795214318462172001762371522401851546242243451242132441331791432522461291133880612621524471237141002312123023619130251102211861662311636172241021622319017710052151316068383157241241164209185203110891332007623163498101412001661462056412916820345187721561892235949792817927161103821745617972196244128123122158107613271158751021741158615811511814551184562512236159180107102145123230621432041252382569110236243705819070183140342071801251622281622241481247973248151911525246240261264193154395247632451311675518413510174501022020811458211742005316381651851614011825449226922531786331227161123244119196224150892321458123215394402046022415815439782191718699135127741849518811210381192191188159242233193168351352781264662671981187115159901592551002711224135139203311111075623416842171435413447422278784113432021523710121217858122942216218996171581871091906124021464202459320410413371263614816745213231173135107612313716613594239142185166143191174791872171491258319125320323811911010611914925313977166187325564802492194561165222137552151271861414011518621725118654108732301544180251207527510315436179452103789224531172321177721613931961385811616420617923722819817079942099518215910524715787645119134471066511835221812251151982437152309618725011225192245011913226115246252181721572512020548159342021928541231322369204146176200246299020871472349922245209198891276113711786485533138179144691522411938811261649167141521043476813560641008931551751429121236223262061716223236126832402503130183301718832161001384291993613122997321208321015850242222238441772354118121315718323656186941131081632302281022172255521712142452121914015059143149187206214139231911244812221552225215117172031542081556149552519823312467720018111050232202321376513668188163193106872172011353159190216240217203154243155199235921351711041116324190241981231696104241311731711720923825122878619011342351953924565765229249411671562351585137184173041715117917312983771262116417963128562432491451401761311322172545119650818215918423617124016012572171201200061128901122031727152416458947927131774111217248349556203381971371143213139102911251669116416311766238876722018622010120443176180101401384035664012262443817533128171213817989124488716222785116500119346634248235721815973139901761122251042921061702351441411241231362535118679124157890321564247185144643351456210430165212160193164852001426518281101616068941124235171402517228712252041712221236252516810650801621523124325013622451322062148128116291677696122128501121501431081202298067138602088710822153222502440822404423924821001021642201631711969111150172121180444133144302321031351524492134132160167120316178162220160432219208248412920349186201782541861621072508259242174211522623571448217131196206182192224318022378472915919918214118610474212250219710620310027392506487492321814534722391916611911311171221551491806244160393422017012824714216113150661882814818917121623217215218619422753142102511319287332471302266750933817811076491759061191038430332119198229203230233124168220012821314815719923318122192196248411941289812134149111221594016113148049015218221413346679105127336020018716316716521654221241745023242137421611012412290150648015821721424424991141159225639427140176252212869218229358512820323310215910110116811312965119252151931775559163232293383778211674115214741181081472362481022058958278111812417124222854168219621914111108248228205230207214183124182941132101141648218020822252133461502461022920118616113918916614290148135252181301611421112911512871242124207961089953149225419572061141841146420617541771748435137228236144244016314628246411851181081541311918590160195831411438099282101932451372381157410128141113254141242871923511442061152102278081712482520252183237174167190372403220249550224163199203167234204481472098553130931131141988320476215152243301602041878220448254238229253223122121362181372411313192100641719815914712018829210994122826196135218142249210160145236141249528712710653192147184481602421371261792184362009884254155241123407130249211935318218319921128249746524513224133223342153191232111137851018234037452153745215572542924716815722220923941962302501322379218369428836624212219107232411931631751742471402447620624512818474217227144178717215415167391967271601919553809248152977639251288724918123413625592274625511024119820522479173126165130229131376761284619997820722711278203117194316911812983781611258615812510215867225194177141176156178111842049541492501467121641550561531924720511273203115752052116623012116523013982243133105249302332492381721182672001281729215144210378248176872331240120112119198230241249215822519123166722051246983247121372113316521122251716325419516741307216226763201722499240200147107936751124179246121237562249205147115021282061561021997818710323711572517124920426128211125557100226112202311581852233599191402271285624393239244124159244156128244132144842551844422519095742231236329822424810319483159591596210011523419203211311105724319315017923910962251175235752232239225115311723511313517475226201134224698920217720145203202136218541262212197910861831842172567197218615222914222424158177230130181242156697918567127141235641732311121571161883310018657198208154522191461142321514759621932212094573465219177217921918216391149103447429322229129952321631101187094851354642130230100254179291261792920206201217410513722714255138597811117425024810110917720568139196321588611387135461051941511801713980518613651095663225139192216188145217155252133566421441194521318157152128116228952997103314610418911324912177102117145102241282064068102144174141160108124179811027648328119125649621431315810865271018070207422261022291371252133319912624320216712724920219919112422721195174175249208107172581011704910518458180191922181251976771155105182452091581811642111991421108029223216242233171109135942395810357120201126248178227841732316617122385117248141206232235157145215187162110246198961241661001261472919017920264168223218058520813050112732952215225219912302081162482451547915815115792559222952217022223649781923498671792392856125163223801652156457249136131202131685071292182021614014417241082372241201574172293315261563452195100163471206318330112321101182821794137236373041685815829172182461481772291701511922961168168106471682381260392348119023244192421911214725279216124512191518319460941364158518514719579131231685788532311572242086817525135215551101282483440411557223013211412877207155928613622622741782141771105120101321141881414022018424017148792131132231585890121282521562026715022465104311025642191347316520811410054253239134234721808418614619312917521102183144120516066263215992651572091716821001581084149551741542241181281261822011812819312958226227195197017849612246284132331942033924965254782121142271472402844283311910698411808942181147291761286570105161215723628921256136381061001721571591292372816513721180255415022783161242491581081090185571537035012819217218209684138156164713810948622326615599315517018423660867528931192222612729218533414021812821710162311461601912041372712716492232584788672422424533212232196493112822061535221654145120198248135161751056215816622820513911965250571557110436241122307522865784213536129591382139518031137172151543824225110151131144347684249714817613264124821100254741691911641127219216010914448074995334210680223237144145165621031338713155213751871541462163521319924414923415685243225245237199554999142989160185963559181211011940255276763224141671141551572021161971181801022502402501421631552039183662251601551251519316111248244141134792151822921764167128159180144159216210113108194622919918332219881812321544213054352672163141137184558179188711832450155381887140691531851482412152182049131511312139623319860606319510916613018724475105156757024952157743801710314820106193142125121228160166317723619914954178413111620546661238013915320222418224452255315415420518711215514178170111183153199255352241172411388011239261752351741562821262221461752072433118143202032313127593239207140652301221924512319125124611922111514013635217120223220145120188141023188531342328198159232254871931521102100196201232141179221720821162483924723717625013312631101276128571782617215618774916115811919322023517542312052236198252825357220178112215111618324318918246250198229134362225071236150610912710714713215772020624614022419010330124217218383491877524114478282637249120657244611092547424071204109701321652431902233042062121215411010935167321667248834228522297123710413143144198100026201641326218720833167192545121514146324322312068134209126133637227224320821322441741602451962362011529644153211106106113792032437620119116951941802247148922152129224620137117471568052541831931273225235763914415516312515392181001441251282446498974021213352236251143252883218415923758250671821262242412513112721341488515489401262519320723771922543331568224328832431562104825451662441991467798037591642292276349250127140205107184102201851672392477621947762192391579422415715423714718155180392382211917725563255154252209199497114515725292116242511678371737812418024519612315578651218818324920419117219124217710120533235170143183182301792119411227169246932321601791988684145215521453297208324283221913222952341622494114955117209203170208201221112532159221101219142179221781791821093923621814257235752522021271072292541562245312922410110212621837211682071207654411715118642789120279111127888113392211132173406716898254740131121780131204223192150186126209216121334851561791682522483724551712413824176135312482381885810016221311917820511186256021722563218342910924565562203625107243157164141134219810125414713864114190181131161293185102901127696720329811834226145736924014813018813416614922868521173192520369230245116962523341809254112172210326230179681223212470175417113626107931110815983164441071151742332421669111815851101591682214994147498629638425210874623319022610521233718218611521916072071554014310910425023216515079942336018910116019611816021610224813822710816322818638146173226136254162391026923492212255522242251102224721512124421318424721518424586572478757795213710290371251011413159189822492091794571942351891085121934549622020015315822387821475103154319923412413417165236104623022896148124211249371732501572391282223521532196652261765589510219225273200140122432431704269726512231632122142014871457823299712023513829339701701970202281732411341149623583217110149245222964222415410823426236159156941921051448170105473196186214191083021215325116512821834145185163162432385520546179125105108187751931596420023664221733138892381621871041736210321712520115824858219123202022971599150321541631241181591022444938962193663562113714519211813221706982461081903103703721538449131011510319493114100103233120132235226013381062281532095606290431642051422163413514590182123151551283961192120121312194219936150805013866517215486239582136813530160252219109102170137588211201231202711213721215874146551888516024822414540112164701968923001491371081601551803315110331452440211102172582426819471139616352722110177193371861311381207187216742262133514097135206510718518003729162243227200556122060120243414147191671814620612011923015113621513813689024023141161288420895132611228173246232421821932351666016412001401301421530603024216024326269111211662372071022239312315215152381302145162071081168235292442282087918613023511761001982272171081892018323230242450192359261444232164246721213666168168851221283151253807476123140644521513712920942976313277137353033611122221541914124223981183317612718832684817621811541841965966106230702502333282132171092939541832921921212424817318679951752492482131541439517163184150237155180941261301480902031971536192616058101169601011297510439188351322410102702161285192110577955249242511031042072111581644718718184108822947100250492541571841071742091963323842031342041608922301661681191795290175140989522411052041021428022021614085131871571041027212711417678221613212415824543971008495515022523816219021208185213111517222331981771012223811919114212364221228961493425229481901812191111471958820031899155239731913441525522240521061371110158982251701468934122743316322414215311914257752499022015314722717421577365635223456131146641569032774624079428762001511322361202255387198217158166024217022416123311272112016197143103122118417583234941541110323843681575799230471452221631772272471301672271171522712838161119183511602151728830162100154149393570307314584213923637112222207182095155216294786731222228242200222158716520914241123220179335105248711915614061881982042871685013212188591101535016524024617654240911281075851681642316718184167230121164492036458253772572422326102312391719618130224741281131861332551091042536416112312214548165208591854056105175187402327183245192151523924999130711591831501961201672291214811938551362281216312519214915381843632592414776019461229724216467152361916115018012410519830255180116191132144236252200255245127211636114812422824320899135132167146512216157250216242196251155782522519123622209224115377211732377169120168381121645816017521275125218941261241552381881956815724426237902918340152334211719214341266312173254183231622451972232321409205111242214951148015817710563106213118216701131942372241877918920022166604316882546424024995606181275489235686431932398319923314110939214152131846704417066175235163871801776124206201210320173822620317415221754632522068512624417816621622119151212972001851721411521082452371701122139411821292118801512181697523711710178157229206234203141544314258831641672149916219512794271901641431542111322415114018530224242128147117118251062081322072351621028497203611132152511915118698151187227104891761509213715018699151186227561449717743118161436137112501522511724100195156469816913924923233162160720083136133179106136141176571091966610324498103220130381268114718416877882081964616899103101145991416535117656721312532119025321210254101132072114317482154216325210661528934759182651131089924316717518128124931251147595137157246244222292411335149302155281952461969523913892209135451191344411813444116662284141181737115418871271976711715835245302111092221315311017821127271518982243193179141159190212123201102223618219411716221410718665589222557852395122123255812391951724180912321121818981922082248221236215876166402101721539110915748194206181028325422296237131149158253229220143281721482218222616994218160198117144121156831322011404921853955866171210486155187193160161921486623583812095724821336696140732324310198196148723956372004624572161851901961821792161342440351819615652111109813501551031817167417913218321621530951291821851214519592491561121441758113343237972026013970216989820810422625314091131242114110141751261391151221641121121210809914017812922012620014112197209212722022071662284178124157197217227321092444411323520314822322824367199138974562499913173195197199419554902381410617418710411189132504962761741281931983711471842252133671207210051244180871823814221214419981103177292023117523152107311284172491629211310233582381421424613013017912581193230172101581612042381491628826138419312513246651732092306661873221620829218179181191194121160210899510613191401682225551321642131861651421572311091237312184651972332069122524565022420711510151115020113118146760142247219135225101946793761341942433217842717002201861711521823769225136671222718192159271061933718178715718220895180291732462844135126649401351925021911823163822021375014517324313013110225412062481831662872108112145022212982058319216716158152121608615321879986159926368201488241741761291529716221232491618819219119320357401334121531372401782163919317255244154232151961641632246602402293222824120170201100163202101111916116240562541789014311010863190153246415818118125324838104128411372101212227012510215523017224511213313516119711118821475123206901139843148181061351666647722259211414615921621011812067235225245141159173996989247921182516613313292525278127161223132502212531222413719787130253903687089138491107649150124871171711922391266713463241882161111295915524785180239542232261842117323315564143127832471912219615613614502551412191452231362224230215241599610214195510619815741244114239762499922423519146194872203724624918120570582211891118419767303312691382071363837242239144181411501501236523920988197109172126101414499542372376186153154397820124775451012836136205115240136991802377113025115223920867471904114013230240327820421657104186145431791371151981521211951901423024611223959243391991112251875359237112806916010824622115789392361911821719723911678217235150145792525616308219361179192332331572312201315639320378242250145224217520323210817610321484861483208444342324757232118426975211247363239172196115021442144609619064761512825319152111181431605211017296250205401381611320242116204421142262301691403411425010336158102241185113321792085317920035189200511856415417847445787441325520199792231821522025536247261221956523414524414194213311015369238228125180151941285932113313616655184664024020021823915686961511842715111023313311010513334178662281221672372447977107314222115322309522220758114522332162311261991558158252212250196199219781251842452281232778255118253229794527142591701386913111765112421842189220124992161201336812622016224122418623813914211545129144421553145147772101829915523415190499235164163581232261111336661522023414118753144116179512182082306380238169612351646023816062238118254239222144188762066617510411112311843918938107195199170252198106361951813021882432172172051701186125213238211178642181682021218529743220820817522112341911621019121725512153016818710487249225431541391181113820837851841613511217819711916019883891084319110417318610017541181239196175562167314171791811238716517126202164196861252019412319717151131245942271091905124232314512622742290761882343229213018467376436765220175246387620013125127189123235692531419419178022013384486625581671379617111981125721636237174211421802502051701951038978021159023811019616013715284414318225114311947820119410221145610122817250987030582133056214228518223953842352179522921795412384719914318071207371511749819923818712058917124699273292281995511828942232502171551701991186468820314318921312622877176132271862423212914920620869932241148720874792001141112489855228711962361385411481291861681092214414353137522345591421741731272552171661439428184100552192326194451561691514618213514085123671214085139717418479212753362001011682181120430188971708920210216633151883331344269208322019112417613022141301431422141302111155511934148961658418265199135209236472192127172301819413915619216166551604119116168227924422611965321921228114249822371376096482241870821616216820170100166732322017022021131115131791311313413311120951943922618791415023463200166144193183163947321624410615017903619211834261732422241531451331581011220148218522532077942962545410019614725068232153302241364282492093062227206896282104234157249234321331525591202204405618327208138911121193634661472322209264862208561404813413911820119610427931219391481356217714413691072301732021331613024849851321842171001510111812498108158124165168133236685188682009201301831315569272549155324766161193167179117133208452042491351586910724917664186224182133412010320925417475118802321781311806514714724622654125169245643713212910920710159228737512723742117682131561131301001312223547901312531312086712321948210816231174651201611962487573911297192246313774627022050102992525046131121219114165551321175116352422052422437111292007910884157222130210232110412284811181791862329754109423901685710720187486719511273160191054792129519924778189104761128911161582188910715423317524223618723614020222139126252103515381981991974223921321612213816678214123156510513125314711313124461581333002915948157114192255202152122241493164195891018599141551202112341718261571116352402057921731160551735896341761791969412113454144642116882371992556610424388181104161611121868113819624616327217154108901322054536208422028322862164561851812452001342149927155143144481042521249324322518318410881737136412435238164473812864152216146145512411841536612559208132371432437239170101214020718913724716422013322315322514312921913187931571531082532224814924012313114323123717725318912987240205184163252213233119222101113301781488557255227481274819111230108252179975190219810895111701483815524328128591032531713572224275822113911124342137190115154155150719467412491462281241911641301601322161127230247309520792861601015821220255220320791218134103137210111322335158251333089694610824123810614422714420148197191401159310216059877159220292371881737881051086215825211519623313322618066155176204151220671581151421618156226150188215591231915610715971901908724662215212188311101917892457113676191186205421185924401526118515177287133121381790832136176234601142469183239199831421691232091114323725161119282241391378981926201522252066660139502392492547315208182182132157281424911662187228183156240120214627948245228124255180320925691822320031272151511261240417918252224121111199721011011920015521912212810001956216360128429619419261107191109194238236817631151321818153237741817480152158239149182871461821954741544457160240232093112414612525288194177207124142127226112242992351931881562509620323315541592551121152131718718217923825050233889921613842225134422411864424615444106176204163227232102197913919020317421177190432361698252144180312231721891045921923019117210251162432502032382422421496242173222248171224193173112515122114939236148391565814591248424414712720412122824825512017324551231129203126613716219350175145421724677918567119153131166216901211931701911989978251881641415531011515251109254752028010414013314232252568512624817825214022910013920710017979111133171226323496105132261778615910512122417234152182271628541775157145115234208137142554112132482103423717011483149218171241919422749222238199109280513611261962082622724318672176249193102159912120812410384951311831722167813315910648751213218502412450220111366914456212236354717721515018766157617119423011781115581040501432142156100222081993227242232171607115425323184209139186216577148652554217224821032291931431251412156437136151879518516824713812311916914715824942104206110235561901772532009124299271291421951111697811023860107731351481572229810424119121315524210111922618237182205017124415586248204168253131161141152161465412489313293211133932351215583248138618720079188852552541152051591882121152091061772051191653510418219310318220911918074522211282081712391462351121491361732552511512441512091539899117180669618253824171571164117299166237128250202136166131946415161671031321582351206233241229240169202213147220322442241541361312275017765164221379281140212138104551613815912910582152237240229410894831401462412127617120710415714423021843931992171779585711311752377537516615536144467149110131108211882340234029200221671313225312439162332401208310228129811212821717921810058962121561364786122724461220271585110848126179125128229681328110923021326842129252276254721045716323368214129126182217142027771993720713775822622820879521435911238711235970212271981112254532277030361437347902202042450111620223616625312423681442385053133162322113620214718522413835531371539815230160227112006280229129988924984522217218143210524018541317215420620179711020149014218716452152170978241893513106319565125222661211187511115332268153227161092191435513978129641795710518016019712011316412069133142461405613650167239035211180204177447177211517332132331732345122156193243108136112109128751782551769374193233145206129252242191558062106659212110611151191842281721579911715340132106103166366818613873611220300501311605910325114257400255244736865846712212824911331301912351611011920810724025122275782532046581433568924824618430224211614924821672636120100184210115172706819073371801541531771121031641401762122512510881725567227171474103469424415185732143012517761232621102454822113663911824413524690293220177711642094116104575924812131982712912812944225501341162065721057611651045725411822032181604180103173200111170196121066197142681045918273118114118711274425119223923082955601971775819724222852031279312810512512315512825236145187139250182184611462234123812211911922691208235255824811819952281462197238372532231361872232092151312209315225518948163801468624144922418951769715563896104109241243108111963915912621185201812034712515936163819419213111398119622151101002162281206717012825169168240175249179250202187212123890183768612012262218227231512354478250201112141307104137243363931912094521259126183959012936377914690327620191431411725222853342087918824117011920519522814756249170624081229741281832522116729132152242241131921152511261321841072362934209521242919214125253151233194501475320410818920138473814317266121635641473622764100741741871672233515660172896723513731212207492464012224413016516787234942186113715320762192403162422913518431145712461261391682371511011419188100249138366261983535215351171674812118711174708874100116162215190125190239191231212347224020113115839631806224312922923324718215824923723011523911146249216162225132147166846082311081041391861661402556621127833012583304989352141581771066317817255203279025319320333023022919315715128907910886951801471591042461531082411571515211198209317720324232164124525203142163155186465611995244144311951432552128239961531162241388812521886123221912382463213931215715123684231731801512361021012548711722561532551721561576422023818716412190217251853211208151218851252448224320918318620315618620328229103452023118314118372161112138224553881114129214197146104195137287133462082499522517917014420986159158106247206114231206101512229020725852409887212156201221159175331021873209210225211255250116233711751282021156175175242241082421538670441161984611919947119199451171971463181792824744902321402610524314721219247214121207168342311804943619111574920450128501631602516072402246416384912386237151892141471121733925412211119417862102942949209234638423161922316181148073912382442101421291168617126176652924025142631771852452405824924114115483915914218816560177891152026611310883247691351011212121731932955244105115178881316010670176016324415585249471681611756686212161438851612155222587181971795022325474103217241183266212417724922715185199214143871869315154718147621512279214120205532512065274392353719245623229162193742391779019114510615924158255225421052073722576115232130442828125178812106216872301101041115610913336011103912151796123665238572212312441717102550145510736230138252224312876271442515915518541032452329711341218118452461371971081341781135719341233881578188194231642823614724571045511522497601522045184692545710849431903712411713615221516713012324120573573339671241082194425201881561821861994582201492321116724816618511216610163414588187731532318193128412791731401031131391031923748204172760523615385243164114452526720728141168221022824160137314154198322373681777534232672133619818414819437243370155601482161211069625217273164678835141149220480642520896232114015170195808315322412714118201113020010710017576140167134170169411644568958082021641611662138180237184219415216083401181602101651832041901551400120831425321245271237197109021012317421624592332112915114134138872041192533923124882342383219615619914736561837711911401472029216512381301753529411201191848415622012251605710713711612622188534741778250145254115619324366192251333614417933142901867523716711223151120220722082171051042813616340682495232075475241217244941144135619214959207227891549272442372151281992479511825174240128246420018339986275848183861104278220860905012921512459143130302417524115411014813014551109643068144191891657818046130202161564243142168163124758315013172157635126143255914018921213713919148204243649324019791201442352518481082533741951792321512301402118616659152057035220121209154277948242247014017624618818114207226127488214914420578925252145244128145252253177403214911587452551179716624819147238422312471281051225514063542161512012482539398224155241723211832446020718012423914812425519613016018460739620679159181492331182323335479112019841023016167228123166230965701412065110217420423020323941255911941687104706321545171192131246202446493174129153631252171581571380138122526824022818655157131132177187124211139687318522215325160210243159243824922210221521518916315614624716025781081294254163481491271672469694641831376283518213711616221098415485104291831959446010331178225182374941122491318240241182243219613261192061641392331791210120144311942442121208021825416018418317310822015211364112635111821460206244192151853024020462451918715112199331781224371915417662362371052471444517892288514919021537113187123981421111068668122108114166255207127172442221113514330105624613721913715172791891116512222418945231632168224615311723557143174102232411661126712324482712442131421682352914555211452432052546710111032163248188861285146301841661391541102452351862262121141249919523123552231092451512865227192810315424143229142957160210119217101166331121882181911838422085236165621311142201864618667151687911121115817921022513518219618225113822764181219961731999615716765171762130461148200312202642001311018520077125212130441641652501471514363126169253212382056910793169221961732311885010081196216712129428802129711686177421161421578860171445102804774313016610019917362324516217442183145543110404014638623768201651711162192735248228215223231946725313222611171621772461928953136623647725211547320122068127165391268230172197175108179311960114221117048190120024916171634231641471801871982351221272421732252441211316475212140601001848150803930417117121512511281761832201637191214151156248257024421112311815525219616621419511120214211012818104255124157101222362288622924120519510123895232181101323092211165241001771791781685714012838968622955175149021413494213132932111329385336121022181252504215714839105159162703892441034410323518823154252121362211245146185226318220380192162441081864196180198103184745092411531721524169150234139221620216116124198234188153556320016811218621715361171889420479165229610137962431361287424211692114187120719520137152189736016175698222731904610814503013218017569341043483321741955366606915121160188701032762117841487720713114034212221813222118133781975014710814487226226204373485148196651911613021014112934512233315813593180761222053424718870781815769618769237108331982251712433214272098452242373311820664165497319518799180184810333824232112202165723959671512464621641241240140361281454177702001834822686218010229160647416916313145208482108120411913614312531431241352001826442174865222123651867916722160112188101921621340129262011187066155333919823569120222291636468168401822491823834145173220239392327517318548128121284823239979616947181691899614161151105110279896178222123162861215411114946222117145124232241341861382015012881002722217341601612000128217351792171102081232171111162524015918238130217352150143916041917162013024414299272283955331942291471444376117114523119993164160706820830128871048214206164991332781802301725314801856157352311231141731856410313865186436412140841223423414176698198157172240237241781252107228313312060100010425040116531966413379585204392308117289022011865237133202108171642880538224012759182097216435152052359536553614813775465424420450128301184236461138415817880156220202141318624323216021198719526474651810420791241163142211674511719710013319215951871255111237395135255861222242551769924810312423248174245019273606615146451261372492544912315713291432541203524111121812620146224177167941782113310225136230122167221362101024813827221621971564325519924405514128646799120102201221032372437422025113414115922425423120814025130124652401624420119180782247175216136992822421979187165233562572512218224618466936239117731017514110515323921525481512371932620424564617711523892228150891764632225959201271462421518092209246253158164108878158217196239239215425311717012822350103128426442924474452407741127322131241532432182351552158302083012464240232125180191162440194199158223226467320324320442116207023228317441622512830128622486216721260175183127233253206175925013860115141361141386021011812236165738283194114226831181332302982542511278253248195208227737396311462253254182511912211142466113924323911145253120912218171213691751932341601531502002492461682291422001712917215218195110200194872186638170188116103173594721620552251444166150148161208395246198474267101167451061419016145182235175116215149216431928979911042062191402131382321084410921215118621617113816816524672678321610010916180193104149207104149120180905265115195982422381041454620031512133320321817610177232162501049430484715928064542131175169195190232132308232421811712532281491382471591116119012617621810994171801621391842222912318959142251411581844725018190232791885714412099322251226322510695220821195220525023534150187162175118199442323438101125313162174106183225864141927411123660109781090791229618539166253130245191254821601882364546333152610624612936152144520723598241621844716641135823572301063145512081481856654441193926212209511707212891318131381067021206245195961477911115724715638234122952107487442441921806010016865210874523617522148413972158465151841199311823344113208941762091788970144921820623924025021420721553127250122271733121617258177851151142197618925517319029951162388886102173168115150841531151381642331422322011822001532461525692201385011869251811728958113365272458124717115611710318320014191209248225111172396339591881742471302371161411201851411881341277126211166141190752422402172142241779019119311410511916912017650112180541882471786320811919712716850112182372022083057219225821922212125197101180222203208172167112395181615523314712652212092504310813022352195205153125191209158646224132157108221170278711156215823090797623571205813321322874418601941422352233156104240154106150019141986223782202352154293312786021336491802492621825324020114149472324366225971611370236641941846642820411124537177642102122418110821422312182158152216601793011235024240109611921727184683411017811021871271782491262182213719107254822949219566100154118473787126232349017911218773080232661892313834454256719252194209581404212277207114215299021964421941211841981091628152221226619447164992121522512548053218318922820820512425014521402141223223188612223211713226892257471167971964814212421361626115521519513618216134522711314060731450149112119321701041646795715520521082517767215372716642823312010858217205731151931781791961541192893128254135138676916454017615125213623611723173209291822081532670138142157257371311212089120155012789120107156187243116161071361112866819289193236121136754690452988102244442261021542311099215114012248241443111914513016762021693420211211712918136101592192148366490751221921548419389107213417516104481118010920617019319721716419043248612005524401116074102138130281531682224610127222523710018320010813021871171613924113519544181602422532520181123090143421614611517219941371371016841332511522311526671542251781168114521561031323366170160220189175212169191462301481652341645186214127217169251162173254188181238236182788137822682140121605710796116056185258210141212951802374217727170116155160227252254200235137255172725451193521341271981191296312930024082241541507174239159922415688242814710723118249240152151021460107521722024722015586621169133622336920831621403414324421831162401059071111867612424715814619137136163671216414712763200587424620124918552165224137215284247634388243180961323712742184154533951541591892332322118119555379515486327820719101221201012118517737200208318090250235245064122128732683231841191442783514389139414362255192122712192481573016622720115230224433721610132213194128231971571301903018420310113151244647019048179208591732084716548441171912083925471631221101412241612512321249823212931220711252524984208831115712237239241164195107215120172210330259218152151191443611210313518801341722531942362207180157226180122392282481441402002209516525221111111912425210523410373578124234125234671991792398915825324720510312710711322561139753110917124920417423716417123816287127153116176204187175212163247162115239121135621301632461648524316711118231221569222997104243551807669124209191911681083156179146159181156105243191209215121423222112010012521122524516010711291292155397183186981102339933917441163175412261908039125169771902131531247515912075311197531243165622501023915760112163512421545412469197015514166920024084645411311111043511017321031411591891909623224025116239230707920485125244741032121784611489271771621439023313894238142942331378923313751793911619944177196171611778718799145978123571711023311124026104242541041941527732114177431387110253161221181158186105513612951252041804211617219519123210692244948167165931311601184428823214038160136124120016041115129308823373501049810284144481179106322101606560130175392381111482442121383318174245381741161972051073419821922501066893212386121308021832451923710393177611571920415611953103172110235129131175183309043591861902532432459323123611140981112451089586164472002101741701151502132172432021802331421962332461962171421641211212101785097891718940159586134932111324720031341607206109811591201712452118723422212317423316387523918214214912324261642111172222083191811462251017524190233801651201642181031802181751876822095230558421210872248219181111047524171139241741423818636301702461531101321095114234461152511115066281301691918517516322166241610763014420350912302321941031541132171251371421821011663154213158100711436506454765324920418225016116176127132161222075303767961606420130711441351771272421313911020510216910513528182112150113104163107592381142422058723208935429107230941844195227191771361312202402033348117182438155721599216180102128452764104166251416616767031509823525052253791419710015412325173110272486115122148661351481720971191208961541881031191457180271229617820115584772145213695719553180221616443104373341891011043024412819216249681631121668550211234618615169016198151281693322321801981831814133229489423913760351811201431207136105152222322191121870109168130210321301422018013773411923316108159772491964253335124022281864721916222180441772311386134188254422116923117829488896566239832198913071104482096562122169721969698172808755243107162161707925239231175182391421228415451123629314155849192291351221053749109872022450183422248912517713821671541782115621613271112217115201232894643614411112912071924322622916316201336813611002081573562132241431511941157085207167240153155132471921777225641392231582031646312115581178721981514317315719293814697140631731021136558107653140990182156247303764882295652822335785471531722472301032308051311011002052241907602181665810991121077011113799951379924755924573112292414518919711813124191625311214250115219587318881052068817020788106169215809216482230901251512296524310919024310912687149335553225215213223246601782231324622725010361240159916649252511901125213724401193193140832423641512620113319249651131218678225223255209122182176248731292241372513012521320251741541484373431616623012110220120100210233185174236891122262239515248714783103153125128241181221584818919255251128119226222239631831492174126202442116020013613143632462241439411524213715130108722032437435612241537842194292261321492431174565582381742143196206183239167681166318723273107491061852552143167248932388059401501558562331031381336118710252222554396231752201171964137118240153101163857111652225038214196230173223226201142331232401193247238231241271336193262302811722319143621912014510218714447168160149220251205150114730481115568171142834641820121102230122101188237147153387812157224661240552012391272422461031351461432812611218012425067199512398915824924720523122217918424812969233135221013191843122021424418577203971712141951504513554531272428620316711118129922231261049919923115590141891656010149922295781239612212261871621371842172111120812610610711113321915161241183134821672192522762952151161002531884423215438226170582362032061524758991101041621751699811116819191208381272171531141711172252178512461865422617038124692918617298199144013123851931392022245691613716920814658116732524216562234861112521466016228163246211875978109213186222251211714725470119441481921623815692134843396249192122234472195820586122071171464716232621692134235125241215251191662012967452101771419173121224156461561403204626420392161261631241852401626210217261160171905221430521751414910432698225820174037192167252332786122193822933154505510099122321227025913022211118215176451343462636938534131582429079194156581247422522162241734711523718822621093238222872295780452341751824614818711915058106462166612240616184167104617023523111118112519017423724355911418920965107139551411481231261697318816920618416620015310720515210577159151103271002517929169134142148185246228185246132378919417860102737012222442361446096184218165187120912075751971455523522212717424618320718131902159523652812295381237532192285981724623921411521718117921612116092502132449861957901955842563803018720817712518038190247114232961011522261729110316925115660116164942208723358218322383923929225881891201881291881281922306524725121710223120472211731552914719653019932151228532227926641020520112522616715512511394520920311426115110575682119832189281012061822491131912316831126811013012769102418414499198411858712843762361449086583512422152255106158902381351328818154148822163722713310031085229768414321021616252088613217118112271752042696114421441042143368715223514463472652517316820818694202078121861431632109192220138724811216365131231911396880112469200861921486242327876154150561631122023254901354216013360392624011860717111221512910501801504112910621522526215145901404277237676624698233192309419710231234519516818996141150163137219632119951142082121923246218961006424713723251107095402042363808396255921514415516170701222153727307118940101631322422091201884464959813912969119184306421168154871676210316918910477171657481151833112377358523816020632202120951362449311348987156220140911242421581815312314315310311516732641251982113188116602062451281502331220219719993641131061792362481982461632351216641189835821601032305821738720219141148188243129781188024119221878010924219119123616219110415109014520820514640417149714119819921413114317019614212711125219567112098468184224120819924190333480352321488917148616418714515421763717048226138235721491698961886316317391224182332174206208107136111021722445212652131561772345811120337129246180101791779311113718925428181732452311731811674584395543791098615622016419110461813992104247187169131912132911575311312421725691156722117742462392071222241913576992481031242324821123211434199108331298711415811925222216022834223232612214297107301211492091132242011596010722532771443823174501068895110233185110233123171861661681692394224321913023716422820068133911221908712265642461262392481191902472043814712642376019622922713610817624210752032457522143782191161224651701608121582462125326227192109434163230183245192142360291222245759169224209151158181161371472431321055164115192239201236315911714415818667121529618215242114215344216922415894224153703086962461582335941055146228210576158187522351773119112122315431603212023233193247152361601493124127331931515818311742442024224020019213113315889732320496122224782516424612614323631102001501899515218571156158233159149232151221815023393248171208247637662114402302161671167632115824981229621910523212924718315812712711523319922531351091551435920279591712065610520658116158115232190224216952345811619799180665686412617336952133323058602112341198527121933113372081141082276418139157632081595622236109611901692532121501216920013125204531092281393244851172281785011469251891621369186196474112921637101228162602017819332111521092475118025120511924820720322008372114410196652517816012931323023214016610976117179601411352151181562226020944185161143134321852092117921025185162397116019720672182265698943157223291812162717921227187216191792081913116882262301301582161072532412157181501869938228112524516219310223921785861301211862282449487123513799391001612531312622723716111515410454217316913422305068751381872272324511343611371917816245212422366282173261601248668677422312320225641311801917817816814118521415796801337718225115213137244101206186203206932292381898519425426175254106971191531551822166512522290117612198178243172181238244542171451411091352141813090219248201171133118922012223214120611521413438255471801371835811517441118244148702541021991521019713035127179110186412271861222158212319882123218136923085892106691248162602321221032161301941278202401382212083791253153205109795171127239133198159520915918230432314215011167235165163961591811101472051461901020725411423388109228881092521006725076243174206119255150251202219821931357942917013815910575241111494806924487187245851862458213410669671816622191018196157761108171741104322475225010415133581071081484565134302324371165141134702011761921241292162423102701122251199179180881501081422421110012124100123191294613165130188210604921660163215196164153676023244103180521632047260885024279531221432131025139342261368399113611220220057150253210020837015501474401352148106100591111325414118716464104181572165716720992156144125128233419618586193354182176241810114612158811314320117387911321011120210811655216161422161741601201617830210337611196642081196820814616142208107247209580671296078322531914134104324223984661224235962377271548613613525411471164831078914110451138226189310113506724718123172208119170133228150511981327812640177197176116952301461283825489165807424551219013932219337847243323489214414782141123103177133182122893718215424321932380540228126192713019464117206182133319123816253133512314912013118915114183254252181114861315015234122142062231085521915314813152012319716024596249200625332591821226111916726196211141222108981586215161131792282241018212421602491791811202215172199831312291962033301921851051382531462111081794713656855119194123723841117228203056131231203166121831854069458209482125989792421497410294671846817111211213656332982422398214128593712186432103332122121671994215150658712022646821844264351874621832206816060693822451057524920920520222791646571438510714513822312121101453618496211525311222217018721612218420210116122123113454244868722845125196771092161377216775024070147182327718421315120068192127826164029161691352302406312422432761222542511285825110361240932257917071921072111411991772181142531911219102521632461722214410294672281933418423915339941812451362202381558522814993232145145231158145235202245016321211914924913128064714121123714061591611561402551542422071521825417411121022223963179145216255264012919976751382091220822913515812011317995226461592121899416912313316024211688241672361001184171461411028184219621441583922019015919915783247621817736120114221901513215914012519418012416714818920831102366432611971927588511031128182243915422110131112316171111051975237206419335774324279421782338174121240251148192154135319024325375223127128431825223236024083751591522131221921572010179304890611031709631183156415136825125250226195223142782031125319717535222251322541797919514312623411923014423220471143812716120519731110173612341604422245862481321541422155762122497721425076213741032341251214125475109334317820819724696218231174210991622222190202171137184214252139523314148214232125107322491391581841451224713612923843206184123189511226969222234139178144695719413669892121626010265301891601369284132452026722228129236220492555715319116120515113212920412716622123122968121188160894209704616919411023220062034111388025521727205199222261092409020970441073414497692369466793209208313914020847118714724519817224419993291369523813999983226989616959122185155361342001342001725811616821712318485581658162179201212161115108203209258523218822132621401091020512201816017524226105135016816323018149111571136771213919678411941661492251158232129148411211481749282411762201576498128443366140122016510519416785161253245222221851621691422241217722818060120184812108323321493225170191226210852305480235538823521387372361902619617558103173581877712510215524614014923413269199225141109159189213124112109237251472131252401462262481662012624117323821291359111245236185166216249871371071581006181349130225234132249182766775202124752261141232429891236124914013424115454116942386392237508423848862332128710821324124921823079941092492281172132411731311519216101672712470216158149147771902114533227131451631812413521320199181153322910519114012722820525123317511315115996168422381221032467671248721311801160166198125941760222401938749121509573134224025113762391716224512412143451293715931146101802211671451231027322427146116149146311712025576139312286523921103228159109245159106146345124432421151513317610012427021642159107714162723016415313211471016413170221145173112014479234951132698831732248222413612820131131182241621484368282491644466362101312208192128881121702501692510825534847422015781124183181158224244820930481051622151081381577712083302104516613318520013420158141231306820812516411517712922216128601429118468342070851921013103237401292157210161146865128226672132224213101427514423920990721114867179245722817213076114131301921731611068214125229701691312463268127245371187265225232411205715465772291871691785415511424250153831624409151023275173187462171146112881701989313616521632511464522667213110124145012063234194128671914913722922341435623466517221176229415719716464116231092001163169198150213131131883520667164128882432331270173666322417419015244382497418481232055775164116179125138382346811510912696180952323411110420122122918638252751252442315714524323712624854116231173801410323715619035542228157291211981662341534202251581101447821412111994176523311742442242357248202119625891192265125324822280591632481647517199872028778163229222610713244153105146325217881021660458338102207196128893322068313623851147518301609423219110154241741121672377417160161131447973923726180141141314311321215717782159180232451182446119314611513330128182081581772081571812121591837012422413822776147248154422481506224275125196173238168919381215531612158433100283249161191714725486223612311922324559253237193126951911124613750255729660128179129187262552231919820991611521271983113127746101284913182211214254169522619692159196252224148342392402376312321314225224810512230188252103111907318818222241206462427220337208831239321124718610023611734252238237170248174862323239202180525753215453721551189641481463977206112036016150146251196203276425351301352172465924719238123681766411307115812120561547986414813416724260216467336612024910828190114402007406792112522202431671923518713615760176215533511917340252241552955123199721931912111141571461182112267153180821941801972342216458662022915085647135167231581652291461321281981602551024215717924292178114931782422164667133174896930153522221713312921769182210104193247642223092351202403319324715213722420953164716012119015331807726235133150208301756915889180541282431266681441141924524393191622323915618115255255851118738221019417916211918827255235127742541832471636312022324714724722114312622612623814424324914317247190191165248189131516221684127196709123657882295120924562112860221285622122863217232598635301741614286138641310315531662612519923537227180247188116813012467231851621019379178236228388020491195412151812253272371995576537319023614218517413988811453520816234802451591517205201310322925417911419125153207108135116166935022123861211129805021738153108151206200252102582522384331441111381441559317713917020816158209881471963215234171246168250244181250352351342619624323424012177440245821035217617214390981601011935221131177160153911613347118692205742391291208133452157972432188013142216160141532151322051051127319923160240593244156381067827512082321671862365421026104208681752443693239751552153844232822211710599173811923749111861801491744413142117168491248614917621615381454817114511681952310217413915485210171972431578199109254253117226418916106153814245215102131603532154229174189229174124781891911941632511461392461301892501401812505296163581014559102217126100107219225452051355453126178651182121141687612083149126751552551652262211492141197525418316723714372491752182541052311112516573932366717441515025124595171587137392616413411819118514192119162172821210916220916319122019023724821816619517555125254702192092459315123661051677519119320212822220319313121320967181137197711179532376541909125494100154199154215215208725017864240155237797754165272181970235124617118919826188161438263721120519021120562191314681182222151216635910412244157175123016917129214352723313226903720420130555024717967652231109248301338082482281441433498639541802492071822502092221514015389914478126713818213811118174899176106206215113139147108238474182171971821987154218601488143144452061920685625123118312012402492173720040771955120614114411510123818613156107121220225135566121912119188311191612524082137514724710894411517911611557162421883913820713219642179620192185200180118217116136243472225125653112151248563229119121272502036523513714215841621094014718795712924113125367181695398312821101152503955161582002460781661280124116114136898213117181164552161427336120106421011631611667590192645413523820318210235008501320811515321446351573119392633120220597517223317819419710013321102393221809410920885741064111153191895270117380981397120413516131641153764180158123692123110271521861501733101841991271031771411780263718224831121636121923417916412190166918716971451412496631125131451121942291519320995232163110232342324411889024416424625254801188024310112120816244095112477798626011815613611571124104078214720322172032201344360104145461091657416613119075160254144198016152205207143792302321352305215317624017154191852431991371122422720714616454017601309110211217313098249451002305099140109167139196338108182157171477318046222713433291692461521091467621410714466166010713261197118611802491468523119710921811522154179911991062201912081331272172511393296619812922215291324118312216211011613422123413718821729126852318816824215987248114212401598915252177241103612401032524924039214332202521292052441287910633173457841107820219516525524815345108210250731931541599190247194708148818475202110183212189761523611373219227124914492521461128126576412100215616622917424379120852097191493520413218696135163165230251164201321662391578218243202102123193332199180247141952531307191391202241723212913515912619761461994320517271922036520221717810218218539199234193228325113617706101613779223235150153231158184203453471201837514615823915320223630441311532471756165642042081222232231212922071561252419221512499951497067188119236714511057511021911326921792439317811157179247185229236243200422402022041511662292182511981019079122013023111933515146309671161447920341431731191124674718547132302402482212219221122322111647822111631193825425223911912612052255208145180143632425924816123117713123810314581562552161702446713920331109169249220901182252845886315621320522112852219662317620552251143215746203240139229578645701241887826148217232349112157281293410390164163234115150248225132301522398801592231666218313236255861112208577216178501522441286011220116872231228117911419189185239172765843147204118641213612916911824168155241460122192642066670610116156222250631785199255225241911951693514122214915919021411498211641731047821708491291771601411001940242321081421573619216501671115772157110414211613424168462122591951512416892361408823414090214714766198116199442343416758130174247379323979971113016310385209111861846912522082871941324417225024021422624721524621224827212737525024414917420416578194172501059414752167137155821341136101971941661712291322071681941662133179202208107612412151222261662165125531582021391822188272103160155213158131322052123893165206218243246218115182138191501789922186115141572312922919918318112418218523322419824619515022123933810712517543210150912221581722168525123925422515551751762211215561345625243203169186183746199246150611821139181231161461921652819353711072011371241722229918022212516220911518020618117911691235177181531591882122482499020519710922110114385162158752101372501206712318625482248961172506822715815479194164235168252103413023513020119652192411681932341641611541762259023311610719276123192481095935495713723116719481033311962157152101517613319720711581532282148022283568431360144316622512221714631901080421302431261644817902174624811711801941842201011781371423761074893623872187247241054972428224811650837563166208771692486317643801598121110216318422816783129511418421114044021821231342021821241613417875212156156124184913046105247125902481392031102405416673144129891223288462286812320812923415114785221025425320013175220371151183917677721132038182176244714207342964541461638155346815923941175200921415898331214245208238254118160254228598411189129602281621317512889157242128181674524085197121725214478230185132261858718170352125201302132092186102151647179761117281722131119237190108714454961906714412083100319618124487562102622643246228203842351428211451001921934097241932121722325701401433910671684205671274111820013411974242207228229133144230254153501882217132322148336180761801861392141541186248791212565312419225255171107218112982521221511717248255141180651033619600851922291931171092488511740100011293291341631151491212221062418177865688781715584721620214211115031223194151162081806121922911516819412514423724619523123912375209549090208851270110609114115516724024933132194233465311813275224414523259250941061431225216351671677118472965811532497114213422522181457159582151572161252769163100228652131362276520142146332416627189391076935211101893724616322123109251752925010543331802149011919311416020411319020513544315717555216118318615211364231188519188164240551807516690683524511032137812585149252528915252119424524720712222418719415988150206251212241841581052492262122223180342232282521922281301762123475231161931954748794224233715988183892033782176751244233121162172221518018911025185110153185462042451361202498712915520628211115171137420725319016513522471175602392223625120695120231281616622816194191212194208212162200212605523917671312512518450116021914524362178152202554824419267207190202245128240912351190151877246223732355710413063359581661588519223401471352071571212382100128435276221521221618320294225142324620118723921922432120203222582541091751576339213145852241779931153811424215711410157160252321483240245922391809320633491563241180962056710742476332120232651931951520817197232224997615602442368611997106190489915939192231612713330248185911984722050126238158241174123230126232321471721891461407673927211615424411112614725221716123667159681262421902471033112028255212227204651512433189952501201072293320323014714218822251121732551008320820896212109652432371931794512922711721016174175145421751371222331161472237611519210016323976179223851171961384210873171270346318112117621023786792361731901201122217739218621010179445219216215611879064132865420641210221254511221150631021024015511024715910624331111246291112461551082451592388160147197148971397423212920823354255218671071525523724721337118551232272006211224024513499272501066961012465214916713815215013576201131166201291473876402533985183234192418532342023180181668512941962112863481738152814504768324521312182293324321823257772441483411494151112181552371061112341626224921263191252230155194245130202671741910957211242931151701892432341888919717489101142651576216313815586692045012517816013167195209528111218152418920080163207881712556827116812401161352559617310387153163182212174183194165151561812201211762181631751819620018117121273119193651191939412521486121202901192228111521419024917914153239191812512251862463515025011206195211462332501681851982041457525127292436713612910325831191259080247129207117851936612323076752126867192801812340531092357811024149315123611619721958754474223739266579321167558712524811419519318352231237122203193197165221151130123203226717017925110711810575119253223124911713952484712827102915821156251392258899206721252208077224961812156816311618220512713438239165108103334915252031671151966422019323689582174184221098192208226413413070955212823827218252145194109111201324521328716223820378218111822181391822501812313892011116261605393819927178316333821012158205181371589411341074954157693070432491416422826196249163432739663144122473326772153172247154106161155853227237472012814715204877252155236189215232752371121071302378132266552105134155205250163106146422918081382541301362325122614210320910210615810516902023319075786810822333702022098318610041232412421402141784562107607210816014596132200195186137114192209819312713351203256552165440561042506816311217873411287514424565182164241512201611361254413368289451042095115916439210151467411812231121046217010461066823184212114420020641115319772457181168261764951062051501622086516121842035966104962223207190852327218801361022821949161131204242195135232442262411212213215322402261922511711817893128180231182113143322061101452002211235624785157177801581811922271208924329254224247954811021663217176102121807771212814241208132209233126170166814423186119236151157811921377248921714762334012921710223384163120176204691232147411721882126981392421485184627263168631206363149140155562032203212152891921691872420570195140199159161145104518416260124147046577123114725072719524011639416401021861431431506313316412001951591652153952825520020531631289116471522229618715126215962449723213823764657246177531961444208312518018716812587921810561822295822323817916210188174118986620418022412732072252615112942391602351381411662166612197179226252381972492059252522551373016023025321795232207248163224791757015124460247180124798024314812410511412664746572114129563623519755157771872531281636311725579214218248198121371892271571453961292062041032039242220852239784624524867961271125247215910223123712201724715612563113244176024821267271576150101891791512016520941932541691333341133209169249225498911118819089641905215172129816321201281762301293119118519751971358790174404587200244085186741520897192228171992107319312418715821946641402472111469510512432215124316242156441798902204336110219792327511424621738238122204198235786662321200310412247172661432371647156114242291151028114138156115246653681792421241782221719739622492341711302512381352121859524019213113013530166019425024840195253223127217194539717548189200511892003184671215224464624419247124714015912314413716019235107183797017036218395820125321512723119232147180796312612441612282003916222771331676311757247145213165791828612719017323714011587153120188411201865310017891701921191821493619376751926813122312015723984831921247120014634124652258211236632172325120922422185742511381682062107923384147555713424639128521802922348211234115107402563162115292541117819269691655112422825461652551721820421911126209223055213225552133048221305221322602096624111915610615154831324640195231492252083134142160241385812624821410425015125313719513226246179219267910823817024415285134205341315098651967179239218813146124787548232194102117331791571616125152251152504817818482418033493200921034079331871292223663100651996610924817862102782957163843126239149237161130146792144524716492237731892181471262462232228117202522194715815810412712386177119901821031683316723776120243201224177182172572372462521237551381502042356623822511218232691091726525137617523222715018114587117171116364594147452261261664250429316246871852468718511795113214931162081561798315718165689522644591851732331791411315918885255241186182207183106785924495177854420618119617518018961891902532917253101226239115203671301272222452429891254117852221172372462725014815522111387531713924222418511824011715920990151765223769112491532451701152713410615619827605323118321331124179237168699515310416637124188621701834490871541601871562229324920613519118661022528064122018110824913722423911911123344203234171138311741519924751122229523153211226551351191011771982072063231437167711001281419811461251673110107104134908502101118614228568455423913711114012414110415581581111111914519418114310129182233190228164991941281088681013713714255120775412221146156245180336115963102236159152371202288417910016669102421352047216425238822111828568164134422011191362394610321724411012691538620144831015240119151103945814441401615811917953915622011537128611213312871184471072452420681092519570103023133158261034516775162254100286458138288547413210201121114335681190212197167237205665821249814722822310014721510827134202320538155192841792368194962124213123514778961106610417619912061100919814117210160245401322351911613195136113163381778320420853811716037200684887719741815412919919324524910184101412092073619154644371161978680220019884117334224591561785120323201052542024815240141134151931588326678621089633132116197541382119121210811932206122161484166243137651721921702079011262042318160472423769121322472505881531400224253156253795567172146191251271432497526853510115689144322687201931832442092152139751771466510016093712176193715418031221885025061647557415721216718324122125311723116185232116482321725132121962512492061679221244943879331121162502610760192222425309588140239226613613911006713647150631428501632271602487222512201510236722251194910424491242282001431161702698022325251072383519654241655319613624714821823413917311623442452317318623211657235190101872221149193137165174216162179196829110816169881010821195177233173180311721132304222420724612923928119180225247193311902501533025517930248174240255196620612241501502311531543974206131302407720211722021578204195164632521312152522901582022024724425379189181851837742172371578522414993362043473061641265610811120518718631281483188466844163179312172362501892051749166821054111512216111974129631092041914752971831714024823310394187792402001251801201282551231442363156224215415715556229291633016035112161086111521723121282771121051342015696982491714401201502013144123190120151193168197615195915072072101069925233164231109139221190453819915345336411723889691101446421724920610031401122042172311569322815893232149832241551815932611032375427193315175172201271912241937515223791222243338621617022631191230282511424099159489915989151846615208238162183245128123198477212100282407247132158241204218229155150161471786184632501832551822271962315963251322462082516571622445725417722822813517416722321966180115120155236156107111165116162411001663710017820912717819315115322521031543102200921618420817118931911577191385488147291701811822219553112117124521662522501307877541383391982346820862422119124021991211761721216634100129805115108197240172204215160240157145251782032531672291292112912961212321566010617435126186371181624111418653114170451081663511630746425193245192130341008121122189432302149624214115818424122312171211712501632718642221103851616114251303013690208702052353424949195192921031841164159526456100064113147240222442256052455113688212714412041251048931185164143186218291191634723321410421463239238558206252219171139931692431862285710921812071210808324223319125011422423917411825318125212498812201319115816725494214185461192391562397615721119816273164416071046566212188582181601381301221852181491841621313613615714713314255250142214249247872482441493146158431622541020996181168175220931252067011819466118210661231939411919316124122413418614321420114391117951162516924015817015881466994215196223801672218023688110121231194223218166216119844519925510621968205219243451871981701476436616615467230581302305821512033431708018816037694824820568163168183204861181229324710143112532216915521416315515563223170189016613986197142214101245872388493204250199220771602482812719819619211521932232372202108389208871492119330221911756218164821126562212267181590207118251331622072486120523537618208419119042362052558129909022121576434161154142301311446433252200224325198924564123229341113814323322952281296096385154140159104203837718141961937757139165217119182623442268153206441072421025122317410818221611317894121021312719718518713292477017161120615364140248236411912364618113530635228842137160105120977722851217383475853531191242312432471202228154167326323124420067141100751119222720911418014743132029692103204773121217100641012313820482483281751031231492141221812346167731163666141161211891081517415246143151141281571797590526066179242322471481308823826496224762002417612711419416111001367721251001071361692467410651202716180111917231194160183140527020721227701624028122131366551342001501561364621717821322287447319220635351394179362081381121259109511382422175614416716234551671813120468128912001605810716118910414117020962458975481262061195721618153154815222714414217325319793702141832251579485133128247223234137691209327126292551292002404925164149161702441574319213577525223121411311483219177132207382125110155181382262205413613201331462411571449577189231681882422122224913777202839116141546391215242249912421991192254245232371344361329104205641691919606314806410210116813017498824740135179121132602107451962141861121782061917616464306414732194105611814519424502501392216240220691066366622934152551821148108547132215313223832275032196351311369211423637619655112217177183196190235602281148140132441282302202141429911153301221812332432159014219017456187177251138205961492278818921912016319910413125188163199120179112170205107166679814475185102482391687140211159171155681131629132119532547909921316629781901418821711968254224214242658821324763227143823212918723225423919612722062012821566181201642281211652281213923724577202137345107820012322513397085319919622441193154159611911971955912114356457915215043206422442022002471961311662332431758352481022085322521923913822325418585100214907314069725815712614417779146156239151152311461522391915424124411235239123224177251215160198720089136841936713013531125248167792192491331211672382302357184306414170251010325570162791242212022184164230581652362412004236391592441242274120323689227100127701294817913614286160852066022848199105195805124837661832446010402384196784913154160197314431805180233801907511815811511812911524662231204669720662239236662231402213315359933611436324124412511625419267159309724612321292395161240152224161103236194178197153772152415120231851002181576421412621520432382523912216625592148190223431892084310914387198461131221221121141126597244725518824322819316222731239254247191143252197941551622911125424325511660245190232194711415163181104561021711661491961268320832051935177121113190511411908132051243109331341821446989196535329109107104112617324530172201487211701443511662408112521002262158111811411520320918358139109152235109228162601612830152101187620511824820520212410210122625904816482213058211221893679911501032071811024518023144431151502132331113836131441267822513914315215167124474010592425312524420522224812185232961571682542009185159189209852295417310166179518097243154481315810086295067974059121321009019601739154210433438213228535216510228206661791542242511748741521611951014016017911148193252431314210081712116511711361441571191742481167595109232188461237415349169220491634615686254989024155551226323617125015914511824424712811120127183723921912557178119811591861601411035412913659321621211369204169351031491451152021846911717865150562151456082292139318212127371621675218023974120127898823922919222517016016110159174182319710520324622727219142111148159180144159216214118216661252029718821811918535234134582258610320217319018091253169215531205911355181257529105147181113111738943178183172061831641418613311715112011814917845113216121821913226233102223185246192153222551851182552416152371972051861811931772122813525213210925316715013717384231189617014616790144417125524523663371902453250341591001222249712919211917164931861259086568415958842757922748882336181239199621515208247118030160242236485015424210391012917718524714918517614771562502029324922063453962714311420501746322123651902351332521367954741613566080322331118212495168478532494822731779711613220231561492451771801116116136313513314211165163139241209210196124185512387854121227238104141103223101114216152172243301712412696219195247931143017424024171226618128451139021412320112959811286184144171583522016016168252171321772411461131132521053278252152185212131892924524472176862846791291086490306857160212164723469921532145137474228832548429352321888212863591327881932041657153495017249046121282416721649321948411542375878261282463015710010611514415249231772011231065420520217990805315414124216910744164218899980471783368105911417641891012461602481681368312719618747219234751091841491601511733913411464936710823320171309849170186985819901654920332175512441808196145119251091952555780512017923241218137555221122620315719011291782062311881931165724785156220140112174213151246197239138198255812410318871201426510218124123131601122375901751401743314594469120477958761164169895519016112104104013216368021682113237574324515310917822715521914310816437439182168789113024115149187247178221132761466116488979916860157311297160571112965429160207143732237121148134502331681838012730146789615810823247341561991312381312443513020415623524397225122033461052261591574014018012620119311681017070721173317719630741601752129722414613125418816522619662172412452421927148167543314815922016057191165235501801532116814723110815512094389380248206431242302286214411081931524631925220214311948131223710270251952119532547912818726240237241311612421192124515722617417025521922725513719116551718416720924110020831462289273252110191248189208366223148316019015010925024920195143311231972025111013556452156110114340352234319228562071572418224122046545511112212516655232154832281821251599111833168185481792083545223615379156814073471303024077200149702362201044517172120918623912621813324322525111125121017212120521021863537198210316624535225320763181828419220024224925261401481921341602281411934172232292361032121911441541062123766022022024713012063143147891282019183105445983515778513227523556832285108491131908115160203219247123103237221111851661102351346124917923123995243165881731952508112612401842241903921512319973114126201237312413933179301128916571322337188501381882101156923359189210821952103412624120321224319925524218925547355423210119945130231127361201081413276445624919017624215287205492511422432382212292102251541281697021031797712951772542111362144411237334313820010169228146289721216244124174611201662171271862171278925113672318940152591511921115423714206141091971536155126141542352401031223201911815117319051237190211237248372401541102471582382401592338157109139158107791561107415616877156110769386102127209179227170461259430632212249213261002328102251175241001431571451836146174117197122131235330223882532499012516523518014614291552151334711770461781631962006219216114332203642152924616710340243143420423312817657931842510879161596417114720124816179160137159833726841696117186651555317112510374891042082522451411901272516825317123725463121142189173234130223236250217164441231905111516151512296812713251922363164732152305349751861962352212523223313858107176181223210818042941217421012621283123222167191441041803818418721283115206158244192137771737155522092282261821457420113860134100641192501731582049118915318325021011111739462023515010017795234178191212237252821792511661222471172292061652461721852302121851506867754109211971181623682694386193143201135720106180206109160202948776122128182248188224162562339212720890125655090159578018125122822374911452182251071369518479224246186224202711131951416925318157195245415123720113414215212974239190502072224316016118022815123932196232541144311201271752417698362102509619673211481853415147151321901581805741571114514511432242172017041419212018915247777010233135814724761191491391720242514998424084805524423601437799211188592516261961843694203252221659713510516916539192551231611954202193351059170132358522814015044216619110431425389239516213724281111632452041491331297916217968227589901096414716849108101591152052131541153177161783617653212661982422414422681131051467116206192481541968651243126241901619337301031301291062251512121242226997220104195312000118246481061132379925212318419821151164715420013110415214236511589254861431196240829916052166154362088196195401501132442121041539771201152966189543015012122132251321113238421812334311964165221151237240189233751722172146711815737180253402440421652112022081644384441861379722523864180235232211046242682711992242117226212010548221612331242061222411541981055717524124894221121437821465109193167652171672619655181248195968951604010016754115107399062731251722763174249141276727100167223761392071161392041184681362552202301011116947471025415115511124771141208271731352151811242541022191451835814212934211230692028320869121814210810461188301221602272163822941111249622425325212502541652451761491960219272121731511095221293664571432310952312911665556523557245231167401124996228238388519221581224211213231478544185722171620139210112231212008965420148144129515314514275122252130141254188532446412716967207692199410414011515029712155329124181229243552121031822441482181485581435512064620411772122372228231581641341421001644882338711272462325020697174250247195127164181841941271335524295199215112731923522301151581872232096196133223243214238252122049467944118522619661210132611269123125341181722212322012321937923918725569581622419323110812418124211111961632332492261402172411526858121218128100115223332409954101206104584274203221201502461865219850522215157215591637215681362052184773432282461971122141920710997156246824912332202151119024720012514324293134545856135229236150166671523617165237165617913714514712512885100501416037204225135551984250235161245142130159189181206552065116319243123159217141922421245602118666118450211232194193367207137188041792282531896715172178151282051111524673183237321011812169391111761171262487631302361857924032361932531641241903932112592041439511591491002556614817720761173208451318614486102361192015822415424917412319820716171882102462491642312511662371481661022481641961991037025225017551751432552379523613255241125228104117632777203874255242151541316713159461221178524814213514055210821291697063677520892752088418922311683014819285851241157731305252446483619312471200130441166522602192301351591031652521601304914055136230101126432342245185255841792478417949806315317917310031128301521051512061187210310112617917814415324620023315019621723017222524218011255224248142143969513216024515223116250115182611051624998162491201664510418235967823811114425117311613422326741862222961844710862961240122103133191552301589321531163304819516471101951601553116134205117134676301711490137167021725116873152081906423418412185226188501219415311080102207401192061682477916912661422512232501702231641361591211464517419725175241221221423988236220591672051562113847232226231808136451161801774136193162461068625612093051167729580238152110222499215321111733243252223123365792201582123624519521243625421392141581916920718620278881812822240596521914676213751111173722126221126107322271506224175936011283231237729181162498175171147111104210174418315010091391781842169252138509717445114182371006921117771918516412157151515424701659248741831776143201227911717713315818886188122174721482311962293121720147134761172818424020714517447272340191252013712013819324912724629111220612211861631674418819134196208265922124588038301702402640247232189761221601912201811752868252362204492002377980332463232591486411125201322015416017372193506515173422402303321741537128875365533132120281513648767303522267199256182011021472299616536801057343121215128581319513091211156462431683319927238105671113613318023712216539248252441928818110418090216711991992182459434247120244136115381549717352583281938431532912820912217013657207040311812271753202215116814820417321691986917778156175115186143701622860130108034681121536096119153544815716212856110161712001952005516522746749613163246486277581291831617460232192962301692071251321527515946124924311210333144114147314321968163104186692426021123451219106228196961951367655147489613243641246121216170122141191061834208325292511901041292177104137210621215190119150886591169534911244063191412191018647209261018262533014419311610502441314517067177721938051111431233863240252081186716024518910886271781091641021014210915789762225001591853955158147155161402082182016496811198163382208291905724214634136209253010101196248141219371792552081223736948220014325522948441348615913758172348215916559128252196387228131166671112121272429023771175212127242122219979069160601054919425213318623217298218241147811152271301182205402411171361221468901161562351302254116814212714423241152612262521922917602037451383414216716193200325699714824010820737906112323110331731338166231665782022041382109912207111235191100631301718710015491605718969123102139250244382372491733101246227181110211771941538647142321291211531169414722302288022221711938519231751524138250591775819125191511953157825180137202157160198819132281781799316910841228751190374818216670222131140175134196617024114215124222119321253206981725473698155222166133176119130827612119014724612471254664021721611413220332402011515821917188211437201185190731852083129177123172291315247129361288611952064125123315415917422322829237150184119801461924316306027252152382302017419210101212062082205723211486161697624625327285631212373986941742412391362111169169249222163761524839231206101622421632156413621583012564240189135514360204361931252281851122232432755731472101891931672112468211246114251128272620423550137119251131140151941217866172247791660246178642402001631552211645912646217241461819324214111525238198191263849800321551235845412301221281431612791762042013311324782551632366512718517914489151441251924112315910724662143172661138619052125151115112212194719038184159236302322621130462051222242412323625218951223245202602241491449412016730120215149109462281452541123212231809225518015719016925210164216164172136255251247187170206252239188849202130138122156237251912542519363236223210114339287255622020704625110919399245210241581371613796190531201861292440205584334225866230219131233305866230218130121731291165265323714572096420621796024822515610924311171521091472042031243915564122601661543611523725412410109182221127166221143152189204199323191151551051435018012918823015151101229716159126703224831233130241198132153214228225154208225901121426460104144249262451921122421411582423212915083271716212377912380619620814612512814237166101196124155209112134176899323214046120902760219255817111153210477169131166213332112205372197480135265225241118236192422041056641692953167138159354964122967814953173216105208254124862471912181382471971391581221522532564281122318841271581762122491718924523889771666514760175137512331182164152153810214814514717815225121218841072468421120620125018921323953758803363228172126402481602241492061156515451158205159109107254124139236132513623311785248173209172916120195104991754234230902231912232196722241822181318714820911298199181651911797227181161163851299953119245129147245129991811261958514614510623917758201841472391247120816260100731692318832113316921422561221238217851022131116286325022916745150922491921702279296111213158292546312313723738244511020892553519319319114511815123929169223572112462467210917224613018425513822380185111951691121622141031848210011643490111526824023312712448147141224139181024011297134224081218628964415934722251881592052501472391664122128121282254116416316132230114167122516814218711512825413064131228129321182111661597038771342182310555219108201162511398207180311391996817312017094509037284211913524192371321292381881412501401011191374516821012014139171752037812510831201611023811013211480291063361192183252103174656036489719214817918711326155893920842106397522512771144196210120132682917014011601131003518204441836152420910312172422406816337132492302135773105144701947565213206160254144422816883102639213160180149162472319725232178143782038226145463211341531053717414319110452134841317953653224151241404514919837106103235136361844597118923669160478419710014710417098212928150144194121191174120155234220861821860472063010613416125150237561641859616918596691638773788624557220146642071415019810410420611122719914232138109240781138711920918610321361052304371843002351973714522117915010097963515114127932317740167382868416124813919217699841992352011481322382421825223021925323184423242415381200201871703250215230552152345521923651205144823842182235561821772372002502461632352715190222240233107117311919025120917177722310858244383619396153912552187221121161165214918223223319772011022381619424423173122151712061392045680667419256109207124135402065022418791160245934432159401351193164230213122015333318410022621812885652293511018224112154325369815210302120814613986315123771431562517510914939541802812293113124125223101219145106231177261512171022091302041031906758219238612114254180752218424144121207201189103774820018923120181742190149191144153142152192827611993217794413321713311057691102177018423102512381752231902071092516213295942361672002120046116205465011462902558722410648223838130148152932004132111271232525424081514114380156209175239101981941411092271811272988309917511111925510719312224111718499882541529645116223177223243237310218422923622722119639651452391187223901541961352022593192173187502551136519453203409512777621723842225151311188535649216112106158132206420024377216271561484713201121250121275443101419521719479463124229105107111219208116812103023918012449248552492101281421472511444817964156189791541151925911531120632242424324614318213720049230747186392383325164122145119582331105741291271141611391112341951436515252012115212501220980412204246225135126244244548112811162342182351491582351496918030236311001571966410212959192361121465213100201221012391278326432483324206351302315589134103105113913210821129135145208273749622370611442021189174471441002013814624712238188227172551421232524624719622115816918530169185168130172192452178152429165769812824412891222541392242311522425517125310415840351523715119616763191110179961358101214315516112815811473240163167441961581696922617231582525172151001451622241221921532331247140159112112231331542427722119152182221633789182715614430242222191188123234211952511861091861432124724812552154208325525421511015424218016119821625121194156501181664511617820112718237208208186021928502211656219281881721361891707494146394711636464314623059162103911933232012491641422205719823511752331024125111736611283125414590247153862391693824111617918312925220241831062322401571101497854123791827238912521022191952314913721518159111117189219122402162278925014694208126304348180165942151103116913291722461571042421591102451571061492041167215111716118313418110133876119248182157217842532491072501071131381048131190164143882363611115985179254970244022383136244641031681291121351311671736323046705850114423434235916316462333415016215704523522623181201139234244212212383722125457245952552127175169252203824731254136253132401013312551812191402262215720515825101214156381099415152167137133308821216228190702522971205107147225221717924223719518115367855974254143882481302241052463913263366824613360208244169119199818120323114157232213823412515021971831221817510716270171696115124021923917219123220812719710917020910318219712716619711181301381511626111117560109163609943631052131262041622452321501829991597888180312231625610916962103165185021822821620718824671107691980116141222834520832101695419123318222420913417620913413222518614015014733181135671191356125424226114130122158117240165251525510724721417715011919926119142153876521981412131352471497372023625387681891652381952116222574225645713632248171279549121661419022271187208224219322392559448244814674176121682005648822277324613250240102106216882912173316412061881781441661891052214224852412811587412377014320333114155161167382737682051532351421531092274123888664415020517835172016841782311040472475133217160187962111192171211887860519782231141461212817714920966130158751422531014616323272157104247618320412114424861185241112593170991641561288216361067116516818615110914711122021314824944161121156134130202272376362420011249197166219145724415123141706121723213242771331635922098192205171602181087349114162107926932130210517242140112180221106614884696818817522011316019418517520414512411442144158129191191006761801441820234471351781141932296437145123170136894516811081095226131129691362062101521551489821681574439158101212159422616919322459247150571622516814221737285875172117197861488814118220801112473759601331618315718101911672012332031161463100912232139928219123219162601363236769871100163491352169975819298193107249108612339011810248467117061232402448615916938252791331912175209587911413917024323267107203281180971866950215225103104247165176195111943064327933221057230218332412413452102337024188141712231017245153173237712231065917817424520018623020722210458244702271935523463126141163241211551001995416924139121218182374578978377113522441611071351746413612184203217604021502001401671847712813124723331911110215614320174161604024845942011022589168268248154102548182491311482518611146313813911452061186250112195820791104200381768911398351942227518219245306176255864914819214619411181225114440124222286224311441196128161676021933544885483923207411882314824724811893923825226236178742201051492401822521922611911220810125221954122141135917277113511081911825444521951988424223450205641771501132191139216281281994522716817410924121945227179917150161121371672083622873120123115842301662001404520989919917818319823010813720154198191101842451232143112220149254181644510436857197141332819854244711111913546241858184991072041098819619013881981594517249381081831361951762082002527972610626109682401181081461182173819113116112722191232397253831941687140114133711402251702442396624208174157191471401792549515115131239510575158135212296174121261598632734524073206117322123150188111179117161552105352267663318019314779109171866911015116622875211138647969105121194244601695971061745217920855115191951981262552043222201249194132615419323363922392422402711823873224244133144418321732003918148481171918720014223195177103431075247919071502041480119172712482085810715255212221222411871331691231885011132233249548157862091801771437512215811510646196121526189428224360217145942297233130167223162199952209829179221351711618815644910019932459766115286025327443240744316165228666248656319623790231182521301332321011117587173165911891626892397251106021111422121124310424525514242211507613422238230185210168221861022386714116224412425520418816018015710718321711238715523995165716042089536624488243163395511931924220424618718215821641171208411073121533023371882102467383243252146119536165135165198199231682392067562248225175255246471181902462202271088738981744011319551130207254331681911262078412323013846231154621257321187401438886682590195167261943823413023121934175107146151211692432376421814660221208225521922624715155110246311732453017316545228391552324841230921154312268142117910982017096182216316862128161931061041477818324876181424218351502092152122555521871111172536922919174237303986253156648020468886100221234222101104139157104123010724015710824115336194428921413312421731115107481107821325918318522614723212165862111141595777224156581129419501671612451961082143197240129176601631115321313376107201741922261612202064214018245169113115821478597782757175131241369421069472353415111717017342214374410417823014912322212127978025415716222815120915820724125253392162151593124720416410825517242111901455341751548119679203163166229225610124818842124811914731767246672091152021405719715816918222023843571991272373312213710811322201616916340109143228251141316911628923718720177361432558215911293279910411261684119433118237185282574234572212185692111502031701602175411311118518123022661972171811782111072197918821711424414116635175551242467422119387218142189213113114832351772451091995518029223216113130201302301881171031771892541781157916523196932248899204889921810023515823314295122142531971111182172247926223131541352071022211541271492451722381141989610925096772209685200112141471253224238539435149194161114791261102216817311617878589067171129742192176116110641485720123598441532411022188318172110140185197191937427983227140156145151601592097197687814478162155228136239216125153206168661262286562401232281531042402636113410969540121492236657184361111231471231545549671561179511421015116252123140421871106693518194611519311723237213231172181208976621321134102332191181478620521011656170102126597219937234226149162102225968208102128243995231882820734294516120200128261523065681622165331942211412161961795512252201246716610220136421401719823911320123516215048251281742411862328616517115810921473571537131111361191961032292081926654322062422414912261286810424232150622408118219139701558856235321342915114952919657168251082131781772031084151281622081245232248692712215641341801501645275821213616280592541515310524565453210254751012063216632175156248114138140200012910219613549122161321081751256220713226139711619383136670112104249153196108194911269819010519920717155105145821551611241701567170156135106937126601991556919288147112134156271252401591521981291611951031862131231868960221341982551112435063025518520552139199106221251175562324688427810910863182174237232155173135215541272461222111031755530124189241211215276312618125419515123463124251682512401652146710721199551291421551872016112702221692011224772251717114313621751787922110318919817624018722424410290207212127132203314602001291136410210012852821562201401932251191451302522524118212421716624334109361705911116113312561141181691131149919924124523216324618822996133243841312082082341893624793148251206203720442003719216282101122271921081872348472439414412320720319713910239692296125466472516812729941467018940137124812613313649110194751462001511893595242142120731881018410013747138871934328120193432521211322221719224322624023118819456167120584615921133220786716242187148467098483221165116474222551771775218023110110552127283330551503218693197243982022492376419717419861251902124032261987422416117124095482221863120234571752401031329720712016223225207101958941891922211682318916319117119188160255322381041523618132271632501801034813424424512812013641102548508734175119177231239284111703522211150172401361710420415919680240714111240189184171114622063222164712483242131821391301911601242101581221981061317756208601006423381193147111574166610023624377471816721011429790158404521549422517714317687283156194178195114126233155148231155156239151862322518321951126183404121543133851458136771031223216540406222320135234129251127202206281602492425313071153195116411612113118921663117143482251092072282211621401241351841835479162178217213331215510923931181461192382541051661591854857392371261161392721824916813313521514231621562531243749169222491312440364117161161324334953810415222117556248930112767103915621892014936931561502311531822151388101283248991331716315318520420913686123312914012419120492191164156554423741512825322321432471772545024625414496205143127102233771223299631831518410220162161672046619920434167204253174153239661513621013836411852101962372101521322322361482529523725495255223207151252521551832116731719776152526464107177556243562451752099923725123014821917511918925310195206232211695558191102341823090195199107131392351952312192261754251151581822075222920418323890104219572211525021126513911159110161832013827125166155125103912531029012516715436147141180593312638167911881671541891029037761872241882411471851682409582133441693417410619174105147232297314724573111091872062541981262191631647240154247610221012339523211992213164464298198272531661043350126137125231811932151233411124470205202125212318294249232185246179155198219189103852541791700166766239214376624020513376645810964682081441671615572162179714536918014513918616837109361991305410616951101941891258615855352552298419922323614212425131941252242720720239159116872948168126978022920617017816722920119237209147291751105840109813936521019416472102308523920443242102218111621081681616238237718254139135525525224658229241216254759134150148133246232185118178201765214416720514634228170581565925244202131201249711718817212898151751681611025223149622481158151651221372172107621825018917921690126122511486459196192491421411091995418131223212118124831111298107219411231091697987898412711721410023518723254531002351921254180103394205478395237422235388187163183601902351141041111852559614920710417310016220612316278508143251732422617024028442432417416341011708158863913412823318523660882336222144519358342557122824321716025419625115367633419616113752147199602311751246626121818201614193515515637226726018683120724612826699489532781726540651242517516525215610351376422259189116922323712521285234168476554151811182342515413814823875224193238189873292363291624694119524624161351921362053164721662631561962271813714034179243206106606423220910148108342203824614360104228161557171582454461671552015915920112013090851401131526634237675431168156110145632227813164124154317919868223749202361303619011020464467014015419221789231254723225032232168513712022153217401454822716524149362262061382261585770154317823414413216014217652052328217118152741291161931876414314411432401601912159417613030192831202879331942398269211802241255220817436240135158186236208199520824156618520229121521479024022112652128109164195575224232672073712320557227841198792374917058189149199517410192125145849325919011318420212512923711519210915511522232395547247155147251129241179101782441272061161551001702051559550175692231211336325491991071726121797141202202152083815710620138566192216128492031421753949112100452446420322555184125160914622414787235631221331371146414471731591894159182113235102591292104188145217512473311614751126144117226232204152128108184133680171643229296823956179756185199371103315472822710246138143916863461218172524211632432151621741872216841752051851732083761218813362234479024593182311711131591102421541111474450551611851422710611464104111221606712499610424716225515122822612118521513066188112175302249225543193121331941872101298712498943124995794247139187194422139230851055224013852250101732122031202025513422785191882213712521347141202056314202111292343193692153681892361924913811121210719019826205181188781137412121339250858419919227134121112402319214637190251562441239745161481845423223824411114311733201223264123020015519320111143818917152252102162261691361881712875521348223250481214511239117837190171481921282003182442501411921322131921551222064312742241671101631182422491537116702112219249611511201701213812321121253781292345693381790698612993174342112555841932372381722342031579396171001283616017919810692332492222332496210511656128792043087105242134173210731121117149179195191301359417611411139201126555218920863375512873811323617455292414319026117223991072159125112113522868164206910118827153249110881981204073202147166230732112421652335210212124191228188144148194128200183215173119121240162712491257015312819919382301271061571559518895242308119446971021774419521051431903212011013110919478207237962011801002171575724711516227792072232615824113010316869681664812331241126102252242251064825101211012116523208145825133190892512361318219125524422541411115413210214417120020322982311361082151641191568311818710222814695801024699255921811219193291221921332331971221901111982222242449391931321302391291712118617076186415112490218249144224190311891042393976431817725370221210139204122192411712005717920014118510265147248164238244777291361397621714524063127147255241391915724824163721881083112480112223264229186022523563222825516718452372239323722018316021862397992841982222123912521715317836139159172139158110722917120215210920018716624823519718219118816124824574251175198171119772121012041803720718069791831322042081531011291152371208332469636248129100212317419227224146021896178815221522517916214190209251321349471392617115234451471702061221064772126912401961502391923912473321201999548803018816472190174751851617926111244153106241153193207118187116942291271814324412279184652331714122186121240692172491732111022314923813614915813619720680130621241587818323298927320418221162197196108612411241031961302542461782275917181160143942341425150187227174118399223774186218149186210149190172223181212185111782531511472912725120995251191252814136626812414522791146125241171072322391501801232308515375218148379324218858126942918316475882093992235142191209191191895925010687196138621026515752175204902142361562372004113616066240247227241140192231216516217322423921015810825219612318846113174611266522599423155884128175243134238186170141871741411841611391841741398881135666444313123211291111412720017351852397712523215122197951181351262171912677272138512134413472271712313013211714921021773961021701792192016745228167182202781101055919018523321615019899861319915627143751547813255307942125477817814545525520224118387162416821924119622515423732113712522922525321125082151254923215412016620923989616474528423865942091516521292620220071341046124312572033622276187271773371022072301521137317215417107218180145179109198218193115719337611926082248830138287381382072522425713956410665371375814783621551981021871305050772031391211099186721611331336046129125581192221999522614173109611868195226216932342201152525012131226424715116359104248939805066521225322611615019104222317002386268296575144130193715412221410461321753019620954228193223141202401001475525069931021311988723511416513219365129962432002011381651814419127113014910290103204511631026221421400197661131614125611142666066151204171101401591411518667162519711413131788112917219125252259317626233228126106190197161792431602291682121687152138642822119913519923657164613215112871232099011720614691482401013415787129114240321025101135239142213120785320816116195236365678118172251322411312610647128562324440442382102042478990581261192231913125113011835512202251001312481543820418411615214273241717315910915150132651362551121023212762181281971656185223130184266104919223942272391115210524115810816145113224188165236196250182351002532288921924218581151441372241472151601261843624822416521815941062482481492306710716179642022098324417921561712611612911512220621512123906820811913220013718752214022622717116166441517219993244263415749382201581288238242209647814027631011515312122592242401948923781617918265122007911023256246222331291799172122121861132031921782202391106116014444421644165155117136231100208316212113321518866524723342284222418230224303295123028178202125136192111217381899915917819949117471262301572101141724974561642368913609815918619946149194187192192921024613098213680982021101283723811720221623566632372484519123702241461452391467875451212786215229100110611015322227154866525213719257282311241911524087262091130113202401162024024811818411920119931129981104182222481662001240288313667232221711321832411301201312547255318624913519568160258611323221996100122211652547913115831911864728184149932321548523215089232201252911881371162301311901353623691652361391402031152471402552175186130794961702241671922079418315170237820540107443240752012437943244140220241189231457628265222716931621891171471251443622623724014039715363152062521859525062401323217310630731422282521442281302401329231191196245235236311222247319814365195641451912472329947187103534160558211437411231617220241151242472461072262001832189365232179102371462221932233521539291841662311211002266612010963224181227128103541451141622541194211416330962461175521762372159172341672081401351588879150129251158911151592095424220820754892493918516723611322512232251306196252175227146101823914518687146186593622729391052246763194176144308811513530030221721211241571031325223123941531003124020021811121432068969468925111223319324412852101167127114122887466218206164191251199253199143255243111254382551972311605241431241432061102241220532539914519920525412718653240171153246148158101911612622310715412023212921121226927522692115198116125182230842361652552271172502151102325522217124431189218621115710620494841027818370207180133206117420718172051194262182171023518099520411292175417789156436011114191107218208911891377517023222211411119725231198207173234621811066323812223423922225210123615415971173249199291432925331475512523816847245158239136190166139159104242157108246251112423011124615487251223232131915324189168132129418217024822813324617915538583611157331118622489149255123311274215620564231121763738148254198851227742551131332551323496663048411515682417313023382255017310157851352552176117196156421067821998038204422111672292397611728562541431909115816423924740195250244253130223236117155150253237140172104162379918635101861755167138131301521457177203341662292255124214489121208140220127178935821323863210242149529572141482109521951192082353122312623412710363832551261682427218624210482199225136158146248235234157111781962332301761371222551775823388157247921232242052061042001285574643245216962431692411819010899180206141109240712142491538648633340203321572352282169597218215178146246164239190462301684717775875282121971417824314220516722010715139170622431756020157232452365120413392252031074127149182190225243841971531801421471451541117678520925321652342434621824314267211941379023917710649244192112133231104532372105190372844391621213011221194111667230322292061360156172243381292130813025524189018415412515413753811091913623017868112866864555757166222492170158131501376619823518980175022417817919615024111486817325369111581211632091181248319725147149254203211141159173235190228164621031636210719520421801818623117819157169204168421382337033521581082502885483877136775120472086931771321813146128552278915814175262217143712161313627104401702011191361082141982181871981681772331481011406911707530681913984214723715713868125043138116830167252117341968153202765716242550411320130608021846820116810417089130606823521713093244136531347015818620184137422425323462091005061131661010423579110112649124641623119513015178113230626813179159312921212821014417913961133116207213314821621207713616388240841448734172236569446956915793713812177971548231122408770549215423731081214673219614516256185253724901251902361381902172512185196971764072031517652137702760129177382096851292562213234131090731921331105131118312521835414191205248176201101136341841083661160611113363177129123101251793001062231271714616025422787219142188133462401416216921210223024120789187238130215811116941644616024118820323217503214511931233184681342131211201057271220441621671162242212221217822324813182167161782418519712028224172321292227511625248239262441282422123820013116110231233702096613511689225183162244717243137101180102128896200620491761642441294215215122725537166722814441625718520832243228422241823032254189138461792371131406814417513452175137921899714126771852411577218592242321835524407610724822012122878119851561053562196967697137188251324486163105147161195885148142216514493122228236513722331311771389514819421458115142104442371581331582301581788181193184411231412623011483836812102461465649552333024066140141103298913945934402114510331342006713179130710126895335226520616411017114852241468522874123352381152533832207295325497322227323517910571386822018383831831982284810317317624597169104481018837316225195251394170251261521861923520010815695255207101801449020310922238232114642042133017019243189641481562311478288516152881615884232231882531997911023098128166773112411823710220717618422114520112133137123195211111251622221262242415515224248411525215511512492240192115791919610123118221624918279196118105244219126731231242016814423115715443772172351511562714815227157922422249142189832324310715715912010223579951769010341113247751376200245792021493623765102207228221110731876925514623723925018824323226157632311622213205102980188311282411277203115742171312013612071726616422037320432233523047362302546620118582200149164220167223116166189149214607718918415225794247632531661231682324214733516415912025522124614251207451313823925016017513823210017714818921021222114557185226224232316012916220026240255227238451922277221011622114616921922123818221920444176152153153153185843715014098217238233161292181572171571651297051203369110289204204170189014625197182235126127687311824720423818518723118523123692612551929252525251715321325422214063342302103011313210013517615411522271201399314762231227324673710224735179196255118821350292272111561975922113177498173815921199254245156358115250223698119031130080208921937148154137651681779516461372538789223207312131365917518718322921962169141561101918917014312181195920914821312278281036110319992114101217361640418661342133966701555030852091201942031981281992133020710661955414466101192362201045216021025411318135231124115341143010924615823881202212121812719917424618011023710518915414718618116712219462171169511714994243238191254892281241914416825313812513210175881401481871911082461271019313412715815771219124101125225178123209227292541735250215190928311874185191212102184218233302543317511826661642022419418121132179118557246875724487812168710522313512718243289718922914204161295720513278189101206611657861165142210181037314517122817487231157128142591715711922621811123744583023516677143228992304113263516965217185228145154204123229162123101653522919019510194352162195229190337941891192211221015712311292501010933641655545365517358175891839517723718522912617520012723211017618019219123516217524411496219572392509914245103156311511347918113895214135601742441869570235566517761171115127213228253170201235101163215147269024317981766170191208146452291742159510411817519624294137699516111310312911021910123715013990772315315447106549521216618984472351932184623518393541041871082121131971642354224415985215131992301714611723124234467021422819731136222164252172531406559138318190161091084772146222138175632352211222011792351701872441868311912985203588163246139702102112401922531823133194015512311910819332477528311481452478125147102182210618186166611518419630981161688819098166252355215325259521152033310324136668217724425391146367321723122232721048023275148143171160501716267325233552331071161291782160125113910239190102130182147102229194157616104250501200172321262015324323810723081851791442441341171191296911917912915324516207240971011514813191163124409614619155105179941989164122411002191472411522523613959249222208418220115611043612171842016620321723810216420915313071219972321832311173022015581731311611899602822623823219462351212552244613619188416182244616839147236114207432882474913801880105165142321621675311019275962774160103196389620851226331066621136104184010116217018815810417122271038111516424317918452451951281321582208219252776453112107669882002481315713112032442115826245242022312547210890458444255182771592071931261081460196436625449155119521017521521613492204243158243036471321751241772094322813219519113246851632479173242361171032001001233212686224129712137896128135537852622401902131851121273324019235250228225242188206132551752279611219122025465185253253821872221553823715125458158429831705817088201166161615482276743722311019889212191497143001361631051045363681811213916033212282302253195891662152291863170157192425310810342004875772521815812919561412122518851113136116946220738414814894552344648232200215149202418094212108601674218911056921082451802181051802092948482222364921822824610361921021519110411622563612019339192155760169181123901112551221496247172222246105157131671281196019262195191251542073724817224013070974321914488971701337543886246109158173132104113977151207291401638165252165491562243115822319123478094502387220316237183101171217641402421161005417211136132574392126832201396920468251140162119277023750136220169311581623114513818417711255204361024713291362231356241972361292412481234124213612401322292252338113101511151551891381552097612917921720814722012027201881231936014599312205103936575542412221024520548211631772001408320014753516224031143181962051981032021562332252551498123019110617216525124819215139218185221431141491732071021838032251101582001071116324820423524112719872282551281254210102242802542471062516320880551213725515123766610212416019215062108103561371792201962171581941081279714295232628513167153249144762352078916511123617201773984148174074247922152336351128192195374424321069139182412371762181842211001871821571371071329919646103241621672165223121612517416218915820910565194156482251292242002201282404415914411622324076255152926381174151401997715222536761151402172311617920794148701710372282163923918337149156101131170206236537011132051841219401338631130125143110214013262042481116156197892061621210381186992481106967119193124190224202114193156532041971222492283151671847616722828219164762351961224672249199139893017613779712018622411926492542342361718747525719545322421471011073321823120810210011230191520487961206422324423112510223623239154116208225291516165243125121081817929195122114721161191191218133209591921015236254249175511906124420335135126107106184131987205513514153801611026511014014210823227892234730215361809511717163724522724818450248117712028421923815111757255178752355124616816162169176205219363361111238615557217182251771832481011632556433201414018839213174207106221248212186199213001353953781567308658224159207169142551691421288777621091511220314323810460135127167452501105814211216217310301111401581062114155117115516215821513514151122531565510618610024817219323169147207721332271121851952436175551464889952448810764235851952795173175601715484225248176214109184218249651895910816419822912617323572173235112221140213186122135615331721171858737811219087237508171154531832472041251602101891752201811832041651832041731672121871874017618756170187561691834416316722896110180342391018818448181211306325320412517623024312321318723821583121446317024412182233253168194247651011927213363168961842202511261852319990187201235811337194145182311741711021895523770138611341118971111227524361594712018015811316959102221125201101188622501091351041804924011314919911291211280168158215187189106242132112251092421269423916123842332165245010811521917223515419318998203123197222531197736551612485315524221227104194128106253571811861791082300252053917459163891277016741791752291881262353721116675118532311571072067212228197282501851572343424220162199618714430188170226116100253133144134243254117103220106798955156129164915194511492082613638205841366524721168522112381711661810212555442392095065228612189829792021461211461442239225781591771617133431614133254967219933178201181999931392013280165922093414651376632791612997236221181366416714624410319555212112845431322037315521034662232472851823210896129241010914312817624722421025580815611264216119219190255142356670520897228801321561617536235258416076782640153127219134168101726431188103141187488112621464212156215129701052498043216172922061220067181511748931422578107115213210941142082381321023616362231121021110814412052281571377580432449242641422274482120159227144223151318210544151972032810429482307915242419116112422223128308056238139592021692302212523371229105231961802501344111462168112194372122551089213022181629525137156100144131172321849819225014418621032091512052128120722317810622770802461797865161729631268169102172022322668284114813623022614933117822518232218150111082540351461514124118854741551061112421929383181161352091529132051032125792341591981228163152139128230163514283160133251149180121512541591989213424022290246221491878710053921082111231958820631272254768601127613724302171611732292231954131101381912178425022115018683170168881952524521814759248198201104239224204150231363513025019511272511152792023922174230153199631051251962092710447907724921760415815918413654261636011691044144175641013622611515111322544151761610116223513671861742321819421210418516021412321124012616924524326206330997711047271569720723515715821258601731156842401238299639210257921062411602102341131412052115821916724518214310717230868911210120199323975194640185702253387962361475412541159201150972215510220189112022716627150172271544211973212147820812138391114083247231712491392299764172122961569096172122161331705612138211127320810772129791589318520032122151731082611041814417510720119079674967191202976414234236951192305342419245182185133109114142221922304611111892172342218219737418221753100147139124461966103154111292481723311322720489132124225322610721718010221658199128134619310818267216102132242137133315521614810774103115332166072813411124314879129801002432216210161873619712516214520643128751821223251101219238372472127154148176221517421787172236438224222519823061209183123812002309144109247138222238251418015813067118952434242187179249023920710612820521242106591712755150663310616517282071591781171144618629217208331847463106391581112103241802482036424284174185121248127198222832012551291779019322810615521524612716020521424013560128195191102239134818152183122124142911244615524815523729158110239171831308632932066215667784424910413716216318748523835403861404220522038248211372025119016016662157492386513219616513921410510621762161333618713821061226506119715322249892548118512914572163156912720242433512720914312498141221011522199114156991782869180221701571368625218013320814320517614037861831402071761221434722236714517912921871962822613221725514011201582175650216197103243241171920144641482332014723038765511412231241761051662061042333452118139169187189562051255397480179164161080127186361513322612631160332051081715619442123113186123236190144164116183192119604859621603231342486448111169161207236248642382042480231121822121741960176207431211671874850371032472392542401391751525325024824122322810019817294202166182111808721814412376623722547597471246232184108224215792351479017518421415654109185962211272112531179116210824022420022115722562426911118294912161328713246202130250115126178123571781901322512111015751664523245581742622595247161182193921318024901482351472623119921322886203621615714318124820016416114723725414452451031812021421685222923324722217812380230245172582328512524812099228116171112170531221864590214192551669121611722117822613210620710917123141222143106922513341421571992193957566955425118093514462182173253134241104187255235158240169158176910540179144113102992392171683615289208171110110331632211611631468010187195701871952231791368793174759194941181346211115127217333014723625147228762472557424622821922614711326203105100018813918322562511551225123932552461622431671755817839186247188145361902331421471171991902331381572341381552361381572362079118198761197018923714214673133501321252261372148023311723522215514311992711018522118722920912321316522718893243411711341910235522010115724123213220919832240091118211225811491912211717219712318015313482485823218017880147207120171312062101787810154131692301567218175104181932101061652411245198243234205235215547104183922121091851682111521672131127818725414011825389154632081122061682301401252131051591388333133135673771689310435942381722082051191901147592259511721816323416475245731352352551748612272235941612272114218323181238794293165522141103116107142171195154207233182228233182942082351869844411602491608016836822171329621017210817841141612361052081281177624115012121864503414512525510216848513832231124616115420377224422838212541511672082081614592145356320219313320816956164971325952140128171721842072281611657511165221202145160231134149244186165244134852077723519091182125183236963119192489631307242381946312922794401291511311220113912311322513920222942002204672522461932711919622123314812489307415164183495464102151937667833025215416162189232498116168115210199172139168254309724722624533622424419774645824224078672558051522001661872431692220223137853011322842101911082443010924219329145206251899482325012410413341126112568609417021475186401920724117360244917469549461148204128135250281341120939120924956852318567222112100671491441318319213323261222451619312576223207194012113248444871831441736029484817113716110717331032722013313996615161877228421781451171314669511913318823310251092461013125115731205568205261555722425016020211316822011016019617023917451404912812124720430106642412545923019519721418955765846235541571631971332481009821612322731407141092271981201281722321711311919121812812192019013325121081282182421212108025518818972655120915726810111382066620219511210109228451974124914884627412820314513316520712442041668015677195641291361159923348262816024931511169047106542311691912211126614017912186227244188214249121456616710319212826716812721622726251167117141431702414215424623261522053254249715601701821346117417712688109578410619441224291524079218179246420210563160513992466416623513216710413537651902435361971061226205206193107237252214217251175181245691322042141191411732071062750682143215715922633147215107102116544183124293023211454711532031131688210486208256112096442181391861132056814264242239124204671378312470156644112016825013784124132168216107520779141286349112881641112554920420897145145227167382061767914015715217720012341139779314423139327100254204220109153165199101071752154222203173601519018447491199198230138204188402287141828022311012914213174250200192158167195144131653363126919311220051351335119823626810456103968144142179203451896253193371101591531211921501521868319615634220112106198228416011313725851462193499167217122465217625580223141197137173452451291252021941971021744892194235140758019162471165912110371611461281188672228151302352152392018915824812720422221520525518520124320365130215249127148201592404712122417526227114242281461511922151451962332215522741204114157951180139162041351289246152203191154127182110139129119961141207610272248158192224209935183571020316116623014623412846133125194244521211323214437159174862111791411214321623119187223592461608720465159168312496925519655234199622096324622254216592303930162476019663114143251220372381288325212682201177153541002586122212494715160250102216311249339511910470250203352391404939010311241362031141363735151334912032221394619945104231210213581721291045236351962117318815622621129185117319210135420118021912810121923221938816275971182541282122712511329219921676143216125193732332386581159469524712530092049918264481271691779515610734120224128109220126187196131179227312034246915346137123611461466119133238661591899536254251183635711325087135190253220202116591925513018584141851311395238461212106237120215151178225127122217188187163192171236136652311012512314922517824615717825447302310141062082427396598011151383417188109190224204111851013515317819024819318231150124147134243122772311627242529147235122201811202172244921422620324724613519464248172214991706172214235322222615138411412012324111921915446232132221863169244126811948222165821318249166612501091231801724370541484023514126411791755916321411278319417229641516016811225107111561501326210724610818916695114124107231452272412061921832531451117162222244711903013615630136156261361523081357713134791470761434371141706313010803324268189302019030136166112482302451282326119792471393912313321112519449732041841161831082323983125191146612502306919931147253182240193124436448192742089515725111823231166250621591481641912332173523521937235217411471662021228222224636189237731006113471502451962001229956217618113412212182472211762381879759112211126232182832555318720624323013199245106143233220187237441471381011891621771022553953110351011181625018021710318920320338152400236101163232236321211017221711918419618225118622518998168581711906619233453233771252011172211742237206431541578718058175232116230235119925410419116822313023114916721911286167238172861951211731861151661171036127243982031421971975747614623124183121832222825520918724816879233113231138192145316717342143272232541479825310515723121323817817496242221234141278223021411319316824641161408623552531345115417618213925022187777221222214912719213420613123099122872382689815116912720077164675183620412413838931118120225220916119412112646130161951451917548216074161291131118145761221301632169193151844137184471004378148168762301794422321655719320818116827212398925529344541232161662395466591341200313832127332468422551741516913810616011224220981221511166317112182411461911748205205221250738524361188216661682212151045207217758081381654622619580323015120741853713411074159246153166391320516460472241184118240461811541101938686375320722012656752249420013111619681141702158596196169128633260441482012413133324617515219202011324170193193128354421431822276662613010112553623817813319412191842920634133143016022545151136751554610439112107265502302257320914616616618871445042223521432231272321414338485312161122411081219206228628718048228231341523456203675824220117130135924913116308718620025016322311613578226255392965248411777761521180157432471422619136159541846316811843116925510420121510519017222112473187229178118911901102512193240642391091889166512273382082057712123424516711920012122412325466748571182873016641410812412817353244237150187951815212158220129106163917323117170143438728217222114651231642162389715322761116827166416314411733261927913433118571811210216019817862657518524423172192155791331767323212512496125224885421613015614818512832110324914110214057119321410960171861158217725414024244150670272209521218560169178123881101251911280102367108155341321332663696243184218142252133234236308521960172178126821075988108204412242915224223108232601102202091011501616020023316318110342445891101471502391321607118421422212715315321910338468151154185451831129511078134672414878812217217824222610819210914914120774911788520486226208198251762531321142810049228242861431129813122412022113620253200157702091872011011367720612240241125015162412194657215972316519993159219165236551412171712304722223422182201411041811812478216620016123387882031976119119717217318224369125112150471669531882133521012013519172536412832411399722322135813717415573761555635206201110134130672422618411181722670203442231972091171602940108673357382055826113953519215223154961557122874271912131822542034518915189122451836618118915190160230944317212415014781138252172165557516424825124766139208281101561901617418224713317720615111953171170252170101204802554523897120732851731461152089962118891161521481411222266165228191411032551112472194201217106255207177255907190199352671511211321719910357197102187137179189132217254162253222225252351481722172472111017656655345872111132441378131372161925157230239159176110173699021811415273211792308054721721435115113211412112417878203202592065511819115140215592301281112121431881951272283925213714324019994194471886963241752481859521020718918127236153252992472123159372381839918728176173133511722272291422512149164236103202552362311275444321431911116081126138144324620346542111293311734720151229342062401382052461432062124924294180100199188527511521510221722511041891501291031649182150998216677661867734194121548820424635163897617221619122811671847620718452240128711122441674319019931152284819212096222823522321689301767756961491441071451521072061987236185015619246184373812136101899932471251452442292251591596025317131851612036543124146242156510180217252491124122990205183818611012733187255251874518759175121873055146225620158146100611535020112689251175191205180521320542969213023120105371041912240272061242192755802362161162011684522388114195188149254141215238184170255168202105156120128721282051181652292522401431747626246180198173241188862132012945151126102371582141201911721115210810127211461481171962001861975073172172557854148321471326724266648415784129981206883422931215184143183718923313127222226213124852312382097717321512941822507873673937161147619714718997227611612046619812313019912213171123671981226719922813760299724868111410817847114178471061784712217879200194104144192681431129226534614115223217141731187824422878244252124170239159255253715412460104352711081934618412272244172243215227189191152236253124661466221715350209305521730255186511131864397186593024690267960322120136209178238168215157225111583519815513070138282511102162449217923818911059112195190175192174612071722381681101957313176930504125016016192121961642042467317321113962158718021514321517170154664821822811306422319010424028441781062032152331891091141752161622311821712016023914281223109163158272502102351221762064318623715111721946234181156215133531452335323065187152522302175495810419114625218722121827241222423232170331842501991602102279716519912474143572231494357108921171941802445914115024313499131901781291042171891048915911218822219123117010175303681641311217237230171215146167219126201160231683204511591533324232245134751021512373913534238261328336103223243576512623284877921110920213151323982134138137288833180108172422113712018433151002320109596419521841024226186222491138121202383881131812022310416022422174165812132321292381071669351662987140591751461561331401027850362292491191192484471061392511621772378712154472342242312088596140122082051686421289183392401611312352283313115609100224189681701541733713816272731798466823193248208412524810317912097172201527065237149143871698161320970186156117292451524516418810094211071521941201286326202062295922113312215562514431157134602001431794025207825168201441718319222923215018212424016795314720543642877351349735918857104291993921875152132121607144718319229145760128171168129197182192146398546924131132121249199114626101346815622666150271433121185227165217492103021676982816252132208193791719210113112824348240023669617712412286235250148249861230862352421761981211642109716019617023513481253121245202211742116714817078412151578510919016853014422048102123573198240148453215759217230322412989151161239205310151886362240205230178111551317138191217212116781917312392225140150541568147253110118145226361281982421741281002312422923431291302072118254153312516824923910918819213162311672084592223115156641329513021023246120127102144131272077622732152091831342371511161542071072121592172091121187121937205158271345262802372441802182411131652531315023522598115192192161201601961241682121569919213970151209102183231346792352865224743442398788140848832148220210229202401427108832479136102651466613717024813932124201719861121451171421144137925211514920122816372017175143149861581711727324117515321253214222961282115015812812921223017914417622019431371841008617346183246662481908110174181242907323018518138227412510214497157157311225094213791642384722222535212117516689410812935757213519610821922892621712411314210032372241322373017271562331391611163322633220113479413241820976156133196135882312349261401424020114406160137121858245172111891221761130232321082282121077666196571216052104110621412867148140561782412251415724020228215143218173271452021251652481921391262127819832012619324123465241170111317123725263517125525166235127982362421531851994291632161010795741802402502124248225181214331613775204220635338681931738173181192881481632664161861041629436223209108167942284620514436101952091181752324523817107237362511151991814317310348195202123187103148892811610614211782174909628648151916412516623655167185206895213514621462130334615121825599121128857617418512716019725539216127141715211336120311223622617973461991001868512219917815619524711021211412020715110222915615542332512270105119516324761353791912512041591871562332101335135314415401311434101395115112211423109851832441412182354376247137201210812068231120102471231972824020302401812723815924814719216431187691011521231992331876888248138296614793133187189227211221992119298247581992391151362197661761431031106318024301432001411116920411932230198181051432251132281071136206583723918372461365112841923015469161552294220624216231184711035641672167382185198594391866823824416239243136751512071241362071121616721719823617919103128402369819321180791792052361242261321087584354921549622116146454041221932063243216226661001442395160487948127137161191208379015010527155129742123108227210109227211237982112969217238226764781666410868821862321671912181252362484719125224317191211432435115217156132133311062248641601283071472351752392249822481642253933791098718827206217182228896141131581067215616873158168205241841502508515024678183185302621891011307211193191102172111562393527204149132361532361811822118017256161222123725522324712321323612717519616122917812922816622922726792161631061431995330143171619454248781811357818213312222181476316421214711154933132107131511811347721225020321834105761605135225178246240551091611112186738912158861871829521416957169116239174245211261432512294679106188166186194101253491759025291174242031219214121211100180612247711119623522224023322224016919013673462448956209234946183112162130222176177222240113582153217276121732333151217431542341311977617188391239838122196192101842411742161132012062091582537937631232172471112132151901762141541313917710233189175319463222173411232502071967795245102140247166191238791551461647811638781163877118397773146166379211182406422021915821618321015216920624016914217620124620818314623217723016022215524818322090122205186592231622311701172235315518260227154991542218744199266710025324115671043410525681792912096180217115188149150221331899875123328109083121665761401792391911092149396208123147486411493167231166110239452211582790146220517420358292311321824312584623211793502361889622012621416223514091199137160150991941342117319912722710217615421813322316117116222419819165315814217063238811211961902261687723397179226111245751912114659164222122222104180306032146131962001648147107189187242772184726122201823018675254199221871419147208422391091511121191472542192303537182143422815986187601751171238269435122247181274618265581701327411771933318311786715415789110631121519286321320113134205154698206132421331501332064412913611281211319725218820613113220892100156379123203281782428116511174122802388172071656078221473511137421472302185860401191228023860822021186846117284270571001311192371041923811439146254552040484025422518319516312190672222461561201052372521062181816123717812625357141134602182371612501641024811831319211020755962231912335961201110230186377140820481512271641581531282309815418422916657106136219651061151611267147209218025515610961361471996315554128581604022839992041281621513040152498734249252992497611022810015770211151683810878481217286624424317120012033108526103819110067255195801035219442121131970233232371321041142351016120548916223954129101701991551288581794167801414380785416524631247210018881922356719674203149495813573911642401969419204238117179946022321923385994111624321356818624313594623411735206222294276040115144245701307166591311672181311582131216019812382229252184218249105173235179122551321542296139173365514159111221824211723524321220214311143250110992171771731281291424312212924425023812811820852352331172001166725247116020811270149246359972801256617723018482245491652341631388513518387503530160193121813606080242237230150243218152032839154253240115709910778168843085688786413316123612139642141639173231161442514318211524324982520857722257212817624716621772177291405108214472411451859480174226197142211771268564717823538120801993451106812662622081188112324014219713958183190911987712117022412914518171251165214136192134139453014891611691821238123152218228542222266220922649209236622142322501782062418914122114774155161341472221551862531832442501102337417510518215887226202401427322816111633133551864175178372092041911151791522211015989184115012022315090120449918951742211734629914048624820811082536561445220812488292206743299113421447121613340129622172189129251281101731252145067226581361081232558521422291926710510213015972514820648106231551061561341272271031451287110411812911218378885022824838183801742121295520344332111691532869208881566687240143244202762534324968111961231321131993024489102721829168128252139140288114174501012512452347016432152472101938921481212100201421133202652638226125192023717620131168612501451871129238842192772491732451621602181121379613414146161124402259883205134332131904113112130181473128889931176204210251353199229869416851170135181122320217422424179197619220975200393616873723220818219916910612924191220356520159154184129408021811443316884124197214732511091461532841576802421424913622299145144991552505782441911496512031615012125095148179255231402151412132431254525463193254276064572235114241082292511081038115015540219751562271714917774217114198451332302212717888197204210634410679124827852808921913810542142413620426461292203422323618531111805311224614222023523139501796199115221981601221156198151201362471231982382471362012091151389218465874810316522416318115910821084541171188772441367511514121973011278204112782041187620015765213623311910219919025321112066236441564178103573622856372375513922017327241113322023514413220317910422722818428106163562196915623722151235171512354120624213720324279200246139207244141207244732001001837811514120711277200114732001141941331727615414814048462112625516313675227235141901961032193623058196103186197167538167187135812719231082932728023224918513014315015413319758371012163916621919616512942362002462171972371811916557139114616818522220991941002092232552542431111432545023925223917851215012476231793423016221612113013301120138949434161721554320013822082113381782521641032491131712421637010122310587124167912451571131958113514217925415239238124811891272402382062181151931831901182361882224516211322368123250107105218219158157992371451323132021431712452231813110713156238141239223521712621318024917824118918231391816214310718831851236317424626109101461176914355775175911511251632161146625120945135151372382071392213022217812786228242162196237209109199199133781523958246931792321871291272481731221111525215681174601821052241422491041472231957418319953941113681178126241120918025153227146227138931832051985832232466918823714312422123130152162792542391081624711418863981886312498022494916572173153213315322139156381213613333502051201288920452181231822224416578245236125372216354248155391461272547717425313510818541861412716623413025019423617716195189236203126332215942221245170512418512322018036121901465021430632222163221342136155234221891501389475132839317641301371421765514623287771936155108165215108164586221151205372492218987173218472487312112321901065720918382776148245137198913161531357510910312196162205119180217235851472471041792071041472078814723912014747419621142871369252131221115221168151254133214147181510424722221014694872391901623818517239185104214125222148241128126247121227182163481671823525414171162102544540192922381927183198227116235142368612627881151961812501689922917187178672216522325150124171530104201511208923535271361471319820112213247235188187174241839550241889912517514421227148420129120580187243138942391322725137182791711571592151841901681176722881576819122113182591321512796568510613924073181243722520125013521782082202082352471531355800202309817135791072201602331531501811332070724819218150121206208162701248130222071691181336013358231106158592026719663171115127217641314516017524115019213721432132232249201182224871411261543922391515732132136113211167181238147237129994512652508323111238623512923420913671551841280105189164911176618523623224620222774141231181325211311915622982271197113320946200122182171801675017346741953816524410515916454243192129110701262542131521301876721416323010462159396410819220604665107816126482821021681314126471967321151531436612034662816262184291420999401021772229211725243137130242102353164227891361225310835578491193353791933104521601791928600161301724948218105207215393018498067622014887301836715667519122480671294013252128181613522222960192631382272131301201333319415251111147251208162181172031142241666925513243222219921211519097207859924632361881683918510621214911182172211186523112613718976184623513714473195951191331281712411401582152098027185128521124619519537542212151227207323721291461055393208168621658412611610722924123713619542794021415983235186102641798174225711354218922712925021159234781718112301685717084125228632261292451972231081061851602531682209632312318130104962451132292102391820956150024892852251348581321431441921201321592262211943548164163152011551367777705882091141729887116220811135520471119032222512112015215013016711869191519517523916623312014718317239108164196186245162624224222932431611872267692216013039851182071072995535614354186194198154926524710629159148219604417718495108588410421611967879016037185170222113731852371942461821882371562222241024449255766213915118695622048107203173601031095481281711272266193147891951882012281592492293125121741239149481851551382208922917524741821481476471060176214198119157141239122911541353211961661861732396199128131421292715713018218613442122681044196266816415417851332049921125182041727015417831146119028182522612018911516238695177615617652191722322418172201385517124819700563642142432251451495421275235283642641124180591961831621195231820182161642286613622714679779212015318863209195966148140179122145169261939144233901611625320116253729723463171031451360128202451605648131178175136105125114252263612856168224511151431495419013822266402512051102251281162116608852502105857199606231651051353911518603323624023111247138702301412061612196116353130147244351192356923821414772172302518121821412718115763191112388617673571041571881592430170972832534301601962479722411113378813892481581672112551625123924005521428249406521732252271615923726159756032202241143221239241521781121656911391155727438818210413716213314115980180476125323165129241159452222001241996283120200710161818401241882222085432485420339381954358195871562354536243143612324721823922415518810816316714220715212534248112229908514729222384286238138862382646658617599318247591964967220017735313919016616571721724016919882515216015226179281811528181152451301862511129097226102241547613214415223520159336128185196230184131798115601961539417715394226521591841164720930472251742243616661541778716416667160169143200851522301471162082987129148226115157226178108197233542041512015012611812432203611109580114154717221216743214190207351227376210127184212196392026141219576220362150387959136512899211157982111569824618513750601321231893498146211822542291431915812723320363253241199166705211596134392301789931204333080128236674722714813515822419821516116519927514318615030182462512061682444315722663234841261014218922825117640230113121252163138132167181201832925194543660175237711836781191971911501966210781685717193113822960240162499618643114180371842311821092378915723827150792351241582121307603085187191106242151731135416024718211719510520524217518321312616722012466179254136106205119202117135119523083107561702141267016724318894253732131985116157902052311812347817121415622049881045521322246178332406967192271378054165920930210113205164228152982474524317714216021518917111250341671233516610410032114981981989712514599641301901362011291682011292321371261521121624710216287522092759209191997614019520119024102177147189137192102282011586122721020415114615914222325199195237159244118188226291972232341331309925522494924413515118995188144238123412172497414625017851229852152062091741571842407725519073732022351582281692381841772462321691742321692062001697822612917721422420915016039213621251832361221742192082481922111201211391581718629237710614210511823015514355135202619100614999205254801476737541082541282111713814324186168882261218689182297163247171122175103213110247752362386510722901422054235191131571002161158387114931792511709010319010621537173174112502212314118746261169352150921781095923720811620418722510468195241148253971552161389619623865250130218227241245199163421902431685723484119194190242168692499716324219518622913553421421682131592141268823021814422113914713136199262531871751541189254281881092054078190209412439616610513693872442501111556116911621560171113121742273246108281283311631302392582144161194971681323647871922442291551731402491321732027915869108585011510716110124816110416135334615315637111222327892210119203274823162391611011611109152346019231441281521721025448192195253114167711491741431712209680249791702211357528122110891166477509512713220819380255523419319646443821618294210107581758512370173249130541722362001825995111168591631341232011641717819016823378208133552382851411141861014059175210102822410249174881412221921820645168542749683129153255611543292071230141133152102481921841307312114820421544891792197571292401311099152501741433099195546562281641292546878168121824124612431361201742249712410016325310181372166232420516614713932155920812465167253369180272061052121578511113023619017213575208512326481256814413018617622011196499356204175137635313422527729310163167201943914617317994642232471132399767413117691221441791618112014022860809622012320584122197168227130110247211951821391861310321233175161188101611451204622412916911823047842351421632862174118190871081971192451101861608911782169254156106103129129228134491722471821532441664979476318214115785195331201602473845224921755333561517633130234227140714225351512471235141130710191929524424570212234731652031041315521630451735816647240631881311719833953821331220131512085295234424462066622011511131196241187227353136351514023122515124025468132103192374623297100200556819116118756187222912102417023918617015146151245702002503523915121818092802394620827184995892108738382622194214187140531853324216230191802511352292143537150195691022472382415220522321871612151239387114851712531621061151588222715310914116718324695255111273316885254201156592446724511411926110203222103128239107119174215971719717946675444621151381401252363917151551536024021513211763812696307114055561021604751752131722818629187547281754140224672111542372522145924811111313852461382101473421061081471142362162341654825193720157423321132122234247222474818015110221521861249823613218470112188161112556857526182128646031006122675204200209104149157471862233155221661452118818021534491187115161351701311782311511956451392059265175611671261621716719221318212620822310723610469127807119238712916087179721116922753130191192481991741811525219621613324951214649672960862172486519317161962337123754171031682481388788249172119102141412161052615514001712402093020136741102431621851622422181641481375820824725417330811862255920598511313312313162247168248197130402719212176148195382291288518321066320711136220103301561189223502411231313127436024015825314315585140250252239118323342391456213218713817918999178125197576249891661742093117521498203113242233420322126188817520370241814737971911331692191301217213219616233259812889223333624220022613320318221712111189352471207123724323102526341791301621151311631785318093882017523040324214418204934288176661289823145165248226772192046023716224618519667118231144231151122371816010752205128207229672641913612913241217192019310229193199278615318591137210281911520110140337116225201552372615122717159235462062421402052401372071162323854114132101812451141318219123714689175134901251767689195204219531161837521662247168763124112632132832822316064190190144291556322414914422154146238193017915219872326762231129249130151610311219362208176246242732041171710358198100186136179936889174492523819452215200931584918712569169181209169123146254244231223230157253424222029961291915101152311931287230131108023019457311194208191053131245130130639135741518093178529119173571025911220523124122114419913333998516287213162716597143423431851326340151218229246170411061624512218683248186432341131418722973245138191062531192994545203164177111372261611821513819234132312453184186611692431208467155125621072441522381412621927134195246203250292311171232421413723139120710421331219209116821633579167235162222200292033910124624711022795172432251875220628810425516819410718857252771032048491212120751961551101451083297178351721631921802441681782441502296810320015522216855125209211189818318914514718981191892092271761902392548961066452217151391552327724147194181991231469614725320183313719125177227189226241222132241158212201222180491052141522447119319112721324724511124718722412041031114216832516524765199239159751272496614625317010324775732261047920216820841761191223212317063991647821691184822214924016639105180451061860208212498626253702653214221282264611723718510543189110221859621714511114614492181106163241120517443221474597228473613716281172421051773046181121922272481782091091802171071802171231721971031881331183830111246155104246123812352411841942496516919572177292471771901352221873931652238516020912689165253162114251133292101241571581241311904338131215236592075955159246105571921311711322347682349121104858918020681731122341511425319934235791328431193251968311522018023415265213491572021631068571119843122381121841852551501491725966542443271401551041023219010621012620116023916610147212241551791361610616323113491484228812312161812524019224390215167213168170221253829132129220160254103141142903521391862121181842121422441224110592409320011911684498718924220720451222243161931621722021164214721248115381292502331911051422061291381091861602053741116572124522844829016192175641067239210551081049516411694531081861608512510671671586816815367871298199158102253892451382277421199148421434310262425233127171791701483183446317088115742115114830217861221202721223723520696891112023320625423218322116114425116821241017136845696224117872004671301771026315421690711481308321222210103165343231180154134748815160797222622316589221041425013515116488511016216572331842512161109232281415136240175251561397816317664202437419493161622302282331964613410010321320919815421117010496213731492341475914471091726117313867244641974919717816321924996824284158801662069786117662515314513020320911156139171208237184232341405814416320913154617611716612221830129144128207213633481812820523493607414618223617955151182100552052008923215410563125231546710011810005018314329118942101312161096117583127901317015424164414401571432231725025851622174122873101131810419016821311473187238172106205105101019217958183241221591691420153522447787161208520224016025313830242212158811051871723518510221613318323217811020312120513417917024510311820844130832552412481924415252153120022936192217301411705716123040249118515622594161245187245672514241126643423912441516015124715178225182487252482001221969165222918381345666250181342062201711682118855162211104565872102362452392190190233814824569202616230150219532291691307248200012022410161126215206175216196226103213781434223614562116215124240182113223131252018523720620326291512122194717053157512401821588710958163521162514723019175100197933672155624817518224713136133138229617140195893012022315216319112413622412354155248222217217241114181279772159254922406484641512001192218123141149551201281791932361521311241041942182736176193491623375205220144130252155156130841241329019396145592052172166144922142015711859155623625428648481716710160155113954012680122692181671783517502968919120021613750152561156619241116142103324414525151176169216233186174112417204228103145132341597913721410350125147107200907112724422210323024222912880224425931164160642063018416104132101082451364184024919664163131101920815115218567250235692385414273992431054920016331185272109235561231627684245996713514321613870312521816320479779221457410924718238240139213127382157419613332101631521251021131535822516920344104228129207991988915514813110871802822822323821131084810321161041515248192223341517623416117018818223943242255187198952062551731422877998310223722717822119657944921722216210819121692175168116451112719371911531062311462531792492438710921816022723935138107985220166251222161934418240241120661591020150442191641012372523739761516102668101133136246770101915996389170202134171502071571798212910955023913121523129254230176207226115203148204130839219247596612419910321737229176233611232494824961955126401514136100219196102126168102651179116310620150226156180223496227133208406510818214740211455421943461995946435624512883882101621411061301587126188901052493877193252222261061459625415479542321058855842392422010212119822918618108100208196226248108155248281671962534611312813812533732519231942245936159624879176961299633227172802161567721821415849251104915320619476151152448719831101941251741455912519612329811925071702372201471222261968763251105218230141212151155101154101921281854324388100193661331331682201852682896387240143105102839325525016224139215254205178224247218224129557773178198164169186184871814979421953115013522047112846193191154254472719519891353821935167583531851231674142402472231172810791234313714924519614214812184159214174611711172120842272411682182378118123521112220724124619255210240151771902471382363014956141215250782122493328173246301712411531082401591102441511171322021861941671543166913223180135140555621751315210413712221921251178621001784523411710320411615180541524820930218126213164244168146228150197120714822712916823322220041544906019214432106188143256913673825199387196833241832531371471252011261463912283198362019914616420162882266811124218452117186639976146574224992246232207146202951861532242116520723120323110182173162205614724925022520915112512725517259251133100247168116207432011908173230682072541131057823115714425334193556391241178776037732423914015323213612245137126221299140121222224558223858120215177239150125471442246131772101721221748918317924112925301361232192957218236207621299120514015184791802492081261001315812412516117738223209623917770311321445612812925361763044521479221510919117221811873165229188982035710120110193201371312221242112221241872145146451031309120613614223655215255132102249224205211914624823811155170191622501471451339310714218621228179174383048172621749111776163230184122237918113819574938714039155310131771782251321692143224064219525315810796082422421431421805018618516419216023315612223569457213819921142791711561722247177294618270842160144711022263548114145178191957858152127171351006825211321131464561142131112911539177753114611371182150342449156127564717813315013023212942130121065817556911161152099291518113819515483593212773415981135210133204371491277817924424021424216321919361442274726188160989146234144228611748411810027786525387303924920373015424145178352191391912191401078119416374232179614010864726011279687232927111241127217224245219113686127606552135196401552406424328106220192422081661045154648192337020011962421306884137921191017316653477696174651247854742276136715912488866105723117616911801897624821064119655188144250424539206971543020513217722109322214828222138701132332072181902913510423322111155193138190219140120201161456039226721852512051981621114113017624818745692231102602244668501084185682481841991129218379515213667216188515211670179223413611421728986071361149512125010019224640160239217871410022412008970210822193213572911322372311171645198173231042333020092252941362111223416758130158213122160247643212418866122211164453114816820128132148235207170621681120664102114250336020820020154191871411582072352211932341731511174279408615780196752061997561552156331474760250159242015963128221297192246820916218683170724459180213425497153351262127222815430131351762242255022613320519418207131541142272491371216140112834196339703112019333136139185121131823269741299120128198251041071033252901011461622612925420013522918222412015312513625471211181631323819205941631412381366017111312280134199100222127219100224543015612619937131682551821123417620620315461215244165518623723213219471686141251139253200327010393131228902551239825317527772461332411752457617819117911935239206661812271872222255220402199521610643206384141591872046786236123316242007161441941151301906591241321869720119819461230226526224315218243102223137205195013133187249881235714311710813372452612472366991452062331364124532156371249862531320915364814177227991122063716512941602436429727113610817920542554435103125111205691261381628314055322322152162491071333867136671842356923613047110014129422297161891352103191801958214069401271751374029421271651411511982130145629917142331962253919820611245296250112901102291632262311188011761281294192362091231511763777879025117418222760112192504923234952177118020519601761432416417415612541021211282192551682913925511601281220414412721422237202392221144255113182593365142143401995712023126371682341011641662281906713916122123472189610223622623616184124233226052681921217110108106129259531032418613115175144228192232180160168244176152442552086174106182130571711361230661241311022411660124421521831321257771220439174881749825188203612253242692113722201521206118111261354242213132216252113568232245442401281152021931091421932598152173142651429185642135889092149188134688946162761198113415140195791569722816408812820211217689341521311022428920921217419723524523612418189163511891971852385241153545617913959322818619723924713620524621237132223752183117253248838179249115228602401931244211230235102341567915117088187196120711021211111561163179601625112519621712611389222209411177137659811388116116781102384725423810338701221152162241281942892139152215554024152199489911701971210125228164190168189224239159552523359961772006680249173245116672021161411041725824289852321952021282512119015421243084122221175112127822356122222602212962221212541602021632361529023317245123197302271734911118714796671971905316714010778257311056221472431211921741259027244178492024617041116172411161884924811710713276341462451982036147100671691782258413822075145245392031642011781291891781901251115882391541479421419924522324618724971181123119189167219691115816117122619921966218174261512881236190976222230244182392341091112441161112448414311217071523721209929726402247205413625235171412471967824419879244387724516578246238124213149602186967147218119189104223249122321091701111582198187247777224714311712549214253155201129352232545410216921897943231209198522340168184246992171791999319112541253252149522351012152541512004424924913918215986159151518216152110182282531712348420717413723813217711822512071228116119212179122191251211101311971421461552141921282221551181001802001891252391391240641071588122917181238171150211237171781291321832218116377254154393721862121960172116497618225165133601743418325200202871322844522212224416635244105149251208931921282531896618712991214125552041862432417917562547311059175222122781892291807019957147174601991746015914218813618211591512541932031101639615764176863201812555212269253233208134211254205103189219206187551561771981151726216931816862166861156617323814812222173181186227170173231116302057200186351012472261679019231662241233123601921332181896643218161233178141641461641921124173128202391971113133113239174229127100561132136466140117184959815571362481251369318219420411217729183316217932287520522416656203115141688410318590234204551042062111065616394127261381173135232631639411990173227211266165234152822492251098096119254188174242168341142212618119024821977208761969021782452315215292134242163207222136204152252115568012338019513322310849964218781825144232490936972112919372153965421823659209234143135216193223521295223010566767406716667178131675817426141461836122317814122818712460132201104462351939006814413610815625168418221511920721288331081315192194141183317521720212683023218610212173156579019221212720133166236191221841216120782961966617222513264200124116595816424652109114135861311662082113213710121141381922292321996325016725514222948912541361062031511354238152651567724616057121684582250239144352287174161902526522715334130681741071723141156724810464311918119638720176234182592231762451562284472444930582021451171352011641721115719320723561209211848123185352197107248312312524511118916420510382121578512592229362351957950822141942147134761194140181208303247262203185129163124314216317715527243212187152171253441521215916141425511520812610015671381912221361191520227722551881982913470531572114128025021671882341201472495912672435792241811595336265601601032401151601951711141671608996224103169751031746678252191982401661971892198613118344105264616722521146123419010621612689183231134491717887226138159103243121141254219166143432371592135614354120140551212438571311502193310321969237150111542924918615724925010859521316660117244732195109541832191602381321082377710716167128119604843241127961802241527286456431002232521125311493254159262036750291512521761616612522955662481101251612392174275472400331934433160204153248951811191191351301832477214012169233132361821196166911962111419023018095114223470491231161522392542214311272106104104222228851821902082322721614822611714211072996228225179206145141851362311722813222023111423313239107134382422112632242144104161892035857725642018822821214621622352452724512274613318732686148137106441792443417515889219023102261551422167811513099162091432183900128838230128101821237017511512909823018221614016646112122193179991733255176229869475205611054013822321412717991567421410738611140713318617187221551842092506954126641462127192382490228621200133207140152289025214114315112233108241255215241129424220939301617151201981001236910312213223951119137221241921671012810321481611762351201254137170178137145129253713166447152632313719631016416116198145159201107901123199193194213261981741902251871951975797492171106213743215233242210192310521914614342124168176962332101177413921541125184106219106538361215727197150912521151248282305014825187121128207343230160239247242812227240841931186712919417879117237108197251742017561518417641446492546209251188197153174971691555344511524243807716462120493657077943424812015513783148175482197606425115410158130762261149214762119142205113141201813620724014172802154989176112177130194717923514166187207165174649514512872464494165992271572284362232436222430157233271123874119131392471371421375727277219119224224651235927218117140254240958126218228120141314061367230112301638032201200331062496914020921515959235451756111191802311211891057612181282501782185110016422011118420412316819622794137235112153235147901752011421689111244235238240161821671781631702131671171357518819891132178158848920720614582255154211382133914118617457121491202214724712184229255162621161805798188531141884514615622716520824411317823824891032442351821128918380214255721728244182352137111586817817416455237731752191462231182381222111772512341911682522432225722157814745661983999173193173871401381511123918611054222223612315971641143096142672232271294916912076265538771522327326147361912367626237222572211594921315557221151412720661518823272301512361551442287874127583325313516125012714024587668721702400240167167401681902491791831431436223825224924323839961185471872471432472522441212512323125421778227511221751195520721982383616922793241224129137206168241246176714930253119237122110219116941792321841062221211331555133151205584615354156210173561642181152212301177114810896214952001531696123572114321292093847132791069224976214151245941474512647235188942131211911682411869523612023914210925545431051291531800255162235119952092332022152381861722131177316724318878103158105103158163244162127791901682381201161405253132240179217499524051225166194472531381902461685622622211221816323314011522110517115421170853918042143170215288717159169781231115621416859161214120741791831921081621937921447261112422392045515422912001123212166222104506722345211238213121411521831202241425772962321742131121452458014521132522612721340195931711935984141411201762138116010518424410313383132151346422019224811074925711322520012103314145161237162467202343148128144277216025018450960121286719616119211282921111389191244592185922452344648134213418069721448204131349902471534163186294180198244153252240861682528714122250105569110255252771192321396175711801292617311874951902171858157570128129250179234404122186459531411442421441972282511325613712625453157228242354113225122216220983823521719820710814712502267894641801881822617941184417422435318453174197337212827872282472032816113418522039425676840776399121821616885212521151095422321513647157196170199150609821965180231235551562111642521314043138191219663561351821287192841041972274287212138704815223810313163180775022684372144363469501951502202402202499919716319967225111261271972123152200191109832001201601281881341666125194621619851841047201235246160241102191167531102471381081871010421783241221602351541452441669361262318525321420358531678526242212159212562112241926421215523832216116103224881792471799021510311717464130254661391542112023271819315111759462351241437254195241119832232081242262101115521111032311812091923914946224118821656196171867132671716412423552910411612117111120359129107122244192236224034487856320019219812610129225201723115720438192435721712520424910136197120192168253146141261941115913110013120983173126189557721946105152391611731181249023724413682231021682001142241421692441863317373122122712278953252228819125214210679170842922394121116912131452371811991482357923810458163621142158621425198412246112716125936210723920731120631572715123912769184207120720187261651441081021853390621367521331248717484119422429393343471507491105225177218146168962111534226114159345113551381194012263275530223224241841973768209518261481426291020454117631485821510012426128701122521182302262551371772431032301801863148611212251237034142244531425415616192613606208424001414912410411017712621246681821236910613436152197145191781119811316832717312842321092187902502713103566513914722646188100681284921571715196155197102234712372309924212617772112240672431844468541851321302161329923419821716143211971101169102171166138842532271122491181751042401921043311019517642372356923821823218186196127919919167214216713072361181261431081241597114254255193324418424120825519410253250255713459210144201872452471044181250175116160188144239891813386137180231354567219921610887172054224614020624422102250137178841416141142312723299381457313212424422513014915010211012221822115201538341201452331480242151243034487217214323145901671012282363118675148112486042195208200671292465325124816315872078788162321195219422913921224517331628318819419125982466381272383820211716561203114237104632242810788921821171561241959670589220101200541415073211121043316012758115414612319666452355315094228112315619115237991799610416011510818216348221571221591119215067642202261171061305719657115415941161516011714013201509230175182048919093223201433821183156229221552252815523824151229146244571201929415210231190211456021719853240163798792020822851081249625412466130249031983104231013212295186100165142133671481551271388723246191200939416124115833162801137474902061581801081037121513331325111915115467238665233973012012827747017740177212846678680129230167130293120838196191752206022115235107203124851824117252228891172001317422325121222352293035229110151712209554251791171336512779119691222011742631669311519810017620025510199252219238528979246131114972212519915414711822156219519716115203351592151381981541839918316658823921882198268310023715311190178958423712688156212119351782479010411919012723557247134147142771679336249126125215666110132152310717419722919923712717632392124718279183167190237138127221174523513929107141061861689511612012323111721117718264240201155158232233302251164719302271292454681661222394121402471812140741961753611317518619198164411471251239515228762442286010922155218149512131192402052241217253317724522914075114941803128239254149236217201162211217170171104140618913278195956618425096251317158126251164235554758127532142491712151891911272182421711111261021741811562502117081208118612481179519812011920288103236120103204120123228179134128193982312382715029510223787772194622722384147182751662374421012620916422716210525341157170352346711915722311819720838122211942091661921352291103133118131119249621811802362011634219972292463510114495543519724614320293159841847952778525132121015862472382162472211762341891102141193987295114851752431786525112117915812421524611594109103675820719987124272412272401323521791133231254119145235907971183159114624921017223015210125169199250211102117103140170792358415880175601669012366173225148702112545882539263410457171253168212893814130107244107187168223126209160247610025731346220153207188413012120713991549712186211726224016417128247213255172815856161208186024017620412613616819223081185243227101034016424785621481921212181612371127146152144225971533550240156606810224104161577913975127132220566321322613124022612080118104171124931516020514611155223253106384171489821392116897200926822814224212410022415222016913443102136233198243901623811118719318922516377621201121441851891831041131254010523212614819218914626243529146233182942141632531221212281464612811762471321644214723676247143148576016911816324514880267312418213259117381764216122512381422045610011072124127625025014201142834841772131492077810213320318348673719348179606415863441422216112996128186179234168362126311419010824415823481541041528109241271111115223681542381012622129101232132362511802061251762161822411301182174919714635219128152741282005515526242523187185601711177117380121192366238250197911010412916119496396421582630431996313260219516323174151139901382113457166124145156621822284057196179197703787104984915718610524118020224581185192221532096239398518011210920777115154662051027531921861752775111241199367138110243520523483202131211067910692104124160239223252861834147132128714483012090227210119199122168011312459941141920184183137237636424372415212158821745672541492491969120313675414917724713175311620117147243192522611881381922151744318010840164572160111351269512017720924089197255306444203831842267115680973852151621624445223155172239134252501411404720819617674194198718620857151116165215140389112410022119320710692192615724918619569150152031097174172123111241199420910719117222111465163229188702275753106248892131981152341171671188412814714342214159861115715146492818410157120219230126177227100831601726113083192952251407211092247255018184201971286224617989194514212451484645452347417113917857024933194207769215015256476510420262932071741942493015204705615163045561532982251772021306623820411379991423948128217251108481877194204437851072371041213421857193198123131751769096442445814419211023112452251420519507719610514424219202400106511719020145204801491435622824538871018517310211152268621925133141220816019712468138622094212649250815997909773224418116088116291101317319128531802469323124814416013155291045017717817511213971184146175802095910517821141124211891327019412518617187766823316617725802312202399539283721126513822249162411072373215216831772326722051513513042201183771601541351091121416169691731882152165321782102181191557114897244940627172240436321251576716110193120224712147325124978515671047011450159822521831953168245524637301988456169103235132442724911971593818520621625112225312721110220314815125213167691723121131279656431432401549137231128451279672196411071822404011114518912486113142111761821594021995148237301821232298635250181731926315347158631511872111241861051891861731652191821411068025522412957114771431443512311241823923017522018219542401169512223011118918922662250161221022251993117215643248242320610114012191611011734218292417921955102143183562199318822353254160999217493124142125226126187164253118917692219196921161901011241341212823710310869203249191520814822619628187196108251164922319315927692382121414018322167591961031791574200219135456015423338202872204531191391612418814216923537112304415539881301342041472032471971301211281501334314814161132233301778914194189182194221142241892062011592191361781481571956383183881711021869319568487173134124715144175255124182389219667186163708196421324323012717610921312212535431272551362122402162211611621579716215719381731549023210025220569919631151521551112521916614825421601942382056181601842132154751017991474025067192681172461002451741771782321031651937917121582122506117024612684237249176202245113173219881552231072521634013155236823318510191122681711791922491137724422726209120235174559325195165194218211785339291642152522391516862174140121851594821714658221190107170992151201072341202112221692501561033725125011226122174136218243664319011745251202169241132111195491591661471261731033106141875428115109562252461672201812258613022323890588214644272529221414734147810112522624123016018212426311044748301271993498361162737320416420481651217752355141209682132162871820916836246855522712915821220112918020119017239173123591135111301822532502391821592487153105105228155193207391226212721724119784207111101247190253167281191162094686087122542652464617971125956114825423881231479511625212216225111922715725512024487246596216510813811519912610940272491872332221722332226121161418314688240192131744720113219214124147198112507723244219242775817415211792491112077181521162291551172291555515621416956172581242156938172031222276551631411931520361611291221118975721988912228924622254233187992181152031841711921762291301102272515716159142111731612152541012373121044512113414343601341122011317919321938318312365582218713594789119932442361861621014539108561724321913229106108135240532651661991674539132146115817719922126792161802308918115818310458111821197819124214870197921320299422131998419232051031802779105130710614317129611088190105152510924022960208119211178231581215048245701862379433428201558920312120515414774146219525137802312281119671012606156761145166217411628463477207191152291601295610564236648335113164321428316581311338616124156221202001219682342431501212275777721911080901791131106421328025587126191522551596218725411143132081034031975320601151913021315816625195179227322012841620869223109134214135236126221213423514312622125252180198189245146302126325594141697720654512066940102400180426425119955533175161271661567723451191127722281619821919910818311112812285014135138732532431752337222514267128122612421891611056108166129355012872001971361344240149761051081291491510215222912918176161951282266791164798115380121144642552943020110091192219238481601426562223024816221723110117923910415563226227237199109113679119135322109510021112081167236132210221675296505962128276117311719977121101186174251311024225208248082208218105226681651115935752419215613040194158622318482622315018519324417649129217241117619598872128815193912010324818025110321311015202282098123211896011010362324248146222521492225211218092210110601759411312491221898526312321115124511512733180611041801531561339421218763170116148220482158415780415180207240048070751216102121224168183915712176205137751902224417310023810624516721320858212141241128149472188132562131451111922714482321889820020923154301097120732142141539701911611126134116723551191421119134115552423361302321899714275144777424346865677241174671511621471131991827558322492411022392152911574237160254165215141707417296253183771131369511911530966417925314654144013175581698870111794218294208233191105249188218243771231687618411477020118697209178222888979281671282472521331602512237312712122812314424030424417916414412325411214513131224134118959723369350511231444531552171342041949925132531921287715937209255222189102138149111681921833232363230144479974108967816342818152190127143425417017717110211225334021341794317260151176157732223117194147205227511523220334105531632316122433208215216251175103111436617511124313813282223204701212849161194555876512111111499423981332376714716110912418212370104419922721814120619320822618617169562121073212127319685757693129252034514521111117910721626591915311819010723717167213138541871342401977612910235157130322415518713310713436105133381551382111419824610924714019416111019678721181321701113235157130145103171123365017597251168314910413922911218014625202134450114250216192105161190195199134787545208237222108116194714417621820625583191831652301143009016851982191662818075253220382291601381591201021240138115191101162289254134120192741105114612219810814611410445218228922512122531824118521420472913917923337127161236255219198100189922471951021524941749713723621212710425266943222288111141202032241351882884241091645318132163191781572261601941151889811518922711412598115188132233142549271482052301271807397141449692492501471283822118810113117022610214151015942822206336520710226138278216661871147888178102131182153185143170170197194153210111310218232346986741161681649722382182744220273222073224120229186199291167356232144112192466221558541554446199586221950462111562374281791382051601531966424625022717815618115189246252196452451152060141241911302164412311316616356203731482332614723815914416310722743152793521511592406315367617318113216631401281246215219192209210591983538205371021758320494223157159123382921211314322448316210831175253112241581292265615124911209391242400132592112411120104178532711232671321681052212210919114418421621220422423243543167791511297323214319319260162128571152012051331761281471925930152471521317623283842312418214815322612419319116515362402061218114924518060241898523614723423225121129154225213574612391491846117424125111151273521191237731202172822111620119024415289111972002272181647852011759011410012519112488157891253816423476176228862261122492227153153207262471911046224817822919217913418071531691542118852913188251103239178239220625518920511114755254341182131539589149311433040625682249179202511138539163206254210565964961848296177891122541592442512388159841391981541632232101913722613718220817410723019713521219117619821913010118919421582225148521347061869938371621693024184159120170312259672232751206114458387328149361417311819023421824317843237899110210397220556387143118202411016232172222521252501039922157175581051129617023122323921525411514020354244186411541235861965182204135187190292332482151452141271242202462072072192542292084715714823201223212125193139302121011411191031891047719095276292212401765422473157255189821831589111823787205187174917311021017866146107214146107543119156250111571169517710819196901277418323317222517910612789119282361171352401016720880177752077723512966187231117222472341893114859631721122946113106189100881199017125013212222789221254155543569789713422825018120783208157111491242152491261452112009318716121954253552812217518511995246237206152391852639189146252251841011311972442329749102130210175679120770117156111706323821612421818225318885751588924312122718651588539212421056533240192142250147234141167522678170215298717199674109121186351192373114856182955012813220130122179241841011131437318319359208238522048112199283416925018434773340177233185110412119373128103144272262521761684966182265111929127191196254971533525515620185624134191322910013183325033137122216215981002242021373920223714218122817081221418513612623814714114427226179135136240112921912790123231203245141103531121071483898624821313415483170180216206105213582384012713038222111409120851153466282516010719991253161155161233161218219242245113150791803712727632288911682133134231424124285119144131622529713351842421311141678777628019592247672821118821822816551361201851191384242140255618218415516823211557366061958718766124156462178205134105158462233125335471381242471931823724925012318216069817191243213250187223108417416011010420480246166431001786196180217231691632151791221431672453020727609713660169115712021712222387205621431072212501045107207169151282177460192102302151578171512885104182522717896272920811810213621140193932762169151249322091361612715722261861321834516516190871411371216184164546132171242131874627208128646223287191251178120531964802351861721436012010324064241462214711701516093232124492388362321849821611473167233130382332511477432129170197411710321625211921929652313701524057253472346113475241136117107207236104204831671215023180031411032131041241282519319273229261622481197424823197192192861142225011811141122082543155202151091735816613211915171923922210924132120205113149823650151331802612014024674216250663521611941782552219212894117283414577301602371982501101837217511514421718424761652081621621082440171983228441322529387122402350712453529121152135211771937726120979297321891028176311889920911769311342491162323224722150702161146517922913086438114470227571171566916423318838186177247150217171623918352158441481319820323837200134181011957317822510021772170172471588319215199722802409415614153112231122253125671021260212361003719410110819544196174649243881082346125201228381016113353872431521020822620481126132111724823842195111364715324319223618269221717923925368244254782442551671341562422042362422292301806326101993318151911841271981440114951974770396019768188143243128117114174221206336131471786557462209208214220531041799140313402140122691101131122122820180197371001797520058596320751554059711114518413311111914382241221692501981066382341352391321057391111128941052331792142141271491492073839922291431071132011021519685632251227632052248817320819613401963528178126112371283816637140226211245163118130731843146908028668072341311081683016320138160182224221602005420781162337186541155345632081812537222311314517459318620020825842401771612433435231791409215090020118824121219294317312587217250351172146114109831513010136722214115208122163127752273172742201451341212144146203131173875206177618164238183217185223146153854215769789031354512532511111771292802483324520724714120797646894198424512514755157121152197714027148137102188412613911916518955116961551482271521802234162199535421959461995310016715415824371159108971621502045228592496129224147692431511255211120192154600891972136310819312319819615221823120715325120925212180104200134116242138971151511213847181637973221608215617301473034204121822918469164597110218519812722524247351079718210176150165402198215699412061821362055014320548211651531372478919717155639230186392361831274221110234189221196219204391937715623715312019253622156576489627151992315122732206178143781151377824314120321017724617124030224532311622419915421712185524323016017525110785140188133187322650601632476816428121392072221689819811624816713057232162446174157478015220736592522859164601209614225813821859511851309025320119975535224524514144861742175611112501471415801261483515891322366130144313422816316114115112111842310911221225016823824223147902552331052532541671171233185199151491321322013238189292161193924011318111218845229117247222556123314323522643207561501571161218415154881901832251142048823111110079142601102522511541118743207239236406048882451397132551121912542397123412651802451192911915869322283116106215174160109222701113320623517385413815910148622156234126178791042421559223922325521623911972212467017018523214618669171182205229167189437859214951762394311612321320196246250141146222180455718816316319211418861242109111220148686041137157146196771181952263916591476113719210132948641032522351901571781611801772381489233158201158236397725125165187272421472422542174320278961828196188781769465176398022512120314338371912523925018910822690117222143521508111914743241556612819124848237190230111238119126115191253171169145188472552061524571373415521710265209241208711725113410768189372543101941311011102471711259418213219010410126882292131152191261602002299716520711217771239137173129195112145215801611672441706723557139234992501092317319926163100939111589816721999158215614214818424622213019411515310492711114127892350222282491706212424014239508730211174561703819320883821682143237116221801585112380232241172522242092919125412417525417133146203145221151692531831181512914121622918772237511704830186245102193177159155213158101106023522312019818924118077253913116621158292324490243522353385143412152885174571781632381847025395792125122772208114869112219716423514697215372531931552267108742266110418421948243193592301311332219631511804314310914994551208210522312321180122771271681363813227442126319424714181113763726140184623837215232673896825021010513468104266217114620331475660130201562292181782242222457584172253188141251576166227015610138191217682355712671751841122464889610816857161821279013691411482166515924112181108226121024936411446983071228107196252136106781716682631701141212172321352072251612364045551321762425613473220744912813112212321622381721221998567240315910320429141158213186673167229753323020815351142672081751241612822651159213217217119144012579981862002301247264218216525223258547402291416722825971061522161289383833213254205702121822442408619058162341341561281897918417239108186519618821311917219715517312375752238221622824517020924310113119913912225010025418814254247165892392137823787244421421114759743141407212803184122372297519311414914316714019971714067606811072185119219106164208102228174237253342191451875419544142681545212414118813120017415524593167531332184723222641351436160221136243132002331337061221752861951582147701883415466489210825116420222981165511862151711791921682371789421151092461048243170792381041851681951501512130862091081189176722161551748021818816214224616114722048173611310286110561673318510221211522118425318816520312177162224223194171162921252836012216922542213824143148125187179723355271287117199856483795109108561651381661612131047222710524524223918232912219165174203186189215160218141164802525702481131322117723219197210119221120240150251722391867379178253413011611820242491451241301862021441651552422524016125558250713138189138190162156189215140177118214518724833155245939921522241819520811060181321316859169921236616923421624613417917022413223822182101612451621102035291905487671581028712949941941675323817559671013982178022379321643150245136101253137180104196961461083211317857148831925930224261571391143824422913132201202269551201344242125178184209301831501841381821819023924188201531081799119686143401042022379481741906672883731885252434432284436236581990114155177247911072391831982141195387243239831243249225952472551711986113956301928605720422119331241911001801331112510119124200110012812112464153925338231152197165352921942072302216320615564523897136108115152232381719021345121301261319922426919020910418967023418522262642017516823629179221351061351437219771164228412121276208137713617211989099227191214214151121622002022177211164701731192402138215361081141385100147161122324424164191177104175909623686207818920084205144424516056281628612825144212420278067782138222209641876970001787977156232111841327158112286268631582019554749210522718719420213523912176946721462170254113802525420171923239173552021997254166246319685178226481923576379138100225412114217722652179216521549515814410514615297154148105145204242252111241128922351152271222215254297920864184219321221511451044722320815415712271517921150711841891078229148351934415483648231356511831632101286410801961421732132272815922722151237427624314120124092211011002342492411992718523918622492491244155478824422515679571548201203145224125309648160176644824767133185200192164179962382521211592341041531109217550115201661332492031824027217186132249437251135239177116139891672251762212042233834211492381152511843149710922715216196239183776096147184223605421136102159153562055054221385421157113191107661741621491919625458193220531594215416957132154716721619916459196102217199101219198102131724824812871108150111921821296712896339592232211185115101081533590246148272551621918024019342125123631432408417516822112261223913622131175641811611952173713216111691291271417881524015816111015367227331327115231126164481513724416748103129130224591351628925111520419616925212113012131823012736152111058192666933402272201507411010320212212624116249253121195174167117201311935251239702204313712622214450217153241166398721425524972117114233731831546019119022613222323690233173472482371904595255196240103137911141632151027017225060110227471191692525493243871871193224211916974159199111202136901813910018925458193905186232505451991716418315867171121461596722721561331623320823212725092109164122151164481805420716625317020572185251235174403265239291352261954222412913714252352963452179201121322260482092955461371551443814211737140118381902332232431189622384207158215253252271462041901781961622271902232542202481281121731951412921386129254741292305019318363215154238253229120215175166123254932462242046323611592205106867852091552481151779221880242143831520720315894602471032092502492121172001827032561617911718024321579154501595239611061363023516433139209246136241142168137142168395313133174673715819516562131133158125552211861755614220242281902355911619917123514693197971892141118214745177507310205168238136123812724218421023912616925116310111192192888319611691140108100159236126218116187248971859523741189235255190161241172222721452032376310857255235212923453122123221471163118623342189104215125222165251669612394148244106124209215941250196541684864203104181224240791722724368131031302357812155158241168631052131122101682291409425112124012886618423949229106240192818524064459622418442121101891354133953218242244186462774175641518866180651742211313419110114362413223018410121412721917224516286249225205157871161598657604017925461342261832246711140248190131461631712521813510015614924813672103102672422013234442416304847136217838423476501822291058728222861236613347498412592185242168985733245261148125217971622825316611515422151982477523681822621208199223109653011221441602385277711265517153773016856174212124651871552378986127783242183240155141124146491191922699222811319612413524812028232184336733431592121841891061646116713161572072346023821217661876717366178243792488023776217203393128732229229336727888239151592101241827415822488528918425071134199108995342138132318094210133100711811310810116145801959691829990160762624686185821323815012086231701742431814616425141206172224117413616182121871911082446820625466243234832021657120014723423855155106207168614016789131802321945822521208212076208232195691822321092382301427205713025011115463401781879510055124199154961282431924575104229154249181255611648454068143248188141200132128215151212282386710811150233211632382032442128197242241129712178207106220193361552051602511619824121224044106782372242071713718518717525227162076621431772075214671711818910824012282237138142109185164911942521961921261311331502071709330148130106104261257162841781022115711762688014111922424022134164130205802493795111224971971614524539854319021990252213198218227202931511612002051934820510352128102009512511627224188537938403012810619914313924302268715219631184970162148158251224057223507156203620011523914219748126951834514482452236119531891963701792151946421762067558244105224184341721348924596916014205511662175122131035320016123816474227121451882011520229199912521681752509910420319419388153845622130622222060209205021328134240859319216350157816322811742512177112254127128173751952111031412813522835610036461092528620921490120489379614193192907136230144205110225219189132421269818112812018119241412246817314410017320810023717610072912001071528610416270112608444199131237108169254173238979192673214233172104310525412871051229041200151239796043244255755420331001043516812823045120444916769576562228102227221012114118625101191921204124187133112521723921114172193898411413912324852133592209438219759122187123248102240128671925812312713227129131421292352922152197421226817125119911111513992919310923618222022010713975248221514815621822416188194130156169182185133241171342919020991221668412473208111110512069652203920857909773232431436124124128245915216752286534581624521514321813711652103161190221124109171691987810423504025119816861962251723269236210141216169251461642264322222818624881082262461771612431851119641941031021961210612924180252802551821691591311310212101324859682401831933204232332427438101153371001521981672713724723491191057116510669166104711671061111914619723621221237541387551396161195344252175142151122372061655716419112624446605025418219521213122624114211224082225213162751841362551391414811944691142407822642208321214391556013319191362327116626112471521625221551221119676511805249211601451456404033203544920362622117315622533202244138216107108229191240195132083610130197115161161137762702006312951221197214525519477223194201233699746451551694879972061885711523049237592392271431502627217108217172198621191261802322112452618621470223027182234175881731821221572467115940661121271849221122051222535819973152991915397251499730149973320417622103891395117319625541772518217725141131531741138978145187874315551178213180742401932307954252345771186196160921711818011010514219454914822938206112143732111191280881402301244080881801122251785311263815211113151312382267418114231453717121517112324919713269238121417618211724015318722451214528122102108504921820319022019121122496235241121159204134212397616014699161171429421761441991714641481555199252112230114196630134451644010316018112188433118271432543816019123610320790126251172249552471072541101682342311432612625317222931198186254249237189471677255212912542271941911316712731180431041392263418510494206230221162217220184220711771043021813471341942411562483350321421703219516215322512214285853064250142371301621473383125951286701819218115122018012388225254166436638141238185101931167217722715424968711521728760451716166369525620814116150523721761452051561501027973501981872461421172381232181881712299019624517561782521982251191237614622054891081619220238762151123447237150141283011125524718318939238149255572026592452311389571598851279027231222582432471752382212542503114755175160786868421390738011911322318024418321121031777424618823721961218222531723324411310910420745175140114141950025524473686584174217519319417622516216871653420121316015011522261876659462482472213261461371278515758116591702501769923152551831091531782543120112215200582119584199634214128411012192302411724225073692281041891201785716123115419920512722381250157782355139154147582451031167111596016924019011919916923918619572161231208772071582032389323118958243130594719618115821912324816015522786234112176222085602461471642452058716327207251214159118170632372081162141612411481051951131572142112182912158173103532778236168611708411568169246152742212412917625089591661301762251324221741181142139122801028010824723324317337512104331832053314096452315375151091706316334189166127239174249721378520711767164152189152221211993179227322412325419021040233661821601012563190107221119139623067210113271003518228222024224616572211762618699771461451371971501791542089116810625159381991506017321460237198211234181199851701434212919234791695415720910457167371851061402516217516510131161771291197223108429843662421131312471210801301281281342413024212694231112113105884972532456624315118792412337144155239120224132501193113024237184980851025250180198131142431733623612118923112554851287918613394135166103194125702532558522717192052400341442216015713318020816207676019210335481513314812651224641577322466131158846510219219212017163771352321971434610817820523969131251147261511991811802072241635815139245110143235921712192239202134179235221945212114218225060172114108188160930224227322412913522978195197118938720191582430305215850121352283115911102283518324859244100106713614425039195171524515137151971406814319631801861741612013825514224513198591881352447414455601096264704649166220217134135251180154102104180954922448208112781632491621421481091813515825111241135168237187999306439161572194200216154813242082158111742231240211022415014354122190168117123946715523814114821601341871741467177511682241843412008611310451140145192250247120967119716110969951741755817829479721537125252166240186130742151111735718229681222118941121829262918255126145531269836217731931471241352141351138963171233145284644156192131322401761961188208666710232254217616701526522715136240672012113117420312212812918224315420510321326792271511742101921561601067842171815665710722413580138743087626156159215121209176072965694542439235217711913263175243123802301261752089255155261902356082228114239142992557759781632281192010049558016863182492481921013623324770121021287249173115122182322820261194183184691081171432202302516523635130244841534620814752099752131475691681915819449645152145135807222024821511023296213133201821468721286183487222814114212912423448481281431525211912012810208130155624049711476983074139217709975204922091125222234256631162139820340102151511073640153311459421220620551131391221195817910184213531161471154817018622233036322311251128245146591933514818813259124688879025044212177911062341362162282818620221811914145109163134252155156144518420151662095176201596619787184141141121287802522612920868104250207204221862192491148113667142372524414323570166226161412502162081332481137154339208157236595287240572441416349199444683631061515210913912336155662241862121561826494110233131321797620416524112921213159102120192260144114128151725220524102341021571569914514877361618983116421281672840861216109243231101114021730368212181711321961291612691232049821121619692901931914525530152241905441185120581204032736232198314340141342153023924207207141191105188194168571310117611668240220113333910216317108419323952302316323047214973421160230701132511402262111411951104184310814414411881619119616521919816559197102184921112516321113135211442041246324910422712419321012113079231171244100600161889813757781615643124185167625416364218874811923892100155591192067112306513733141211372041162911772135556206205551022381351071532486825034104203372351211710819517321181537236210243782122467321224014222322533508217105372021802020976981231142220224176204117139220179702091485713764223174100374422117223110223190199415419946622156262215571261911092283020322436155224363521514479215171504514110468415219113624953225214168271803455875212125169185165103721048272120162186150169194921642431567633147831618113912519412719931841402450551969725279125319218666222632367915814119217410112128818614223647501154160501131281781686219323013321772192101272011771842501011206712612219923720716519763233432532498020522322311125219923021915912724343143324126230219233122200229531151364166517565202312820812013220323021013875136224209018788129382304610121119820910292139632201417202631352296516720716517471681251851602249125525114125117047572139518218895225532091836235142120219292221152031702322082462462211137118136149152215516048209296322273145215614119931698314624421561571952122613475941411511891391422179325413124516919118357250119782232522008310417990227191292385012924610321035312924420614395751903010725324289195552491272163266511116015812038620416116622547210197160173248244551912191832622615461602121212132819315163117151189184321232462452352223177245128432101982181633086249151492491832295918394114145941523218917252160842521885810116480212115531802371561753663248222173232391011373553417114595415924118611951122164801406723314922421411522212119184249691402246414432211711442363213617922236118212286812641221562482331382421951281131198179645121702102107882438922715051166932311091234718724795923418718211125492452127961771518315227252258916022623813413013035222101103124107206120521561131105823521615610322312020216422518486243731411821799045167213235142422152886172571628811576918618530118761651198342072415621620911690157127209283330176187119139198722860112203172247166732391314716611523410113555151292228412374177239150209131501552221551988075195223231129253664722232481858212484238196215132225311192491841236291564442541923228111896626668017819782767390125183181254164106243892052462435822115113250248182181232453624913418422812614522113910624720138191215109651111876638154253112199230604596192221175542202492435823877418168992031492062426452191561182242105173251911821742327216961100101253892451781632191391901659318615219114418363522323211911811201724250989113148281621977610144161175596712822151052013212323377179301821994818041140431233822612764217917626864113268296120326319721014519415713380563146224211106332142391815200181123227121173392131748323765180197178521562461622349155106247127217224241172142202552276183711411101432722131214187621681151212122241012320066801931797024715145222207155601871102415131876817715673014859142321966247247191199325217722610513043610816349126101329168195171197167867244672266721711994210227756813422712161927712233115158624417731186109133671183323775030232411442398125316020422597169322240116202412851941791072032151112072157122241125226945412014154251220112211191180942101232172322051191440167161431662183193902329111422581636241842432456608023311722719921142794215719231752660158215186621701121922714224792829680127741332411928616812719831552482486423355274215209155891211209124115127741912179211576185233140582322063174170352199624539149107128148711825315781149922091351661992392358116922111216121132598325522844521950166512226816620022015779249574217611114401861431190175193116969470204228600669648160219126652711923618416861921049132128614017719714318051951437915217459189163226200542524581752613014513641641451781261713111219720323819720325019611118716270155130159842491221582452088247931832339921917372111725651241112540159792041997165061202315341310149188142237210197358215584108118131358284246372451752216175301521601714816825156164291541621915817027177754711455201679724494352256287413110428238164791552041161941051721286211220616419224414430146168572814083245194112270661061751792471351729524918915332552358942833200112561154571219436888123639959118491471791664810915616521044118715771088210410182211216521640963219916118255571471422319524717223232204101207961921272912019262112181181317621743706312416770961942215148161307810413813814310415315319961991604517416110723712417110115152232362617223629169226723772751210924316423320312493352201785901601071792042101925015810230179378018515516194134619321212314516913914028232328816321144137228154194144198381171911952383121716512611014914810730799612881512511363121163511811011214891062252491371452039883551019549116191117501531066418816218380206312791227318862929451771082818779516010571112156821281041397921270175240139422523560672151221321742451293227171782225110817911121214214412033211551011101392311422032556624125585227119132241336518327101192271614024910241462251333313424412813319212042403015844126201201751841951587255204102192014414415613150241751935155124316216226114132521424462453318620814174531377955732004813875391523710015417817311588124154859226131719610218670167251105113116351774525262249100171220119779230181812420412002021445106611092132032552010417714618556531272547111520121351131920682373910721517113470166218187132482291318311487148515911095190197882035820022039193208518621575172233378211514321424414049872481375177138222994778115142771192316718713423992189205144201188149115201922120812915917321810222616152226251559927185207581141591098415413712713012916720819675104226221868519966225354021615202080372202013225134583225212820511770211230171238481011141119115119018912227211192112312061934116213057102009253201252242532072492122282471091185212810712512121580478122612319824383252175145055100160126102204644921214620813824522418612121571172127139143227188541961231117624221917851685753682172071061772021020212825225214315119725516651232084252151348961049168054135214100692076670351523819417120023816817672972382265752151981852113241749037162529821519820659145452152201354312595531357618252115821146200190595419713520219175130766241175206180687651736137128129241206228201174189191571531479315979116254244126851982392464579245221481561122364777144220771452016675239126209122237103209118171552071710851808413730171312142552431391506320112279202707512714523613639741491035371157977013817117017529251238311152144714624721261361341524311218110253845411488214247143111186126441472301902382202431849021695242121174516023714612719916532201229240158171816718322790206692253157241201478425517612320531118173134253621132331751333125352108222796623110141517491524623551821074111622244112871641651592201494571130127721612418712773217332531868310285199244171142235862821316862174811236617924518881231691791988370117199140277921818015624510659312091245423820631163162766323011618713013320231914225221016623718616846207167238140752272513513483861731212141413924523514316955157801075716520912474173238168822052252371817121107161131143412133187110561831452191132215822020912090173592230202155185119147206961021134912021918823916610523977211230601411786715574151091725718518923113433120962401422171922924333190201192247391517687733229783525210761492223204116274471485911177241120601502521924217220910013415522189108147218623217367219902071057316135175155132390191170245156108244291712471541042441571062461591062461471771415310012566153522261011571032513761200125480144160232155141197223110462531101116721920668819714523716513510465301042502324594161398020720813947271881351382379015351922824523628226422385311682133207664625411075241119155251110916613411821248728831062042114786412824219312916198912422398187119201149611559208127135921345627200671662451031514519901599524546351889201430649521151511737910225911198618913623749761471371912192101147324785147151212042072482012001641618329116318018014219924362471031413017616713110792349331215185346828246241088022725216421451211585512072110241513021712223117124518319190792273217835372462218714116024897120136812321725287126200189194164108119576291128595191041681355721011694210151176141135137198215615208197632401133328341724128167223157111823467281332272531292252220523180431434316374521552518413321914921879182721013210518210328686320635612915618421622221017243341447167240104240200112572501381411711081746116521015317513924724997185611402391764982216651999065124671571831568317557182189252187205197951734325221123416247215291702171942521206319336995174472551104314416023818474131737118017325023224619821159106143431303416129106712140220181186151506111955122612192961282521331602512412111238010811523914251486110061362541927751252361451301222410320531968716141021981791634961342381241891421395823723180267917111893214123892274235441214711757918224821142342072361685819018924616474221732132141118624775293921913120857244243112220139149245101012539821764194155174232231181254247752217239562469218323318698209153111464107581151012019932081421791952176149162081181901564214176771153361185160333319467207200237158814212698245322183415118516014423138110248781571121017215103480184817165155199101651341541971016424715213624725137246661676645189179152617219641832416299225301951689325017169581617326129177202948115515713121521825021010312650249196981851897063176531086097118721296252484112157180133194114190492432041322332472519715010322331602131025337341683919625685724725122323422706263174161160130205461936413014114212915515613055566175182241131109112882244136210973541362161013422010330155169238311912223310418967224269195180136521628719638183162453217716215245482401371612423212419611347601412915441170167271531006458207621136882180661955186413176411656683733341731471158110921215924917516712920524416311835196671291721837357013715233143167131391842136111415799169111114824639705816279121171713646331271611911612411254161291179921351135581432171632915316228201871974712214779228615913624522222523518819521512213317311212013417411415942252618420235120163952121421366813118412510273164197249110214922412551677058301719212825317413112015965110120169225035196211196243130113292071917812411922511750221611352016914115119825114720733613621816623819920713216332938150160233378101286624339641641915310615015210514514854296603231344877725573765575202176762001761432071142210318519910024919822824869164107234185206157187154235198571003117818111632141857412422310221338253113301525123967133571641616324910017314214218118114915113571100100228110679915125331497121945180104238723518317090233219623357133107185681041211053611622131711314350240218913238218691665869238244202382411372221897319748515443881859620658381622211230175179113196197311121427617914217105261521722273321211492151171453113114911624021448176921811182199221880153107932541692913817134882963146931882062051979567205136291628114425441224343120516581141465215951997616619122315100601718127381520265582393413210062308253151140113197921012181148973824323622315142552232542258111322125515319418814911221742542401471737587171173219230101237242328169178118352392521401931531943415418760111129962386019392114828224896190962221245154214140231190642401931355216512930241215164188254529724964169248811092281007120410012324888179631251302341412384718045621722121182131081883525210995236148132772723214015923674156238222612091454922212611218625187151701262504725106382741771741301589824111623917538165191157144254235155193195775631188423108253641761451732918059642298921916117723814722715716794180156175723703624010512321913221915045254227175127116244951271901174111316127189248243141158822112222713914517015961169574821312280214125224697724296976825515720017417197131032521392542361243687612151031261881851921131579611219188873321769537240220341129443112883724083202361782110018481182181111859102465695060412721618922519823917317425420616825227219135378121117373178190221211109226254914677121385339117421431695515955241841095911421524922245135222171142221151611862421312620713421415818541562192511716824377172331071521180118123175104190152216124411842491308721157199186147160822714224338451671802614240552885110601611017139282189012710012331931289819591971981474816519819202141391933748277916921215984234206215311866782108228174245803319219227264831816163110153245177245702031511146631789602081178511918421611423246169127226129239151417616113430192179106183123133228322441762041784642341592072212822015913715194184191208771829634511581141522511711520137320169253166147106488202251691181513823715985184188109788702005867101291931759133915512416791296163245222207217617712422248168160237146110115158221417114343397419012555518524815577133951734725011883243691573921317411121610601751531602811124112380238414577254661081240488011811659216128120224152348212810119190222010191619610420321513522111561671117461331829913015871104201160189050136831180621252183960321377916215915528922838148832061251252162240159109220123203162235267725343032941159021186228521951602062987131052649249205131413672227466248124983214517621123220110315191111791079221622251007917015715921256119222420312181224224991479107220311505911317419511542272011128173131137710163812182192577715924173922417192249351229174651892157672226207240017612914321204190016013630182331102316961326819969616019986200220751221310321210712817810879232720411723481149203211901192542241981541251933247203291554610422716102401041240681962321041701572521332402125817526130720887204611081252095527421431101971711421193036321891102121252130241254219102160226135371821432032832202331935946210119119146228532442051662343513814913518315112418117724843263416801183081369960208641915021228135581351007151223226231703124833226259112191321151656119161941751512121615212812420801836363229366457105941157133145312092368811332286843623218816421115416712920013910623122720891312321352402311811742362318916524117270223772031992111019456522745192962235593971781145172952487026249182914014719677181706117114120842251312382229253176220243811332311711341921371501912161432365111518337204103613456116392406242242111031491241325925269163410620417110319816793212724420093124331244805751451198010578133239196416722562991821121908928173235151457460161797234713481436723532521397755191671531372461531962363736879209137721012140832421401322369410323915101191146774723013015827215247639637225531240192172209852286219639662007322472466221641211631896209187248239217918411623868684628161137919266806137175406914381142821217681130454616191931955518713210911410524192182187711067398939228154137210851259914918999545713317217724193239161287819893541866107132196412516547254144711824813981147121901501685125010143991631145611326016827501041791811348097321843517010523317625111516718995648966110226331102431362202321818622249120139123196141918823720820208261581393715542014911120147102161817139602123380255561011912351119203212916510089511209660018144351196247255643032246412588136135133215765913012413218224991832487010913424969111131402172620179371441551121791272441221591365315833107189661138651502175646205608123845198392542061321272131121381021821112519179240194104176101103241140961207025223562552822616122791941681131635631016111013217718732194139226609642782111437621314738024513981243139209121402138138221193220144038119413811716282161254451461792052401622422411221787352332301372338624125118177153174113185174162441597861604019919563105221122933817110419320857521592419414010786185246125792332062542411791441931124151242402411991711891896521692092091871324912318111610815372131162296742081082081624323045218188112149218103138166271412212123721195613310418413210518713310712313227250945672272934146188681232197105218198174115884150192481144148223170972351719021562120167145151881955792201467221721495205214792072099522320683203216118221381491851801350685024434106136182192112136240221223252571441512392551611128020871082224822923199217960240946320426249772051555112715819418812110243171531714811114251911446612121724263267301820414912331253175255208021211420566193150165100911519208710116182465222224115314123890319111781128777811423220751831262471971291112552331592061262532132131919923994188841231711761791701182502411792311311957317209104601213195243192163907214716623112472484815117312174701476610410921218511524324019296139895031379431151159141242131582461628525217249244101991926810732241647924496145125912022413823312012324120961543819397724723615414623615314810076117311204524989249137208223164110215894217683228422912119110863562182451711132012391993612712412323922816563384112636216178641602424922149220118197112205311591812826169254234246161316615523116114192182122817180194205220248239501191701741972769109652552244221222173111769294117331871832481391612102361512457223182127241186452317311782231213160187952192542112062111542131691301731401140632188472315247172484311126182442093182542531212471826316411025024317417319725523824617860912142461189247175100146952025812624217810620724320214813713493227132018345201178174848910319412083100103190852333321314667594214217024522218015310891262113049221286281312491845211423217416823170822192292212312543320097598518239498496961754056247912231861794911710318823420756551561821715910520212019218022918078195209291411991482714223910456174821196817723824018225016321923513771482286011221701315082241523616863169121499210412514362232902431931132195196323012812919091166205231532021431084163188169234216150142124237145981711451810798128187124526423850196346011019761133248401223101122461642101011642161458181561921452242212521182161188435233662307366303521576594723211815821523320021115092542419099117191817820424185173392422477912246816320788157215401722141151881932513772160208186235138331591181210925017820619120128102402511829420813620414141287238252121932411191551611581592121846521111511125120124619220938312322031905915053167118201251832517014514312200872471031542711372228199854650732162352069620025317019423713518266154671346618733228243715218472448173798419214136621806212912915613102194251896241247243321891576117135281441601348184491101621852452311815268112120431126911422120154248189241113216111118613038219253199901889554120601731331343820920723022211244982862401831352214718327411791238022505410419116295202106863116955112621322414119910245143190691271301961361125464341271782428934108194012524516773234801921961561202028024952921121951401514164222012819210119874016487219812112815031189168724104611759311566165238180263477121902371512452091472072356195532491405425123160251167591313990253955201201243086585515721523818498128196217249196282461923120521575702133911902252381261792332461512351019190874113127120511092239110013623218417243414868216118651071842082428116925316382187231014310167392291420823516220149135183148125187185246152502126372160228235141165951114225111875197332182081511738218621631771501152342451678406184425030165225871342231572281381686016460100612314541232162433274160975822822818048821002051032932157198721625299549819216812814115160204217801145161652111218924712617720511613917517259132220198238197200186131723815221515786233204215127942272411825176214235121722252184202109188372241733622613892288471196849121223514225116123244116712442194633237762233516620571341462231186911510120199313921754978019880156220227283461221331759715237217721013149201773513219919536714624817488620912356183212422312163247261991281210201682337049123245217254924813123222170129222731902161123111631689312222520120411940652059512181131571320919121220410913312419716119128282486218204192192155543966064161181552311132220691388129133203216108101424561872064901252205141742656246417112994116661472123988118920520633155156670012419848552063443715677398215143216101281897955521331871510911814222234301417191198209127147711687088188746412238512119961133184942128786445319341116227118175401421065274642062325271221391235616784352172131792191211925414911888511417719517967182149546220321610617618016614415319910436023596373192152742232542271781088315114173152212076115178240200161101161422122428342311291642531271156096145148109181511741915318635481181717921210223982401925412716198722361421683618115284538117018610416712276234142200361619426175176532229715525216318371371801631191788918521218015337131254115301441871225179173610119124244601271421061299822113636195152157134491871163514721313119674628191611942282521621913387139195128211041472462352051328933762001787520618179206181142203481432221093018920350697170816816278721721701272121182392401096217421293415720020721271711008621919644243164448415815569341711009213410110813414156195625421157542195111019118348219192381002381942051296297312153388732371786318525213324016768700179137204230179571842082113141412331341341983938102134226375211595189901012302354510027661041226816022022820150822111154183861172011416345166782025430138182301702061907011451822251131581629311621891342309420495623428226158216247691241651781661631291171441861652558611523977222229144601192161201075924824572512621918511187213253240195207208138249101396215624723316731175881851161952188591214173222186125147170214141256745835161754335271071991431927119397912717564931318912184495211546155486495244191223204191522341240123214511362271432063183516219127237791421618024119215652436388186116233186245235551092221789373692151922162202022142061932132142142132132014341542291392201312552441552232522339512625522115112756127230228157155514910169221294519531891513425531234222262174228742511105112163812042042042042042044415352466415254201238381551085448991689150109201341391532590204104731501009110223623916917015017224176178201251125239110190254157169169174911511119120725515811517023031223191255234249179237915924015819122418922825599254198103102116210727531251197225238198309323636222022672165992451571968764114195971841452392362241881392110410193207797476532919119561118127402422541442391896221524511015116725315836941045024886189101831862128014523821133632228422824317721623119732073820661157252226249244207942052521774661222771573520022540188199249247511023513125525010022615157025524325420087472301151211712452312622151371219222197145122135227168249811072541912041191002202544402522501357471136822820921717915725521629126255191931563694324312224121194831332313451543415675191122817025024976195792381162542261182112325318516124925510224015323114431714221821928227131156104352067932469476171692511472011041582472161323912917117419562139149972038517991219429169214211552531201952311208322322777126206277912122215924016447230787522412271208227222176103322518873252291411202122315588168831277318825414624108186210240512121929250106322281057924812271204173134184181142314553255542179153601105764249741207231167145210205251901091537825321510918487772501742342441001692441011711422291072471034311616513724710072244100741622367823396301844422215737222147377815632713470822011502382021461641720136122129189182100726412112824971161845522815521113315421049151696112023106131102131724224796524026688133240012525311152957516628382061581061623422443425891882081661279636321113481655165221116568226140642102294220615023344215264797107131610021414312315615811393158246576323411318822310511919119511818922162372031316680111109153226938710117624139921192221003211121224710519125117911437118946119218237241569641682379619010624785502054884535234144037148374229114139213741552057417113843524461121302717824721921721411254426383109184222237244981962313720561152402151092051461701893213618139150154443221716742245251220819698999632092507623821114615612722154591601301173943200444179531681449636146728010722014545113016819168166741041854413725313010620032155208193227276048230245100208134802331912161001862089622211912181101318721310458132521712141591951571735515452332132597415579169417718025513424212013724617312217919912517417145214204211922192136311282063620516801174466719831152122076716212824048208202921651936849157481714119891031708413580163154136178111519149235791091201588207241155901892152281131917013852102170128690172312441866422014723216011191922072439711122013315122712614366115814112263252462845213198237123731021511133239742162915814122222239113901061822833179867521393203841495311731914021611281160230171195237891812024239203181251243201997452815228432058727442252268723245215155226121123212237128231135018939916186159142283711201214425202468183921810977211077923715244941492520283662072062031864130225124101168121252202381051726314524224416562251114665189548462182143159331392998721286212211521270701621402021161027418116713918116613953167751805419302713513222802618816113625418327762411231939919215510184211110205205851921691292381581512112915164194111323010723724679618815813251612724112758282409844248213120401115014048017772986413017720812393238236471975522613321612815522678129178301002401232001255720787282105183801241336517264223481312441643720121861560161251141062111161941471163513623369382351343965801948033141225731617817012411161311001110612992617567134781461441611621691098824091411284851915621116246142862423423342262462542046911221620485192210227402920713514156425114231227129454511121611924205121419010524812220022029186132341671433102161291029159155198125134671491131321181133244247171772451511128146112122218315181198181791510084018161762402502161929125841242261166719213253143137217191511301361732391512156786301462383310126145162781262262126319211636742446231101024614293171248199227102129214176148861362512552351361493916463147230403346113169177464814338129184106823621962813181301772446268134132242201771514811498324214110391961442511662419526197126141611752112270198456619221823291281241041932104524932551886019296128288523689729720517683138126492264619313014126667813411019318942251786511374145398598206192212226146521982148357813825168281171160226224022430362282236235237713527742222241291111236250139975253770381707172310126802224611263474156657616221717720720414212710224147164302847235171381416214105796302501315420149147171412002819519814520138811001701641578120489243248207137197158179742482202542282474422782123578106619820012147518424813951308743210515113231200189192491991572212810487014219207109681628121625179136100139176362192081001511761151462391431382322082471762511181101271396118118520325531831981327168101022551674536134301821032725611272511422923915515256134134158895722523325105102230701450106237221221251141141826722019119521724917211141441151047721881971212472403011316539016618150206101429418694193541932412066519985181237247236571381631221231831921291431001325531002292042085237140172130125341901258245139224471262724320317514325521913347254152249472317525354612311516987127243952312624147255241476325520512725419987151190206186150851125119117817017216117718216316712510410896102105122117121102117109254206195213711071391199460122185122107453325024894114105911811211823932218242191229125453972152325963763571641701641661691661651759996108104226228232182618126442541202421532284762251242871912502151751905812723721818117817817825013419817415819020920123318519721975432357575235432031515862124201123198251107662551111249461231241942408720419111822718918923923616120965526481621271992760649712824131115081142202715957637921218959252175235356388235758823398823311312548232246100192243731595992431521294172183104201144301901692431168127159194951401996139131837611572521401832481712141568192023824765142312431926775296312649253135232112552451082341919420494122621231171602341196219822613523214416625956341235654202239180232541141253623921312477214191159145251136603722412993219128421924710821913323514215142391951571872513413072409665109112382295610423824924949205162631222212527915115913329114148225242923088811525252561911382481682467986243229209179165172432117139213811391492251122916151197111101331791971291601301904419919819115212231184190228382426147158247159124571122427311123613919313271611451199025315924413319124138124621366316581143185254220271545323169170191221741874058941702471842072531971282231951182071816175165250224133250152169170196212312172031906914283104392318189201424215616225524423319030218153229218151109189201322010818117760240128988758120128326524711924301125341981201602311382022718178139197906215204872544642178727761471489823719092892406419516516314116922531212421155312220314138751411667513196222357706204168199128240012379121052007440692241279311617913352178961810465264321177213031541341051591841694914816348156171180929911631234188193121062369415520514794103817871324236238182902231091811301299716012390516819332112112220720118821565369010221223921712823183174591202241051911992431207199189174168223239114132180931725513140135164696023611518921110579134212172556712116719514170113129100235261421501041811032035216613766982221064815517535154302291061552371571412317211717521914518420582362081296922141149106995922722918621168178147323116223316115523312016352942321812262557172214242121185143141962322710158104193193116931471311681097219372172078982232240100128239311601612431264719912415813123602341191902111051124563851655989137992111352327301605082162499017057891695183994883313433962081179318241851001728811138311512359215133718062110346863111919416269921471417624177782162281299121319822817363234180100816419212751763794136483311720144181192622415218956513312459525132317014320170992151192192371581512162272421242202391424019461192351931171256222613181842192272481121922372491522071121373868632251291691928722719018820112810319594151851742471231571111839015231072156200801702313311223315421068902106919231731539819222413782173129603722535212283131382814612256955153930661041071801402016818210313653952011079151322439916413812942619022108188322121464221415462416111207162391874619966140192677235595019724112022718313495281821983662115171601421991521571440178305916562196512512320141248129166322352421951321667452994830401026064134451622011992182488122432193332202351145623039922319222521112151616614917410815314534117321157165206115137762411021251911992378119121516313119203131023412111549164501778166373011125204245931091171661275218224002441021236201371401231521888736115516013220268133169127102168516096154942015578532245614834726459236129664159788919721236144014190369423214094685012522912365693696919924917521287112285023139801707361687196163842431438713520918670224495322413515311222822019516593661641561306481001761278387136251143244236241510820410976103355410125411513198062317913157152613131921524161209245128137235711004246001920121281461111042491962161331501926178891810141984811757982254622918172211241941527452139132477616018934147180677820218571109119245472332412363235111851347559135137219713821868892512260622141196831852231202372248342621775046333411819013545614237125379213119793237922001899617737168642081395762249422425019220811421619425316018527120128681372085710216291962211165152081181122531471616520923116814923120642081982791195537119233703666185226947218713365173301772441327318613264194154196672351792321548332671726683150672411491389350114372371921804722324126252147240020122641331709719518417916196186492011701611991651881941339325236125133282521001883585130143169135157212142782121417520913777701692312786393896116512534515731421912111582502011227110613415713221455166227252176147371702502192467730192131141235472342244396131107274242081416010928143111331420119824110324516320616861967418713313658130247112235131228188355266143271981652321993625196362519736276937896816788132391535158180147721224313662160108246182152230199114250135213775392317299781536830832451515111615161131314424213780961142243375715252751132061619213495101201931219510458101656814697120182522351602093444217584421719424718413019011103471965536221965812141187241225199199111682064816112351236164209531686417017302241121183162342332282282328203128152224229171661631091771272231671161792081172041762531192462376316010323622430162352115622423126503324919963251237249631662291261175763253122738169751251151271018510325414115419427531975245211654577245220158174201190222217254254249233153251171247120431512013924712120315120171143121235791211439524215819122618922625517124615124158621201461615719278150134248147803112216640191195882091046136130172194169227167126244253312532521676325524547127253219127255205197175472282232001714043111107109272323115624159156155918892188253224193163103791596312725022623960196231442452329123241242315643198152725319172249124715733253720631398698182147781921267351891332287023816611920119872301920623919048902724824590255151436119986123194238244249175245122222235197159109175103362188209322221202166615710999186252801772011631292241511924120739182391515712356242211251671911102075923717265208279701881392521241232342432171942512278715018510521110995151103126249131412383165791423922682382271361891792432081416225118119722217118624215512399117433531902302671191146216210519612324920614129123575924724116710732837314713513719419219911610837108225191413762194163122041128322825242242211242223155122312494721468221105138154461133120517927203183312071831574618215517511215243179155461822520551294748312044910818516852116195240971832555111024022715812839220192711251261761351891902359394143251241555622424980162541601741191232449287109761491047619175189322161171310219236941352312211821281491981761532341322091782281712552341712544111398013814801111342247820612716423214314815923818823085251181657116611011115012210315492791661081111509222321133254108249193171114321717825387100250178164402413611910313811710113811795229972641894614724016123876801298420721201174441372331141739153621122921811213250243213250401532056647861047914816811995149108782110818411242141199310218274231781552291061393714496185201286011217120624886189497739329423218825475745165702352284319115616921039861695583652261791671601119621251025521261471882182845842299414727206839017249901111791986520614810717511988633111212121610118321410811011181712148711218720128235246941512272228019212631247571471201132237502382511161922371181791971736211123932461195923786901732381172182212331763714946251219173862432453811918723623824756465591643147011415420420997185197146132205180917985233132016814015123544531552232391171226022418221010212518721311418915514035180210106189210106312001512813110531541431481041333843245167422452312357620011264141228452543611723163616021751007849170239209199015918925410370165635122691128250231911411725176820486711461491932717953198160272912322182301211323419614419311281128914025167237613124612254228141232202391782141106189161211155432231257711816064121166903124711017082232181191789212317066716136123180220108142187217118891624985100168641091861949618520922611315943810952520614115110479148145216161911171926651541719932401922029621369703511622482018726266891721357440969948374214147842322445216194681372066891324715315411917680109186202224941673241282202172011282311636279134188301512262252441245823625312421224724114424712416310120713213246171101572151496111234762151524554219222110181951081769216849388610717884111198134163109184402201126518424617116320516919414123241144111223041113471111170152304314315110666551523168641786794679121155250681691522842641036722318316413826218210196914613717814433226311604142372510021212781132400247186124107154721951211291427613717734532461303115430901592282342086569972438540240961312011612451051125236111962061301331522471271959425514322384754792216924315731971542241190149184224458423518738135195232190345394172113175195150767049226539117322312073817621515916717821810613114692173119572232371141862192372521602232432498832111581562167641531461086149485020233844811150232233176152517524115472168815948849696087116621233217253486012864148161195292102068124294209746214424516244393325016991013023351195152115001571766811213090321373534174321033171982427216198177232263721619431702542412026249482122324141192420011015278200732662207961617788196252624223822514678129100888243207351021104872255143245237632121792517222315812919365192264024821220022983679813576220151541841259804811259962262461611291915712920324513251201022267038235531181102284151763313712280302223017817416156301631681001711922318356246133918087841387823210569207104913596811870179112741167165718383211920723210223321042331332193193160131701921139321063822041939520821491192206712002228721215822832241067247203122706413913914665105252161221181195722341331361892557111652216358615820412919234139112107180195781771291041607785222612913232137181712272462252185018174130209143125142110122145103112115127720511220278224101089535228569041721891322371241131218424510419690842412119624246154121139253147242013312535616825210016522448124716139127657631132313292282212006815262467228581471832548819732546955428137483014837104235352362243923929133211551662323719123111868219110722521715011811221782431818024114424319617357112487356103161571001615710415411220624281812682193592204322362243522522402352917417118220324689475417102241551002014910425153100271542321611220245521972164113017987144106307216061156151421681852482413319716977072122410187574249711696815642222241647218417254124515673244103166811591536815853621224563519331762019520010016320036211136100243176362431928313417414573711610456368111962253072708100250582512214568150211642616019416665582381612291105451238514612313313322917317322018961195131322476166132510110410310423225320456156125311901192282071277618717925022825422123119871592231912031232461522472443323921735254637425524023123987204236195250211872331151471791421424656217237361341581362301738244109163166164196421381147421165211169125515912618215814366219025418370122190341822411851871241992011981299614615310315521117117721720811222711814722872342311922059914214324757156127752121275225218725167631871957719020361182218271141432718420624519121922924116422313555188242241417120421421821316743132205218722331246108252248211241148735223123522501711972469515824220103176104382516583238951201881977121121149871902551314171807218519361120136651353111122728218181237192142061939321932154161236157116101106175253101162165204826967124223320618923918621673739655122115425264305660118441122321951091961895361923011310104841221398325415911014318712752892862146239559423222112720511856207102172192122602231221782081061661961061612101021742201062421662178017425480142302471701187113424210416122513146175231253114312312515824425162230122632362431242082351123220239253100192247197722241711772242293818714210816516611620123012177218139711545068251243213232715721590131238182199223239249209881971511902502392253211322128128274222219825115517419714314815923218423020915310953152103601541755111677185637516659671785129669517047751541131592150234206162351948163462826622803023220236249321263326293174121171225867115182661231666610716190239861412549237212922813621488145742311012411508419370240192249195291531621952491381153675133818323477160197231553838131194216180153421891537493842086218320972812922612012091645127144241764311632671532415710020114510015485200292051452149222171100192682342217615817321219365222239180126492321141911951021851581401344156128120931685119824639741818012121823920215524239352387914765117120227627979316122723123514132250215587210820474155213237541622452391172191751808998209901351310818221411217720111616921712451712378648124931051831541735128432111561755564522023317812520011718622110611872191091832121081308811018213013095109179189223227188214975593109822120774104247894223233223713316023312101208181162531391281322616349232751565133421876539402345215217954153180152181941501141297811254851051281737787251422010713042344691832098917802392068119213814372201591431201791682507112520620769215911215711155153132317011610073182164139246229200225154227186161164841661311141862189531247119170921875314740230190281971378229401262401922373875146636414748012917010221114160196879609696166202023735133234352491061631332635523467558461151491352438539110661672347820227185210241012371163817819327202671214218019125010414519811216125064190742551310123618624718619464190234801451227917434559551671521212119817821661311581422486029241125571241261941551212658236191212982231268516922643225186841692302031010921742189249582535186220925323853133254107103215211134818911616911822524318180253877115546146137135595019716124524118814121107122284314122019697401297160188241521422941141201682101512531142322201206516024914648296872162133587192314123104188162291291427673168112144386233189421951025363064229301763524009031371125465592795837354180091921225271581226249140145173213198102131982428538138212132111979051379020475641201281343620922317137862342073718018821410211718322166320415012177261288015421612017722241167141560232117912351161882112371161912072372492412665012811222244120321565523202155152252056241102297473919153634917160278919414073219213214365656617251301284898581173634211881632296016220188988425320914770101333917128793411012980501924022712112714697140826123218486401531532162411012160190266514078394364012169653743121716525310762921510260161241302400129129881801955130127602341389481114238225178110975017416144199128184111401566453123221819412841357692141551862950113599622811420021225317615372341357761063125181831921673812018221638211287140558214104148171440120128291372172511712491971531981257096325819736230156732361031691170190241802557145188008278161146142332241919996198913015062224128128140751847019249156136172123242122311710720716321494162143685087881941531641596614567157111202125923716825531161465681251502241931563184351841221669228563238232122521991162610540123124133138531662114521117135248163229152293596184248216520011551971668063987372314311101611356196127134110682336652837720487192271341981271063013677868138231181358982393522823247235211613012213012193731937213261531920771957782155746227254622624322302816822427173271216871218216124822360125190241151503072481751844102181201942012434117347866223155305910320717715820442104842421391811736603223322362352916617122140242641822512915236227168681391681001551763616720810021524011510230177219631441641461371016761311141421367321918616825113573184249139184520025071171711582143225224142686523867244167241314961741198811163451812841186111304813774491437617787517814731802446116698232186247298142210729849125831211718111571131716066944551417369232271190145104141261522012461092192235711488828320519619720922320537648880150182671001911811412432141450652162461192222505263183140255152081982312135122217116725258249124598410283235190221891801421584822361951901622201062232541605162232249252851271191591421862278118247182934817015525554182362162002532582182172091651851611331102382392541242313310961216205141722332192462371526251522416423221515824611010549411622441376838681831152031401027194814713293220191189212631281520246151925083141631872152551791232201481871252411191851451071891931191222532392462501722471226127242127531819627152311417120621421621516717112209122331136123501502421202367115712552378623117512724173132199202718084120231218239631114718824816715928111138080587411222123689113252626825211822619690251712242251951311014047148242344111923267116251112219174247561872222262361221551791031577114961201721324912719162248015013329222198815920057238244105230143140711034712422521341111841322958122308814230152142220482643481584052153186105508710217788109179801055381100601481712111551652141499771635995109245176219235105159312251461201927246168207251971752152111191231671471341311581554621289183941501751913621414846222152382141523820915816556832331882202412118757113185249199255117214248166183282712617716882382292522491991824557177109215212211012020421324817218324960233246124220225124167222124190761275279109224170604816055831461492126319213512915844183268979614773612217816418617936193316253139224117025433184231171245221061607818020121511417320966229142203162771513212541544630692171218910818464251941302291564886422317915310152190135652351631459602431512413119401216221734401213914117814019201401901937249145208491315520161991601208626205239180902261920421518710915924759223109179921705134972180812161021493012114975142742551051911111120415555233712353226245982002274921515342123179251611424713613039652433612518219722678167237109108185222895209103262317869631646323713169198232182216104586916310701220320523011964352052304317315010723721413914110275100540181191161871972341101672531061551352250124157233114179371231817912012825251022122288613157581795634200122128415382160209124161222129823641207206326232720184310419362312352002281961641151475583548117842514221212104202161757921115208489193246432101921212820222712618323119594100224291741117419515711810722015722566213145155106220271048895242382185292362228523222615011812211522815416012247967145791502331304158246147176171591091827513230104153422153664178179892918418574361642311661988012926218199111106652291956114149122178229186201224182242180691652391546622385249129283724428821214937312914217518019124238924492147719186152174522242301690117218174721792521111381246579134189159121211912815120532524898442242291202082432091282131416714582253214431053233723421110090179149911792091511647312791542420602281232433781182411276513662531121412712518053774194157136239582272015017314534181209981179217181841096122292272241491861757233023419058204120128722555201792413319719219270624915972501742012267362124420811629238117121602191212218376392041351295758118161973146886093166131101071968219812104651335610152226191169499416870172641171628014181193615144148101281242551171212362960208123931826175981766425231213152429224321317240942511017322092222184255253301511811182512453023240046382251621812871947246242281443215210098762482111912291120128189242135109861006115222614313017297233191441707372283519241485239245239882131289990161103721940245910441573631436286769432281807024041212211259822918972105013893367923313232478401111003596203441712425024429520159266695217396126414432228474226408616944228164102224492023196751606615694188425398655194546271456062531142507220714602401771296112022413625812552044503656962281069141852551291903144128170127136236452061292151983117114881117117611610084444611651571311771072112161155439127104158240165812445712513841621822543615719219879200218872203389632225166826173125201193241872953247146118921110581692511682194412281441852319711471718708914372168127732159614816022695782520184921845162503182255192971115104125321291363137621992371284071522461612551673820623923321812825112191612332051431279245111287196022115216151229135202051441472327073192323542249198226238481537512250126160982475923715915373214218199147228299593214217121115954025019923468158193341162241951927019817333681272368914114419324911497237253112891163420624197183032231482402151741951983798601281679022041641921988319221483214599261236152942041052279920113424113748227227411221771675319418228124194133291251332222441510824064116146691001467712014675248891351922112302381771591381061151182822610825514817923519206110585239171749271031055563815512719716024237245018414449238906814611368501594194837619483763520715370127102761796272161711332164152701595314172182127917815791782401402498480141195249116207206195116222395029119627144962320919922829511644821193201618224001491481232326841610888412124924671312861122689825562108102531616824799131592331670763221724417435255250641511794012184158240120224138235153166103311801761521201821042358717211195871021721951192022291912542331102398015083128202221972171821235924449782462392281254394456252222218611784538214551652492302158724811116325411912624843110533824721715055109991774124216782332317412221418725116015020121310313217911719810114832616621167410622021220218253219569515821215410525524190872421252381691991311132471223150218221721641621510315723512317521525123311219217113748222682121711771522332614321852253190155110119251207602825125419520912718922125115915913510711236335913310615180211249225241485583932252472476618717915218632221792311952211872222191812431572918722221918923913161111237229108753162157460672321312351396712211925119025311625221177619267185105232143131713524354124194225887511517425521017847551001644011218820011524413422110417419710415821788190241100145225120129246881901986816121410014524610815319398141217124149209248777746100205531652491141952512371422072506115915250602291226123824512421223565157315815122969479250125159142508330815817417810478151169191362091564621514838223112811775393103164208991772382481242051512336324680126159156111421381441516529472111572291513155115124154178108198741573111872421986712121116118849191239221524586155133101952171815715398173516818066117138418189153226932331622211442541512011286691136064428918612171461791492187524570120961153122112131628218128129169821411452165142762091981171154835912101329082518717413614323171223170513449661173676884051852491901591754115367961631242053212942517406924015731018048234216239921652066817726557113412393695151271408715476644122412919961246476922141542052001132142327914910778148105140221711181027552166101223416323411512049236254106212139552302439821622721716021919562167213541719114116623522124601289113389612822922115232126136126226581683151441502411141092400421151177088132181222357786154458029915215100185201236781552459818924182163233106139578159697622511622277621459237215592988902108170202961702101289801902102281106192112219208127523796672141633941891011788215924525472112945213134141149234160284121428129200352375899165218164127181976315742129761801563777134637421233205812362078312910012721222725211421625119714421524365247251221246184242220921332411820521386759224617417121064212410111912914310614918618429125185242141169661812311431307122174173088107181332012173238224129213221073219366173921833214199741361519613014605894162618816068418485107581481677423014343210361158220212264321296153351116928158154161531771521012416331268016352341311214212624154823919610958163112751666820512112914217117811141102175327310313031141206022418663292411216022812519120725312152432091282072211102159177548321310218955522358216517120613921592161111843622212481132216372321178124001231517914422422442531452461249136236210941899309616230881376192960649419519428023520781104732117425424319315463314158017527329692121273764146137201246695525332372536133060017154120718139658355170648926122681325916521464960791351566291921922286222129420815313321022543334234796429235182339517257811646294641449617872131240013283420065215985219420514517559127180244153112911524024411892145172591274119185241146161522409215217920322114251251221206152512209514222524213418353616193911363614722163507600391321766322175121128189242135244812421411291421297013534842441376186425067166195321132161558184180195201171125181192992281971911116022512914421112217881481622912270452401841461116025135522241841028362541052451601924842239251974813116912770232045724612341545294723215821040180190428419011144144643524024064432481841102161051892405110852821801912160292083129176202371015814521046193162182190362491521022131521341451561240096224144137251396802461747772216252112418061902253496366443369413619301651306716617444932251931351513725519323099373343473212981841388922023230241223131257016616824819613111284224166543311468122416361022332102314011031401082371232162129319221091206456635240132162119442592122029121262802121292281526622667149146883271274801921281452411623413562461442512082381761635210681831540101662116176226655121514310414522341221457314011369410313014920211924218771919001814415122320920118424820439024911219421246520176191246106156109144108255159146718098146100398415731421812213756714617571633220220765253243934252116912263103016873119911719180241198165198227105219421454121128931952394818021169140724072755671021812210218121731846202251701681351982357015921014361132111395716517221752242311201220812016132121159820524019111240128121683424315216715618224557461752372002171211321901122521281792722912620624625321916420197157188689212522925235213200222061531981276304813872541387249212681641527015653141986024015333157160268713724112812121289171136100231232115190177952004091238220126728666255208712101875631236217241222174109251168562227019793334738425322301282242171943562450159232621718710224633186110272415718818114134193174109111751362001835511614712712532223193076202111421238619334246971217689242212401342252431982151272322431388791813711624872171891092392062211871822255213723222320223489212001071506317613914020196913101252421652243119124182302341831411252221042527114112630175632543424924318959246176123183139230923616024192120962718917318414518412114421216822411544741271134424519319612722223778126521122502018025212295208221621911816247202362247122189158142511912815229771981902663629323591147102509021178214119246193232792381425423423391481510935239233152372282821719514525013611510455951991271761312432019420675957724623925311625525424711823812411919920618318222516121718515917922725315712324714712980573123821719715833154330228221249221351403220320255219120206232227133622361522416552922222911244365721512723724616024723247586315916912157452471551902336015410762150111621541116015416763811685985164598316263911029991241711981081821941121808016355911102421662062439415222401531032372291762232111262393912594143185947961241581224821019233621218828912120424515944551072061441057214910874151105761491071841682121461662191192051051663418225311418413918576625268129404097982391142542451721101076584211117143190661431812461122222121132221202161711175711571418310714110375117391385239139521037518087235768610614019911040115179164122501975821169186501962515244802273519361564112207872354613171041281648224861731227112415742211362541240192197163321292141162251821169732421815127771115515367284753152824896201196684951197191201015519814323162117210129230151081080241200240819319314022184233187386168981472442223512231071315023412111552463234182123198117901095052716012516666123172681091688096020814537628316524310820822921316823120317987973132140203351742439013513116255582910314719611173017664596192162131168187192124172761071611295641021071320917821411014111592105177024076148105177232318021022411564178121185209122119205822444112412381802171442152311412220824419519715420416022715318413514831448223123016924422280264084131172314321125408023720383238167243236162158447180621162552087714116134117861621512186312351142431487112132091157151154441501544471751803214815521019721817572552109190152082292535514833217311165961312441245423219022210513517903224178227178224224123115228250114228331242515224201768559832951691416810913072646106515167223227188120147129441332241101872924022411814722917358835421542718491941571719412414124111413157247186982472121719327202224115025122415244209941685490172533313113824299135240152145240161225602132542351381898720156669321717815554921681908010313875218148339424915119517389821478525015250931591212317311757222237113121602321171912071091811959718521325411827191188211229186212226192452081188415923356011273206020813024218253911651194135128193693320011613623616558227197589922633412112647213244771083618064196119101732310625511415225074155479491860696131168111242709118656229117718211681961923415782021543511821821281591951341912819024539254115042487970253421719899120361385321634124133190103228649764103211634812183991062451432274482715789122112871731631461923125215228134118418617920118019664220722114191659032188751342329619024218914187135612062475828214187156311142219514025024116613120120876642019212456316961281441621592156019248128472022337510438214153161560160752317913317780311172002411929980252116182129414116014718652153248400801356781664024675647502010532120128561923214854601765972219205931085320522422790651993323873144983252126113209724617212814270122146140656813113688791171541271721911421048507315921311226418814010716813617317516014921597515532193135321292351751207352301582082327120460809701121921482281814414626131121472210142551211281663410812613314520120972281451914464222352249612125271022419526691576793512321641801154015311920422075212540240361601768193521952163119932962254523718166234127762093914363296229359622920561561291772200652731841121971122214172189222215179253196216233168149231202241765252458119162621214020613713915810858574919902204138247153109812372081816413021514116178882153625451243227223516325437218241149246332342224725317523422425525524019233198312995856181191194361774122482960461632287025045918113231192951871425269566924625210610061195682321871273339954918364105223481331604022914424229144881971924089223801132470333931337195171031274117580197192241732001471111961115369369013314720225122451301451599118619718824313760141621282481211591792273206246119573128571001043523422445229181361992226023811520321620777195147761951477719520726135371951284198963148209231200408210015058924019438620915989135395971158136025431098379824414135111159931237217619522225340161245712311918918910323162341301836514023721698248107712675582217177125239142109123105166120392720931721761157145157100156152221219223821448125291523625525064191110149254111124176201391521613618922621910225127182331362551552071111622912750461654910118513924219220610914042544215192104254075362162462461901831272471552232431831331519229255718224912116325331532501532915918118311619265238221190151196651451611328811616431936175971498292473820824619212021179215135254229254192232071342076022819822211024395235121242082318222227186222231221432712216755108125481261252322281311451792073812758861151704261120164230717511010120411925323823103108621651832491251423122729362823293982192222171822531571095916025422322119024315723718722222118523123723712324611524623635115159237221199217187151952231817210312911823712310339218201166222222206249962323122761156325113619419897179207167251579815911216415114122285724122219422314314625173180228181951551169324330432461571712429117224318593231578310851150103521581115615017559941605181168511258311123016622210817719392137209761771936812914559116924717819420477131711094618811918713112613241221891582442496022525060272401235422425517231132641682242179619221112912818186215137502112464313814116950452332027715152264723255951782341901848821522524714558108403310264219214013728167240188125107190123239771992132466422210419617119312839934643117102211197218355584617441114179229187503618587100701151491504213214234761991104011716513748255015513022418122543107201146242001491311766152048523464133163132200386064191781792521294424116675217323366128180651231662321121615024090121169209108177129188292311991481197255157480131116102241691649477235271444081347320318019811017014222384157442132420483232189425394172182132991712101971451281301182196223618212320810517921810819814214728971372189612922620077149197616371125142241291033174204510518822210124717620713724119225330135187140710424219266131201701336871291338202181209848015144121292211194320522561022261904021519316122210518338225215529210561321793260801078371313318921410618121898121187217114190206132501282221202512119920738341281621331363116317524971751801032324067204211286917657154571922811442170138255118139217563192541536397186218162144186223227681985717320810720614410476191338010224315204215154172182218176185103421321459237312465822123917819911760224803124757227561351085200405816590565311811321307113821258179165154211691602023546852943419872411219642811665230156238176159173509210648951091932131761872232298480612228169160681035021480181177201922041891740173793814840215314180239207811626841441052073235243116941502382063433676187100971892152005135692612557138612152289716355531997418018122412915424313056711762111731021392191095411771504323724623512517443292462431315013945182235125301525118923811618517211718617224712244183581220233212931461682501390157311287817641631221602217313321213315521168160137231061297140842535161132236301871696282064149107753957196481920202230759602524019611210192152142127318222977255647138742412542812124234191841391239317453141140641077191921534210167606436625314679124171198144122917672103180144132421613122178483324203436435547222862686322712915515414769261967580168701450246718120356014419818911815518122756020724824122670227124155821331071916266135228210534622361131882111101872222372481442352461002002515714496422482131002241712013213043218017464194183253316154487231695018364180188872036187341334532023129180105304814018110441591601741285658202167341214141725013613024742091435942112211720144185201128713862177445012619919014554641255170254241682507361636858142101901815128952811663512822780255881382501661751281652240121711311024435181412008421371861611672088320661921212226729674130133622101351183914566116124335011524071134783125561891294111240024548483096672118923011853100228244177129253199614714560216016311667197798625113925121044238118412841781741710022481187054234401311152164991361281652473967813520560201881605919229601621761991952215814424214646193224111316764975995652711118017627461207121923419191033391311761275218718138286012821936234241121922125156128254104220204254816610506852421128779076102136991414470813917617220239608822355018975522411341771507767112192306357151082507116542523108110114817216231155662141387821410579601983137391995177652542012542140342272461442091232320622441823369156812461431491161118118242133226231142462111824519113247232438162478161152432311369358019371216197952046172206637445236184110204251312163612510622411471686824313668235240365920234697414665137102614212691926636645168123923915021316177245144117132142441435514362103212432512019234189025511211240202401281052285716324010013117636240128891942471402276255160551160962512121413424212871681381411072121901836924619145981082301651661051953321122130222281582481692404650233241371441612112001941281802094813448014976941786959129117623719681817658202291566118718223721584211911569333255250641505130128144692491347128452215266247121207951102400455559512515963911221262451996349149731342273648240141331491902037224720512016113115928441891851451117712124175671221825225410921925218820925411925254163219264250414717016231481922251297216016391121963929171755121301551531780392552352001351912789312501971891901792071347946521201182292420653184622361519121519230184223311181512712611132226024010022613939227633017561931235716422510666119233151223143215381951819025314434115820621560176125720218357219223222182107631032472541091232471111271074723117312515618324711522222219521718314718203110206110148187200201052281211941294922323546094194311157618114418641254246167129572314720317415823516925423315717763611532501752199363152111606185255381226558322559912251828023356899660146163531501675712267117527911718864125178809916264125186801071868012350951154487189596716651771065271237781572117522325122912820751174247147622392511573010720578183106172166203761022027710342204167432051021704516617144198747625024318021917822815521122991210213264710618316415411895113234200244255115162161234592281028160992816125214819514512013524321119824524911576915883245622071351631202272251435893150170140241135191255170667915010824710123317476169214139341571059818915314624316558152191082302031807362113134882071021162081192411922241324952501621251826615520731816441531201477186174721612200161291612101503321015943152051808879702637110154154162012141653917515325526188009621254901802061519522412934149209342180124718612252031686612317321712135148642297315922713146912081120311264231225661651291241332222815320111420524546155392537815123237239119217622341171222082370868910632976614425144127224110151292271168127224713210900124310986147215816851255015315317120114014016121210470228622051456418521410256711960210138842673551565246117187153240395216231020521020816024111493232251133122179149541551879314247186288089110182921071839310918393108178881061821962155581414951541241611663892129857264183245110391761938437137419860112167211301552646214172189408412365144228158030192126312465820785271171012036685791492351309110242117135101482512432011320411959108802462238023618642136624428016122101656121510091210692747954921817239606424272222241480481312406443159722106776421624121116015410635402481456611754239216921651931732619216661812091161533021612875157001281427616917444621264822471002031301913423324869216265587913422771125180881792351549225337225202191281741893221272371484235176911101818923511613211210210620522155109875915611118357465421917318059222237118931101813118416983115651802261431352019616095111783312896276032210116731643575181522510617137110341581062466420621039115188132164182152284011694150965719391120128248229046137246931491991212256817611108115511271602435014014023719518946631441391791502372041462361903461811721211871932022615812030232431241801602161207222253511971553143939941371547325251171488119661510413044015144129134198118419331914842321481002022165954242140235741661612424119423998174198161620018916120815242842432459724019266157209243651837221246192221245110135135922153919522247198253169250167254129133728216482464736317512101201294675199180129121336692011468933211331101602011719420748309616322023269382337137131184252137191283712208172226681547214416421122706123216417895188146791561389521502101729850136190282919781061491223614251210128013316819723852168652261924519112941625014073224185888265224491571441471225614617621110439602242116522627116001802119234412472222359221221415982531281452351992503676232176412598232144153199335124714313157635036249196140424182244310911363104234126200148140896812019220023313255027110136192128190253199441175710823046102231682111621052238113418872248208151250225201106126921020697345425413015022219421419096391353224009011284159245813957422625040120199136216713821671365951452472114619398781291281547328104101839662554577139797715612912241124197341412242276824721122811162542002081374644205253235146517519201788559422044516031776182103116723775220172442385118334218477184351089322011332486255246111141827714825512722512211686835921234311281962232401580231734462107066136741302251810962253109163612491571134124085453665218438419619795200201871922012311361472471739175163782222142484798782222241116144240128181402091405616123147818208163227112520812033211200681391366817117668155144512461931371741612015423817713568180104522427012197182119562210668617424223816158651992051628244163206907016488701561811365610326154108251132063823075243200115198225201198812312042261914152249025833017613858103191582262411321445341972172391961797134058733783143160147162242615661718013237157923152922163146124212072911420106152193022712917319895186259241321281772886138192819672432452137842111110017124015708425012716722012710927106251255245231183255250239321282114215523378118228223194019020996335019616237751342423423323422911110724312018286254126991595526255301951811947172244132154255241235223237342502515115541221010410656159711811311823622314105783411224024651872552281522011062232393013255203227161473115164602960619022686127811191882122371107122815714213659292251072922517115711318359182392442532321972443115878126213146155152284010117318877931441151005521714116240714842222272361201192511421831821111951422222181901394510921924124624615723923621624324614212511110921919112725121925118318932412013924324662206126230341603582370622441971991341879571584220114357241190106872541522089124323917912512712117714620318711913124756247229226312381212625519324015231547914214972052134207215248142215914222118015746181272075529201532418797561541715515810348145111481451035693965014911150158996012119512452199164357717961859922415420923726872226421617112922415136520725125323918118720587912452311061811014219258178148581744011793832371901662221258516335751654583177379316945931673521118045205182452056124511314911920149311661581240021693124152311352091838519912275325020322186123295141133189242408910717830432080911610172117164731161027219588219720013219623322617919790143218108111852321410075115175144217136732462401011692152416620499128507598407912938162352051287421806522281651231533836561214395166920522177121024208158411381017223918623692532251295750124162013938861691991141309158423410914925115512010296134144884136187128230301283738755319911117098143131121102212171465654722555945230831011676234168602341823512080624116454821681210223220714923520714771820421523422323518094239180190211110185218981189123167205154108182821431322538020919122299127183203246863511311641784718315283123213921641892241480901021061280891083616180196182792832411417024421590173104254128201106112511614912091923131661622016021161982155929182512131341316923416316521840710213134161216422451612332391162161297214218237642176911412301471492502325490661464611213641716250991015810813616112925311019010153128172150140431023314313146725281361608920016621612083134562053114417079211157687256223018617411921667731191007311910073652291831037318010213813231701741192186123058227152811111914420914633105322015345213121691702271383619066385414424918542351042540682493815642504721415516162915161781281731828863238115692031241412411001534621819975180219477518110172140201682071502354721415446215155452088920124210182329219100198495822014454196244112158234721292182415317014014083529216814225314230171142281691222817124422942181101732159216172252234815213591160186220106245112192253241160231211171597922472131413521910924643237141712914220403247122220214581573917176265116443254124164238107129250175580146196951921923717861053699404117218088172119217129232112192015189161139155139135221432449630733511073211105679114640151606612001161174242048515846211521162341571431402416487150202281202346471651302221715021678713820140152175509630015015602011425821250581284241316210642271001372226241149331937657203373213414449485477227133104864925132116201499814112992961402281732667222132311112202472131762311791550452007103215125776212215149451412312491051912351251943542359314151229330151205025519213924112815119140239247185221235117189207117199213126542501732411336428012624294361276413336101471937016117161501173420616113310920916179140178112012814028170252043178842132551525020525641692212028486472761173142691199208653513676961224514314139136351301863232677314016364111759104133242231422143817651487214319212105134016901525222672941299544234581613911719510413449201403281678875632521272128132188155221414611711191822461612493781356421662381592418564247315224396919668250155176753664821384115024141531852097314273242024315144105150140169351291154103252177190195711221471412213628131532782469157133240215144116130168179170190361576420820271237617673972581299319281114712813514417315917212316416211917215299144136189639607208146100235195134221972119510958100238182951951561333121141297283112245889216238325812498236132456416490156248302271226311601219223238841933611224111324765206413913110217421623246136205194883051246250417617732341721331817111114919410810710017925522060176254716427153724672442011549623198729912912841862097348126236167739216240304823119211917912434523281873136218754745616729117702144782216213952081972391681792399739239677822213529189143162435823623241224226452282263923426322313116525121823923012961923246153249724499181316219141162187716214620434147441951823766147921952071861353689216135306217074852814818362111262065913514155216431211322513215650117016421670125102171509818156100221461082281192101922471328120825131224511022091591551971451721192271521157020941166814122412352402013524017911014523160661464371161612326885769366781058912219011772230253163106862221546182239124112112219142221219183239216182125276284601112182301358101221521901052322026610796591832392201871071751691452011393920720143127381032419714955236187121024240146247234518119165121404815222523519813585177171661611211889525222810323620855799919918215712763151845818546204221981551221892432553219252188209254247216615601958516514916191802321269212028451311291736019298132160218161921611881171325718110539121179956131254209179193148231954114325020612211222121595515646247125216115236651192522111292274713479612725410818924771235253191121491495892245478114214620437132103171321381313072223765255123223230188312519113517910922324615725111923616118212331192962512221252192462392191341652392382291881391032360067255183562512232262361211351727814111311811435628471632471271137616738512542012282151882451711885916979166126253108238231197082221869910291673923525223015513010310625371029150262531501551241221742712230272078758204151577623217782121878230219762288914322317626207181154202179153186975115399611571036315010721114997208145161631521071819223524317847246691112441951421287122112624759612311071082501102325216720355165203182100202183100202181936274018116441181166411811654111710010411810024182167911181661858525520620193158687225106032412200191197249941762081121971771691981681291141672337025116716322217519860238182153205662352311681821677518316773128764561895015710522615710598237151132167139523118321977231692471001381392149225102203116164139125195451761058920822020837186512299014716526128124190162781813941241405025564154162411512872104155835123174742078623312513171681903924121244375821263117982626957331218141244412312736231401606613153172260128933925017475119942227418090109541872151025781162621561751848810318421810013819567591901422214471512234077148105204842331721801522212371762121721819017218189662162211091831611581012550288013924912418924122146592321262302288109392271111510417017791920211943205100126462400186458012962098011117705617286372312225011814724918978911281221321675101144017492217311921720721515314015123521023255100130179153106354024813711418981150660129752100212610841231152120913020664130238281331459820521910008322622881071831571753914222247132181122111402451606317612914286529470114181761691981161771985249240642213797176112022423312825124365207165611524064834212125522115135558616213320019513152234245164223229301841657411118472181557114362081563812117216148381235721127314420621843212149455981170243615768723499227168301284104185851035882686231301303120483251911695315617554126831972009611517220170546302201704916630399545193116414174246100491641764615317323616638184248208115773060131132260905137902402442304024422109020311772215420431246187147215216992542077025316086971191231562151862823924718562252421265822625112020823121710419215746215238922132341755107207131112423420622718813297131516826461055130108243401725222720117721814025419414917226201361752101752031811031365315663902552451723034216224197234401625202835237244938316825123440225129215227117324794149237201150118244100752479314752118016613701570104321611663100611802548015824211219010116255108371532351288253987719219224877117263213275164137114301914122631324536231152249713613964131205630302443802971392217098179253571019214324511827240192157864396602061101886811518414412013219236462483315822516731487218172239119576022518661237247365172141224554912072121547884252462281692442301711321107143148233451828814719123911216419861140197240168419667148511851514931171976674888498323415414423397393322053130112391294100922092248323624518214012313215639184268113924322852218893113116352111502412271308212481984830961101234121321311417729145125209491331923106254241960148361451924714960301601920196984124336176168332019339152115128173203762213172161262122201160641402484156104141772719202163204136115128240128272291151901271287711718881972451951021101592101297715245912798232248161158253199250142216248974012691127514340189240362401286919424776996321515798624763382332466210136451882324198132736281302082512312495207651922182315178202531402291564154179100226163861584011314310022019516121824783255015016214518920019969315642182263813072087441295920070205314222725172321441631007633136123116616624119532253129311141581001289108112319319012822321236226136165742128672203523423218116202402134823425520600333015598132131977124255252312430224151621861213412212812916868242121919725257130425211362322352551911022732651761291418668416645244152140111132168123160160179223813931321291281711593219733384921241425612210582491361877201248684071991051323121514162992415201963623469159209143589924121198361461001788132157177137511410792411366023125158982352241167108182247674920615879562192232271881258020819469213392023224414873120146101120178932121031501612012303320115016110318193163151689019116796381011916031114198362505114788216571631681002112001001391362024005423882228623516110010811196886223208492002165788942151502432141451951823416654158130162210219182147872062061521778723476243179152491018520490217238163233821265579113510314315824215810913221122467682371192563641041633624613024718601769725277124219182244971584126511731911202492345725585250151231621951052241951417159191237311607592191762069515625111424317325223518925231216230231141246191203232732256841147612792623324227216232140991965717613986182240020122051248422483466119170254151152502552452091921433015124241116232251152511912845139108761191892111532041552492171952222111195814217511730952357412162241219181190223254254156177135254254163187248279719042246582556120614211956123247147196128931231831117152362191418324864109152291291834115128122212513524320612620623818356592222291081631425178296010340181165118254502171261762502151431998315978931226024921319524122322129250233827922610891252108123236921232128211920410611123612212719418922218414518151153106207245206176169102311291241392093421924115514147197468337238196911083556138112213910220381392201991122038242611021112501422311871191038924710291478424960239139227132912322227241176195255811512391314617514910223124182211142434277169178771051781315116427472015216720213142182108521821014891211116218031531582925115918518847723132128440811512181972491211482348011322672105228721852311121531951061432391791771281231571185110190131185138612171029252101572514693176761691582035015711666226142751948313323420718628103110106116921822694145215180167138662531191011302813610312813215177146248720231171117731288013354012833193100936136214661416212096164801852511386810718611271166401441601314920398612151643314616012833250137214167222021233538835421008114962931130232223501481686132426973771472281072102505610521215642354613015810873176199681372181572224314938835222621680951705566125036144355914443736244781911685109220109183218172181891721821542231051831222082370369671822221092071341234606413510692013413323225238618326762381162181825564372018857218103201684102196450240910824855208220511619120330218171881772147421351121662081423643151140220175765185218106181682313291107199302371602392326204160224332501351101066421467215118941496957921725771742557768727662176723917418021760238119195901525092158151231732475617318090994120349192228752016915145212100229238235242237871641291131693417389822452241291161772011025371125174188814818575951423468481744814271264222197925018928246124691681922742112147102501142289116112247146481612501392181231143842532298075186248462686322715412218234511496183155441672022456243852311701132111411612211612241380243111813843771501625324314913422412916982232871895192024115144121199168139128768861824432101561841691335810818064292181222441663815312701818572189247586490178227138127812414510083882072122420522634119218612811212358226243114342246519125198112013715217449251938425145164130941837922071512276579135253381711401552103617025511416423479135802141264580119116835204120010119921412206560484033148972271659018423312015833208185215229918213313276019214326661652411308024369145254283715641142188137230405595341311441182242315137515019223411688338422806216669118621680158210362450481591927212923472115325515269416121631806410241134250717914811694219462487422182342276910014020915318173217822372516661720537403318520023220815935631441712401762032542521554518419177169224611451822031893871011121542202710253552012917824820122491852159718322210525516019924965143203106155611741032071314914210710458950852311331704782151661382131671371192304020963579112012872115250206301880153134771112021162502061581595112817510413246361752435521014217713611311022327322445237291745228155251001682415951195702418402511451259717910859140717641182591827111848204136239194557821323601617522635472128194214860161211161016590192113245192227234651488266128191326424021100162171161875165931951439012119173799525524314121415110248796252192331061759188106120214128384141541861293762166225701763401419262541123433646206312335774581332327136155198126972224757419520020851914411678024019217115794959254646771241213194235312519918318110819628131852531432011867174561351365714687245802286618219080237184170208229776932222141784151365824811145233135611659267193111144254208166208241881326222418119691081928015273252103467812420724221215112121177113110747002388466252614619017895441551402211822058024413719822216920797115822501441132834981542362261271577812361952164192164301511081615917223159172211157054321042252144157135136139191741615742564651021667210118812619614412012525323268253232516209100464850151112282061115534511362098832168127230311201411619698822441621461803478235130723224410326225167228398692211301339313168221671283422062541621581931812622582254145146126225489239801393165713173247321739639771958923911217317622723624811336122811672451628182480424813860992615310430153104211531041915710017115704760652095968194209243833523579121093615725214918835245667915269388969164216135157181117817813569923012176742231412431824091981267192218196203526020144234172121361531241926034197604420134442014424813273961301459515614013359103239652061991814613414186466558782541352124516511617213237606936229153222225210835185197155178255175126182111353525011121320817161172073063127451032412171721919736106232219182181151152312483244255183246242213431605143247240254131168240136221591181783521918512523124623722818158141137981672462180914019542061192192222212515021147211192482232481761151032310021115824110114101975196113124123248225248176221276017615524973222097208220507561332322391325598173239711918563124522441391032271911215624231163532231757614345755912622779113635910521237166162264027238170252135159132255240164247225189252872482161943020213314861176238623822218110920723823712311824110947451192392181901114112318223719521825113779224173247561111251922172476210327155130037245481123622223125222818498127213233165158472391412511112523224318725310322219163230154215058131110119744119522031136124501825110844254233882521632252161171102281041851918319211418519712716545184632231742271708587142195104892241001172281048919684101236116101252116852521161172526465721117820811297202471229610717011511118225117315416823125313718822514720718517477195158246249175183187632362469410511626200213109186168208120651772411308220337149158116245190522452221161892148421119813924610925193220156179191784814916210531761434121313611022725257731091613410216619612316621212118620412217722224181952241575424716982147129235106292550157153829310820812422149516223250629318839671622271462001201902342039415114926995211810314472331602129129132352041672414424217824811219021098173193114189209821572254515457192146119812221702091594221124468023620615010420316233184441024018116103752469414913488185221961867223076372331431681761298921656421765806514962180202031312202428283107156781737451415814813100208801905021816720318119975213711381485917719920316251855811921845103421172301072447315024016020323710221113782141129124133190922172253422916911420521710622122938147135611186413022970193211901948331168897111832341331246218996996195122151132681748128282081211892031181651493622223237341917768723545183881721808923012816321359114138115117134104159170348319036214105181942378613922938236139164227614810513228411171017511995149655261071627612318815631219195198513013221706520914223212323134150233142150104972091161491939326621808011110197143222441292507120390187237211337912819313194231245110712263416022717976913045514819221108243432115313444831622291783611315220913710611722451242162511971365525021215623881085219987641941393317513561206144245792511373111819120317114311621271628471017122216854138251861852301711632082471071164016118723711818849191123292464412701217621898132331438515026205193310868351622714111617420214416513204862412873813818189116162590180721153215176646136193166203981322081151867617524742967914514194581302112048119624118022649190174011218621110514320366174791672212273314315196155169128103163222243141102253133106237215228265137235210196275116521817822916089712032440679134125302461231401501045516513822618810623212121395169860192144013917615114243210109151372783691542111961861752021117200121073649901652491467222187712719022361318491639910492452231238511014612157164211147457590461381801661371811651391199415023218974624101206121221951196192316822412910315412621127128582624112319320741826417913824119565112433620485234225247133952111041452181121905024461952202871534620915443211153432151331122242245231711139711761114019424011125218235124175205688210112651683793124128158215116133301557626183236861572338231122181061891963371875910911843455483149701572152018711514971101062462301711182294018193149724212167758495201021277394243192230187127726142193192161800180228798418873240895538235971551391521248724214114924713819613815517812621121618623215114964317021014110811011711042091002141736181508339190130991061261242118561612572765924820761471343665253195212131112464466137311704301442471381711910221802466110823892925516112935236355431252512324415572176161251191391045951541352411662932163154194921522952113191831521012609244814125322040234172656850190130191421521211014568130641791127176193817511117620218758182312325920012268411201997256133136581441211301612519720822650238978217433144251111107911259823612781601302222715664165632251244129112715721851332262352230128104386064222139199157131238231191060108225141851431071457107287961566512783587217262417222470176431431102542222164424613615513921313725016713418914493252192416421095227129195246941624612021495817167136214711351330321471199226431612198010810721288292191992492423174248366413951131181352072321971662328130809573823325382242281272122017920013332129164791321088014066881881142281131651369910161113114652092101901782158161181101243014424112213873324966561820231281194392241294019433817103761952071521351595415631011811321056230148972047322124041521381111641841311591307115211023292112003615520017924616141141932011181261671497712456239738213769187163148535014590361556936131720464216117651198119912124991161891622281091245631137113222221621418221417624751510421725115218413521812113510523215423622213520062161964840991661552496625559631620884736710016339249156621132502295116824213117190892495914199525487250157240192102203223522466555015419915515915711511911310111517420924397724922119896964321618824724625111753245108147255113111423864210661843221275241234923910363252570121351831456001417822021556005207116601101031881752448821179871856389237253254189254311891562525522222631151581262481992392332181691135213356503114523222232137459817314318211562216701805918110912810442186711418246192118110219106187972064015236326064265712311911524623935105325122222523625515224321419915693144209216568012985820086162232661941311371912203125520574255247231871472302191424511719847119681751167160261411236229255124502382494723224611095240741672558218722368181243192772351749219110129213112177253208771351451821525421672171862081812061471152451139916522522121512426821572022541041132547518531618924718524725431248191253165215174511415612075206143256671211184725035159246563232244941112471202162291251832131091802081845377181378518153851894577189597717325113011479170118243522716675146187341781262281642461718515810878521561362401420617522718170139781432285142231187206150185206862164521459173521872078521914022262469481105793920115193896422624631811483365146740151402291696023911818622310853154171212153382141534621469022453181082291291452165165122163219138024312430881682149951127193387521213524221187175803020020101371901307328386155441502357786212261311396192072225810816233295720911219151601082082067422231649410921021515952941301217862712302438114316001312147151601561752133989194221182162471964148341012424461526119625382163490961791301141772228431942301702453225031245571602535315521535055286185219105133088108509919147205842351474913390915445315519519201791816128129233106125150118188222673849641592293811518498510948861621932058523220014610820520235188342171157716655711905587177235186124231855788711821217229229858982102203246222801942102464321022157106413320982502141625146168921513825586163249741552052372217125161781525092238117571605321291588811229108141177786381921195642696128198116177111242128110224249136247841496583134248100165622499169209222630181610615814167138181172001101689715055121312013411013474230230424922112718721713824877012565222418015417821010869116127181172123612812941720924913717711449016849304321215245215951745515517152244180239187421518522311569150776463015217148128134304313014214651832338293602162535774192122085804135196120160235170281121041902222039220826175208931101796922023118676215261131185219174202180921451101913822311393177539117462771882421889621312116120623513811141150207712531581412222556199139181045208196911211282514408611994144571611225015787100208121409521135212154428625123135132311375512821723517138461011994150261342004621135717624176918220119610380255642150696414771642082101543850148167132957123205151731431012624820220413215624124389386340507549321298213342521481281088537127243425211820211710319338817182127134126931743134233142208019679236781392132036514325129182318513856169193218110158564420124946210964615719712217913390227911171984345150107173214184191171173182227101250125121106163229122511811662115338191491341951655813155181250102121131212012231401736001211991407364141961904364197637819315520466160176492816525883249168168724314711768420155617116015710912924825248606412411205424813718820295157186515223210323511024616411882131121365413534548144136160191920117255227481310327118114356922513212232455542204931288220155942184592204337220819823234313602412531293015314312120642222478323312720022037519119510524014324212849732070516295205476555441772961452401251952002028188172107567264216154140563698227127196194116011219621027135116192212932025376214351462410116634912363735825223218387501901612591151177841861192068421646011618818091232199701421352042210614417091121012572206492092534188512517653220116921060331501782191351811161947314649123011243131842031601424035412619621031531125982021208337255147240095193833020879722091427714811140221142452232023180391597222802551043666601385810981461402271928110314123216419123617225618854264768130133881208221225133128884918396331031271521361071601401111641062161131412001472341453953163791051971562141365816522126926122613211480156164123481201287873221642624171271299114472253310324434411880231163222640136581351136581012011905616517298199221917115240852401221513611430176138581071911321446236172778016213041244189121031914823161920659987118023676672068880207014419244602015622814097224993191881320711285183161211232231192292455631138298253213117135424514217624414211495722527121210192204122207190253767111223206199128141247232255611516015191691871192362542011512724224225444253481417814923725514549657653241223105916261157931342506244329776232211234119217381520819331671721621685060561942232142552521352073180206013720460240212219205143921191943447610472271148219552427160188119113569014618711473747244166461161271812201231131491551211272287085198232223871432383839137110144185568520836100461401018219211222371682363835220944133109802521551821497246238222190111247182189232131757329205917741112234395920021911618247614120615912623648222248179167179127126602452352511636318455148184202141189512412111948252254801961392334222194201103147113157198311239220238142304011723122211627169244235202119237412403044142252213214115029155174783046572171143717223219192127123702459219220999462391547511424413356250342823318324923924297015567282068114199671532111599924610632252113183255195782391992216214312312423811912244212881523023311692861067814711018832221118941852471629725151712147530132313117925519720386110551741220654824017773862231125116188248244120812322401319924121711855017124911424318510243153114179177342532541071702211531782213664721783983162247178681113896128120688501137117020024011751921921471425121718237206522091827519414425429233984093124231517252154160401243915144232297421722362061502361854253901646452221151292368810718218421198936641113286923192053226529621852506237144502760160190169117176202761332061201371229517410812315024558711017712920025018526619619212216713148253761492061041774296961726813154254731911974116911064825116039366233146912201013619221577255026239117881311310414219713759237100909823212638241394311723155761519120410310624423267603243245709613121790671481082321612191483117610416613822879147113271114812317520311793149110191442091453720912169170237178100434916922250206158241251271513152111162834521661375316413821219546916329252488416449116839916080109180681551366102495987103506660910661185138615710160130572183617916538203718920624718629872191087013853235461021367131941501962141768964197671742351398115910367941391412300151081503636180217622361131341181352546722992151324229234315017582442153189422381864211651272642922630661271651332400248971316021010018520132162061121615868517212824119268412016705790164193189174568516217921096177921035490168209145339122326151002012449383152402141581755015644214158402142944215155791730144257204842326717022601608619332052332262378982131692341633790932152281064710112625011370109214179245386112174176193981411771146120021424961391374216319398173238274214923113342191221321321251921172317751291033024718521111121923613922413016172238130322341842298716412931932171202521124316521850378198239488010244125253215130365813677501761294108303445234011112842327615024210333162373260128193924932211764396310520011625210632235169671282331232266113122513512822252172861552041532501594038336712188241112451601882219618221810813819185101176801615591170318326080162539316211717121816631742542852523015924458632391199317455237187381351151531755312121291063030176221741981141632491082120125116751122622311017890108176281901692131217716143711692511341141991171332304423319812201118649315810667134362532271771337888056227116867136111852222623919452277862913018442164261836216202381002213099104415160398612913610027811116451980233143206911411721731882462780227183179991929410412619410710864314524412918413524415328403022421919887205219125198234128414618664194135781715308724014233722242436962373149255177161512442471352501421161363320235210301382818615910412580193632043128121579131572178870714122124085200202711933520232342176025412370811039725022520113815820998118110019633271911631509496146195221587205602222111817177168248197751851322818124241882172501922161126715915256513064119664200214231831924024628227122017214312291415418511022911501123122249422710213756248512464351102818062139771302266310622913311755310560352012164129131249212196249144185592341847715520224482407919732046396201519815214466120324681464013424212839225129192882023204336420255701279810412910215141953121765124424212571501543601657224224195181216179362491522406413812224841105239729723101750118144164871368211215686244411571525121820916797168232196381066915921414177212863462291734236232439623154280244141196174249110122504361363895245544513476103102161231985662734723416490801401881191681521791591521471911308718411082251203232115861451031736614710967831722782355669409154021761695613323324919691132378914516113582031669773701931671172522265318935149921312282825314822113037442201191391692381781145481802151191117815582302915323619126669477147169764214220110327132499543255183606416424617429208129228157250239126251123162952412172023217224263999162213149852421781142443257591831452271642311947823477315802271311362621586211986239178771711325463252217220229150931524714142724123922823622220521717914323423913207022518612913071264194198249234246862541261622291711332387518318587867242462543494219411867250131255962327621325511821691156237104193871821456115610912373126281243592321492171771091952001901284123118110392381302211562531875725111881261931862391121361591187162912302822020713724024816817144233229194159877126118111244103143381272421122361231712202272471341633179702222924295227250622613125522219021827176208230632232258211282148522421885224628923498430609230499017639412112217824217913025524025234641947711515520239228681924516235216175984241431411591145610615911278185112501273453152111251140272451842112396515523116314175151253129188177176151671791849410717311820870125185242253574235573822721528701752511492143168248831441832387561115614184296131931841711151861751972221092491081744412022813423772174209244772272178219523398253209215719017174931535020620022019518925162220761138815141202347419239196312488481110150244237262272312217875149623715168904710117101136183167137254213080386001722096766241172132212208103351444621426762017113230411287128115519825232202351141631331061649802497511738128129187173863613016815018483298102233441702438543160111168220161138135170312235142128184129771491626999236166218200771491582810524004217117323011921917323017024516024823911788129101987521313510149701381488114260291127031445422048623578851042092281146821261289717212255253110200895117214301842199759064183852689116167195234787733696606423131486301761242261651025819616491479119213162272172613113710157145182451933421238135501598717412424785153246449192642191011132400172538328138312341568212910010715084911502045165219174721831007414621615876924282631411761206017752811722101138522125176220961728427242231391602301376716021412017082159140882182371842201082491002082272011282518217969127129422291194211212707518131245187129730151841751809011966894149157169549023911422414124913160233151274511021315464167131958882051201375424017017722516248158911920164255122167342481721361461961411721612973217225781605118059190206842664199152301711181022011161027315221801292081591711961791005883174551206725901271728031440121521734888168546397615022425208315160210158334981162131621927017610188624645136213159175210619410515025524980221372252221242291972220319722171201106131233901632339022714550157254661412543420519021174819211213778911829210917021680137206227654722212006513013712816725323814710118680195245244196235190382519856500240323425152196191128162361863777140188242231171127126164208107309667151941852340108230129343618413620480214130959526218371930157184161217210253572421952491848170248456422383020897233122824721816062522529424059130226103139240511932398634625220864824824996931920126116224240912136204450120212082491377313449247154220641741941895423523253110641391451241491427691101423423838120013685249167670631565055871211822021121881321642412084412718924926147201114131238235742051538220515116573208617088229121193242175142214166138182100201012216951412156064477761021236278120181561892413420813516132201109153520741451752061691668724114313510613249909623711115223018390190211248726461124832114268157194012139180677910567217715721816116673481281858248606431329491240166157194828512707615617212316418499176144173312445524425319970206208226521128321931072091431141951052401417074220419021963644315926185162448118253216192233160137276819118871148110881627323623122199190111222471657823225691752449251643310795651079523015164137109226120682363228603537156131193312919628388144207251122182312557110240128143146954422856227148195135624677693190197316205412481701912690212193314322610289156248301006119204225545457512841492511102161331761574723841123129616065108153121361124856123231101062760240191106223230129248201631321791112400418618139233461552533232207247316017419126824516393016522419169302015117782317166250107254198113103132262072331983617113415814424212231162445910623945236236392372916622154160271157047541737223981965562414121814516716461671933130246944022918919513320445641894196571924755204322613211274631072115198322301801021041301881191521681631751521631591888718478200113147168361158171128101881786911216277881381092285717124020179208682432401001801314962301454116622573198971371341931671801249821360195211563229282532136019420292521191041113118125194217251233591627410223816194225167125661936228148169623023632163195190248591211281371084019718918724616212622422732312551141292551751513244311225414523252255471092031671842321661361441614189011823124629244525415730111269696391531891207742101451957362147204182675015625523112996431517623475942222131302472232508199182111251254253219247209120161215721921224715106216849318854239191198219178198912112312217411620255544920064229817181232013131411111711189142206187200601991962461121821311208137165221017827871342473202174818247162001106653615410447165240642153412312912819811719614953148223253245175612371262031871472419823824717125322319155252189103516312654253195532381371871311131752307961153140952271344711764718052061814141842511412141322222345611717123721266235233149238471101811571071852611622987102223115822616219481122151286324224191864713441406162228112362232302328114601815719179821047611915917012127212119156551571961555920527137120214235247188215159552520591561981558127532824410640232731592471221672032111901281511251134718614612099255198272511751597116996232161718291801921425214113101262315195147178801761125211123561991301551655711677115248186218224117213190108165238761852387623322220321012589822241291581162091901217762261242556471170104251699723821153229421951511894615911097174202181942023872232192343116022567911201602062405424515204209129134152103048128114252166234224132491102401921011772062039840979389226618716525117420314120168641934421426472151551745391146871495294136234123451682220026742401601054031441612142178211622719214113616089474144251221215164962111492182082381624716250236532557614914321548517419794246511977913212613524592141222100185230157547514432141222041171326525099197239228118016711224161221234118171512096185197981562067170501407310414424593154100140246101146729658831736382162209151167216113851702455020429712814507016784911661207518610410713424721281641081661712522314833148915245152331431024315091043542824494136155175210159175202629130178103191501316021298810366341391742012052142413302461852041449713314011018390163101161222108189219105161193172397428941818557671622461301614496176801251891992331971361520364881085223920383238186466389161712519121098132137895132751291170332422061186252241321440661241651971015424250123182218161942411101356186185211102111812021223519464295231170141861546510770216212112161250881772222452121541761691969614716558366918492127182922558618124112437113520487251745389173529014422022690147133423522118153088170515601441641304235108458181253178201223428741895383184820815845671283985164227154442496189207229781831951241632171041851101111581142032123318652209154753420817277882471709225153249174921659177864719825215814324824038312051193471341881924545192485020216113172121111641652167137161130118148168368054177201140991761371414112240243721634194322189503524932100253137155909631868424606413524342271124593147294382103631025276110145427320220412467355319431121336253619111180224766194135234912176834741116610419317511118276103190921548488316253891646286160138221681275411242227301997157246163691062912092513713410841131912945689220110921038022364158102321113938232362201487140711391811555036171207115516475521017421316513785124458025414964197215130851849822314223130439106155198234486520712773207793932211226662082221793813801316020925221236422512920410119816213417620107651161781561321272128152402171282400315230406416314153153248180118240105454024106196876473128252291170254557396111896171134822461391512431401461169211771116180241619823352119069226243831418163100230113144216119241017316027251561161952162321651726690401081241042241362062168118132253234711575314225119440246511952321152189710320189991971578156192417212414153123301772401944223923521716393129126326120212202196628114156136114712740126321190661813117724480242141133226255381512421963641982104959246517439120014016731149164191266140129254160119759633231110311104018214070144134172711322015738251391761054206246136692022541131404254153121192112147721635932521422081203316512823277303248642533212571449812223628742052082271381901452102381938211065160215713614714071046249852559197128891081388125210370199622151417786957462332546224224113001262001201349813119821662205109619824613922123369159145241102111324219176243181182401452471422081233789226311361151636224711010990362026852146110811036447192017722434225117317622721617873204891791521153881411349710312677991681571811406210360321501082614514013873100178811001469712016211820892123910451434889231321211996477207722125164206251162842191441831951820213478949733145199229205210488742302381336216212202127155713614613414022267947611514228601461531821451311874110089229127198182124110922075712424016142106199182237187728649651511911943164125247142221128129157681516323518222325515063512411392317594210132132255209152251186832019217023118819924730255244763103183992231821832462101211901822400145233104193209239223198572125192123178244232862232108099999718613318636214130641271392186220624618927441771571912274541095115317810971011289319657640024723372920310423111025420498361551533002011057020330234154964723024110865703922109621094156189622411111431661262491162301511433912718820277190551482421142461354716619119121812325278956011123822020323322824519399517797517720943614119131992312192071891542512112432012432202264720247681592551776717621772422391124403188752472228192469610424912820691602429199671552431012002091729525181942451541688931091379417224315517511412121223719927141061882341512421822775234832091881778222723611152150551341955619715578121532508322217312222908924131791053034916121281096248205124238391788811911816942122502071055621912024813823064166669515411611115410011917012087154681111348495134362361091484621415533198205148224941347324593150982541292141166253871001108727189232113126197117914021513124411113112621516414716816155120964079971710618717826715914158741663516066024163602081158518122081176916251751882271784042361004091122240134210765712019211616920623611813119782173233108133136221844122829228627791602431705077311367141134621478835146960735283651461407110841933441211604771150133251175181890316024515126140167421800316253762086722967223179104342122311072452091294125421322243711251422414025421322179135618019210218323419023331104539511052943519172403938356080166530881091033514490223237178672972176210106137246201101571296614920610750205153981412333445259823789210236554171722519234121259178100218461913501961073912521715245223125933021019139711186127248166230721372144820816882159134510771510115519121811012317521917118191215249241128251189467101921737024321354272424568898221169421312415015724150221219455424311723022121514923446130720020431812313317020711969543173214207135189941412512411661311201471292161141271901014213515571645517484252229112245215711371572332227250255229112107150212237221715915724623220811385118182214152364824456652535112320823718021296146712515023021648819524021361921081709211116276232041121832051181451424768178138233228316822757121216229132715121921141391991385213524284811991314114024192250111401472152435292103351347117039871772431542891901864491828911018112658226181214101639017421111689162250162961091704820224219128462551388819721571154179361772446221513355292481081962512291524714422423316019910013312683186248170246130962051211292341755646836118136381584254233161801144524527166018432761665216660128146165115148961411722221471318517519319877226948710818536218120651362057076135251493020085196111971692062420760421552072555597128111642192243841693812615224385196213134206885705916102192702404327438431276231071622847843152041493171148250114228103171245239210185180591791652327217834312120215123156129121564715647238231601416136111426923257871097210317551153169502342038310918734219122691824983178242188962331591487128719018168190322201146913425433217194384112147872422082207615123511010020232701616712216951816717350166701813018310024131252448961743796023524219725322149791414261251791332610919621415297155155198190162164254124019241321741731325519286301282381032172212232104167333694104235876422729852181326558421233168432962373337824418917223870185791982753247252251253311124235140131261006411521244291302267833216187621809020457130416110311236226142144218254130541267145189732222138828416081206511898294228509322041162461691372431231865414071415318722520267241211883224064200272541402451330329632239219531432351052412386194571205121702471391171924223419319920923117613318713211514416899128144157175180914012009517771230175025497111162031556012851250166702551591802392301291111961129117244221171380242143214146365123190230140126227248201471321796497326193916214182061226782542421082041592392401514425013414512033502251131941031221774111125074015482283213710529312923721852225156110212105013116817919114413155743719140236142561104552263421620428248134173096238223717619223230121188502091521136818145254172013821215962815813622961289202136100998810050120642116365209619222245841984180222412004822415216610724231671132061821557219161115182191119882022022095550246140140156261915459118236162158129173186249111241085144196152140222216190113611432551752072302311272046324020579122106218199311461832335918210921969252312713178213236253162311901146225323221117898254204196255123254118621114161207794524812141441397894195239996017613175131382522007239254225151631522361731532331732321702042421792141944122518016121513271765591602363322921724068842351919715189670121128148184322024913613996131720013811623922801762501101869560121650118132186240622063112616502192412131242471111512511271181112361677910312624110023416711976391312542522332281531142124113187235228221190834716662123542492171632091152032213923824439611572522091162111771291381522182032542552451857816822962237163281691832491951949105254412291630248106321921371816324017988149631272072362301593381061911836224013916518216413313415218723717720324525451101144314117410714146183170172231203451671387710320220421515415615824624924338991212271131889714816712016373151876312762248187186139922183685128237118412883832481441472559123913315422820960191241271421952173818910542221151100122821651228237187821971872113712351165250501651923125233226128129254203183891463871646174721311122477511767146942062744872562233176127141372171085315416722012281152314714878721282642132732247111213234472152720587233781491052072101145328027218163694231851141898716518619308736642132717819612317816521821069595137711121210343200219951041901331062271857467321121235735137482919831767736192341362781632291221726922211914222321224206873020483236203149237200223142809823924516121816124219301625301311375014169154840125143182263024128693271481792131868025211921844161248209242160199142122594423222158736249223636421112192376235175180894618315214315110720521525455315377131136267622155768921220892157209100165238721376559516923518676199852332461081691424346584675512412811429200831534021315317350921683583137177232255169742531775029402541331228314811959237239117576425022369217237248108216235113191272344020918421465230419111017712221623124210020822778135292518018019523878135612001742927156402156957871071888014399179158170522362001501751853292791211602381621644622824298147513622619716815111421443465081642161154210476191731292783794532683301431711782112131345615818111891144122169618892237111301281009216389410824211983449410417421886011218725551942423788138222327514820824712036200281002441938817455191219106179210961361524021423818942215155457111513910118717816433160391381812302007268186131121420010236219245134114951429839234571381086134214203362481061771972421971322231473320791205229318510117105341811693414923151382552481052011591414825424916192160437197161201226249152151115726231362401082001921522555215170234235163859529161229209261702543314565285127622043114714818252921621896022531801817824213425392449314731165835022723491521712201504665166421873622012569102401299254527224949585701646035113442365566127381961291281652488176151105176239179113192452076413025314817611613036225104140228431792417010374181391762291241492412181129921332256685232251137501731741082331988416125011211723412217520322722212972402322919813818111231812186611842001227852502241601921195928302461852212351188910418028188169542324615110724293577467372181041001275618224871901492361113117213520958105659314114119741321124221522142514148116230235123178205141114751012351901901011641572902461872292422222812977243237205488624563166221289315921413792101459179137110813442304064694320160219433511694125119717957196459814265361302002201477212162151842274392272496322912423767230221208719924661931872471162360616224612921659142103226902465132115513476860962291311811491120108824918817199247145161147172711321529902125752584282174337205922232131776151923225312997208229198113159652119923395227188918920036915196817127220280418211521220219231501691211652715320215156141104362312511819254113122162243815078192218813917266971281101291082281816425531182133016015042417714612822783121882116226147201309913322121426611519123013420255243781517612016115236245224120572074811310312749391621763318489744983162568147102237261896338731524513217918611320117022519916512419451572531425625085625173120132104132301959019610484181213516723157104148112863923452128652043764196201791945380373270552262019151127956825012739151761731811947920012213511592501385725120312113510703911270113184321002421615211792003625381726923416417121311411285534207168250199202184575187573225124157377131143271206810825180140179235992061741556219222146875124010136138142791481478716766141861112471501457015325313301281883874145133145224187148184846910552559515977920514823725511719512722324825223095255109223110821219115171181102231811116779190114212852127113519924827226127222220254255221157873266422444314321522121817116664210608812420646206158775719010520956214381662312552402512361112724919547127234101103732061351951211232471822531875756611361171662211191131121671051624849631551477501097132718216194107302161602184418015121224917612920519019522556232189159253135112222237271885921523814255106177251220106255185711963126542432438523815110725363122582492197116325518221825113912325319112258254592222529515877254971692512329133394725518724310563187109142198971422085424286309113424410312602301612882871261552273419973118126247471374216519118123572245238742432327411925472409511159246152123102165532348667224195238232135157225203181158179165118220435893233426757165842298913832491221792131421432519895141642401341902072725441111224215107173191171184240133163154020621872511162725115233125234124136182253128155274912419511523218624512019021788142545567166477718855771721351521201111861009513411695166116474922616232207146381186916663911501554521911969186231178100758951501564120919022310625318021917182801617924278269139166134401880301282248817251921682143560801645037792541175131101902462231442351904221314977961605991178147614117103755316710672352442314078220212158453912922410811220116558514241241341151496819019272206012911262180180206220154198427014471228291031452502241319719023517893873759179378812201202241181474123499116146181222416460832521071092216247172157241012812956790205209136101074570128023620813020516266120160197140241021225576141629101064915916820894168392493838518621121325010415939227112514214910513231711520170244221802322061452351941139414723720415013108198180122116812943218230245186603514525330100104160110199165381120011972249149862713625125111624020818111859168210251617868229119216612281861625112897182198820129202502011815723392456419710218120511817720924449839952891616385105024641125022010617624432131071913491115158164131630184369211565176359162359895143184110224138233562188912728204681332221001652541001339411914221594232172525324942216224751921957624023722431809683125551481661711121931091602519764224019245504822910730881685365513920884296209681602507881153461597106761923431412214318615624084122284211921622101962191811531461001401724321023725226189871017310489185145571161253178682071171852546037581261715864139176173167214284520921742129220154170492152401663332471519017371395321817520153931501042001667217154452211268511818484235110143191931611972002313522210082136651922511015850136816795123651661361061843621742351627892082973277223711655777172571491200152791281494516916219201483212917360481461756212193996390168209117891862332153169160358318843751782471702048814526116601680391391981452213572343716348641200162312924011564133253822402191561733283130224199727011741961437219125968858897416640304336243151441203358255192681612188017498127142252681693896160237178120205215135274614521716612945671220178245787198019245928817611211281185201108331491222112112218415579250611201965188169144871471291576015091109971079314248146140492719825411218823012130501721671381272851371918898913837643568631922920421213124813212869960222291911851482411581621341017117910221251632311344972962341591450217197223620810579302089166336765252682192128382291532559916253218971375822573589713720825321233647615714067749271042151417221097115968581315073428024175802441371492451361481121017182245103111232201136671487248481927296431220825027241661112489685814457101602362232151811351611307032129178111601421934024651227184207193656097187128351509488179119812621721671342462541920127242869422041822531441852192199015014423617679140157201882515156211163227111092400137813094715919235401133716124221188163641421621819970142144245620922851917319423110219919020814631411231382219717742441481181139200121691102291192137172715689139344421082325546064525514722116247198276032312843228234127132241640120224362551336121323216816153307986129688615162602242282072523155600120248143583193623421117201891321002211323618120019210254171301741261351561881431842481381865168519765190195176291920231341327206232211124981051431649231278114432995726323418033221242276096201578122162023250522056443236132172872163815104823048196137196157213141732141411612114571392279719277716234693923570211209144104228146942281056922372113231279183073103635723103255569315114493159721121181272042172496210321512326686941145254652091814610762472392161901035912121119133111372535525412279194186201203200552125424025524521725022575246255203182245243242857498210198651102195173756222320531044619211814588412421131761151241122393312783244243632303422423923021375222139103132105411812325324214114322257643524524723921718231661241477322141698239227141238219177199207195227223126246179832094938261323111299168250391671382433617664024914110019713195125196245332532331173360176213405116612823723023621720521775143111219414613136106871822712411322018018723015143359561156622551082462351031791911275224917918125417911966318763250324019274223151597925572392461331353519189108255233253129223220106251121233215122311151180872277218875141083113101301613517714113911023110429224120106188125214752302231911674126235222159294985245111551102523916825318883227159108582111561982432532304213016743253103107253111183422310511185852371131832012399414720720853131225235250513738355218125571701572171701578718123117018915824415623014125415255250115222240111250114127228103342473316514236250109263845480248132115233199542371512535951108123472714223241422291702461651391142111322502101331232116912321119625121036123211164122510350642110224980123601128511022418660247170108111150528325216324942119154449424518724366121491172701104018116713819294143611030021922223920714510160489193316257941220166100199108185541531561848015315543215125771050294864924892261327178196219211133595119725017520314121168206208137520018413521250139531162014810635819313342347209200941211621563410701471892510114515244854012121757148167204205145103351417885104173119661252186617814314916814321131713617873484119122010411418322123494135531642559818917139231544421522022812322541231571002331141479482241330322193360961322541832614071755319304310986961282191731501191872362302351612031414112144422622598181190601972382821720610750298716521817472182922223918434611521755881162518710185188218108189222225240176199251181912192411101672538217937164231104137545595542124188921191848814720112582502292243241579620310618122124611015132025511618133892121081371501694231506112150152173531661418372121245413011787322022352047113818121917924860208178225311041913413120321421361107121635174432403224177214110139701485614617017514322225220714316125116717112643819614148272421162001976665011911140145220134602291852699168255149102431682557221781556048879941219287216189141231440581606835228381689618219412820467921091888410758951011161871932521100104145102221872245959180211233123123178101112211129130163133170521956899328716122750228184729517425210417725011214523488177388817124342487612618076103182214164191641360489416925511419415955231941559122582261812222311882109718721698572159610911045019121310818521210611715923524211419415204176216108209151167220113852217646168624702361932110776231077419235184345192168628117067226157741177011114615722625424622380238186341118579231251602061295512096195811921891745612301841695391174154823220515010738116413714689201174726516013113510343245250174201213252249962532157113524214823217512822894818319210211061190142223841992131842219650831616189162628917062931745783161538117254872011887234442411122616619822877132343420862522071501062272471421412078623314314910421212612516424279790210691552116815421172130196104145381102111001534678115487951322081574559112671211848021849671210183251197176207171177022211640111491545531241114214371241697913524023019412020317723615199107302161402130652531951821822402163212296818421124030382201531002239268220219631281651801781933124163206129141141401190169112012812061522191291261251091002002099614673172177219827691697842199531302002326721816116711719473140192286220182118216105903914110216051892001002218242288117846200332822811226168042144243327358023422146213545188409108120624910822911021001216219110610869168127250213245993523114312156624911412920813523215111413831356174239572541856524457014015610318012818147237794119420025118208212772044916114922002142311361657240742916225517613313516014124716738206242948116226208253208124144233104571042304223318122531831497807230731851342241702243222215179611062371337510616131777519414117658246217315198011413659516251139202542001227017625211082825119783651197410245216224129255245120161215462170224137226551367521414175829593822521422326862521452431378015733216325121160933823217710145233497380255422544950238331621421261112401922301981399190105180145184816024222783180162207200719813618672911324457236232357624716817114761513062461974025417221724120777142125166191179057487821459921944524106942162097921835846124824223565611536121010769392614099146141162147122001201631377012991820623419738170132196751211331057249138562512031201351691332951725610714824015378116146141571072516619113616416719113905524212249261571681138120814585211883519615725236221216515625320157320431914022066247311442262362521441792539320624618311923625324022713198714137237221324167461962241872523127213192321918317787239228163161166491922922425523517924519524425025510925123039463815029211411039121241771701271317176201701511182273619638188218152152152255217228129111237232255219151272430129103475471262296122712514525261122421442428022811666012624862924897481281651301354351301941262482172378862142392372221412132175201225019320116314211419594139126154571762333112814515520322209124981862180155362823921671140722467712313923410227237143115190582419823319820319720343325518254248171799255202912531381832489523513119188239255229122255111238114127127127224471882171082221731076722963250253231102161118318917111414815192171416726176244384621961241921771492231797117232231132181531911121737514130186121118166234203911171597915036122311332459324523972115111622392162521492537217425582117204681456324715420311615325515721415218745815116530513746511972466721512199243140199101262431811231141812344616921492212294715126532461122223211115813254199116229792771422768033120851981181045939206691201782502031492301962224423523812189158768523810119725476251101865655671625567188556716247348321971563176129108892382121237918100203122294014023170131602425921019616015238183217061201636279186297111841554710182166109910510323019840671688030152422111601113116154180397553801301310242731252241346013111943401757218010313818010313811893145110781472362028626432141594451154425126204211236207852745130154491521734815417348156169481288013422015316317563233123801312526505289162691471371178112923265112022093414663192118558716324717619923865143237741392336815319888169218821472419018719710615524974171217237222111977016359237222471861602482451115324172119219962124412414771061364201921282132250121742104367351732301041992101811181711811182351336192401925077266152081249850132178414922211217712211914292115166120125170481723783188398712524891991842181022439821613955120520449253108208243651432111897813518154219187292468021624311738368118480125164681715587177237138244641294200114289829141192112280231247200929970208247172190214971832101062052208321023037152173115152641079842327922517054152173180218172181219207213154132212121062031461732509017614106533234861882271702201001651939013525313162215199330207200444622071341891581512363273422573216565421912669166230188224721772301471151440111422329415135232165311287114722707518116227165588025220824720813611119611173016855251541596233661414920516160211144149232011151235205658618710033163251115148198105320020066197361431245695258813639100561591885911177232371874655921685011883125188681151886810716480173231154928718220488137214173122211153106131201741891814625187147254188233649225287191482241931798115916719522214313560153221197291161131841952381185722617211316912985192161134841717619187411848518564444138164801832192259221623316012548792123419124118816127981202049216215842097058432555711131846413192519317455148167218147452151584113010420716235190345129142135311560190130726206111169514519817502401888471382411924713318509131302207113312378417461851701131711502282461680175194245841551752109963257021283120144138212234224415023576230421161932316755203975181214904523110713278313320225423599148324974211211862212152289051371674313102171141701395319975181113127251243148251114149134139212199751811664211616742244150264524018024038312151331881974022266419312815380662401036712124322524447199223012824210262211515771233618274115382201532321671861591752338913323412621072282180194012821661817669155486423520910451871921901522096124210565131953010319823919762884844194102117161120200752086814858225167812091432036234705060042366512739136691607620914319487210242801356166232294323722782851182541002443358349313190116222108249465972102513289415924187126100232244161190351232411272122109121057844522418465212891915497129214524713862106229189651720331215713210825322960163682921602456551623220823544244255160185271965816460521896511610201911281812321833220113772081841497208831945782151320225431251231041251721361654620018031671531231123972416616252607321861122372045711221220219180128585827144204129173249325528182225403230128882406414611010814686212411331922411324732973995812503093454878614094353665432361848621692371126063120246181481241631006066361563682812419020131212324820614455141166107235199144249200116998384671427512371105773018224717112244191131319487229224992342251671803420723219736235683817043872184134822758596821822716822291881632409119221412899019419843252133072501961952812620232226529024499147244142165168199156150131421724514171122451911411144244983121372111934119916710468156214138561731318136561311016971193781713962173291157051250180781083414464209436622014524012816414717514616317514911118016983192219311398218524554103592022212797216408122317710921914214124972549199221182225195231552814216114522520420412255951592552193182295510820323121714739629494236168112148592017322513113125314217999206138127209233192251311039420232912171862051735912219525463253240612248223831547314011120712143111717854206244201121363658139190167223242182158188163393129531571911339124611243668196118113182651932393811365192014856651566325518224182492192521601901218119212023615420848335023820862986825322711310108142234131138216715631311832616825021310247247207102190122502451351651583117511212711611124039471662551571831181451831542411142262351236112718822124671110209191922546921615677718811751321773318629200110001291996032190143191063324025120235188255244171207101757424310918522608217639022618626571225115615519216157237211157229213154234212124222129155237125187542251212391031435919239521961731833660234601131833711818546120162208185391951605567135123891873567185238146116249121233242175531068245384222712011127186221249311052552623497385441021269148121224017114412614324324515448721919115640246239190108212153166214118651902431461081271663455671424893150234189449233792136315711832831142321541241271507615104123789826757138147692622751061625023710516251379079186281202081211447112520616369106132341544610177113153318580118483020014913119424478613123615217121215313423616820815816921015317421230438123520114510520718239184342061941202181791969021013315521169219179209046171181101235244231521223155771488977872167614889140151154771509176879076871527615023379662531511076721164226802550129129241155234163133106362501858814758214321169141204014320401323409871612151013221719331071092301391416831492619212342031731981071572302031733818321976111183153445226172180155222233178152107208671251891991542291925513255192821312411313059150147176214102177801035683169187210981211911999718122126601762161006155175552614014910524623401199414710918544891198118423423516318123133154113229111407787276655147815615396200232151991907913560951401206710014712111559236238116218179247241147149250125551481343217920225531246254360174227602511351931662221871961342221232391892472228919328673236164100591371939126291917325238118282033491814123236209123919620923139222123473621643190251153217931301642288818217256255235592151632092361565717911520213024723960243204881420209130196671655452134167611041801943031251102043917165562388016813920362241171732172311021712554414810415725118138239217581432546623519021712011062152332624724174231225821281291962206106123123513775817877106182137420710917413683203617013717812198170931101821356023214118622327245176311841789912112025124264244114127212672409772058212218351100186198692262524136702556541232422061712483101220232531010420151237206492544180281311401741121282381512410741367190201630535788961185223153101208145161551521036281102639296912192199225666012128671873740239582471931248312215320512016035838712065190418151321923112621086121811385820291835316111617555122222235101226024241104482348112724424222424619913121918461234223242176471542061893924294119196141182962164515611487248163190451431221633124713318222120752167107243192107921324112924398131231041031692017233205226315815917316524723222611629623416814213132273219513312491486885231229691052189387141122115771351381721861791419121111715446169114740224119215156172621219318522476113130213103558206109686631321691018713390872167614922715619291084878107189120691561035781892176675166243531422271651501761371141072527857150451841279620921330401771581731181948718010110416321773529123154881004614087172185322231541615393237248176592039431368718952143914383165315741932431372350142364318019667219871044994229248160391564017543017960182147301611611092031316495100182192117623791564321746822521112242246019216557244103124317921056314410615198018025420210220861209862101941476756332001201281253515317223074163175227132176162141439923013418820424021166591421522396070121921563682220246662011453311117115220120219103523310520094101223237272213416020321721046012224891614749230424810222712389103022423925199248210200541262161652216131239117582521919967631822192553718616117180123189107248135108775284192332481066915917374629132199149124183128714422521113117411913193711564715125418411014424240421224174611953162478024912214525120820039461931841796096128180443510281789417820002055813870541211323303340129161101124181110682361012160204831382521272141649422261230311763436561102011588519818313012721261431637255104141224291541615911719411930244162246346994435270451121551461111481627916416211120242180321924622615434255201416310984258215883156101125144150362112191188037521021151922147712620915512416322825318340611083112211652921171171829153120167821925412122323220562811551891631448115217165191229160197238991041591354175253153924151560180620411928542191182001081999714715713513991423523860168190101143662321827718124212991841941181041091415313657108180235511631522071401191261021402237220423116622416281872511362491583522160219832302511429017924522244352461702507117141108131524868216611055119131262252051411641848618918212222115511417140190116149220171171228948945247242421852332151871731247125222321983602242252254953533724923524315122210011492982482392015453491051071092051231818650191165436223765920819012410291244821449232108109713579185815825017421246125111503006723810893941101701098687212961031311159667155200451921311222152624014515722142557183312314104170168175163852192028615811311601172421782511352041381142421520012096291472542861201019513411412313114382254235139135211211831342112315812612317325121518361261151632478724323719115610925319722717717515023910145473679101271452511595920768107249232175818843247338321920822018818118386731504464254357571111632151912541051484025131591125416117922419945876319361112316623710420722121593112160513918237109717521878113122761232302062141482322301961361904318770242992317014320687127628926123951241021852551671199079222104606086242221162091862331628921169227218561571302558220025510729685122193187191244179113193143254233128254712364209159183165222980131501802152511631941753410746694718421219715321519923318336241361911719724190226413491213364801913113144738223774215105758611114287110118161523211610323318116710553374021519720124794491848123924164282401766123212691014822241605411051688511550120642339151001041423027152282714720616019320223019519710219572251518016416953364113038023420021237428192017120643215382329147762783441861141577139160188125102425422721158195197206195197781633714235371822241261962048632102701471412421291667523010824417910531225129972151012211744318615787116192301732526144239752051442481503516510235101102671011022116625124970103164179117141152451429601281939814720312018121310014123782114561548298113189209253253015217311792106242645845323064332421921342179016724111415524958183235452226012004848909721995100222118691754177189254146106771883495190106169592154181022613711621024054827217625440168246241741352496792002507322461219715241521718611710227181935410418717222315616613241611513939715157131754827023924825111451602040956234941032009215719976173235146200239122139239172208132101091882101137013666143233902478933574128419852064015316911723160321901088829175821261583821717277863144179191221171089121131211351210812111223514121412810521456232133166217252222461681511566200061661079259174262615482531615113581613996242441621022689609411012717319311234255152400159138202337213720596129372126324961302054413212491186147296169193273719513386156732109251520812459173169268020712074219511161926208181327061441341734126120110177183537711517719325397111232242802122428157227227129173116178204112178152501621045398198316013059157975521913011377238117133223239348797831215129159476848110312051708423913717988105561392542112002501864211921284878177142456864601128118515825229227412161602301303412012810289451801961852472291531291358178244234227149421271911904113787167948192207161031931081919915524926103168127156254521735610271086291611631724214019323117921324612812920110841761971992011142720631081361717365541221243020912459253963147204192335378677411061301842056157709613125115765203679123023522013313717053920296816016512012823911913322611822789197671448192147981962211998333225160231351241193048206312876182612251146212792031071532411816450331906621775741582400851632400735389513716113225199386798932142627382444115242241366684128102217177168252223219100641312321511110205506331737410230384160816754321102132460179231202462910423680232941211752321431566688241281161983346238191147177673223222317911964628013391154135244109431597992662493616420613525519823322414329247127105182253814412822811501984916350170412491101651192466220990161187211251831287961623217012191131431603516124811321424813666242012532534312122475101191173321237240189208244144248861231422271610489192024214210811722085722241091071752472361246311282482004116771614319727220105181509210321715511418196127856019214118059155651042559321292051618316193589198213162551201342022516840249209112322125545170191853183170410881246167128114402471216851092151372161091882371602293090188140141111462421921022787128167192424215728569917724718478244126149144157101292190315525316255120710121482183179165202162144711611882232251914542129219245162246227161165221682919831773923724615718022371361926131662191425682382131321916519182755112415112222846213168937422559229671821101414015015218162241787753124167122228110205168189218812519658812511282518018224720620744118311772181232121142398132129213190991501236318313716516514213194985212516318031822342486825121698812270242171201751261532052061782342135310795951792301811811079495187250213117171948918710600117718214419124134113233249683462109108231091072162321241286512012024818110714653188254226155761452031081972142212171651731692011871831182451063217813543230231206215772111722512245162184595647762078243432199224969432374718016110120813614871820637188254341004222372192175932452139313299167642192717519023723929224237230245218139961888560282251601482118791911292461901417248991921351249871311963305207223226171111881171001837512520117523920722619420015923825212218423322317424715793941881861881441151634716195240171202756378254191251127262352510216316825111691091801317064162802192481361221522310428223107162322471391920614118512721583241143125229127219911221221642341161272332317715359275098901742362392046121012624572992021931422361472261721912125517125254199110191612382402391592171571481250204231147253110239236115123227551992054220669206213125185602401431839062314612238186226210148988912119316023217211069162938517812721316510915719712724716393102192024018206136187520817111988247045159135110422495818823417279213215182130115198139186141241581412318015522718168137154162361171531813810719219615152687317017620612292281552161702162752342915358208120825011723219680811831541893118076123412942381391842092325129695123716952381704830641342431282224164158209801612334911591521522264118123620755632123942214394154938261821237422141981111741418716856171881219483112209176372211821912081071602009917212742091031622101071882121151201741541491141566896913614232082441631658804899522431862211161653164155216312912914244229261181032351372102125917523494107116135112392440532717117628465115516911501576238810216221826252261294217116990187372098324119614714918250301521711171621842289071238401521756140151914521218780361131812276618921924510217518512287909416022016617520884124891836289165468916537671793767155151581291361351203424560180117121982152422123026504918021108017792111341019321180844814120910346210040177238204491342267186413967235131717455251128714465588010821315416959921021396014222967137200261892082652217100181243827501162557215319510418519514819214115632114147212119281148169796016167881109154162538922765320497025024833123951422521082945991401101620712128161826411178249248119220233830441821107620916875821317692214121218535327165121232772491552392259810740126168127182531318030217661891327192915675642204212184128223843286243452501157671101732501157712317426113711120961612141251881483832264718112913221167105118178332391203824114813821118024018418216710731132511742424493534223182167106531311052071111982272211551031241732012278195216242200862063143128420411219056125226129238824240224709124041749114923510018127462211481281305812858452332181819202298714119263115661191561719901561121057541110319910113119810024525042100574144621092241218119618416021614617037227119086724785195198362131381756262118016510722723617036158151563814401081281153143161411346104118811791932138225193791141662183021415910756921005487227200979616615422915317418022722254732065177213721908912714224132243631606592210222283581154102205692421220499330117315911217518322110824519951892539223154165119173217135188701319132253651671207425110442405222657651387254491551581492529648240024961042512276592243237183218672481912979120644222916534158210111498665166182159559412925451012401649211414819612011723760641332241297919304377194368215096245371752551619510119825128990311164195129284296132491241171331591552391648167144254196022825563451101891515710246158182218125182176182312091396016022618399179717389198131131185172151168124153214151217202242149198118113302247202414424810108411562249391191245174975822525120825226129363178223247133411443212024710220740900129197480362281893485252183651996724117172372522084912869174131161216215667166208227101685238128130255216577215917383182146711256159531041631232450192024001191411230176103311811952461602411831721892086224224125123191152936311242024913167112978171341021212037612775511273719812012815283430561201469241876221382231658221207761210223591308215981212392402059422520040250709815110220078189200189382191589238134701672089427411560203631721321516719683102255412516795218292501941002152315891246171133237221405237216236183133491922212125517364213312817310254100170655911734982412209023937242242371615224279979240098192128217118130117322429106254918425216210574162160173682204228131183422004410417198208118229224294265592126698180194247266831192472231981811035152365910617923916823722235224145191104152142791641617118414583160142185235170232239912223621185852086320896471733412311353201741363493112301282533330160129391801133019222191911525124610925222924933162111101138921024318216625068537101116929931956848831897218461123221442034717419521160109103212214101190224192202102121254121251111091042548192198116118425324021220921123670224681121734136242471136192832141071562301174242170941102224215514916123016913212431325814072481325314601921422291101913828128142135209353439247209171114913173102102551091261682282181041931411772032157191351542541091602382551221325524314424015115716525511222525541972501114825213684533192132391112532613721894191862381632131142391779124176237922825147200197410410212611718418923625524692541651792281671092491672512021901521682532411522241007122219021423612510918513558114622372066121014612617622817145255122726380872062281095723715122852214146148790192144145151147115148151251892042515113019520313925518622012798177972198013711975150109831501634019911917611422368253143255245132211864233143190189431970164232361263019321423921410315810620621695117214175234107251218113824512812912023716613921816268157214100451799010215448250830728610773821097921110618916422215616813012410713861201605314994160669732133801842232217612253218277811516197131249166144352088221620316755145242128212630304017916215376742005701092211511111962464160048104102227133234182283350132137262452017014923124524212616390121222160191165020911917222011518819410717021812318626178219131701131701022621911884581333412772041662511714817416668720662420455129122342055310419117222195961148322851016384100230241751802842531332321591071121541616644521857681085633140858978112371933198554961522311991149871311991801921583216115813013771203441936838511899229216235186208232499410163889821791967415812984117192649913826242612491661632291185590253931341822222351016524125313523740205172042170139411261042025923719318321922312342201674203412221638723919361018952301391441521089220853154104811715615121622866966223096713321814910750821021125219271224193120165314496186198109184212190392071884321517219120826844835244966022417720822436010420120817118616892126941612421308299186461202241101195610024135267919121130152120961122191161414343158198372241632228154138116120271200391363018210023211692531643054251224116248171981242369975131181101234652276624479845611239128361262241053015217011423664941631121902141091901981091662101373821973214012441061240113178220126182202121182218560488496222145169111425160742585165229146263023018211617320676933265207101125240184456916357731811581501258023320249152173115185219217622713313418221115382811203215470102456822023310195117642256614795103158691151346511518694115154141723894185138173693125651711910316420411090062362550206112311308324411811617222620779033373141751271980798111013323105205178234243242168217121197144175240213155107198120192168538514730787411212683229215235145231208461883220711924522924225215209159107211315195111971449861081021702362401952846521571731823924168178163121129203172102171292489041951335291209169111816043832312124064911548687150942478531446487182193981892191951741442292221762291901362292542007118922512023426835313313742224616010268185227492475867241122081542419786160214423417220815712314723212925139161128123028323024222624524422425514617222411661611856423126291828211824360232201687031231582400207726224210204190137716421095861942347560640148190206151152228881051511001891462411714027245141552033962343757222129407924024970249468792523177103321962492403319413118916765111025914226683116625135252997220875103143713719182232752377324951198811294538641981216458227162022412412910722313174225122177108246156114622481932118612922217825135162249170823921664151710811615151247342312970112204701432401191091256211610132184231312032232113496511128410411921219314914572882401921614714912418316784238224209718113519881656183253016017928848323412872221802441281611817714067087168137541852532139712820415815411023216423712914721477821630585411721918187599818370200781011681062234062581361921925966217127139902085419212865244629073224624311191961546613112410420818325731212022401391152241402371935121477815523762170183245160861969472115165128109103212401282232219712810924816822188836325003012627190108220254211108189514115723920178140249220116219652531366115465219852531621492091092552322052548115531621602541496618241135108135415111831241116820336012414470432501111978722424119247194342301151712217117211913111429123925022010525573247195103236183311781411401818220972301832132021271871732558643207112109193918518114458801922526147127225251341209621315919331718114510913514292261271212547120224233371952341331172610623423218961282477718614520412523444403720920499142113742552461391279419020713410611621051268822779127215742511110918811313442271311930206158188243609612824112810016216085688013118111119124115814519013713417021420347188140211972471451677911040431212461832207183167112331541761393224882431045617623231141213114702343195248207191312384489190215191188601785690622201584617424942512382122555722719139681996523921149119228222957719426210252851691136312876178115253132464205481031332442232910546248101712174718720212622293250247195130255518824124314218819123347253199158226127168203563772618915712217050249681944716212618021121219924021133231698960196104725322720016514324681142231251995718525560165181602521392291903122123524823686235158107162253191171351982347922323625177912092072446216451681032084960253722094311694521641200212521262351202052331422362321424425514276231131381059113812611915024172190237108185752391012271661202132147515416236132416812822512912210717826217371171441288481127329101606167155772188177216916181011762122241217122812718719711118515194242452121861811652359687253692400772372131246146248756151489114315088322119596608868139127102341921271531151604575179243138174407713121422677208104725042248181218167941148631202237115145432501411941201852517217775127158109127190205481393930411823041182261622152551469766208611245421238229619530104872078525320644136787724001044604895231212959652901026289109618810610180014087912058237137717017324983420632159172250672321311192322721214112454620013112401715317750171161981791211612111081733510621519820317313513945102106401402436208126851915383187411348160921277318157933371251331022081961391419492616721167391371792449121081837514816921915416587203214303017317619141141282141591691171551691171331502121608459659965232671156710324722815565115227352342202338134222154170113106414616213314210816311818244492282481641922511410916020010616420430548010022115410520815313621131561712432151921745324914187585516723513047420720187928010620121215917424318422327930224411087328522232322211571072181541697743362321431222082924616039252113953620611125192185136179244643223251324481282020813021123920254221032321421892411292453624413323820820503915845720112012823922996030184942391337175512031602342351412372512221513230115311035692146724922195515032132158171134157895257380128241288311014642952051835114770193245100233247944923218798208149169221122731734965926186246130669913819810014120319562114134482312913270332129187932252471223431246109157221225310326101821210722621317122784170226148170226204221634199130139138801985683200226572441505771123435375429151132481961632451371701313717016425415922716294168158213171964116012621585163193662031933475705230253121382282449667245248111192516424524113856524064205249778595175720451421667222614534115962491041772491201692297618122172177249112145217122271501821362481163781244363015534203238432501281206751921281821210988127190233116181227173862232292548114113222954162491846323415056160175208162546551671581964519021973115227246228153226225415124211398195165542895924701198272491201281858192319278254472015524871842011961837612720362661545110977101555022016433191484620212159178665010522717225273291783986522925218962140127111057542242192560726262991682011432261413024602278120914814362100188131731271428920844671462481138282161130128321662169814896151197461541382029335104183162207862001131681181042473960192124215642221512410431482447225133441971771761672523172772284115012813323235132198292006917625575219216511324193123201881831287022218024412222122014733651966183803022411153254158189223717818026491761313021012421581627116806519359101511331891111662320716250224129141238973212813019573217513012812669292241825224219277215142191632361911314997106129592453424716153941382251291674241951476113742102129197789236141571826112020212420717211152791318323821514219165251868343527035100135122240118141224299097187116352472410821710330243153205190191477921134610810597187255142710023196142140285246719117663244133221161471722461575221724918525415031549712364523416118796200235702371951471371672311971118851131331532251741578849941361441921002351189240221218193595313120922529202193219961061615952341181057023821442281322398215217161261809325176225191775796187104213523911142241359967116113220126207113231216147118596311922212319411825197117151325125510920614525192342471231096123625181223214591141311383383744764441739819850471733812312924307638311914315252228396322512712125439121128772199586921623617512846733513724924614018134732263124814108311902451181101023810713512602402322259910612422911917318019120813415057132444721586814954421611111801452112122425416318410122412659244193187312351042341912492612015532331421721881192521586622617924221591643914210910157242188504712712522143422720142237139189156240213727122924216324122921922116322169149121191251234223142282192393023616510217024520239111721422298111442154814392160356957247766519311112685462106922725515814171202248167214226127109432496911522279902421902361712482511071092555793255171198244147165113714725557252159148931884138112248192219228117211205114311785171352082384848052611680106301212417427480971391312201642401962272541594415126177220119228118199209591251272519624421522777255254105184123422411211618412501951573235216472282034021315318615920654282946141304311153402433020218125201179152421779520184951712412321871062201561603819016419715730324137164234341983729722620141118192641861189118686203375310414721313612616814416512220718716212821945254203611452483925214240160632151726294517861056760120128981392195116560192947378852163229431832641181232186170871591642001317961625218115052117124201961091742489017723013017422418820919130144211125137214795622645215150110509223221615110721114799209159111217159103491441076214410721415910721015510913246129826243105125981421189217134401296517138211532162286913822676771682499117322211518114219537102179662511977026204233191216236589097124514312273810059223224528610157822460020912715724971367234136780184192120014049881007421114017815313322235932323493394323710568831531177118212699170122109162827713021248208157103529210653812378173123012811819122130417360849822115710722172121561747726250178622058625175608122946958957351162271741318954157401929618421222135642231438521618395491282235204541342046612586193134212417621610954366465310518481189199112153237148192101186198109174142212127119174897915824972573618721512461331938217925510018175831541412016023615612412115698115166222108131555224113122216821915716118321867221541241231117310614721220879819091226192229161173151231942391171344418124877215224218581307932139177239558932352181539912506513418747218502459082181322442391191322201776646243151232512238104801118241154482261295822612022121441279617022016032140832016710520784572078457245945322167233180922101087321410420720822516119552188627517543831833721441621184373020020823320121023518910864191041022341801651705539425319743549284172621839114118164220254126793613317175228129238136591579711918619430244706323422354892272171441709112694169226188114372361569810115666101284518819221594128321981571571931411742474225140151219672145593210168141724721088160582521061641217619481219231605170124819105111174233112495619102201382381802322054922311120224621152443601682482349984961312321081674223619874722383612841792723817867648092199199145341792011020166197351971501841162535718038491441694375183376918961751191722202301021392072429624424224878268253162491961281306122834104187108801258117724225210297162748714298114311675581331612841442462302111284932193131453117311413362242413641302091521331029524615201211241196921271151312361317318162471646021178181201962072813011417423018533207632421222911912620691321621442121482122311231013721019816989190247731121011195105116200101992231111017866230526410110413813957102185235132377757250148113421602331341181594182410925321232234144102200158791566733196332352017524018023271272120128235254231125518892230311762313342016325214583485022837112164812421818413210572391771385711018314322370171241112531229882392624615016524717116623816819518419431202158235126217116641984413202263025217921751130198250187133341431815223725421178135127164221843187802491921516245224241486713121091109230671281222953193310413815196226647211034541661364387381242498112717338225121721925319224126561961920902231145524181524033152241182131702191419214018331522171132164423051235216992467795730626652292432225427309619843161220837218127202613528561342176217127218114239113801291932141317012010499625521911719698152491841122051211251268516548240842520153301815210963108186237160241214313496131109251117183237215219126192961996511025021915232111221167183101159110244621892322531920616195248237882376213421423698792162396123818423115220315822746187142152423814425188772382372054286158142161123124183127234179229128150153179220752396514617390253250154531757537251652073442513478194241792301299525424215125247207255228120161135143302211271441461562521931875689185117107160271012723184728715851173069107217891041694018154212835910414424319231112141921902392377360177521542492528723121792162228281201132457522027322451517222541168224245872221242392371521417316623249922502439173231200761983216869427314518080150162242911751891691631742379823120172415014511210516417117916716518269144119246632541108714813915113113418520671031208511322378519815116211681532361931467312715871101571412011786941475924238216152255951197175111244231244111262158124247612125518336254112234191693825411520020724615569219189233165711071471099275441293161221223151582556611211101892189577113201248200571321151942091762471751391271261752351031512325424611823520991237954479255251242124252175190112249104535350192332322402717122822289353322171141114101952391852232452075569711021071187885134798724820784120204148592058718620687185141212181161642331374096024160375322853128410020123412812914252109721687882111803960128202502511422001271854315696021423141116178220110166230188212002146860160210150161571441114302444481292241521731829516210218189163101150298711610060327410336112979924524924510195125922502132302181391221179166851031314712625025414335228126177911743381119184200113180196105184200126168200102168208106168192114184192130661352172122421762256611901581401737719811374314516516921122619920174221572501791811421831976280237351652302152633199157129111513142112008490204823717518118412973810736604891239184212226627323519914513072349319812912046303019219916510215156206104185217419238321318220022010524315523186122215311910267163107214958216973802038415316710724623153207214185222106243127208191181592141514381732073891331082644182304518313110226421811291341342061341682645183167972471561884801440233661632151001811914226401781321821981292161231891972478691321002240981782182513317318413757198104192157180105173432181932251195966031472131742151541247120329135741087120219235217916168224134401127422474601616788122118115217121133230121892497031265121127185216236559023352822335692225208919620915710313815041102160159102192151286712852164251116054232307419261312017417814110419016338111481404093167628121421211692017244845112230254129233106103960823051322431512810144739204213184142151216246102155244925323820349294217619219569210421314816414491330104792152372071656524312557701092521816220245182847790733577114802021492410302421828413113102488691481721383931452123840152091223233121011318812849130152102481681496024012096251841731031251387820121524210195438415883215841561511994513185042226149120724948134672068014521168167121379515172239254191133716424119682255082128196641205235638810449841084984721512124721325220810620611198131321140436105197871592121994316120612041771643001471317134117710514919211410726323611215210075134227351971951302246334114187229241523015212083217210136121713411245110143122662177617220982183642482271902401991481431342212351019724313719917849691634214217462104215619437245222211512823264177857919025306602160198253651113672641181572392261111121915822912914974122133177961159451487223721186156148189204361012671892512312392391851601514112394135167146189210182221541648925361761142011836323315101120551201278626142130241111551435710617711246413914815323716419713710545215071202215476767219212012810235692221162511732129118104236705520010712726253791291977918062249715615273636219331980178154200115255014024210824420919920633324238370216424119110322918721737220362501762059472672002384703919224691591732392162481901102302411821492072512462549612877302251543318754186135113306470553415023512315616913825554240192135142112214525132493323214511430144247138228942237176189761375030144200208147214252229521271892051166382158651852131581917217868242254852430554622625151761192521801400173831982223179222139203661391451151441832181231482143496134661996710396431681951216411423822311079468851661711991621741018718411521383011817718421482514222655263096227133867219921112416320729618925116824515816386177199442462917921612715612251101777197180210894465160229174992259143882375810217923231142045922712022414899236919922171932472824313657982718875238173773618694254224245141154154102206381462111124164200701241881781184514820720317172146659520911230858211394140211142127601524087236107215174253237111127203255242200120224478610412016517321619232552392231262452347520812019635018943811851819743511565157017425447231872492018121420274255192115953917923912314792493624882150571252261219123235861910185207120024321855960671632528717393399161218812422912522831101601925512633100692523517752171702387175832221641162422119925524814719163180123223632522481111432860104164163165180241163205311892532349012212280312723422749130214199351971719121236691381141001201582192710722824485541561361412027725221380115230157177162219195217173519144142591132251032093935121944422355248128230272211881429410867178671631631111042523431198491282711663228591543765191154122412818254100431893715124324522223510925511316324523556812712717922920391109639516253191188179159261081606223532001736913517716117124178222419322310820994238252247229254159632362481081775412217442120190202119177218107190202117186204113162216126481991886185135516191572157319631667220582101803215218617924418672791317104188161222616363215228977186914814219772922521312192301072202619851377321012161068019632332241201120338142145345116814418590167145821111316638135154716858501944133154111552021272557323323954112271315547898515751108771831551741023620118223720318125441762372015431431652017020163144103629210420119537199891560551822321811920152393216112172451507542451691701252497021526221192314424219537102111378115117142253197198641301699059158146127160218266048872395686101578323111217319712518821811816419410616120110917422212117221012217419310117720110917220210218222212116921310790232564117619120922697802705423013220619519715016211677971465017246153210150116451362421551734414618186167631060112752808963909722311819716049851471645119238211181174802491614816519195152171325883210332111660224971701981017412862809624172251337224168241427117424811121020219312964133254661391742819180122495125548123741815220566713216155437145227681492036613115163219141129219761735962206214121222187792151841317423660321530066023613919021929499323121714510721887108181362461912112128161128129209291281156212163190722441914412821110519735148107669413020141218421164221185382151541251101761011015483181160116332442323460160242135139173249220163163165182208253721671701561281012811440154216076254556208151992101521682141252171121010381106559410655901082111541704518616457148155016465501761931241792145220519868211131707039918915601922267136715211564183331511801865018118717911624117262618188391992447812382332121263412919939131244177241669322518421432501834614323615416924317418716477601128612925232311931111388511313821231541511251891771818660732111922590163247117223613772231561622012153919813714724112022616734710099135362411962321221020643134131133108176801615715817419321791716424910296117722552181843960192199111616811211035122414322323676149351262921185118802551956910221114918224849206842199517511915799462124196143116190198233901572717427771901961402431285693171241146234104169245131206961141180176532404722432225129622406420712602252055146111941471601402358025218714375127191651521681307121523496137531920140138143351011821472151272266425213193211983119901551082361852457184128150138236632022483379105119169113101471970210250821631438212920624617814815414614924020228121208322825962269421425474147182442492214880532061543200129719155108251220104235103198911132241712422813922179656814612113544891041185824615623309121621541249110131118135130135142231130158272271292241515713163114142492001371667125151389513878471198343141151179226211816210212942392162081864239912511259831164193223701442401206321015210018911164191314510319812022499231322541781596682832142111721631873313325016141531301191611672128121271931557232120232753243115818713017700255244736865842551792174382631066368391511612002248813712149748214820396648613520392137246253223193325223762139349684024961391392091789579156010880162231811827883624111319834421624718715950191122252186201192192225224235016318979462308325411983180504996128173711182201022078121961199104615096204161832141351051230149102123136150601155676171775922423598792172272724169135190112602441333120962391131991522079311812423018923515211120414513122182114171121842282031141712239025119839114235321591441279924542723813833230170137155924911512012825179412424119711523120624119160255325412921271202242281772271881111242143216873169234229892178922420168681868723824816725115131639617372120641866240723612322115817263192252399195992546218024219226185181224129181525213615030147221321181432487317366158237146691563107127121524013917815069301912432189119858134902022341751731232491495324894201134931201169493352472382031079567135164207195048811314274820822073619920110912025117393173369153137215702181671864217947252253876322324113922730145142391521721518312289502271615884621402316719832393393691931991242016118652532431064823831642251551713625124591822451752022531201912131202271752392461251256725212711118225432442531891741274625058202941417022113312758724314163891563524022422014318815118712725316824316711968717521510919186274991225518722562912255014611122111919718043195160458571156162213150170221150162253140127641561622221587010718119101232208208972276204253310810912113623625124824718747122153230154220702351024568462131231171022342114810454181863315834562515208124381802188113769111182254961612011201852456416173751541544865307264193196100421411511482351471041618365156106931301614020516633209761481061171736211665245685225491441542176156168112304017630421322121792916120123041140246173195951062422416631213820864157891221622011781138908317850172191192248166200235861712471201332456816521382112281812276413791132182314251155172177891041146152401870818221590220381923229150791201603090156329718220624910215515216967023213610212712411713312966211182761572181201971701115517147202131719689581951652145231634519518025381111415922420919552218231170331201605793187175192156116127131231641458510916274249185771951804012915164601806214328128238199711681063211920162138134101238916217154224952326531982191323413530157172701832964212416014141961991939823519398219249122239197702231771016727162062211406213071101391311451117621316918416088118781581203283239901396314849449120160452196812421310417420924312217122318911030167118191139347144185211171401101281275817914119689122245151212751909095113126512503571361101951761834681165337310970224236244217813022229421822181284166171157162165240272401935420019214415317411629212156147239200212159173118612140227144741992221081472384370216203864016396146225341391498907781251525685147989801161865141126013322115358253217635516635249166180238941469023751972462031345590252151135118224331271962261671933152162263119581952382456861302204945244106722134561171887814798418715787174561678011765960014422717519811325051531741921521541934020541196720397824684252128196248124163224129198365362948531231147619275184741951978620822912811821521286971166141261552283413621920448645010016813477151365671113198441381922287991781941021622201061642161562302554517702744101574116418420214721281946916111120063171222108672166414224164182171686414816620912091192021051856311412116186631461209632226171216200144225606419206246712259311751161041841648111765120748168015512412815858198322118516622416015667165182511173021591317513922384821412220823692551266020735014713725414924676291109216063999216314718410301923762215253127216216333623237154254143176167190139297822921213016429178157188651983219637241287120101731752312180632421606524497124228313817211821116833174197105282551904712163151074238822441362541963324819521671340023931515667248981982001912398251163121192498711252282420471716122835161301251619066201103271366922213961822271681024814126226227139222177241125207206154802511921931594739172291827106181622231062071132211362167730180107131911687824894107542323112313183288413160378148124183321111791517015120555202180621512512201841323713342209169255591091331276413841882287917810326255111531481340143324614822194961921099311291054251782182361032032972205613478178117211282461591136224013320514216358126592122211631806018323212010921324122016223525109238312272812619251242801922142076618212616610722419613466240247167362401527908223169541611447618211367517412185114227153631088015156132542171241631032071581492522332491931821111822924723922014113813622412591755815254234177116131441021349323257101248222151214173254250191126351051339905421787602534522319524622318224912057471756412617934250182102245218531712151733839128100100232211292141596982252482461292231661032361912171002452161241632521816149218240631244345891991505491203150107224198224088105523717851503024524221818111118824216216516922523912725123969121151255243631261211202551188771791192221941152481001955120216388643510413517313318810143441589613612613417918111315413324423120755223510224816204192188740177215892432191591332452152531181822431941572252121871954119511725520947248127169255121196762291171801377056841887013911380184522365354173210230151228462551072249823715391131594621370451013022171125102439210320215616675237712434412251135982117588296218148732131057241641042101232112019831515221882180641123710558157892502372518616220205166100245186422925068219718814640771071501323915817111795168243188215221786017623712612310495158121125213132161984321537168523816918216610724623026132215414231556713072230253188162219121891673769691121266793252230198361971502085811701861968252908218126147531558311726146213155835271752910252222118515822722946831491742271011426752145185462152356039202236135104413411459713124920881218224602081591072201516720611441218032224164628117982917012516915321427158170182187452461531821613211554554186206915716022724111319019310118821810217819814183112018881081181591621613151916624720755184142852182042145781971812371802082417043521892351161732272058623923520530195101221895709357610915111715582213524110130120249182431222111817824718611216110422146402302192376520820811131585118152202127170198516219117520821301693920720162127190222374186467318125013019464177212060314113214821921555420154271863141741347410919218201739165752212149881831022341132015131248158211861317166420610412717821892231178241751146831702022371994329391701562302718824828711832181303851741414121814911313822923122843227209017924424114120380198125811683819010820815416513516611234551971261441317617663811012946188213230634111226401821921852153640213896160163182203250192137823260224410390291671281675480612821613320815917011413011623017912221108241155169113233203511959460111721611341994323619398314914220825314420625357166751394179852061472291472251174263113199139109231808210659941085691123322315316911184237206162251142006314465814915789186618740194414320210015324584133205112129417419623321812020627471057684586123614190301413330160891492008111219155234134561041821931231722021815922374152164197971601407013201175240151084063187177242188124195372451933411217267111174419171763723251128118511240171185200822462192251346048641983221217198195197543537642203145822352098217191548200182231170123112990411572226137233163231742121178914315218521210618414486103142482332012141994717725117030881571959120020862931051359516218196531612481252142178145492155216516877131736361921681602559156023613169603013612620823113191392526511119692131103123182977716274217185141165103552143840211172163244529022621483441612432301251602501019924142231225502511581241391749217914210819254111200193088169176972071362541115193948812061414872115622813643114148112161111185251242283831146254188201481283851462461296788213861663721096791731571722318514325203721518254220342565196191221252201148681994511915917621669112167106672538312064244971892003582252511179717251131621415310867135143131423624612792417621915185124637198642191157155156195629711124463982111282102016214129311297921911377254120147182120224352511922471092532151871321054239115980792461251292121082318114812422618250174141223918662111912511241961022225019621566524312910613314612701863141461411929160142102200469211820631845023465591933422542191121851089879582822401722416317813071902092541512251233120251220012012811817360358994102791572301591272022071812071419023015321149159148203120964782102248241232021581651162152461591825711215421021134271091912551802271905118249199542162502031891734424722612218511715920017325372110205135114171631441238323312512121113202221382342144226214239188171202116209431072289495452472029017823892084820241855164198243208108927126135771813718710621311471441701232311571194695190442492112436711020716923415575551886110466302441431912312302316679410625210958311206739130771262273913318587362056123922248222183231154125222175242243159255982379022018121312672963514924119211570103412032531212793311021606124012812561253314319352284193701509511911951247725219417494181234173559511911418022118637124215174232459166109108762231241182252169131899318715466673121649812058332118115535193230215229761482148916818996172176202782511387163151255175249120298522414981237357185253335877525560221113241250642026611122680211111179206305818521919419925012514924710522551960115156145173475189251561925217394110187114252158232167183235154584420587248204871852071505920614821879229015945323378211371872209238762092253822712918220901301281534183710718213010210117908333169193326164020846181231491612093321511013725211154251221104246127216251776018179220196184100195427252776717817040931793921511216020020154123184216140243642151012911326132241057684108788670701481621988415422961605385331278115861811642021201921131662181071642161051762081261722121051802161261841921221702201131611981091882121503814797177431212302531851920192382823299139196724353175825315547169533841331920139131742272121451531421839041144128381410611615923581312216651413914111016247128129153581672255040211072002531692612324215521862055518616242122154220198421731991711081506815821590601661072915068942001220155182942141701911642101561748912773181546517735219961822062459711121624224015022922517314325116323811642231624995107162872541082201427412452615123326871041228119402361977047240016410021351332221241156252850154801611931914971202237184151962026154197371431782112720919476173235289116128471206020622255162183242108149981415562281189132154234454823177121381702924121160201242037711322412016583931467022957133138115242521231021502221813811115451126104235205861271041871501161095212018761240787132202252426449119811211622391191352241721872431402783213646817623413915519332262031081621611221431777413517410822720211515510746401421502181466352301521220903263857772112173193107261471761281291980130933537542861662491201614213129601792714162115215115342167165582071776617120611618920118187691292351001372051041291217915030691941002321161012321181032341182089810058156712813917623817161633718032215641581131233874116681691542328520569165222601391551735214813315037102115136123614319021317508923522214599861551728511886161228171205213113421819268552191144138488118938941652261886014406001711378723820254662075715224145230721928325282106227233391313178205691971031201606213722082707793871416468184206413020950235492302215542183272045110978861731011114813113242117210241669631931857716026414214079624837181592213235186162599210054144111529268512832201271851312665931512456521920801174792152125322252482111812302349215171652541291937222542401327302441346323614312420831121175552521261112481462161271681941744167187244220198226223175721722612919399217203381942262411961202461222422051347523710213315899217817325250130139184140138252951442311201282011227219863210184941512820312181561672201281481532321354015122945361217398459217138250148103415261552221664432279520212334512177167158748913056972351031442513810821420921334199204118806813162472482222461532331181162271842452228314712722812023219952124402301841052129753239237271534312813415177375222181151203131936681248129195115241322323034224246204949415917311724012967224122215112245160932321642531294723715252200382465225016917180279525315014924727223023917619771602515518413334163261762921520525422423224115659686317341102239394110335851122091287220631602071212241601327184661012188413045021203229412514718222396432282369515124124725013215012311494127216164231197175198138542552012323412262992079464105201211254191220024218865912400511002481292467207721573712142192482011251623524718622776241268374144529221767176971231132131062541702442131811141751751632441011044538183100531856522720119622911921114450308811174039167162162828585372492112436711020716923424921789552387116918150243063552419501261827912012818974167205193214182173165101249331071425518721019024723718510287196938025023220924220615222110721518918412253918414191141646024314119894234127199272492052724715144113096606412138244732351150224180192109173430104192184316120618824321415542741017042242239190131103149542382091922462149687159148812126244140210736616024313512319517111420915861912502011502431912201472481712212412551783525355177217951271502459513525423718022314119513920511448119189151255110159189322533915710119128109252106662087123245311197169109124141240273025315121655342293612814814702421201426388352471971181971451469918327143223170223519123059832304971206113516998187209921391581212514320463160211153742461881271605389179377316337896719623010510513411822511396518792841816510547212123802402321922141996120920318991151135118622341373043119168135118185160192231781057286191651052452282415201521421153651182442312624610221121215919212823075422915390200195589618022815314362614177743318104731319021510414015159206213120247229901831032615228911523661838914215120852243351338613124923016319752197100951827311118249131221021581291581711341649961224012840692910913851180160254111138188230132780131251291951412279228394310917553184205214581621121742062491221397729617422212117422210118428609618120881611087161143661761937218521212255981792511201492371641922387017155146510217720129135244228271821001068226551114714827461692622276172431431109130136122216271131755124413420014310725041129100184638424512014922712016535143919021917126632307216122522167616801532061690412063362541640189245157168118266768659651052133717113717924439170156174552512402416656222051627716211911642473691923024823441152816316202121096616983775414520914121412814511413521842132421791441821963160139165229522612919345232179246014416113147186211171161874522497794015277039203222289511124623420253170778498781813313824327571512842402156223238281471702431963147149142144203237892501201801962518625318416776250671195144715960212488971862181211821981171901981311919141732918858821005392965793225120199680233608323812017321412518219411316419216224713865711548611915030172131173652141337638776613813513501862291462188012924984165292441139914682243378569186120224193316211622116926551141720818108180102214221238240912910723521163106921532437421324110677169122109891982264422721476351131508125110199811341584881181507830488019814416037851714720718022717817814424301412098198117191132746602053228145163145692132312292411775921924486419014811421924110219233106135137102191697425120110592247777220102884511911928416020424914118123541120610916818740155416616912089121512012815022720049192412479221327455431444865249120251267719814721182195133230204636419135321126155298918617319624619811921834014024720302241451968212343023213912020823931217612419612414787123142113229691331462231751995122382216641749158156174289960312074123242204613817216741746737118205105186648011315033251151228155252392232255209381452541164475185162311331025914388174924176154129892381501721051281481231212015819120015185131113302241292001727720220015218019315145302482127125414118851918224249247920012313325341156961551321920016419207817621831494420922624612378591981565011631642261892371916625416122122318124312720320623929199641033112342511922332172331342544091811531601941588627128173119921114139181221119688130202536522384253119190105233245170137235918694239218250108242160219621161221623230134139151011111812474174149902241422472361242231782421482471381962132255192254211184325822512381221114113622922713318410301941482151291457214923222421384125516693432292369516761161210513521715362119101782521381142018912747246762272208686144182167520635035249660176151692722788242914416364122942041771912320249246180243222211118916318312599625201712391817310225160110171601082322451611382452181832132161401399213190180902382051171141111903224721890571541481021322712331558014242072002022394435131712171341881611611617236146252233249331832318424596255128189173291861801102120421063491646020720615023521816712096207206612152311748310715164205174244181242392191152052021202243315562181187183223200196140122624224991121842342541183024819110226127187241701455018301742455822451224815883015731211266224144176101613199952289728108195711013119273224649116224141243772506980231171951469151715301921952341642471101262527919619719144188120176369711193230254209218314513825524115424825522010425521514517015921416729110762551881672241993229632717225223125420212725172542151492552502049423559649119322088717947229271864622494223849192301495522925424516811011924624617719420015324214424166231233181671337415118550135201341551931713893822310249724127212032852343132231291024324328118957731892291819305010818816410241024971069331246134632361411882191712617551242113239182135619110210661234471058466148361701922614653908211718717515412228153132315265112208912011711222371539013910224129628236122401294623318617221515316519914512834236521692342054110677151212707410823113322235541091531343537118227101142535722227372081581441076614478541112201151334808261346161991923208124205201106104118322232289016321924538247233106251241102351691065923314064118527910418129231129197381831051612279213111243021664244951073818522395100509123912542441183156172177715140852178024113171215140144609224121211174831092018017577164217132186243140175183120147126261421341201862192511618919713518723222633139331901611762391807678567211179816118212413016022550918110238312324717846664196959920314465172315144153170113118121498867244247221525516710521337169669316112552751305921510016422014531516812618319617545522331619026123231209781732351041336119010417621617023717865111190572506475288221192127545254195165246130139421019511146631871855078651481697524115253811432503420914786543542235109192146884161121872213123112017543241342049218991871749725337149234139242224162941682531045911342541601471255222082208019211518111014425120820212019824011624522915319200936411523320814058195371461616848192192661571991302081251701941616193183254162178405961054886981793211251222017224719081231531561032221192131681552229211292025129204532332019875143101502361003319712879604211181461152199214845324064712277812181511072101501698715116090159164209879612167286816117419559150711182221061523320251175186168921471642091589962822256089237628622550922348271751162517111223420518310474213170138834025112267412362472351074642182164104130109615671842416013512923112106246410301929414421096161213721692053215814798203137741872251816424617918120629872444144254235421522482952169275601768911212612523713314153231552123920031973920217319236713316667510812162632283140522996111471411519013073815212712846130148790241151336727191202161982037118997146145661318144146152230231461786519619519020013525381482063143193141237129253378619410018182226162771206212919318538771059010910841616066141411542211851021311971821921281668415715812411482425516722889301207823825555624513714831435378218237206229184761901151972075186123104236144172132871478119418717624725052587258461361242221821786847825012482451411689921014566244189462145250158166121621811351051381611631665914214623810363048220114886324216011019612618981242216516345159154110711271124420550196382958109191247140211158512465979267028842442172501775145901220125415017323959141239596126228200121321201651276418124442132502239622039240204716222114414924712311811022291128461281142372321409724497124209107166110175155187191105229249137754815210181281112238161331841762082533158513075639112165136111301711832174311413191168862321102303132127214011616476134174200252492461401622531071801671202241851891278519846625012732126128243128221836064245573316022012623973231189167922471581182211252029920725207931676111815624421811321012321992071682079313098205286654171901721232339924619824318153114175175149123245518587941441231212991100642023807122315151728917913459102362362362502502503612712212620014117123421194186185177201647915931302302286019220714110577201199212391857320017817914525124920712620691120116239145164205255813018414615724321459060185532359414824008212277255195241018710424416048195693502241232187122601337373224893088183102213203471741231291666414611624115394226351079211414248174232288620119658182167118113824495522302536023110810825424915719420433851032221925420714117425518321224123975157191892342482072351091911892111152547820713352412151252125525018719111177802247720118918986238205213244147128173320317678175101206502515326910121120511423127102215156182181155796172208236048852364891230568510859156992141471612231531707512322941196189422828882253110414924974614553371695539107523816965145641726417852381717985591792111513111113767238117682202391381222162912517953168253170172441712241629845164129032304830128208445231421482426413410293188124831781141111426521521157174203581637157891865213834814438225129134100161331012096184216102177206103168208182352031041801961101802161742311382011121612451081811136224641582499619051726319920108030128148129129462083210031120160137867021130431497695881105315517017814717324488322706624451791561691171561731151342501591711191342267110266961833624268334801680209638297531132104112254617924421811603222761511931824313710621919066196525216617011275241155331331032359231244132461431091351201862232112417321712318821016114313725413742712321172002501551732548025514421516238124841522850228120711828111518654231110438168103402451855815114172121236613322764624314556751516940677115216821015416513515090901241932723787126511104144672009215759772451521031013819222213370473265199851952147610612261402301271001791545030240274217719928446253253166178175558515815111173215706331246132632321467832323014266201771776317623170171239146136210155981911072059440153174117238202531067421196131133864222754181932091992472221051519412918426774152102102942326282661312051601255920923134431424960112220483139322720612677842315783229212125197166009423719098529410655832255694108519323848146111217156168214201751307126244882961427200542381871062161581742211461726684912239076852169311124015217418010777195115174220153165671131805719817320661601302111117621330175118185215292411049620324220824627109193173151135917033711875226144165214224137421832546621916198123251503319278539202212311298215542206109170142356520723191924133562718016623564229243159149441491930140251741131048921681741082272226021117410819519012419321938014519710014925392173751111581774865811619912006412681158241192134218184141531132712922312518513412482812400311827363232191170558210854881283114823388137511814115190138225212833231188203371178117070711502381562081332209252941361525343022411335482647196124222063112191552961121835911674232382022104316314422613130139741927260114141169154486017424882229461812741115015136193117212489324824012774190531582481435217421897286721332111869618246420251281224842194922531151532061351220110411984320314213324110210112111024870233403210393210214410236312530176121251001576811111344120361196151210250317810493100204119305122225015365212338012978561681319891401052535073772192165114251190421881982819994121175104168246119160218109253222182247167105133722532432331346610021113615163233311071236104134839112718016323218921612251451248244715112015246190102230254166133231251246205218822253460322392113775111315931362718020135156207681642918271329620766111126554123701242282016826176291191292398477373110181254725324871256322817521989254551162451432251178832462517851147101158152324623857105311152201262314923122139221247158241140253210103223143124991912442212436920019031135238621916249169157992163931106131786177200129531144717391245242218854750968198148143761251931581451032239722748128205203203107124124922421672311352201841709433172437420314822821214173134361251347158480559419425334719124074114665011112910224226109254176603221930621221162352061571592552262317225120825523516425411501781943110219516522523144217179232402599242401481270176136163104180211106122802481843210515568542523547145165176232298619119419413322310022148831245722595142339156615212100282384263213475649222248163201166159785425310817022915913410725511870244472151871901541082521092141116222323817025391392213522613521471811224649372014017713819814491830205771962817168252271881662444324723075174157251186712114211101141919715016324916619557198189153122144254931051864813011041214110191164213113731877750185167760202864112618632081501663574209218642022126622995842219641553810579116023811970222237136120208291896017622765792441251029921461819234229103229107226851321372677224129108139651681656627721181041392384312222652117240052105016284858113810611236146261001352043222613310823019621484141225661711211292518019011724710119192192801298520721163225662035712920384133352750686004823220316118120116023118617520813623117420312210410481921025821015417217693108112157170182101147116122511920315368241353142111811421632186516619910744982418236242154174117962271339218412701441762082325410132168176186222226972232475423720420919952141707784172190184891481691892162282012231486742221239141904124615717186661122472302111781961622014421220822014424552124168222991641401502901519225010204915011623414721323414621332431712262281611881612543917115780251358025211316910979190251641248315486115154541961865675316849901107361844114021180932141994616423787123222315582531051211913414132182065167310369318538321322255091116172191200146252151804502058013266856200184178179273310911356246222235121852111172361322381371611723581211135319218110292107922823127220222661166107157581791323414685128121231548415622380121126992518513124967952144224171176135216510694107240154172116201651056731147551602161865521514818758019080231196018128161281367197214132101015218710410316662120641561661411351001662101051742181011702121263221918037731892421912148725311012525351651506824514211622117412253158441951904370226841142513721152711384415310319210517813034104651646024428156208145165720122214416494115818915216462841061271675114013252181822122621615010944190106124672818860283302322011831701851688612565851521681371039415216822211273179467313321351398625391431071414920714961152722460128148103569212126191524049694071522424014220361845022121770253249166353786991015414720463488611021114616681115659423431882013272341656048861064984128223136126791822549619049101453141681147127012357151222815550183218623820753659533642119103272089616115322120335913015694515696128136120448160124364733872161613391631161042351631292321352531455521913125013917349202165120144128424174205105900936021652155861615158165731113202481151762161187422411818921714325583242157121646017614922950165149931376019218119012120414716615671003512114424218164168240777017517415917714921158472311311482401651881543587012917091621492413919224102178135314317213634160101200244351523417921211220397240131205301681744728401802472017010513323622122817249129991696641943124185491991601439266249128349466461301032282543199642586022412559907772131273958102191232182252241430623251128228292722355446022317724124921657248191519623212680129701121246166772367392440254247236124972002248214419622012726151661935923412571271923174974802513522422421296720415868242554963696942257525225523720748206323612519113271003822711501263592406613521621114217716793982071842372511941172391051512213993119157114223125218115215105175152832541872071287182238253114119236143156236130872011892061219629180238170151101235881251916032219194194194222222240103231135152108116229198852451382391881561452492252512391314100227133962161522501671294650227601927995113179162160178702101321232541351202241931951352431391122514514517222723232186201603132480209223195253250355512419191128204168311271921646032114214424001911967215923012911154236133189192102222151881973625125111411419010223925423823913174191518122156241072481552251861472937723417523610643250180175234848723317716923015920713725523715119910821222232113143163222971351631571511654127534166215172126129205180596120991491327541721492512372517119822880225518723068211222203221473711899523038713250175232247100232117166262441367216483322465251371092406459155114148173633213198326224129206441311821162211986815421145131059660144172513924466441523892301388930219139204163254109143251183205101891558211619332131137403240647917421311214525311214529365914886103150541320472841721392239211911351822251337719411155133232292354621098103803014113742801082002151974318016514721215542119264118029461761531731141571731142542176284216092302511152052501787713416460208159112919513171289462356520216041811385874230106156102107407296178202226048451767301123064134199157692363325313520345167106236249103991492142151546138170237122242141128101152044507264225561412317818733246158202161831032351829521310573871117281294054135381262161918660162491765523678713262782155879845776915624921911991213631501043216901123823164177532332422115174227235471691114784105735054103372346414251255128718012399138707228901616911917473119174417231444820316634691812192376510821432598068711821454083871481613426413425234422802138031773314319524116510414115666655236662231125668915727233811131105119017951131714524010210719280137774518535116167107156174183120731210252072352059412811001021324623787245524110229231541481599195118246147234111551231140229817720927231167921977019492111244941062422332014912922223720351274218226421781302443144180427204892102107921632488231851633860156105218237233802402022313091638911063891026395237178401122947178233189108417221371051161642335294841696143476039143143221153250224111317010210315022264158411551751478622516533242255840715192261474014418951833273163225146861191901979216324712590511072512371422081451019920942167912997247122162231551124128154822451702061711482549415821710223881416318396004216238648024715801346917642442271064241115123214631922261378194117142374185612030442121551072302446177236203552544501591918676875911892214171141711122411211642241292641154825512819356911262413819123513811020785611281231130630306416663215166020815910713031172102384320851276170139872361841721872122261896019099121562502418036168224126311746420022719320071031986143616230156833184221235913522123812301731161047621119451182241541281142411081124012319116414210317813521442182281711121882222361518721422811923921921435123222160251121844655254869423791982311361441920122101965714732021642491915128212812100198111216149113224147153671654920224822222622351371641232201202910214613771101223136541012289618125113222917419124114332635201252416295143131922614711241897116511013220719312168160191907959442219296181235132221158211782511911801391652331348077351042477024720024715713021612033146239207765524423124209118812722401741732231992063310614924894199676323017742189725124021224129554460621122407150614412921419916519224966223235701962182229713915123317921362814126924832462192461901893123423569238355320786536122201244253159202325575198142534749998225242242181818491641983123795819615811413224422311920211195422419702072163522111921810522325502401922222111101232071842392531301219190244217115218472301002161585121924625519621441927850153251171521912084221675108615119120152362181812352061575924817917934402464733162159219184170942418595253215239941261724215231201163961591687610483548468102522015823715124324324627299843145971471811852101902472379115419711712324824814518416393879512720558899234302431520821717225097121015524421011322725025415577202432202088700245211982421867592361622436714417410895981207095162162146245160225415422384126205781112453193234635910885147126114180238223135106254671482472432102481937231432151662555222515118777249669912331001923819072163143861950422014317625052521621420117312112938753763262619914316718524217965181236110646882121972351191002477209114322825247932142372052102337421523874211225214153741933528813624112820463192357164254113113170549664148162213156164941591607611131474010206435393210157232501615121997216896962512271292379613191109225292172221231149432064392264121217855223122164212105184196161632231702351388159132105138122831787467130344816054141701011955228217250199224110113891728217114387238204130941772543177157401811352058458207119271138172248483354161144252471548513120451237205166258132242186468360113107170620222104177229821631998418122112013324592173191440601121731931416038518221526221062241292332613521758167209104324001559021212218021026964887239608211018120823211818919731532411062191215470813493163212141731511816815153219115244134431722391166451431093521752162491603911673228618522756921025394229112189217774253122179471006113253141201062421581655767292501020465216310814922615011623716652173198842052501002451541201651381151551542111802482430136117486715919512132482232249606417955902532093821260133718722010515702531336175251221972082231681314718622321186212226112114245638123713267208224012818822520810018011844264121606225061502241132091841279617019824913420011917720917951199168250162124711821561351711272261230286410218220611717422210918220616513523023821757784661013212101299820327341271245325057371121295661064621412329122115771611526910521822121719822412913710726441961689617220414841921662221836541612100232129419239315113199751083920329701381721672022362351105523418815023460167203236397410816720229186178121062074384254110125931568223921381151931651512459021118115447811287499178106932014917233911492731281471891644674215105742131747921420381691391752614311922382476846151091912112511817135132458428254160392349711124413812246814910711119085111190512119167392231804321524215167237138302491031782442195024519625186283100618519118614412714271841276416124223670252059462352117410069226769206620815799830184214224499122722012185952417532184176986115113115205197772131132710614563796020815599489210019834712132482001638250114121367152127961642162831251501701417242766421220022723137411173213244117919021521441536610610020313119017624938143137261997325216036230441791379016721761831331021751853814322510918115011093146424520324024561046186681554112239612823118857777720181842091021812124128235204182111229141028150142200631081927202513611123650965112317416841936328125424415231158652021816291391521001861231205717512673543116191116922081501312508122328721601919015115511821630164188161341012420016155898134214208189352249199161170452489633901161402261080130931981218648122145719261221771443390136569618823751203157199108997856236579931251133229110138235692910125529311871351912391876211140218766184191992312551611791161863324613025579254736492611313219512925111901201252282410818422948952119323324079208103212552911190122173211183127207206119189918144224352311922051581790161123112373337172192324005665451123917451312916425661711491931525112919817652117512112814719211923012302524895501122321752201647619712122420169150981284533120112517425429247157114218119202173712341140247060128195110517716723681184247148511209622323238251190240216247165239129311232376222917924368240174831718779235153121513012014720209421344208512251961451281399615365143253892784223145357130611221326359631681271287523416719124015925422510318887567325159614713878880242124867625110521931123224206772262573107178150101246189111795520317515523623493201190250218278017914614113259013519019242521766012823712118925414119829282123162254105151244163212809753552362292372031901332215657136245231521361271331412922623924897208238239201201571702012532507680241249159252108159167179218203542421712985948312515328219208412873121128150688871012813531250159243192139108694148208104341802552259018531237801610368533658871575510674542342055415540182262025323220521023420620823676213236726517021315316621314529915812910021712033901121281918210913333195252317352184661899210283413716461446473148170634524018821130126179532487075224221142176251180922351502292096124718718314150582131652328419917112972683244250242109198429213575157122243172218472713921124568412610876191106351006513050241284715936188160208192214631107886191651045439105523616824617611322516369214211211421441258025512812509621568153294812812112104913016121152321522384325061208276814192158154153421351554594608402341592431928217976223801788019923027173113128208311711801531741171601616521869985542156915851117781313710212425178225114752400246141518919240254184214161617118362771651751962441188732169165241237203195923824713466227984591401489114385216206103323212511118262201872201101142422011011154101235614014821924121331441292081352501352481346542113691421224461132622012410318224164177211549098432492107246656726423924523560110176252205861272121591681144661603884213128414422410866331031001124490274518371916896176216106172194301334824001225694233327636131999511755167107207224206862115245174226203588524417822311670232509523914121842091381753271142140148219121491301691561981712361451052052102238129154113816055223236150561441307921813120815924620361628423719712217510713941442511578712217187115173174171701920304848812258120365216710611792546416655215140364239859930806290108618911063872296091225116171222251941796350211229141118111016821415417077107123371702441755512078842162452315224623026183101233136210531972590200180103233182952146942206212221651611526291511325124245591741542129321017214287105201210159169247122208271973926122601842459479228227129173143251183220237818933101521712431542114620310117422212516119399190193109901364396551213393961424615112120246112673016295198317610312132811731581321317164819943160207211213148385141478524622721182561451335818323514115840233202214233820011226542129222082422460642524064162342496322078198103222342075322812942002081943222412934512261299222612919092192128233321411613447747116614126173181232289151180230272202418447791081991914271125172218190175196188191196162191212182330210827420120244711712371662351566551761451018721444189202243242197951258221167801511321911574532412021764215656461111341261193015812713537810772321961821112301153196231138159143197231742925721091041072542423031811358723023562401331321851662311341541781832455024514366788501591282041682062111681927721414791591939238791607862772019618209364321612717714313311211172163802552305914312913248124163200801441921101056701582889162372482231752518871431164712019210825117139237711091181571761691615281961041331972022511102532164514025231422412551192362524018224873252018922725514710813313919246224454323911910812414912418323371295222111321222519214396192131131102251751541861901102382461421412071351421292359367541211324325110919717322582824311655116255187182622090329314424215100131912322512461267419091112173120771983201264210147210631087996128213392412021411431172493310816513425425516420957158178971341214073252147246184771237888237248220462301682191294792151561131386123328123202121319612821263115171768167402171192181052391052316116792247156134185237622372125113320715821162493913098781341971565017624014591243121178144581751721622497073253176248129103960246167232758922802236225525211525410371166104145225272552481512182082521381111202442242251371631991201511129817883699518520112012887978713124225524824763151180678019521014913113386124197247182612214419186964210811923922161117230522353312271393393396422501271327254128241432041409424975109101249183252131241904119831717218217989134642286184991124215715253871217520612021142149557225031242238919793114672028194711161382433161848249418310621318618111447224359067538470531471411142312542061614957172234172932455722715020192401929614211325585189222203218932332629169264380844146237151180961092011541092282532107229198252334110151522015714417221715216094231758219513026107471681821662578871872231813544546445313560234221185601841031215624624119217412322121925113928133735819436173202243202141415825352143510114195372461891852302371536173105218244825413723025222572192169160145131921272395224021316013023843709919754351338614822892452291521462322071831282503146180233642256514181511225564190899514211339155921684593187131185351926751330139117174192128197615123577238227212142241292745158721357520412115624180177251412910616221313616713314224313174362531711081101801227921358244222620781572302692134744538193183417524142219137106187107205302536916614110517029185250114530203355215516317812518359242502418108417620823217721623619795228223237121852152112216735248869122411614111173328623348942295688986190972232071200003022483685197201183164235641046673163901998519523860831041192002532332621555421233761734319661144961772092731331811212005048961772011231742223188209917217114916126248971842047012489159135377684591616584706223130623318721822094320872197121192024164751342469215721998147392401664985173548191531337013012910720564811484454122921112412976100842166917514721992062819520218414122412917774123305012924620920721411615721411623723514122217624111418722598171238282271508477812633124003611217320911961921032382391861064041471781544018127200512391901085684964989102639123750471126968448952375086100771211292036818512520785991763722424612218923119520620821998255274562559112416016423123522022234221175551214511059020813207121161235921732036837309021920142231731291078715825120160244220102241211631856111661302252914361822201672262271001817587142105115154787518617440671511974156165391901723920220822101106139472351829321419103234162255323115624812815718114240771233715176241120207249718145421913595148716514014921716013575779421515560232342211745312022020249442141871431512191162312421237407224641983235486159912231521642121519948152111122212071699613613162261211440149176241661686724131212482359720019822122521815424523126119932092394682271552501077231155603015701815116620621218766235207489925871487214014920422711612145137125241240143148219182932141757586173190168806748160360231928003684199412143910552167106183227110222197884582411278619012971841849510515610321811451351422282392211411822970943912447223139931781481012008764162255137208127742171151132071352411129512936352721932191231301391261581621908425375481283140511262014390230135752189745912365810230323312714814351306522621110639162531366241451412121121140661301016810518823711581103212978248627212711044222495619965221028015220372392525313775232135142651623823921725021113612723019325320722193242248238198143661385497239218248334723921141471812192551652431671271396216011164130151121579552116230193199272201941602425367119225172291412612915517820961236299115979921305313099112221236151241292511622242977945215162371766123694800198741372551571401718516961451062552552462211413471449723513924122952481869924672072162084833114224132236214240138178223241185215193471572471561121396122918223918020322219781762161472284632540121563424216123218511506111212366223719023516421517414762597942366017186227132103224158143552334924924422642101521249501041336012619816019619024319816725149109199143312311271181000192546542542414717761223244245197107177123246242461731481521785122849323618153541228514125518924525018741732331463812016363561596227481282042482481841714345161128109237154232141729419923399418110613173712461312431923122215830130374923012333238226119651183596228703216397691713719319979226581647984713334172101312321681682220322501012491036213025120101923821455148208170201602827198214843821019281128129247153392259357185237544723025313512719721594851032371072277615514712585112123178244250174232246102612251291428496128705924112812291178186248146186408985148172610773861336517255391071803610718136107351097821011074208110184168932316741248901812501071491541791061734161155323824718766239118682212352161876012011412122822824224020976125123811923926452471727552201964930722132322055526445031445223510117151394616951245152331756137610776841077484107102179241771751666532200180165235118935423618910612181199222253916424713111341137234311441281163214319811332372074923720716519366157891861241521614416321202506999164200242118139239841652218815321366189111404561102127752285064126169217997823243015217311722822231541041682221211682049817214686281551691156612619019310116120910918420410211973228518110963821105194105721739728028169180125216311906017822920996228253190801921922212381441872211611835913111111742211081592187220108156693187125175592010848371123046179521641306719379845724522152362683521542113240117145129102106782157013321914031613817312224320510437227124511681241361204024869542381592076413812164549015517524718421726128673225021911514058243762507517219817029239112414410572211203642247228976212562472015420753122789933910793144153174115911825115150217162668922019817824327202207111104768515917013818513209152164168531651691311391101381891111812491129520272185371929871051692131113317619738119642121401620499942118316938651137023212483236111021842213017620822422214616620915417491291181598210653829857829821312169175576917314721419282111203210254718319746606967197221921182131133230801981628417319010814719360115220250201114723225423374167169747114419512241601469210727120310818711576160188235198512311577239117132602361412720829254176552233253238481641512296971512266312461326223491252082112419151228110714846382381417445461146713870241239621981410173129181301161351611948013753141236742132038170849380224704931132421019511120425520575191253176236235131492315531643323818510301571710316303247891431401325122154710421682933415348941748801591642201511031307549901342431781551723625519284149195108141243100165237961451051992129972132245193016922168811597832451857990461696423867247243249898054199104127158177418416304195154060481521111014419823983603019220710318019674148170812542453977169234195101214183219253118915123195322441751959012520019662215901252269222215152201506079482201307121218518319214815023475821747916411510016316229107227202344742227135472472254764162582555522991564531745230510101152331523714171691957022411265151280132161742118615518913416722567431313312872410624211924618215129116681611116198911231981005120732357230193318204012672942497515140230198167286957515458136142492095452518272124812580112131041020983182177103236246209164611782491330680219487880013071541471488650541362171612172078911391936402091412161752224179209611305942221793530144169249239197208224187182126484012612413316220786156133227161311632551501877810413519819011131240178177203107102238239218248126226181622242913327132235230112232759210310119117331562246412712123940220326219316844212882224318119222400891431145089230219141510131129167124540148185812680951931832172115825112713961197379236148221160177167282471591136124816512124416118117016617114914114167247184198158114223119154120322461481152367316721614717817767178224115241931924118329199221183312452211216010423113713693167162997888216250189242234625418214845190196149210552641167631031316625323112725410320122315731112123305410216710318210921720212319719916260115134431211281930241128146188741311768921019634112252128601927913220919101196981773015550851821715172382232062342131271336064151843822912115825872496072070119225105195153240163144145220231263215771024801311609519762506020925320727175128167156187171641831262135160192144070201801261311931282137018516412781042055621611641172621931733319317837217144120224178126159632671635177189356916325314638721602371466259632731732124144164101917718015377213207222820810878212802181521608512765831209418925010722923422343215156851097551901682431222202324116811925116315867151861422202356025216823917913518925131247239157216541671541022711727462331801001041192292424422915524622824117932091111632131308588220176114831624248160411376352096671231202187478924524611693168611812418510220427644919682179164537242451522852239163153707712217426119951611521124112412821432351828152476852162211062463047183129244135226159170182131126661221712132724489497205233822760090241011294115245466716523016320792361415359881066291199215311763017517895108242156168118244417724405011120521010574211152168113124208236246410241842112111617135240102123096128243021059933324718619523811613522223710189215211221732177170299815719114916717622137893185381172011061616016212157182203250771059080153324168252187157331616321153521613662532311551199253424321437062172286922118538673754179661831539010927077212161571365011721811514059243767142237231541251661331102272391241322327119018719228313910692102234221251518495192492462191918149202227541491991715212374331261745312320521321119419517389218144119119592531111192481291613877591152451232421311316138170237102235156963522986221121134109872446815390194361012850431168918121475212222010424515717111522913988223104246901681152745181134652302462282653381711821032331821012341929021118119615321820819051216721790103168971485220913216119835692141916511811181110139661193219328115915817411830431792352065423023512753176105762195024522234601507182442477161236137128176161548147242192195238144251157652471122032162084420690184134184171841180249184531841941849575451902211211665392021819429654113150126107387814722618291502406010449162163113951812412022131081292251343653918164107356915819919115255055251582515819804015221220154161138215416817631424523115522655691529310017223218617039748711172678802161922116064254181138234721772494027232121158517515514129292441311324214171176563319264522831962351911995492420051254117824451822843177234184172744173842209181237715812420512921929150209472092534594207262191171572301622451697911157713820521917811615583212271461481074742820611117457474714083172187168432452948416112787254015112352294521223721213350108236774410055203923232124236220211663207203140101652502542191401953175207164118248109113777924514724713218639135114451816068551301981165187672352710965127142882365811018913538271811376113971412121062074130726423415966141411381281662413858681931992098416223731569618625381325618582001352404120185130215229014512879182021202241235211459216249191517624435199962371768824422011025515112825190104491701891082362501861851991351418048153162795220626234220106207113237176612722020855255245174332245825410315613514618317260631161296179151251421141662457321420311625518325169127915601011830224186246127173282551074925213208761696882461442515264232758715453232212381073118515162146251681952081271872471905162251191240216123202125239412156139931641341882192381479418779123239582272911521855230140255174211149393119281122111836106199209237491996766247234233218172343012097531411853230248166193664810417923918261357321517289115246236892012231573111222723412122954515721182419612318186585425323321167258714080171200208781153513917719395825424124222712314315031126191560251851272461821622051037836575724915711922289179601922079653911591522411929516312764194322310013212202481412481821741631736223214206860231101699965146193291001981675122621316823010147012811623121132214202811522461711404144130101262017350912431471971861925318522593151221219211173682011862910512261153186932331542916923423741106109168815121258822122194616973156373234127281510421595208221582152225294163250247154539510713914620410217123011619822011163112183245196173230832431947910310715204102478495180462541571744819318462811912251461504083187392071765520718415523011221210977213415240160971421682108149362549105107170182568527841921031483145178302009120132045719214013516092501157610511398182302511676711664695199041206168517523990157251141702078112225310811215216818011576862174653123002401760128204482271291859012812924976141195661312351041533724646541867710236675204103132142111411102278518299149182835378671658612513316661121198452331541738711616112330146922223511187211271141794324070135255821872551462162557091096016920417418325095111245187209234639523949862330416393227508531416116125223787121211921011151861181071503072160226220166186365321218521525114131457661452021342542191320145175160392231220331901727914781777313561381737020210871202236104182162436162441892223411402541611142191909820322511418741161431864989235584611230175624152012809717420910719020111841762162262118310481157160881131131152291972052111327274616922617216122717518312015209113647235204551842212391418821122514320323010418717021111869187619115119216019216819121620120208126851832271706214416925414610679190959220113619212116062731655393235102139207124157432497741731923208187141151845917423265236130103228337019920310965221526602223422112224376196233218292512218423319269321937616521184185195120153253641296911914145013322594842038170641456719379865922123789430220742351062111321529113713216902031462494972179215332092471876623818072211061141222414244521202061022125110204133137170197191251472801591721401872221302541872271022782227130319813474109134203108113832488046282061991281291019232082501625023221159114201694646210921622861841271283312271294148408415922384159164212157994889105599122772143168169222852797931042101561621018144168255214819275411327170206126210154170549410673203141211522081623115111712814490128863324215484715016819225331571512452415018442162263323012532192116459718898831382181801922338195248242112244189158144107173222215152127641304120226972971585018721466129375519718060197921892199617769251101932261291205652201021931852051941174176218561332182431011723121249633712713671841822304162661723522997187405214357130114205144937233205131837296128207533651148112161207292501971431062002001242228431202189319294231195200931761782853451653132120152150124681441641441271392441392161783124441917945024244222261581242316245207234254222701311362165634282002241139586862113442508196131131108141626719201151821301248112118982653180209452162156198246216249832449872432103367127142209180698223114126178118024613113063981832551124210819614421167453223010910715955204612221792432512165780160221843873229167156022446221255109184140144236184137192624019221921494124246331379112820125014921025514349635060642304710979131199311763914625018593255431086925521744162167156246157113222119198105207412512971237183126246177169155220154119229628020924513811821712112602241712321899223255519219223819129781287601191572422171171981272071432521191272331892271321232121671269163152222501217221216113616867592404421724848308843229162607016620810024615724537151164722491681612159412345454577242119231722015823112925422262237139116917012123710615623911523162520146197262277193203118111223123239230125731915882501416001471094324312721824684131791141531616011422882392161545322822881832466910515246132516257602551545416913616720115415261121229255252131133146149982532336723281148301842101002133225311321594961341219771791442422211921181771822177441128149156646014010610722994124731104572224109230628312665462252396110217079143151237155442195814823921914565603278214234742112387220916391711381478519620120210915184218834015541639169182381865239170200129815715390831627083162387927226181234226180107207105872537817923411990852551654160111481482391131736225012219515821723425317985159206213281052071385630361032501902202079922910622614110746234148159149231011051320155244231541182312413821118124811123105168027152116731938743324224225203521698115414256771033220712478224589322520016251364624320524914433918722302416514566224119264247211822420113010420720822519332531851985526602311079370138451982031731674196335165222241292351411101241983310442256121511526710512946117714589106242160250851820131137106219193822431051612279819216128134914114891247226423915411623024521661681812312422023399430221114187392488611920882135223162216231122155223181862231331021363615919722202641062075312266109792151852052122092403010419914511418724174135225822710424719398107200119240020520115217222214617413304063187937208151183219131401161527118179812545211510415345118205642178757146241731166413117315318696964661998567232841242319025378872001171459512314281991865419938019314820810916021218643223201441281462493823436122136250221510285241108591021391014923104811332175815127343196078921248911919020923794872241731189562941681912001641912001801752081843591791246918759207160175208100164220106862321304321415217021411869247901792311462001231822222118611216119318946818915616112517121311918221412118021215420716963801046302321861060542322065442176842161156452436621527452221795320635197861578961209026226852403218116723522615317179655616252237182761892308417370200110182232213981475513225422719020071176222822821742494310812043179109224132135189172471876612994184164991492462151541891111373112167112732032061104425325312222015412934203197701541872336579248771130133133136824011295144185217234794918108143796912512131042531701791551001752552351532032121193520012512124005015610164726419513223418148104165225139101732331543288601471914921435165230120110175551852274911019117293271911855811067245249132001126144144019913111274319125418453771251781941021701941021804191351681271632099811520632001151814413219176248129193251252118240599860128159244019410417620828247165233146265854869725117655140794919619911209192334118722052352614512875522811322311118225022210624319113391952395484108337421116818540951171189924518520511723149235112238231482344740539284230255154252333022411122033193317545247287170553422229208217200131496409782155296684112208144137111174248145154176232551561086262182282261582721524122010021015910018943024887287022724421431411255342112147126145366265214381402092173522046001805649116191201246207217154320841923136181679953672463421392231524579145199219143160502412870161772497397160813445279171562214132231752241892453516716144014331248192338121232248391082401672182511002121411562161081242282017226176196498179247180213110722402112322223920616111188120190105233249174173207251246126108121129195208205561192204462241405665471143181021571922401619919291869421616530180191517817023620186202253255214184641511372453119256152529799122408496131180240127135241816722036481612321897247732311891679324615611422024618571204113151173159170582482031891733224716115416187148207222191902517812123761225181247164792361052072213918811815912216247133223174147222911431226812511022518167201216991891501731291411591539312814212916316918518713911516016613492735131324428238253191103302241531562248324747792421192317220158231129250901611901424618618011024515411710772238631251102481961219645120013416211717195250245175126355730237131762539625411051791781151531531532452462421611901749020573128711424015519769515915119113813939782942103746223241127200247181171232250672471911762258254155251445916245217100160248143149218710178302379655215241148226195025219873922521976202041581481317214172902472261702394147912051033421856412032292553818435107171401971031786012418020018735221841481723774842357221310875861117784129244231612163917118138169181381701616675212064181416516525703120322112491281261440899913010222151411541792613017553171190210172249901752301071311504235169178176235194152272451351512347846214158252026311222014313025208159159110147235201246161671551146168136505271392051049819617113420518020224241281941369571367164206110292306016013315192186462714222891431512188115664129378217834432034165642230343236200492371891061402501578914610113721951180145118178211661923215132110179213142838552185208180192303648861105188816811922512116817121726716427410210729161189144185372421342286613312184192161438688207214572055518414087217141496625115411923026118229251391752321014714925175442382461346228138188211191782121717640246189624162512222331412120823924001284100486435245107156391701561841279618022019019120014616625444181233200541838170001442426919620220711017213787667772769619218110231190116024219213733541212321813815959291932081634013514114821724622815316116917428262201141873583611217135232118712407216567103158731231421131520303656801641941415320126151201901511333811114419276157591681604315912064144168881471648419722899917114324978845918095213111191170558723911416719523913421627151101164220178167192168183208184592231648208118692712048411769110824218441246157174113106768511172811551681781591856142291160100180220166581105112022412216323118002152231061841961141802041221762001884915312096190206213620815510322015510722014910920815911110301842222289301524018319922123918510613239167452923616715542322002102392065430411811531721162842178106782111819643245219064226471432399030217177606813815916521915013518351163146199131913014712701871822425152239117133782131842261909211124118722321134203219155111142187192167203284417719893051048015119218131113241111183513028128760197189160180197183191208162230162822292152718524423117402424240169581832516913210158321298210960224129252316013018244157161985112843308160174243108141109113166382012721318524514923162169581911585119274171185176137251715424012423026142149880938202172962111491829631141148182444482597209520799210222115199528210049821322231512512656248511795209314318130421642518215916860811052471765511612110821922719320016554191133221752492279164146241667924975615144127224261551392220720715724612859109254184149184161117137741651912511682422351324519631324127212120331741821017219270729321252072302022694220074382146322911041954511620142229138159276368582381591325914858232501808742247101616864111462522112349554114137135102406565232242391408623211024504814816015621762941532937254442212041252286361751082401550401324683170101901655615615038961951323617517812172131832816620022715222710259105215112484111363323148192142230242296012825224716721921022513011318064131208253315861611352141237921923925518156131518213136651332152042209455119123203202243191519692414620610866161205158172241112130178223862205364210193121881447117200156372173246156160152236111180231221372272693106503624811178193211662559123715524064242186125165242254171512146759190178243517119201391211822211721041134222324312819614357238191152121092036561151224232141071901846575203491921092519719118939298796236612252311520411119949255237199921309924510935510621618924415861232092491782201861520017732247202186181111191251246250215941292241293813122834412492372462059023715108503022431212020424242361271191261922371213040454225422816314320937226172199103207131595615641102108019156254251239124881568744572543351143635215725013132057413842232235218531621005723424621114215723912419119019914111018624425124125523122224421113912120123816718314915712697205218232141749118310229116191164136102492016218716119311717195036160241531162158631442424010014210223110232155716216212162196244717294247210170213111482419211161825210424071892497123114342501141251674331987592585124469137170205241745240408193148036208128333520510718238104138185291182121551984155226851551921215418212268911611199162122991305819364162122671881864878671209418749222721242011623921110548219119162482261549624715719819515689560104253892171111302475920016917846891883715125451163238203624520138772015817322412966147241822191744419516668262919626061561384217846614613714036254129521091131547811550652244125955414813810030331789815520998240025154430204167101137161113760641131441223212406491582621228424815517511315817311816224520088240192116181612282050208855030152103129421526922323492134752042515120161412323316826251241106219233907100702021310215757134226171122226108253198121411868418120910618721922165247250195977523712913917312655581309615251353349231541257017128167132110321291372610320023811312924388149352126084627122611882100579422984216381691019851012541295072201111381681246722871888108244154185679863786019315369861985142162532081722165985227130122122348136150015204212186941072411571112443479691791520631862099110020915310320282147182108672400885148212645311611718219317935215184226130124117130132715421153103235104190209161822031501217320628131249687240192245227924019236932575921561931824312998211145101711856151371452151418615991109254516623240128487312116819618124216158165598410811497911523495209911081121591722425022794216641071626667178102021031061561042292218414123084117160194116181227661892191562081331621052031081352424588124577752528523812819999188204141564845112158173113294118110918416494125811137023270141232254145237100961281612920313121915171826123414112620819245160472502091921507120410524012032234110712401892062081872916122714920613119718221515419231775451352291420510521896511936969921181361262400156322412627921151102281921051619941111822101961780547225220217915518423815188281792160022772323236160176115232110511686415616961801041036224793530209209502032308485144641972171435715012401017030317814122162492452452412422265224519028131201114235201101552171062511339016724150171209982431778275138514648651581991576148892472311547685216771502191323154472121861222152245102277715021724610227214156223212148164130235255168551081219871442247887208921792311161632714412824301412698721922523132420048301602011661506822212030128418368190184161120180322919125168120651691421341241341731911601962555324910230120341931532081351661328218096227112321815313099321752411721893549489815713912010218137207901471960722411281628128125213986841239840891218231715321164246190159277412052587160589231137116420419232112064991263223520116499129144167129679181810418820886264713218212132244215977219288665094136225124223245581371416811284315213996203135180920133201471182315825425113255392715512020252261115207119108124229611632093743138108166197149655674190219222181245125195194296149175221843151834242152824914315613122218224623912815424821319522125220849224615922314315628531188823757141691412018312333117614948240140173842372551952465227192158242152401882362279514917714249183192419089140173450301121416122718224714021915851301237812323762233330216121212107199103302191421961991881651024224721416613387862187143133302505040246100208238227129591432182491081277920184238213771142356298111219597991619598122231862343722671217713314322010010624212125120625082198360163167167879595472491872433110207243648670198434719018070142261452301827123115862554073921024215643524234455315723818211020124115671262002481292311541891204912916912724411720510610124125230102193190243253250195412610324938187209108163139202252015647215475119725020710811119024625023014115520414077921571571837069159571172343125423816725524417912725221915925223714520714212612224021110991182219902192331052352332352321119019124918187949518325093920024813173127226141149382125320714820012204642243918153107871731931111312430126483058107101271831171662462032777711101392464721213412971865014126474253948016413622568538113015456738315641280711664573147216329416337941635794294819217317198382521057280107136871711359384173191168214241752111509822212721310517819623113411223515713421616515421659141159611065911717122584222191184561243689459732241961078512312212099130125197871704516912210915321825324970991655429252501041561201282073836229129230365313833102313520075192130137197169218141224251927617011871166254104145245841331951001853100223881371339150192013939238207133941611202261584313461879762218724421951117248761632111491411522312337425110523031003251232320914320468519715327960208232182200194612810752053035165221697211168959963901056194101139201221831751441201602451381109918670125170908719024192147251237158961921922532541361551571932152192645200220234818638242501287216141855914211156701712870429752768702061102124244249116141751111291219318452242181481704120220869902502451341705652121152042151234452122241217692312342201357510961391731032171326628181761124923326215174282271982013164252912302660121192015965104172218105176212102168220221623119836184127072128106966241851311782432743472920422265454167107204212586721311722926539282237206519410811419121923312718919799161201109732287315370901419782961566184221238123171132262162357871192921899183154707713098127129233104153117119182331411142481717982701221632171231612061091822142521131021516719610020811721301531827615719810021323828671122428018126170548178235782401939912042240132192230106921034468385781601302226017916620771131506219658193023112382824220182601761492520319513418363302202421686323465792482924064872162211421761374215116118187235205196318321966230234602191752615015921984147160608210211916761136534211244682046916132187342144259552548810837227116812714014814517719310191962411122541702541942302181391013734215787245192168128886016283852282156616637771731341503014714017226259184854168627922713642191254881121421441604567192343160483911288205879148913924011314013346658941069422447181264166222154282523099378612557198931512454016832831512430238203189206329010399108219195129814419210018920310817971532150240022512910017614421263224121173137214173187372461872039242152660613920423518148128418111313820420132113138245113223194392702435524128624416315641092431192012812802004367831707237685784561018528231138156272429216635149169118941942471542371482321232432125094102252167017116148204112325525486057742182068331448817910869100154862001304547023376209236253121156192652321261732088817314418990161128790171242296016202510339636192253648228811361891281521071812313617041251110231179122412497024914816322321968675018011281242192187134111812452231051862923112612291762206994252392321831726097124205122032921392122019020515817124401457419211892559228240192714254501911872431442516025331981642555514141984292170200127160177671271644936128218166216220392417650255215991727511825110420949199216211180154216158211238187791232365823717724316421520699222192128237159123111255204472307219215899118714325023962226177245128188169227170143148542421725019612426121232139240216199749717610812522886189371573722910118585111200173129200131887216316887189176138701072002022831182239172471855892132051891341481711651651019191155228239206151846120737324194717493183118213106227612169425955821771161781168920015211512854792317510717921536199131420822825513212764182253205223252292392412220319561641837310222324912625321727187116821709216118573136243113651781337239191243129150134182173149109681042482071272467915323325666520596255192245197107119111223121244224225242195717231220189127247246189595523994959226311532322392331111111094747173721407925023717512712324221673119231197753173183941991154621716410812862601178919013741842011209629758166184140223122442471351141146322217049821141226512022686211161123162221139181119197246221162231131048138167212816918137211823224123828161971951809022618115446106541971952421361615483680107768071232351408310914221531203247188462161141871102471632143511927143222105562498025214716924279127125882132441172341981871141141381141141591862001492532181712461729124523920517020710654952101052052082382035313011016311322221016969153111301983881201116631394215019618807415812126533210214842371691142002324712112923511616519241641292297219022911219019710412921310416121621423115315230152141001552441012711921115419615417323390208145226762372251820319761194020024111491629482448912352005111117462112251113629472232529210249391538121221621181902091171602162054932351361433522986163214823517774811923518243122205153901323326723910628111119522223713189215316301842211912216351860176212221762082361314513245638810233664618281212168025456754202863439192198422361031062211222432052481621733212915012291008624202471516021884141139148720843123250882391938723134778459137501161327317016013991821612025510813171392424613224415918210248371361261922017629193192921632151482082129166129713110775150110201217132291131554246108425918319049852960176216228209118698715216422015511113025215714127144192981472710816620610518821811881685742324016621625113421625190517737529323514019510718206139443817123625124377113711221151411072272161020521658017424366215105129351806223826314721215111113091217121691271682162156024920071161293738202236166432839203236251615482127314223396129101127190249641296912715889751541181953724519021172115217161272212211413011616761228941032162212061761239322515251163105125177129173247123342391161332212388121208191372422417416722582251165150021218821130122752821287967899183136710823911813419201522879962416180232911957714465122173201251612064284888100852717520449160242220381281167294214710196182365156607216023422070104101921322095043192010814014111522710710555167170202721602463422412969157593450227222131242175636618122598513246140143154155174182159215612810882417722911614929242993752155208881372451041772296415873127174113127174927125714398625425414718613910353715011919331311456413019967145113417513758231217382321261531271921071140221140231138120642303118478203213121223202512221028144025173176211032332129284172627117917814615715172424012777158240046113511255414914412620193084592421889213545530571421020010713323870202430181281321620310158105125246118255252494651941361482011161462360322810123431123209200211253161163220116194159172734451217948695226223224212129677119185764438360491155152108167232346011412812422101818100701219271717318081909217719693192145014188209581991676423261931875512168125236282501458320071142193196323611719044253115777423239217518810923725117417363119170721089920701171721181591282381272072062471091074721612221516220419288321174134138255541681272368524014250214319712414300918810922719722512911125749925510025501482479523660107431212247351254141223209120216023112152211672201181571142191212101092511132471097160183166224721712119612325116712812919218919922462813611125832246152169952281392429023910415458134239246222114208222399081203114245753117633151921288789156192431141719593179230181854920713920063962238995114306420222713793929225025025036127119126192237121301365911925414923952181729132411831467176331392036648176138205109207751519730126124151181131100229961612311210382198623025518023724954411209646604414611914022315725517308822513160141221231181107214172992231421753916914114824617625221885235622542249955103247131251142542034725524574230211137521921224824420516515514619251195274625111521922713520317983179988191218165244311252419955232471192231261525015811913793415223615412427151925618721200199224521922056422491171141915828125117916513451215133251230171352310625219339310558205232019331624149150120218118810659911388854881362411283823112919811234141238515522685154188426198426200366020815216086231674278549016881223613893223119021912023265243177229174191237761125550120245199204181717912671238255237211442551176425324914425056799715611710915678237585811548679142972151013721242406412560262314681921281146721272641443229681963510526526053914021219921752479017211715916911430431772920251393020017924204533198541441092141191971642471788120710119518252173250437168731131345422823092173203205221591532623239155201741872331061872017415513358231185907123216119762152512919510425152193212501813121015915033163105703917010910323515625113913671021321567441352034519942173129722785246237217645892181412515422610812510416059221193119122672382461334911191213211142948322421571701152717403216131442570166140120961601481661631291722846181294017813216613517871576215184118231154208228661441794126771059013151521923213232141126128249719235215716820813234127164204110176196264509321241696613123127714523341500181285522261881741392523225019917029102159125323155201211763616623314319292272137823220768141512461307230252476212184521011041511569395126160176177244236397710523451662311337014321444237186100229254341152325724019211714523110818924316401031035780108214911047617721518114128129911091902159023214924016419217733697716175488498578322721295965882106213150165831211106711115824110817351228621191432143155213148162214149109488096134189168731472388721612411223612013345205538411055811026392962171451692231501744318616489119811852461308220552201251412464425321411622120617170147210314418119197176915110420616522582187161189212125119398961522531081312151465624018640961772171524915358207107205126215261251232434518611476167107220230235189231234188230271881281061492315583447113361249421613811411921813140254152205301872162322059712824101736111917953969651532932013188240251313817462791581292342432715583213118021527166206321601715030104738321382002153941214374219213291551013319721382482242514812879661185625351983133381202489711553142111817819196319822412989252582021731933147101542271652143569226011404124911167318941731652421717913223228113951101812506223611911022352382211042471591051141591232026364604822323669972646012819922412217924782114611205501321487921859801002091561708912122603213716924863032205451492211281174164331691811532441351966851742093319033348120014958311411632318131123101821582152281351761371251845522489231872372201007891101781142121001981573522261361833210510069595613824715911913713010885619321161201362131433610214444830227831517352138133023464241239711011521104561321426991391485613212621707197160622048911121311624115310619224614315713122317924312322320623935422025519511118314328130190209176139317212962324014018925510018633104794239261742918220712423149139938023439771191244623921245134133231171166110216171232179696324204519918224316811024819014123822523921725012522618162171881396917281991371082461401221991982471252510156389096472542014013222413725312713372001681351462256750177190821901279519815414954243204127103205119213595723925519411021511318729716124612622518523518023114219126187787238582918823510021623814719359143134236602618222724324010915969108251445023072682042312542091771581615917322113062216172189234165152222526423324511954175123233189213171131754818001121231291692918106432101491988521251246157552326914392566667876176249581272162378930120252248231632517111815817194144240025019920781122572941758937183102292718525419875175255238215255375728271031281113612162471871258322710110121235215111100215882182251111766322915012521119817514016453158911791222131861815218425519711747224262429352101392051181381751501084717312323313111963484950221191792318725524217122023622020618214219724919713524724924476223113147158254551001642191631871515523426207253238236222157123622542401973632081835312023624938655232126261062452447233542511632161831586010411117514525111214115621421911469191143188215241155515514322010414018521128185882272492553523945224227562422442394913257141534510210215417207140521467020476182204140129221911862292191899176989112102203182108497519540102102614717224787855199217731504620122125322325060169848787878724772242243157162190123182242759624453415315410418611215015048919194962168496212849622012221792158103342015418103261375014068153702521163651341613221180144101402045422610116113724818565323121310747106542231763117424415910614015923281542253015510456498211923420612750163108209243332129292074130292292421431571325716115611638392211531479719920318215094177222115220017515520117515301212817319924355318489192016423661121022816229401681281237210211629199100218177182184641752471582218818120310437109017211514585223611552221871920102242203250452151259111153181223481051891102201222214120077892062111509351291948019851681281728657842276080771572264938563013140653111111623917511615619129219243236441772616911970219188721613215209381842382211011821926961093331503322185102315018317520217236472495254212212381025114917424014923813625110919313610901311509013110216519016392122951317318719417212718317411927229120142195173576136336121023220995227220891062151182072622622274234961732038015717118020818049797511289312411923722412211020432241041931011302217223960482182249233193106871801682329318048172481262106348459612997149925512041522125006616016513517015719956104232547419012765305645242112232175113198251721152711064253314722392097052207129127197160236252182234761811701401572123182137175251401953511260515111612112121822420323169172101252722222212016321996181831271651259551761411336381852387550223251114642021444216190106103184170541257123510911518414414026146925316875223217831061353815848274215681516023712917110412510114401792109101923780102184218254103129289011115311242116568926132510614620361731332302104313477557612375237161192172192123652281874411120216281305423147722215174520323120067643214621017116615724728166249190243210160411292234013553212192232175241232171118239173116237173116131184245142157236186121219109155190114231222501542521865747871752302152111157137702301472468921151681814390662241665112447136177881449416251467425218675236271785213624525521825412923142491172331872345021210021514011012319662723421414621211913822757209879199236421822302301061822225015522612220691890242242124019210918531889720910118818012715090213249173101127253176252243154362255168250252866043320522012818321895225488022513686208170166245148216130198234921291532411672245882237218952302161182038214417591159129248494181176641752511582052418825259221304312293211411772541559671512181303819722267141238352824773116213041361757311251562391241362384064189472222115182141302127881139419413095183225902311825922156108771841730401332507020015920516760054901811001618410698175331976483619219913124966208137632103161242495180200613065415310725361152117112165104182030207321566371321084513616187102104072021716824814105829414980291702022164213512169114723710747129276527805999246153701291973918719160216402877653849381625217923218980121541704031169232124128232111920822103224266192311951412361468033210313971208251461262395935362481442302551745961736284197206115593219186112138201282483422720395252275720212071130247168236183298823956250108103132274167162816720110499532532248440240186132434512321422143161891602020315267104195181216195261901132396718117465106172241472401894625162113218125701910312622826164197781761385922615212226237204128596128146177828276019539616990172129152948124542650132199235147196183468424312715558722431488412813518125235841602281100241119991451803471531261641815720291964616916760246156161198311651973024675251361122391512419791792261421791621432487031101406118161252085911618316391176181189183173320312923010771991052332191882511292501501091221552228387250126960176179321940471731671881883016519319212524523510014920206239191318460011499989838393921127119190199240281522095946212288177823923831647022243128234131630641372324181172452371068516514913823533641257924522815319511161641571071933135243231472261752258510912618224110125431593516915318813681171702185517422312838251174135551681521471895412823247112243601172528494781588832158282511036211921319525493169250103304387128851342332092012195511115957117214216216236149151113773112251311342471341551431671499123224183300170129172875580222217721211556697918358741432041397945136246461372272381396719817115718711015573242117120192310421332296515018248717186962161221971722451781533267183241111312115815352199140127193801541013820648171011541051205415310222692111261821373221572124217184466714715110356862391833278152225165762431478243781425415625320517125253558114322215520138195123148127139248168236631256912197220442239195141155225882511334147203188233154141176192681242176884968943128632221088064139135593437152242372012401569914046429019460642451261821021997724314550199225114135254982352385923061692218911912910172225176175216178231174892151092112069116623713316624217113416212493201101253246591501471411582471012547518637212227101109134106932501711688321757330318991413023223520182592401849914123822122912013511189175202971642225182538514218914924667181212152109192621281108217901006108488271107189992181162034204205106111212106792281472381361991579720345129179982147216312311114983235612031428221919358151161621549308810917589975181503521616611281381815516634139246821551611222152257018322210639225117131186281179412946217162241735512297717725017417482240175172412241111241641897902615919524172118145222481091901011484821472311741151591511761292222855205122203169132770234220199266012919702660251107923951728913722314021615216096050135234612006810312812991902475615157922391931871729514254538318938831894212579411121219222244795911168911118822213112115220324715410411227170114281701142617416614226196522151996224971912389234593924026172116182223221492216381891068360210322311619546010711917745480124641920168139160214101172222141184127564123102400966423021192331548411222182204863791118112118162193292001009420012232158823789523714194237143932376713952252171951771201711292162132061522132381202088817316723615421764149235163182856124212301792202618521618624715931061495110141591476207756710213211631812441779025052199274623318499219152169932541511091301241955719022310610324410691196741072163121162328111520828960159915114742262562115812361793624123741177107204210416395151174166194018147175042120840961281166716613425218623320135137118703168162511941432411251210220981382031522254991102055621726063138712388127220182521646111618161121019518723441177710013011994159114967157721442222823519275131839324710864136181421699319718229119173225133318224515058128458247148562021741532402421168115547238226230104552390244872081281788621866224151691262191722331746995157243132136574524525194813457238195141238999279642162333124227651425980193416225826593624115414921832452021243215823021117816016914112039102641961342049322817522951253320016227129551961871997155123209856751865192346725157128120224111219824843115197120333417622119616019117892562129167136137135120173131717251781241881142093319717068112332411018451052221799524616316513213615825024840197483382331693120534248104219293841942531210900161251421117741491312008314415012884128132154173128153195144185211431241711034815416775245251128198381829421339160722272481851101291679083140480234253213716760024535361922511482493182413516712913771271113012564157211792012012391318029191205592678217362818179589716146186213512443151128205238193186173962531578279672251733016159189341831211342513416015720664100162038116217523334801735618022921412223823988223787113229841222062112551191801507190341515220825133842497436322511218438157160391592462192439432251483559692051302411581662371669322175127168255198135122155182271751271011111411235223695149421618022516524720147480111192203107132216961579823448239812221488187231244173248722015822712918018018013313312710810020018326158227129185217217148164362106648178208178175225117211710420721814147825421023615612259122202156732781488821023124417371688311747101248244211314021520347725315419825523515935922472448211612823511331015913414123521419248028227240226250141386198209971451912482332072392211902192112172431042492725018615840132104138361482071842304919162172457312012819219219539138772267280214351452021272522271275553181194109361116249126120463211781914819502524832721281142401912159519619157202023973122831943120510797624311820711981662712513520215621811115281795318523310613044451721623510829811741742811914228156165248105806613402471262531293222180152110442025217103153138065020424823316618811614719813913415612365174169236154991031772078899210140232240180232212362557624323721279982222191291271412252472171015922920321116614912724116919122419520110021416721123421123727462182121575522910015424211514027511175789581882829192128198122451981161171361852492024151253313271587853862411284095167189208172191216166175216166231174101231109112255102189247172704228102272213910616822111920416122205211018997364620822523110618122052291721624674124193782059189711762032819923831489690224531931651584211192221142541842458656230140115161514011522016612974229702792102699419511752963685211181044612406413785251617572649703192134213158136251173652472191308718619433617563194113239171166246845711814921915212587924025196302052241012182311011261155063207512512919023989532214923917411224231209715730144224932091732058622702122292351381742411884952208911711310323529171914991461391343141533222314314113231292321389721145139516925514020877201099944244105190109217899815135104179516021324463313113016669190104242643529173113842355419810164622171420120035129232824247278416623943016820621685157177831221952424312851191060165241521511448482059922425261742532124664299120692151459021852207115896239311201921562248157226203250962451002151402082081605852528764521625023818196303200244992412867722471495903605724415016141241600393197541562814123411219228557632115782006611221001281861638618735871873415918013512951134120165451402482453716925517844112731812095221226169118111191995920919268132208147128212151184218159180218111135082552283661104141592324963148135621441354413831661854412615825423722310914692548920249227137200491711578115155160206192135205651281240421921781916912016027243192902351915412912183178187068114562179096190311601101410248497018251461361252247722460389472332422431817171104152095625472162161161201001482381408823781232102210486013159108532341052331841072131161924892311741301191423091126195184237182517610188106160240017518318320419024916689231932191506611961462501211794174782512922449231896223597192349891051512320818522011037810189199248140174423916013017158231184128492061671471591181362012521128119438924815813894264217721518014412411882024521140531845323154242242180234501182141662390423212736159225124020896118193230130241372222910846100130223514311230155200128099691062487014714613210323159105100169137195663771258881092281491775339179519255673821268213248193230155882555216011226197333824916227501017517518424623313310963282225193218288538170108713021818516613512981141581692587789022151302003661221234436104250197144553224128167131146240781184819554187711212464101351031752261852619913822208518312850253536017670107121096224933922311929125193226131173183775623018824799187196227166145251118483512879417916612722826100161561062912721210524710520315267187188163225661686514121132280214311920117262245720890236120327224132191203310718115071903133431431229158552472551642053402507148142549121122322811623410648464192128284224019210124741143221103232411671258220712119715921211781201091792331553115318825314517101291521261008724032130551769381249254215214411985161677217583140173427511891843011119513219175223163265425384170219019019717615077815656241232209191528022891131471919331296516412110051501881961625215915269341161849722119814140771379139126176120951136192071171116824417371682438930242828246245101227230439025122017289165254254167731582491531141121767012812281723470614240159981281444224106105715725523318319122921521217420447172622501861452541071951024247212014713534792471401902252453417357691201282126421036312387924211312816464405911823624423014320032438228129727125321162225217116122415624120212224413941918112760711232082462356921716989972341723298178193187191216190229170336383157115113236375831561717723220621114795501502312725544138216423824454229230792222251575516166155851761338923019476759713453255162532311151206121111261341574820716518344114180113223242391961322327179771911692062231954869456422112120138135542294716720512118597132517218613917424525142852344170207155212158551060162200522261022711211524418521712842181323310421981692551922618192822451514424166100143100321776517461372491851062421071862371191405913876592381521162205023819099218931002181251991842351421132314522724615513420521524410015118137515413028539719086215931711377015128129251205183124688127321240178131531802547416710511151722092950924122145620775124166248244158114219491943851367230196949914117432131421251492466122911829197862916586109371502051192056234104228187207229862553922122524311454113249996058882521295823119358231601304116198570178972111562042374465424947522494753764213853223181144220521104717711151511191502191151018017151119542301061132431171978714109064220611115123154147571961042491606240229110227141125623619518714311720219452012231681902272819818813261214224413998710815135801781872077871522281237724218913523461198121204972123922462802351013510098492333112824416412851131271411124714694197691963104213209765318016016159578223942190106208122219214041240015872364982673511228147132210912871501646224722912613918314092229312622115214717311821111621933766324125217117352401813149781042066413319228128211133151424523184591631497320914208546122924635245110221101246120301797010923046249458324823619214962233129123765241762101724617653248126115224146220127652347124619393144162131940141102132172105120168702302019912315419523441113106189101611952451932414414048160392257311119422723856130743931131445735240311749720411323013325411221312029131155163123235632221499351716888237337515119862106148914624813187706019216567604324082241088121204326181232160016615919212813877210224524929149951081712501145955712744248201351853697471361694014408319318820016717519417746751418716051210224246168454247132686211011129550135138119215324183053761108109215017816185240122129130192128422422919539210647178236188103221122203281440210226203613012493018781421182354520312910218156192715811318145124165452521131232481631422401218919218020010316543234737924448151222901062198298221916729197157310018820818020010715623957202117272314158716668122132421631151823925331157020012822350224129251612312419025275186117891871060919020237917317950122223124481201251636144167199189490254113186129137216131993241283919838275711717619420010914765255113765224176241226541521112116521338252128165244247682001669922517521921523410531281252412551162491601671119193412133718414712211305214013615212319430322262421491531028174209227153641232241133213151401282221519022172638191129189112711041560222419112232193711741042441911301136191959924433862446601711271447549724216228460128246451261431982222302510220150134214597458150147531512551701493915621324414151139218111159124194382251529480102333412888219632095424156641948614380401821976110039512104811655921421878844824019114571921966310323525537169144023981160140191296585202105193207725776824912614041707626221001862375736019222012521410324757122204177157230204183119905949991246724723315512118824316122225023201226161111175167188181158242198628175167188254222914114114821521563371341762295229129231145012163133732505432343219212106325222515211271162541352234401202421001001042161337435205351391416219931201104658430321976261253177162108965573252181250214195874247471752102086459151447042271721042522616111925418331852541531141120239279170801021726113019516748011911718211524823310363228215213472072041726284110222252779723717912491250106128763712609012914328513631601201142271981091195518616224540144142212034692312521306422075770797191602341118010255281892182551992292301792432266119239918114022218754771512451852510614123119101781801961851861942829160222412923075166183254253237223368217425323211722212161193693581623425161021531151124788112190522311585523103219183922411041892255921715254475761452541841832301202302071682386102412895961999314817215912221316471851262338712515894119145862411851011971511662139526215158551741911042121441108015917483151174213144161213144169217144142587890182248167885677198141454621881114989702278228105721752321802205210419110922011321916424318273119145892151092271822712217875267787116581014190174233201471073188243521008724464329231132222203200262507824224128113271341061567171105832162122468781391851162002394111924231160291992060324126112281691191582115418414212562458621811915116110517819232371658617319722253181782431141591991573343931611397723625192914524740199325261341297024791192496185371612463331527681813825412047200217015205692221066147158747111281227601227115310999129118851982061349245302301802451979322995110147222482917211329199211136135235220209146651412441612655321562138523404801672402543441361293112873210314620368934245301683652281112019015924466498164193193297148195321324819869591451152448518752230235015212100333010420021323642181155176425311017815538931971829679193232143551201402141851484581621413842291582271293724022998192624414918223615481991505824878176251678518015066519415822637918717522011141600104172206131063595105247875611552223547142334417714922248615588155185179237174211201251301171931722412820176139981612517134111609321311978236514382172246311101921051721586294207011722017710741180154229249162141800186227872511468025502241936420210663401211171042471402081271841546221323251802382188323621212619922126158752541841852491342291951668051524419763106993162492211515007624324162272416622321663240204501632024580672274246148564413821724710112903115241862001041685493443184691031771324012824413417252726310813130247240168451207314222245709411010128196146140189362416716314010025414391209801621492141672601109941091591150177201248430131214219230221197182128429691502055577171861642391893501281020960110993109143882371409023713894105131232203018221021573924313531146135237971711957314318634135563077247441011192045820323762359312810810336104189812241212511921151592020810336168910774413441549414096128447553432422321351594312116141397911127202952251213552321962541305186259517619410411715421631221937322411613712519915055865548129140232657316928229193148191671422251414535199120492412143298217137179392351116175321411524124436014671137131523414410139911016169172601055419398245169723413219817514922646202105946684245227914018628415591045716928741709414724740179423219148129222816116002281712516810911715222236102306216811129129537031226231721282322351219620512016124720876985215324199892221132441212152011191799117616695156105228624825311813719945981417017998222113244125203222123171103242383456130151916117019144825224012911501584811215218623114069204161109244112168237351833213223563213253606418255792461560149982122083018825020811518225495161980662461872134122241255218125182101101051032202102061862385722721214411419457245361642919143217197297014772102065021020617724612418144246672231961152441763511131671951476214142622386614381211180219184171202241091022914111715219416218824518229773212914114821554322480245241282072240632003362411941147252230551918125220924915911143316311010911020921120937173194511371911507801302401922352795185248151243138235331681223021523491152078625424820920223115912724921013996233340218252207246151929162175451835495249131177225133245476566892241011231071671437912522088832559697251831461321492133914320813863431438715964154849216517924193136116146016739192317114315919213514226222524116321325419022531253219207941271414478186254229232242475622291327208152582125712824747674714811214318720118615017814371185167166132710269731151621761375870791451412521463055125871955224110981149075841521733947481071901004120554151229882001151736823310213013910216211675193551971865362625510682243783238231784524919355163774210382763158172541881812441799924125015595671191241396624910461197195128146253239116781267624569102213121263920769114221771241978911414942187234361891003920253231101252141572151722541241032215131490167721511551658312781189254130122195691411981296018012017321267113213518113508023919383842008223110110722419714224015416412118621020313477215769011015218222154183221178801016591111895222348147955157317424183221178154108964413921720318255121161207201519124888227601931651521518601801512215185120152402422466250171156321962088110831566421460129196203120625456245865611615121711720911832221812364218323516911610442501591812117324670461836130173715115110301081625441291865112159015212614916211697241281791287809411421124132442015811720812220717033791795824341151361742621316435301281169537109201094722413480233145581191921282302191501736921425385206211222153664813155481101911072118998792481142012122606481091316412292401861624016003602334914131764123817311411020021117476716080113113739952713119234991054268111284613812519324516212925453180254114251174981711297425124112218822791157243121591904011123561392442591122159159175931159712311516141562542061872141889217321813959128761711688328582668842351702169102051121812354517931168166113209160189141243181372151371701691041652031291842131931843915716879961859195128216103782041941776624316139641261641831001721296243240561521061002452083592382161632541291422322131742483993917161137171189137790152501121214448180123782056209192261691667517515211206611211511623546106180222178126220181742241292221847120533243665219031131572261261315192179112114180214118516246417952062391682501141232292321901842491222422716625322921210110502129720152493996651571913238839258233144129187180218954230106118151217131233952338912371271288132315113264100279612023722217913815312222240254122215024017025512841009621112210062104101285099117238678546296954252602212181391062371191081662618938271891665622275226012815914986641301522132062323915720917161177752053322760239197166160213129132213651201054913945659314978205119173186202292511071041951412381281991472501181366237687512172415214912299489678139241927913210981753718010645171167204301118216124653600214214412595142102171684135196581312172131174214313915611321294981183361151220624220482338512883150177101637917254228192372241433314160186828611310088142647491621037757250246299836229232467436801565173109452148377917493203942843223624153144144828114104237188516810128718533846946135224021258124119269240308231611231973012817980918822561872034321440241011777471292102322552356012859414860192706022412812022431511281579414512212920110281240182143901972920915785721202032062778105248196242224157107825135239253208531646220229211012018619933249164125242731322321611929125161158109244481471361252552031212245717671431912362551513319316816413025515814822124230112197114193135329023473199362402531351721632469113216789132239177141577275622251852399903171200125214145251244124982225011383115101641991561001971582461262228231211941311892151961541891211352131982318398207240206702025923511311119261401160234818402517649522912082551215188250234171951242411332261432062472419018621610477117245135239189799069282386685422717222812911710302082171698983182102911018215920213762167111611445814914917517217223822312716183262105243211150631711112525215918706359461241162167167214134245230198118187191439224810712679219240234322017616722520123420219521314971036802410502301128250461691282207137229120161199152720832539223625417898322111332431532501867022816154174123113131226232281651314823548220812273136155241105103313823224617725421819522722061211194248691055625219222831004543208229164239108196603220419821911100234203243205155242456825382267683113384812815324016216540221109819351151931218325415138131275414910112214022014115917457562075753941231742301241401592522931281232291941922199516212415610080157147361882622394206120177931441672067498233611313916221637652442551081862061271721385788234218877629401173044119233431611822321813624314118415358141233154156126881309261126142142377450662080361047287107184168134226244931412559571531069217830811503863717515217135206215147922101519254144925314894531469355110186972177202926398111215411190140841874724012515169254139666311284179124221921928045226172128157530128671688162002810911215915124866225211095165211881637184222241702071777052119182175146218931062238722521212421966112213160187194113132227209877793106148829136125208221782201301449630247012810216513818519416195225188220111177201311321686425420122005616249158167232186971251747012313713192192961571392521822528214102171612291294313416412764120217160187204113164222991542396192235548023722231120160229182101127371344239361517372024080161173200186237174132403130124025318123811273127181113035228622102325712954361666729696148677632233105145239164128213837317120721334227133128726115181218239111756145175234187752361921042061018819319322720611072043104117252161106167177122151573319120045125359613014523717511210820084171248981152437721122526231150661791861401572132311831374623513001502112875914355184131701069318675108209136246421068716945397917138997566924824820854886181136712216317122002532310120074206138844809214285768251413175102791121521608919023920135538267111191237208116221106168210109178209123701624016451113181472299153692081511842101919121029191581521060489423961922292171162211141762101171801988312622118823060216101187391091451042546415218200236817523215601271152071011281077191174264718006032245235451812311004325077287013773159641251345818411224911721115818135225106215201706240019219268312518421816517522017717520414239444628019968163392402422243218991653511618159214496652347207116321614496320119218320814073188119270272341178178212134124132124201042423297115224188200796160245150101991501026716670219109235137623072181712431375233212111589816751456313012922242442009324020024115219343812017212189224106954415418661161832101918921628602062432224236169112236401792374418374824172115548152224354264195132164112149207661925246192111101111185198132204229102522021188931182114802311071201282041632308721963142881271762091962186614184971761942241971294118121711464720011917734193109921117221615702511051802239248105114821431123104180189491561301221361857153990884321341691229112157181158222181997433240128187224272251791201463921155194204128982919621419145102144250851191291071591472424616890210120120821681351481352622414122521514942491122250910864112063154190492192206748301532360163151423125125156023514322025515413266152472252121522488531418819739622633134195205238193106172104131144221192322424245991416925119604518810123918919735148172656822111519858254200462391041842283231128237140822471122522501934101523956250126228261321663816715866251172371591961113253111231116184121184322323412219824125512512510718949523331881953167156146143911992848127621822925250172131111391791912243202509817599194812511841953865201261402408714110510423516187119251227023581675518810376121771391781137222281372361431802335202251175173251224212021668741239190701212472120221903274017517223328012128672087532240587430801171712417560240214911112120204025423212414311201283212910121102122190249582484624418016411318415101469612812945416824610435911042091052381312212532282181676244107245931321032352392322321628215711317173131255134201112541712251854373572297557235224193553440122262361732371272522171911131062731631431202020535462868901875413255333024820625010200189214105087873162901301280282452322091913685225118225931252913042402281042242086244592191292720812914674411881202178226594324711887681321247911221719245140238591367722550638375818259751511591694320149150230152215136210205682332301941161122569189124220791846216846582002421881862391987954158154232531201462511472191271401641703360246411214359254342209517320277106432216319359182218243201106207137712371233118216760108771262201541882181501882181474120210182538022250642618821028190218301324114620812718020216318920890114201152159173760322042111923012123222416569241268899014115390141253277110150546371791441634720453202302673107610187441541752191802231141041912372121181552181181552141181392141221392149272107186233361912334018911043186108209121143543981844713944352001034513725315136236177122143209122247413011518419810118421410114620323217516414842091922061421318412820343624109112311715121722523822505619912516422221152161175210174441100182228981752342478557781391881922146319315549611081589110139010814152151179232289625021751983148250164127961792132016018161133962991402355720616311914921911546105361219522143284872451297262431811205186188261241859922521195154121811382432192495122157372466718111010089331122552112869551731792161101301950624174115159196167024128102112220322589208120161161268772363140115209464195133016073401341031432121041641477720222411270236135121128901593601282142317076223891511734618510240475214922248210722211321526766015220313761432541141352061238610025402400153691763610245738811341121982002813139601681851761891892001461724484115113123109250149618514526231681352162141377018015010412718599711458587177452242517671197249173961659138109150155220818822562240166209143596623955746200252102681721051611141211234451832973616251206818822515776113189701062201237515622821520437877659139236591382361232039386581932273833623269600961762102918321815152222824227548822514048197241941506129571742072082361862311762183013318355142630881051332301562251214112012820332838158227122039128120160234203237461921241394625522214823545117418001522251217911315216321244872082182398855231541451452536785528415519611116019496213624618786066100196212131150192416234896164222131191091937917825188131251805317318320430200101692416917522012225452189013625049240713471881632001541511712052072112334716714221531351842471502095823821855221180108189101612092321812207219154773565127226163142168113301077020470187622471991730155117706023289511011197599020811525920323690239891812191672688119156231573798204724818200125323818941002075024824801021602171921561923213233592003119516760160311401200220519411931245181627135423801182241161411942082616312810961246514465412828015818410020043176188562410424218959561171881564023443322133423117326213131691218924216245721722058711638967114213864536023521581121229201302316842196851612485165232136642031649896248154222614616318190493515119289136337238112391321402382189118456018169442181918915529183221517613007466491033705617513717732312471222433701381101291812351411781592393132960841281356189719910725116381642242301091914225134238112725513445191721911661111561212441178771298123215815240134199311855198011915917713859224001642411611071607324894321180193891022511281292552376016021011522255159191021371679342558216415323155611323489305656012812262461561142211232222815211612120961391392555918214024723618921215322522171052462411352372261415343910712169124962397721711074249192961518316018179242758462020225120261422216280621921582252131314855941963513394165188253422291732154011118913011494221136250772971307479615575387714622520995211630250781212242532472234742428225220924930131138730638612455124229242229559532471331724892072420248647651041220125015141272112268286239993573172231552335910207222226862251572051551836615585991328413717523227637756651581503684229321291519013051138176972211227911920795252236232053420115421414419687198217351417524914582132161121455337112809324517313684172146242190153062126184216721551244692186116938383143604125210619271143129252223910361011667018524239191138288622710179217452471741815119310231012551924616901115271735542200210171002347511520416421786130112301941392213013923018847141120231141197233150162139182130111801902198122753739185167231541274942250205191311132172492625012913155151911741362244120471991324912781081756054206632541762372281062551772132221252034524113977491397717720377177151559987219226875922615918069611481350156010565235571742462254115545171112424612045125160148214115215161235142109251452032466624324691230173552059111452191112191172201772391882352161251512181152151211602161251681406290225619422755862276386205301739815872501486248128424824415125124415124924414924911623123183222161552239718021251200110121128425163106759215013520711171522023760148520524288961761661859416318111099181238211922309616524380165243122419690215145582154924043321427195165195804511716415854882275692712371751182324118311812215323540182232461796771146120015454967331180135602341018722317178128122964113977175451756485011221376112252815208246761681991282449125518615212582478683251107105321001525630128710937541415218104177209203186130436001621717019231812510614923118324324211721923921714214184782411892092001591062348253125212122461871821920352453012810179184127020516021176582382171812231811298319215112224613283006426716012211948253168790207367024322416710812886312421932271338025509095401124164772301742501082451342813781588699142702434517924161192402419646251432859239892461502171486591421580135170281672622015019744208188128185326822785122742372345121309582398914321418521584952166189521431169117111113896016133227137921081696120235421821051911035236811511811712331502171622041111173211811781261561623011913345181419427385155808714041726360692312955222021531358310432131071382032816841341801489351150955523518499219921042138610025118435114181552541131192814419214722268208227174184213238132190742472228215122510612210716120520135245643021095238194203213239461189010913966951531951332214914391662257111126168102120761281168958602471461961198919823845115030018322212100210112931861543295152825572141219121520225122620965104120219120312516820221321612271747725129432424264316980231178212157214015516751642501645128243645618815381204067532062531497813112018212252843119245149571601458716524606721652461252291426420168175013244114134207210412915116741186164551979716022915215466301836916011365189919260512223691052241471419217613239221491521835867188718699198185018912679122481581319661238137901089941061112120813786217130159255911631832021691632121508065791656712717321196291091842091337650158202103941586713206189851421282171284921124719211722521253154140157228472255124371921753513514129512412382241041932241301656671752252718914130162191449613413520216817734336671219712240523226137193491913178172602123149144122136129134218236483916714315658542352284220890163792103222622433861371841151041221218821418419533220201064155113371381667913310333163976641199159314713291661023367229196253147106225252179135185210192671266538810410989918811950156130122321341712441311462131881621821845192351437364153192241102151324414686240018233641924923419192681611382239521163641836702530118222111218121109245853139220111155120204382251681212121538652156122199209103171103168126801386924465112249214113713231962246715164131598815513299418160122401289480501531511402507203135254207240128742242398171193115142255239113319383175175242253223322262511591716621468624101961042546423473183221167233105231641801969913411379115625363116242859913215513516520914679128108991490712382151011971901071971248914317023326198726075143629722628161992251631662392462067110217518817418511322110260178645328892419413114140197222453560172123117221250215200220982207524034541871367192243125561909130216182109918521315481552238724842152281001031912411191200229173199157314425120312725141185165984233254170190163053431092381471991711912522491751122431609720890164111152761282125227255124321437442314798240241632721457218592522381832552092192211391992206411112120763813991888891212422324994578410519313732774233167471356013724277145252111751709117521180250241192106364215369176542022895121243141119240243194475234343259821951551212516710818041215255268815320517020616621322988241117622821576219110152732438125504767292410218127073148109407255209248221659124019052229126973418410461083220617614923118453231767120224722215125210481246831132251902111771069155160223732485362021359593248692212495422987231220120119142244212299510657247184253248227182189159014612872381831972231111371272081824716837118165211443210216553242161602441614422814560228731155650791602142001997797751621288914107168220165175216113164202117127610615725110013123168619916219310713423555203243159227522023135621467122115168458162230248113115130164891262425255305243721532301671422133914847015215196247877018122249183221243107412421064124224231130155137951461332049125230517278225513517819212112915561824114223216172161742151775820722282167129102312530117918011719923514116217587710610416314111032137818921246131538413618720310865109119451342359216641402541061806020910623112782281631428021263208134543291682462121277820215815116118113419216114224323313124517467245174161312513123149198184116210390153192061149142612114222415332720016118719465122211164499517162876711269951202131623763112197801202171605467189226252118781747891145245965322612917224129422311931062311225293165142242541992623211210181041820135129134181495652223178232194931013645624014014095285128628823154802357425077026607106801431934422512970792241299158871191338312514226129261882221041321078809315090932304623353351761551961158458117221179261681126443141214208134171156382352211506815272482046917623322392061872141172335927179212193158130312122232861241771852342031731782357080324019280211091641985144961622093101802205011118799331851104434190102561931651752461981721437174141304314118815471882011278622651451022057248129621117516228172225120818819611994236512019712820111019010546191110210122203170187216177245150771996125171237136786186227208721611581202401931431879831182711171508059239571386184181221230642533131149174194219517418714104601257120230129104211519299232161254125218959104172430881122241210396410211641626267931262211161802142948967322619140102207242891913116192312821319050167158181992389825123898592402441049166122247691772392013514437188164593524090237134311941361992371611796611150161100817920273209691282361901192847191611423322282596413917412321416818702376510221512619914615917520520321130170114701432112551759811712024723496202234802341069522613036112154239593524491106108923313811812021027247168511061302393602401844323491244625317714318716323818313545183135622328123212212541844328621635716923913212857882312109123721295112447523716911423216918023916917823917111845424168163118852161821518818122269831981612292408146235134955194820443569024018410022416248123200331320214221881901867920196224143181216177591529758124121671637351443299250216865381622716336223156172207163482327280012189194235432963206682211116171210120345030621802301481704814525222108242237520912401402421491516035124451855310618160821490108060322040492489672144247349121515612911422411714555610556566207139246606210425115200529815994641462651114139433265208222153213211746532240250001441632042160226129181132128122914810816032417013010222119242123223137196401772011932316152151128245301411313430960601898523697221192228247157253223178247134241096722129191251795878681091621781835119477194247130251183142632153912206721289491441986136825587121224159232257609413619219255331206391422554358133245763826501481142103524914887210105159196211651231271617625571742411991812322091119012010917810110712339561961571142192431538319410525121614718662731442551381452192216764179160189238413151211621633915911713760108229291032302610622730105982031262291092211512232101262473514787222212901831132723855120239111481879645946301601081285217619317123517361441902112321641996422991917322322839255137160226111711711714135163248163243616211517240713925225424719112724922915116197170182225483015324001222521327327724923222111917523022914711813223014612080162239339611925122820923425220412476100140162205138472421591014215208299020104317613074170671488819117471112071402081442121843818421015625524213563141141416312482401401001750149722484615815718821011187164193161691361017712024222420111112625421918394377217624113324564164586128179335627824133719912113516555601841212301315323414123213371217022692679416622638383144169452062141910123410501161642176130139218220207181100251021781164322523150146112462427621521412486111972441122492252252347912243126901182412419524877248935612027255210130208122972074180219756915913511814823915515115712221212698185121207253230132229230152251109113143187146301821996310414112121626245160372528175248227214136199452254320597143229193151641292033424618248917123812325519924330171118107185974618910022011521597444441431219530176322411592301791031332252112522001051262001465224865831961465210213415948214184103146127988211211082248201148248711913015914552521641892481239471652332462541421462532422192091571651452937254991561445773196172200314556352461542349150101172101252182191177822459205971438625113862481286178218239186118149122140243312317025938530611812441582612212718987119149251801318795141711031337579181123871851071031377525161106791332511404811265265447131212121718121021177220261201915316124633012031981486133240252254825123560122107921874319325056971861122394617911119110713618931281241412352020727125151952271013412618812962862314961358546146171198252609312619046477987120201641162178080160471861000233134761412024718355102105182232176473112141966439572041741231182422710214417932102678510020420168353156374220816817619122447167567656112471542251791922213113297095751791021206222724520414526143177582501302003114410816212957471007954122117221115168207212170190160861591618915117414974100104212101168215165171137472512148811035694512823012017319940807431251582071301952015820715361981822324719020811189232119952001581682411041901068224324911811315822212018191127177355831792361433121415822321712521514126482302496216321311024019501101201882221792431744547871672291501492401781131091343888246135173120254469024023397712046611523218812452205235241701559173892071377690691798720919087645172691692231201637967310314585235771791422191503165781576954189101781591678718722551141122220252491763512452261821765169631882371501552215711910821811173102185222247372546721842011012531589859180741522251081817120322411711240242436622233250188816249091282382032521931512432421168621292216892493774160145250119172812204111932321631516819115610120314318812914234271361297250203291992342212306917237137311842492501409329698680243106103561122332532306412816512910626144019619511717410421216218183193946361151525043287422925143236123203128110825020223759239901812225411118710919320321128625169113718317118722786599930161932321672481261631322218914911045692461887519821066235113190223234642422346421082107216981152001482081199023224724160877170142127210292431683518144224126123401371121502196615121966128150231155253231228126833417517141543616312822574419523221516421418518722065118211681181958812219588120691532144252251242023224239201184231492235235123827114212881450314415572181202431242125191427712454152108200471142215684661081835318221819201122224222544113243681073311194116011123221511823128148222253105471573610373253248219125197218681701112508524516019779215212128911301561891611141533234200331301986725211261441078514313797024536410716112185221201283211561972319418914906829481122316722919752366233136176254196223192471752008119212874791219620520228181511019013041262392181634613024710425418718816319222621937307424814223187147251851371386201292152151174656713414679261351672379668060108701532018611371192247219362883247137129242102812511297156118159177796242486320136820721825312776100254192223229129175937524412141216128150114210372293699159063212632459919114817954141198172562910222027230941119017811812119621668291632392511745233156121232651171222201872141901752512312496235167239147232241232205124599702021991581133915667247209252831521612512171771156153113206140883859213222571001671661959115512951258324716323715015511915217512792160486422511911301473821859414419471126179214942547972261828515891797979343399781902151602261182223231433163789069118691281285976411281755120641011524154166166826295113494984915921111926136133125130120641962391154145125181802481556001772102531711646022081431831463222871301631892219525424419914516197197221730148821920253524415761251218154191691451191681822817297517920319914158321431911132217532721611013406032189123116184113255439118172222159214232917115610736204214231101104161201196895822644224161811501584829331292321629419531521652344154502363723123721924324356914511245715024823138276218725395813018614814340148205104146162296128319619517517125418714815923855232202166333248120177249236114203209165166221247155128798151909815191991519198150154342310116111210160691052081819622619237240229982552516814601628218762121221802211802282312321382421321811089148520922371901198191105190239526311613823493582510796782412522301978183188184411262183625520072227145182210611192542262532193518631199108217235245981362110115924718631198191251235253239223250131697192518119923825117317711511217523012869137215162152177442459015017815037621166223579419228471081703310017220619118314022283193152204247215123247214501284122235152144232168112291689909180151209186171220587415721923820990138156322384611527107244123216221311907523813815215125177240251892132121741141672256198562071031681452179122722281782354016711885561292152331711182610511229196155301405312224687826535117110131213460331492124114991812412414975231932712617414232958715217519920721117222326524182272102242161701902162141441612148110061922375086235629423949822372101261991702491342179651701031641981171781931151502315394231492032471582324820424218874216823718317319810622124016412692567168192977621230160244441435321320068157512451401211292238416321552199123162163122701031459312518670237518161921281392341613123451321619411911316740951191681405820724394128745694179283836112154915423112045241125128730138253151249621311971422692221186471821371151163817122138170921655250211272541682541942061909825171825537161239104149203805131585212118219821169141165134170207212281742456448023467131121238183712075513320673171520434235255601216173664603269131133221012361771221191803871771099116189243531472541819917434219780188919222724624013523722515218194150154131239183132442021931617921823888552234811143180108471801562271771501972361901812323321131129101673910916115271941287305371451692096217232401343203822461311660178240255125185255361354618598882412498621269112114123822410144272522281471581291291026144060117219109171214911507218345225731266516011401218475211131912615824611218151841460240164511088123013525018124010903511717416313104991411505922100134012812922282123013125411412319431602381815515818180192168160641674975189183212978926248184379818161234739122818840961841342229323422012421986122211748610413106471181542276023377881089157202492052012167691261799812719632321157364317458163301801352232390241926660048161882082848436713923778139898366472084222176763752172142235217912252088610021790100217126215741262111322521312420231061724023712812024019919646712213111166314542344239141022485019324226322457199200529912649422332489106149111614512272123617624712971392231934344187114170192901743158222940468192136222401932271181442218717511323795211568285726881299213023052431506712521884226248201162733613476120401841325269856132876530150140388291912221269962911919642230144158127210118207482422452552237151441752491291084238255171250103120641294155281252231172441212191585238952034730778198671311401952101821211341899720343620824014113318257164156284208102391242242824062240131232267167221961122072613216425410425139192229138891971367158103128181122206130255111191182492551961923319720130111226122988160531951292035130208160160611672002069813846218817112810721825231228193016916789123621189599668112532081921492421906222912518924717218818318513219010122925319018919173208941982543118516415621124375862431402222333024114253235771151981181518021119252151228511744110328991432181342371791521923917115220432463659225172952364112224065123122156174181239118318315713423818230209140224189842392451154175142165139154161253166452502359425214417823893202648301111749124761825822413614510792171181230187597229255181240281515215515518318118141254232124191974515140140140196198198146381611092102141758754802013235541301039414359732425117739135702123147176166182239606012317115620415615541251761771086420512323835131195191197310796098124221381693012613113716121747126246139182230861972052141323910423948204336117325030223193223916449255172128102141328610518727213147188138235418814095812619719217723983421142461722442541227811810494266347242111431802223126115011712125262527613971821504091711521653720221018102104139210245196233198194243166194474537252062987371741194711420620511512736191121226391058638311622221282151499913232134672482052201861581146082163385510214832411223665235193165166164371212041786098893062411311662002517722575210144697322460234196205521227721420939235601672624962223112117251292391301927782051141891991062201297562521824523521332496611971411222514644116138316035140153230397824214739516983194163191882077027127222912498325421319191622262281097081123255323621442249996149151121554555812382522221201172242481952301965732321148320013020411178226614799129113159149250791371311671961771471946119194253227194125125132011252202129723319378781149167341962371179173213177242242136246218216230202889121889111711683121132172368412214322182202106190231222931931521511344620213016613317273302181871601711962252882371215812173979023722083225212937823717311623316911223346119233175114311721611435412079112253610724125149301128137161901611514620713425217450232411177578190175522315213687961944564177224138252391467367174972491212451701161732143419912910625096459918420611212118207738610451806715918248676084199156224249651813524522299282235711348361541102172458418419314170261881352351891601922419972421352343220530231178712712465351319014718800158917425518048104176198759410495147169871571749115516995147161749782322141002348410310411524314018613810522714162191416299245222351812041297420723882232081041732154463968124188401066271731021802221802271022584126174214152169215872345882205144931791702528218954931871712161218922543910234461132331847123741119133231261722452344411323544117175205541742055415322133173142379529729123769597631041315972414424898211255141600194721281221510213220469153239721577511516173111412401281691846416718321616623546218135107862281151913712018537104177924317375149143531221802205072552211222111722431822131622082311904120192174233186241881572726184223271348176581624716461207296304761381828162259421715463641507525946186108801151173527416616642201521659190127612810471295386231209832260482088210420911619512498023193235209908784173144213117207134147173209821041823624167352145835305277824020817089253852121907416712910642252761181512177317427731752711723131251199115680471292932122512920612315025321142144223144165381901626313570211177643921991061297818919923415222137180246187142931652062403608419915217576925319924919083226128113129239184192103161411206530188321112268120160631767114244131141963151441942012442261972142241212241248298446192695423112678104243561372394415885140127179156201311921676012871896022115324410596013619310235739237242142216206821398199261042481971042501976462201315011245242205120212164812819410322717522519376991271401709310720513783199952196318124243364196100191317821014416940163252142958122457311431736074172252161312158112510220982116232100366923915237513313138137132242543313421820020832162129245647613475171013019936295322041524018813510822614321819829531421717323821181213458849702004524168010861152120518324122025590181202023682232003748121723957162185411159176941811621111181538171921722722968117218223180245122221134185157171101617821958254168932261132126919214003621623622172271444214159150118206502302081181222481410216485236974013113310289561641269923124122021612414712017314857184192115232541094110724823910195128983214420224425577412311596247255527714851153480144181689324114097160268822425494240552711821911519861245521152478923922851234214622052244159124392484669221901993922513752307513417421817212024718079938220723325038234176183212621521410316362237294315046431291541201461501242024623013685248622511361312382413961987841641242342711919820139213218511448671951461812132001951362622623619115521125361242391991712320713402152093511923358109215176852111788721517886215481232511091043262113149017222583191695015188101792481751332311201922092091771751757924171231251131071211601671671352051021473841121128180169812010022010913022050206163807829621862502322332291621421424615713518118312217825024121779200712461941862316010956141271401332564245814219911419712828110681601311142248024913620181291541991431561491015521558252132081232486312915012423212312411276314424625211519414731321722334324822614323114991173412221218889112195175814057191141222122532352523319310581204140208127172150462035522516510711451212562559249217234130108160213971501865675911208171154105218148994319010421990192284173120402501001812451832918379375122239115125222196213190738971051304144672131662025457170233110218156228228741992411351731691391781365105240162521612425238921635121569020771284819924710241711142946163142059246222181235431182324711721364782521181951492062531651422421711661819517087252121755751831792001106528180441431561971457483166120412272201487319319349238169193186312151022925165130157139166130792221992111460140160972401636141124718389123351652421752461712531673020014615010120975242176121153631783277190179771262111142559105200152401188414454465860415750466158466362445921420621721121818418713226186148230170410589761071091621723470903022186155216842547471391502171172151341211513025010618818720392587528250421561341071046785212222181871741231509324744641891652146785142401912181851911941852531581631882081742331506787153199241991277024501931324174247514153264762421311982491291639225523018718019825122221757812989671904119615621151647523040243146121931741132331519022923117154138168189213204190261751616223225701911501232062261551181252132049651620217510214211221625318122231174440483712129180228166931031851992455050225146739724024470138132132511402432199184129195132548823649941636705712914713020819026150228166998516697101186113851121705114164851531121689514916187151109361871052239323020989226218126143214122199734772055122941772364124315222572051167333017298542358104789541022514912717489123811752491666712314517922414669217231548523312222425123137225832521601429821518212346221149244193122159193581911741141752149812212515818122418621118860126181255192106207158213238228213174248711731041212052549253824411618816973132750101140182322361801441773624729170161741752331584216183223542292291681172231792364118226615223051231001041996059254530133134129213185542215212472238610421411520722962241456096160204161237150249121511772183118358152128521077138419114901501782337190516052551221681542148510835189106321911102042032111741891841713383398178228402251112255642216142123141214186315116202171802221823636010321923988117151216771146012946198235221197151245129713417115781239416072792121402081871831941131843011711015116151218193972516143217772272145922192361165118613711810417064169109951851571701271602718120517646991032512920313577651152223174187141731331822371832375913828101551721541112191412125112942302258791305841962478618715544816737113945161171189113143591632311016519210213825412915818414911018820280167162139017765123216146114188208124192747203139215219851771222158111941342461436727168161125229252482148200951911676008624140501132131961096722723212596121119122133107251199129249134528012978646015622271711411239192101313134281684124246218122136191875823916721917641302201331402301271742457365113465184251014515485135228421651492551541260161708089451691321824015613171709557712821612540169170289818441156691191432181113322516916136203221514617906809228241333330176136628126218382461361058815418247901048204611544212816723131161223228224251158163479453136134612745151661229129127108188162121792012092476118887492482541192812424420920816019104216792341052432323916167209944206123462496425497123714778241342381341241601362371408104511172472564852139192354161945422524153108128122502231142432001186711812717320816923117525059341102541914798241255241229712152441522412967107121035193115157374366418911041192251805117412320726642611411215383244180115222105311871972812593205861050222166188176229109837913702042722204151141221182185132216682911813661174231155100251261924222616228188106226254134411251671071527722833135184991502252511093514186381561003615999381561013715611795896235149722432236799239541661331105311422310120617610270123692996392813735717150124130238159100106227173169792132091672626209140141295411186911431831513423014624872114168501518842199248175132231120128193961401411414125423212419197173131111109109245240240327725058301922183140195434718812025479127859273701593532491801822395120478205249249248147134109921538139013722658253155124142107164228112347172223048022932161250925580544249135148216359207274801246315440122331491491351432015736820076431025417582081521278624020248194391524151668889292332714113791281191781582422261392486912816018376161361221912238512112215612712413019110370161834013810819010620577215230928411118817613915916933200210201021051363270253361302431662204710891101241357414615124823115852255186227214177125204119193100195476315348012721929719533241107210719170249197331672341561481421782532432102271590142221117415423135467213015016412911982556981224281436121722453862275788782354617810975511520584118201801461754718910040187981214643227230235166772157668249614123390181951061125011790110907911325323920322723362015113018073238161732542094120916922215422712757235232162129150491261518379018191115410491801472812664161252562412373724122510120123869812824019215656104782256391515214925120754135767267713617767178163237188115291887913516415914220263301052541728725011319231184140115662181208282119668011313291178879411972801902721292127688411713287118136123471691713312184162238922535191101471891052098523048922355013815111774224168112192366429169115238171164542231771793183263454611614922110111721370152422471292472471132472465223823822916613102461575141412021421213815246924724313919574242232101520422660250189921513675242651401787520420217117224220394165514021915346692171108017818162169173331851894918118949514235111520017122758185187331101077223421238109111762382241641181142472441391564737881481562341723613311623111207160244801591046328118112118247102472472402471191142101861841121522142052232152012212192052232234360208841578895241165513594148237121552192437815071961601621081191047081150219189108247234434420617312819866118991611272211171912106025022176151202212283121212176232224168228240063132101178712520211523324750921111252334113205101862372115921028143912316824717892691972251952101953194253178242241921762302184252128412422344651131162132131281662021322291581157962061742462890237768910514190148416024567133104229741332452551551541512491602541169207881897523510921123812386205551405615359591101552452091203111241386211230165190120254171207132128129192642286184231341911052201161951842271501219517723734112316541168191212190229134201201351425876422181104117157142176714565160514520768131714714818510162432188164215144165222144169861231710964660801511421669440250717853193253207240188201100143960253991762021211601302149578513861622441121811115815423613311811220321123418410752121291223912216287218661222032990238887624223211189564212812922210722412923021910223711917319223513122419414234203174982351297413525410187158822764130150668310491109250142230155382038225514921424017790122794922021513120160187132542182245335121522177724012419918562163282148135534599210613952331378929762603688233132151128118366422713318616212873011813413130117696223289110613891081248152107982071724801099017616214825020613888211217510519021517214413324783992256312710712001878852214522017311096221785042149522139138204302142461432231931213167722326371061779921388104352112207112571132101982484312124019922416745177657211762854363270918810523892101351401898113722896161251891705016018119714875184176632462502002386713072197616817621520037106632901392820823023118623136224133134280140841394219375391934182152188611966792517246154712917614062850139216103161521781471717725195032193711201761624223896226241170651642359645121282060024240119120643718020418914124410918023101072761124819210524710514410922649189325217724810972147111065224245173227143128245183140571642302977182515112217237152122202117223391041879820717615794145192380134124191254156892553024415617325523923257199255247132151243472176862231963169167220176156837821082793424725939528281591177757197216115214119239167140248147155771921371461422471835523817648244138211164711911112352471662512514721203216552176048771591492322412319457241140174119194381073156181217491921361571061711420815218919941250565124583102210199254251126761436110119813655243140161616418562395111311223110193216982261062322664143220235231273636229100112194491031752327791140551901867567199209200216897120398211219912141611652114510725217412164211301311311031021022012711619022317615071206015815715729105210179606421642151737111411591252357155171139432001331433160941151252632324860177134186541052292502459686161225104169405625010916014321241022198020191868641741996512513521823912724313514519373180482321542402402543197033176203143845172543122611621751321465910111118923015224234101351440188226151112172249582292461592262385525511814612712213018711915427223124157198205481081881602112401656479383148137611161241662332502202071412725498457616724722376115025511418163179163248231241110219958314601202381521518924446101295611114920714177121137123249128228102210882272228912619413048226129442521904481732193524595201761662623235854625319714222118317321917415574112441961852181942877126150663911471591734520020917228234421481631952072091981871323224017924512189134220761952141557817918816869113234126310913811510016224120415623623226162997134521222265292164103096642131371133822394641257154478223451668625112618240216511991439114819676966167165145179772098324216816915021233249225110233199932051911694425520195254146250171957125425011911319125014319695254462452311912232431792232392492492392472542341191231272452192211912481172021912554224110319176322502479523925419711182254227871932171279822118622420618723361204923844119147229020011115318320891386187160193250124175750246195221272405513114176209292625516671119109667521394105205201302171111861641911061925218016924113524213420790249632341462541881672338712545191233107253109103211175106202142942011411901561911741591783243226825440181417522919922218815611231164122511411024414918815223421016382193143100130311391216320521269089124184180104631672461401762412111342342117722615911718325313576248991852323920522615911852253822022551832021463518825011510917815919513320518841601632492151731789520069631091472531788924211515324010311420919175563105182535916869242112002282121564319018125574110236149156881361117816012149151178991017880111150195471036922220414318711553233238245212146194180162107201215115991741007122119014636172251184175229183310919123514425259183226228189107412151781622422077231125251245761236707812168326117232352361067884692091937824947187154126371062488480255137136243333231511724771301347923420279149223010622525324820919615987199127179581201101815123717760988922455143214244682518822530010825065182141305065210886275114223121180132115154231217871102151182198412685159151173214116205961602201902531746921993243491422191951821922293819157177551961122251041631072434599327192134190181551351141911491501922381872141941241572221859504081929617820919249622188441432098723820812220392124691591471632012016105129234515226179521855721815272025114513064782319321989111120128801932015157197652600225762391053090182823834189102401901721513721320613621312402232092436615023615416123615420912143914448193241281701133017411523717516224614821924714821818322117710441523361041901052181182191081762021714416018719618618320414106171203216411851062088710212795221762181753922292091172151131502396319599791131253118170173116196782402526107233832246988321616320621614915824871934917112511317112524110414020864210106111220192002331379323712968244163142136251453315219195158116716310415911089620555520653544521616158128122208782910017914212857419414675234634324229173247281741151592261232071372532385551476312579121014312365235228328327146767019423243612823371238634814896593520120961678724854122814401568224714138223142271344210221142726424110160114219224140137159385429156521122216244231140622462171961844316613402312243012810017068741301761738714226822462764512002042301751010432001192022719390161124220120181914578165222819212533712451862008410872147151037773424615469238736024481432201112615016623319187195511081719181548814093622411948241861482142555725322125412915158153636413296020425359142622242511932532356382173915711274612371441142103423016026432302952199192119151119148113120266422003256218225612691195552145024616201187661173231527654421346723118923119276310321419176123123325515566702551598912684209752402134613023112107663192192105119156166193332301106202990202731836110360247125236185247156712341051752121791901692311088813717523918022224814520112364612211022524622572051302461062109922218124212620315616123026174203140512407323011277621031817612343531201475323561279513207241471285213922434611316723273312111920724923724955183200227702382091541181312341871901632331842131969913537227673510310971501192361611442211679915254323424514013110324813487119825411049179100585825010616815318825410152161972543216561461961192033201201201757575138635822311188203369696912212213837231191202323215511624421216163961079721321322014218822720223422713543143851071102547913222015620317518812198122614019024771480110311278222320031041391018220503313424240188245234235113145811881222291147914321255135176242240241253165229149711432402321603972255792421921151114301751424512123208201798941641723543129130392221881421145212020380237217692491031922012519132412055522018515310215613961561158252121091131821423671911521693320448224124110194249194177229114208882292252131822231172226114922624124613521685391282253829224065190174285616824134229199411502056939710614379112247207240128734239751953120013115116525411662146815791951379923129155214235230242757014660619718222261641481633720221322229234136242245682492501626020163132001141173371096715036660192203501051856515522919820524211879115247791151431412142919125412320716391976432224116180132101752261522241606218019126200128720670239152226125250641141061501555020313993146198761119510216414551242200105121196681152028024313711021715229130159254199175312525318212212210924624421722923316723323817122723417123523617123122617123922517123923316323920121024510023312012010713180220314324512615255229841947022277175213190125147212710516157239146158224138193641492433890250242184371121815122865107208180521761911452218731624272192219722020110186149198515229121595517040471862281146621320522153183211234238238175475788113123207189235137151179662112551942022522205532448731201272381113515395248652262523115315925523253207191115135566361232102651162251652413611120682311034671531302041672952019191150231212351142362057549183174196651532261552011191753994202121851502715711220124518872136161192141252402004413219451775524299104719767121052081732039183174369220212203248171223231272402502261911882542501231981592551951922619125439227175191167255245636163255792072432551972002521143247752551882431523131322062501711112501591885125420418614617114167321661683224614212156271215335362471751262331279694248791981972559810225220943227143222232541391132411439423254192204191248812251249206229184252111295795176225147101133942031391841462915024912164250159223922819921322113823122214237172815822442072432162032223718223699218211101209614132496490136172665901503160225106167174123150962411651511176516353180137701832143417921434243209687321357451136710062227282472145910245133382371832051221391733120012487154325113823741859022675122196106191434618816411497246318249581886045110140128221518455877173251491671113713444180372524064213121180249010011823219207111256511521596949123651321822118694766234554724415322912312910713525018713910931181422512613720013577129678552209101189150911021912015019496532181189615622713724639230210199276161711042532291920212246592217318320520821416213142611655461165182112971251981742541019914921414421320620025117822414510614323898234120157215881578795185219362152479710721213060116942625218432812729022010532251202246571196227174104120491435916332126210291124203001276335246931109891101389104149264253365243862402222179197158149128252166696251343119206423522210234104189199140208231819124249251247148717611371951171319938142722017394801812941322310432111218921825411391601300922414811032154720579613022566184220347024118959171708318515416164337108521481299116825258228191536159118721491918610281792031682860162130531201602365880152123858523216688196214671552151382412522711252217961351401223723723243127220699618145166143103176462601363394119219414153726494519081154731202614412812119612614497801381507922014207112228245157129725220924216012018816238312482636248187602402201203336188912171871410486241911182221112165018312213421505616515616216615813424645172255155118941552211301812531912816288379132362441382206810114749662142417115621120619385112168238191071551202201012231999613929821592472352231811585124425577331512552372410129121522116711320719210518314883192323810510415214475218105215189167141661469418311622122623623116127200115239252472281911024171152919918922714318713523811597824313863230221252003322612875210105203176253219104651111532112231771001701851351557239113736277223251153109244177710220472462361834515215529211718818172195155939157113776067143632271511122062105390195204219216498821115618525445173775945117204612131310526707822789454206628470160155871763141181121171222592392361161662495060318311120912411319510717045884862421872301292271997960215173194871321711925214242641101102382141731046347822319232402162007967345836114979815015219739143159401821862532222220771211951351586207158249111035101195134151209681282451923138150171160783725217798110192934568313230703823632559822962217700135181143181178242228241992126364962242553960160122552412032231881842381332341279589191241376023930140591522272374781126118128582152442152511731912717061222116516614419917219196223112193138155110201207180201008911421120512015314245232202746624415115715423025316624413912519010217513114761742480892551411758394120147284183301705171136002491162920222995176582382915221158881623793201974675194150197254759815957158231681731151271777725111721116675134822402531855819428109526641917512366413212164124248328432414814403322824111791722619118017325322094146239518818272371263225416522821820915916488104191142126202225199200267348128824011798174163188141127106224852369250176165228224822111997522612517918815257652321565612090186221314848467526147236251461572341052548511521115124955127261212082071321051102361091072282351081941662717718924521712618625412912223609963127115955420014020015201212199151001991622181871681997123521422161180208253233842112386514187191206115168222125781941262082819044159511014951061115514813524411195187248177173156189194242253632511291031001881471112019539130238231972441432452461432412421371645135602322253023822515820616130206971587833238146511018048792311127926100342099334251102099430177442471041111518645140141531101451162071041441351031485961134225221971121211313524220412011124740585320431519712037176241777614340791198016439352062193519827213311931121432412461362461301193346060991882201632411017158158209762478791434018671164167103201313020311414124411410241116824616013450281316123732212967232144118971552451361021206865253761437269236227811913103561351225851871871321221221325161351521407265113820114024616271506119523324485835182282011401625116325941772222381730140407925510095701402392238619798188232497612244200203352022073550148212332916110311717418363110115691909511177196364710889221221914116243128552301111851831928317322911452152021599861920247223911062118710621112521592148175209121215124134239209831102111162031681812001161641586721282501916417249142912031092111501551982371837625174108302002523055714861621571919273131227111200821711891841632302261421862441571315310615610813140115422092181072432431175240163142861402132322823553622291180249128176641911832121136519638362402815192332171489665236598213918211137711525104132821112042272149618016721977830146190114135177585524025318910114104219129624791742311401921071381991522254910352221611922117911046521936022446020885108371851622072072152516911789237138922371361844711122220181773212104187109394448105461802334416114252120221111137882334163159128132551119410614157172512231111335838200250667918699208168161158216135237225999270951812434223111929665301842122818081061092106108814825147200240212972512365202158192511292457180141532102514216822110114210412313158247215240015290502121352161012261071620025066961187323193468636176136321341241571281201761941681881141521681561891387136183134242441491656915930901974315618310115698188621822271448621052281994319018887931655613310171187913721642614180861644972209202196154674012817414112513828361324996241201894013430832491042402241287617025415636532971818271201924412431240128892489425301806121786521273287625218724662161311917124313719117413964193312814230803716825416015214146022202113244219228224187201209247109722908013623472231721921012075723161103237146142107248198189109207122199209103735194401081439321091871962271861736483118441082458531221723714812221838254232462391681092441122432321311001761688234181102253123208905525522323177248216235163225794222325577661903172019968812721494598195023422112796123715412418181582516211822112321457237180672421451593124412352231621881791152335196572291521232349143196992442481631907316721613716724145135188226142177827851118159245762511964923815212995226123542224723483119186133581962824121825531753631643815821010316710816122546210722315746172141771168731031681371676122778251197156214522461621881661097813245106116010920121616622724820946171215551051111201011122913311941272226822222719718322212412320343471111301272112231242371631192232182481761582422301222542126218716922811760160255461560231262521473143254226642481026724693419433619011222519412323912913672252712001422151475124126246131159401542508237524642202402472522411022813479867171166882221184141471749524718262381652281248152430250641131200693913620671340134023595882552101581642211141771142138710023887159110401341406222223012817246170224129531110173213255158240921952546512567144139164122154186240189566918343702061281131351202311391482232816573111291051911839511861761522391972031621135110824915321413076439718221631956614422919620310074466979115127901591812077719205641287416061625254190781211923519718311220701001907916128240221411891181201762342161252492013720115810111324428207111134671592271231408621915149892472205410718910820814817539203215149228105139243180208244229281311317422164691215816879321524591362087415458162229113190150563110232111782041072549889254717116643254511319916723562110188152148681252496722920971652622025510714824517583941213105360472097025213532332121761692501671797763159171578822239911501964713621026862227146160241230248201230221191781319924214312322819116917325323718595368952189065991518791412190133248152717977130131140666614113167451306617231311096465335419333161951618564144165127160163159139438347572221642342062411691421592041171568823472941061399011013891109891442129682065369771831331355133116139351873673157226997713167792911724424449161250565917710484313639222132092192012062192091982191931542299622722710023123910819516689249582172482111442165624616721755659418757133122641083122810623232257182254206801810023322710422522701354019920773113541922546180246115130754412529205188237801091081546714417199486614168798144931281120195181814518816166154185183163252111931482339619313012418415727137291291013060161541471321551091281391736320562192197654112312723591847512813999160436014218919117914719113916319113913131205145237761311211710112133428218251822372241451251562244445216195156105103198176165211741851951818039605200198159104518015100584248831259222089381082239320925411121493143158150309214616760110141187223201260483924319822713316156023719192341351150159371532391561447312096178209109168202971642029717622070152167198205222209931065792239212851102131162191602371582171041631132196140144578471147922111111869721685100209959824372206126329914321418652231541702206315427144781209687991505839911571551631932032131321791411532622010845941423434224230104115178181240124226157213231182129221681151129543923847167467537263048192443118818798164162335212883224230155111154200174271412131852632251222292456423822311321574801602116611813719891194138481391842442255821522274199254422349653109134207921501772311331722142192301464312203672131422213721493197214192316275122211922501061032481258919220199235190441001501992381842274892237572092002616999789216757797143589815822422115487783129131981852221602292308052103011917963013637601121915320961601852001701911981017420021288110963604555746203253231011268823612113722317282371626119397761121521632453015737246157197118195117110115989518035414791210204611821791871367832451301819325319155171198138220233517449217810924182222261741264186111802161772468666059112195961541931571712045523310128281789148218185622918493210491651422181627731422261336820148161195120236167422425342084113613710820813063104673130496250161114124471976010221329149194157157433187175248238951131752314183616111713520194157122079808923013622014164218199081022232080156194934102171231451942472613523821424213722123825186213612283422400235125170223135206254224251191103792291722074993019243132190239236152411238454234378091192616089484191771041115031136119208195141672475636158112219247137203190143773524710924181302482085380155157962111921649229148892121299394813156714481671829199328347401211551031521261121384594958442451151262531872149055255237104247731491762332559184128122619034461381971332082200212511441222023524552612374435237172391641477964236158124194212632548567199151132361171529718018467244148147222411671248378716612518176231997022081183168131172221103124246125234158124218612291801252121932371801928712157213220195156197950246126234156116218109207391801645158222241239901792225299232177146104241128313121183632461386322730176952232101191391661471451491431345248355317123223809124722622236492002471254742167681303365198113612296918818258178251235209461979520334239137462491821947547190244231632538924123719422324410022310524821317512624519411240788002432137532252331311911882412299187111424683783825415910988114718216617105215250117224842015632244161210001081921966112124831124196232413223119713138135117176165254229143159207772054110613224715791642502503111780249633428022641562401172509521158107219631621118115831794917138292239416216023133495150131621608025210994248211891062492492401701392251411851772264320125218824126110205539162386116858351785439185542471922292551361012433871387145161652169411112415324224210714815132135123113021612211229175231236135235784474207611085857477689167020524333823423267217815711920491110242024623372242116196185186721212508862269216522416117142472242141362491981461248310519018536215841549946202113162284917151252138254194230927410745254236877108762226918338168349814401546838121441852061321622410382541481961761191131392071402011275622111610090178123862055471389216133771113016713217147210228972171451292303124418225418216325320319116631115241179116965128225323713013010826717336645252662052521942042161738126813819017719817212035861881379513010564162739613011396188819617297961806932211218199486020123211020916113717431204117299323472921101394240163514713154147132445469441816976200342504113189226393242312021336322312713010123723910224201101282010516201733124163232417127241671924167292017121281732918173510142130132118112180141504619633491861611608816164851305010569169114116201891244558121411338843401098841551783014819221314617172172214151196641722124133204249112199881579640221712326167139164722248314415101224166791651928165721326816921018614481422141165194105116747154294103992446699180235641442081137215194351921252271811312271171301924413014724513182773194108252611573442532182842202176144615021914817822028181322431591512511602061251071612011198123811214127942267738124420220814416125171151201601505890231601363912479114220711071051471317451922471905015523015513420513370157197150195117212225122234961738379185173188208729410444187972002018110718697212891002091262191081781931259422418136241157211201191512182011112411101162717821210780231932062181409311710169213103181692151031065210033161681661021251347017398201209931841271921601911561342517128725215136124366160224628223119188158628623157822276288233210117207174245150197881895921815812132126181592509711580111169363792781642531422291001632317217311947420012616819825218214124203122121222199816810331931311661281937410621929243256229160104164150214939835442081459453681552411671141212184118221115232431153017424203612021022179210222531685323411312312264121215581222123018932112917410318223591821515624487187205732801830166130856925564204195246176225615217452431829821991902151801445337964553545535206732522264826317625111534159571453110470232512069712841872448580251421041312131741442491685323665203871200240411030982262427320701440216925285077351423180362162342512156020403765801342169522619185158272171041655135242365915361282472536110214711221258254168117220171807263812369720324482261353218219225125190226282003910132182137631622201271282412252271147134194187171383314414718196121942721609188961611551941899881218602674162155226281481052516324506898242152421931311951233548011132410129712420252101316524830211240221389716925019234222145219616612972221772471222232012316726271442241071991117179080200251331122223579614713925521984223552912522211424212127772180107927120203222272450216179222178971902392281831975310423351943424212819912920722014124138382273812722813838121681771622053424759164156130207661392919119761442223233133543511572629167118122691692511607359616614571255126135126199229191109332112552071231222515812921110499122917065032041893112323925119611520710514314819464971731177124227933515248237572311912471923922814722220116725224615624521912521459241443249841921907912524715610138159244725674796265796222928123196612334532461761661032482511824429175241991849923818720718516415624122025115323119031881342924820019325545115166161951781152524120719621115820919923689201230180489927182169141175163115402053722818121511842255897189178142242242586821962291110179722523489145649130142225146104325223761682462052152222022032068325219712901347610152191223112244232209141271147112195240247235959138204143222223220422551541972481911677063251114505124395121233291212021688146239109193255227239255215163253197801591511056180316224123482211931351892411811519514310143238238804624610213341888836323325643616020437119255272506329158107191234161861581726012025223595254230372402372482131464143224821321031401449629692479313818324959716677255250731922211911641132437820211012444184124162425117344999520522951191602291872357769121208203168158141478194221136106665119322524313110225212381037205231141250252136732542251012491375209254571262261303212215831509422721393228208124205689216020520721316228106243115116249572501949235811741693621566146107412011771321325220788154175472035514823228902022432371542421561541159290115251461082231342362242022201842351271372492111539818952213222689431218612729224233240204233131441282822412489351156721991971821514120123687741146671101391039014378541657620019313977613722300904736447512262531312262111571781597416425512118923687651871532149478180128801671281041071598511751121371239143769322220917912375199230293218203901742352132202231818214240725024021910716176874711214311864138868014697176175302031924719717617624420880247185241246253179451772432059713920519320345193139771291124216013545225152292251472202002222501487822210518524818353220636930139208152442158778115221173301541662218611187232129157161135119134302211712210812321622523722571821352391994921014217635919514642584441229254111213254292252512546919318195831959436148127104712321452924825323610571663012412168192524020854200217458025121817367771301633162248417324018024193192608981201882214201596221822458210224502182325819311715922612314253186246852181832231792324318323565243104109193161435518414858333660232411811051879938191110816713412819120158671175224111712512812923066227166155702376923017318377911111551586811931211631112321871632216512667117467718320427178181424723617278223851471618615516914130196154671368122372321402471201741891609411594132121521652211161951141601941011621931071382276121722413386232170163143215511341712209111173155174915222317622822923475175154761151898621935861358387714787901950213687140234210213275021391111153392001752716310512518614464192711015319333067751612176416521152143492055182409214817623069100821816163952714423081758842168110059882335847244159227179151373351601911377021418012861351088148135222111141156217132134991239585423025212231234242462791751541161498123155662060208211316013018210623814015218178902392175222117728168113697019114654193101782276565179342231219123862325145967724312516624919019281752259018324612354237247108334919324512220828246164352668254462229148178491922121301871336717625458116815101800104104807224214102216251462361579422558129980241515471229161242251981542157414931421567651981151366571173226141947174140193118131167716004915637662041614313318138137200202122161816828631044512167832921321525220224628176136629363411919648112017248196192311210714615164653014233192432129187352060014311113255403276133110164287413216801328218137206096161481642011383860240174323512517047192192552053112078168015363060224236255461412534620511119149189137234247301491416918168103011717562501902351281343619385112711311602019914883174251621662386231431881312524117414722386143802532248418768112222167773424619124224181762176168393291761933322936361821201322413323713253253119171681882511193310824125573302161151382042864601602447116138190231156107210113203144841314322487116108412391061742231061727711112143572818025517916012515962362533611225516794137392041891621831521211881032281722251961661332392437361324274586979561937662237153120210344869151251091912619261233180123226105102218103301236216538158182143571662051402212362416823915522824125140221252126232205204612022143521413730107751118116368988123191242234142521755725259254148713623913515212811641291021497125143601281341781081221232112051072022392182122275153248301951637114322622722721237194602402136128676914213117319524421614822620223963172121571111203391421596723769182136022975235144151195134127772550863012415424024942152231195247622522251676392154958621251108255131149213135249722550240128162911282322356861167255211225185246147672291152211888618499203145225166217692402345822822492112813713524445388121147247401935447282422231263866235211562532436324418624521514822315797216227851609419419113824012965226852027547331891881717592681922998179154023363118292291581542230158230239155225165206241227103185225211132361772670239611991661077016221099715815040952320721541622925139114771965710222610811511314218536215921461034420151144228257424320422924924624260154441991634119916757391521593092117331843661234237117320518316010219531813622521424056421932116512312873277254130641551695823512712513819818518518318198223168232192922031294112125213252116902260471591146198441388316613225113524971187531203249631909311646249482212012071542664183982502518517811821818418917097741211032322922920514823621601721271587255141012211741511166153602262452531182742364982221632714817219156104282361071965012724918693114104176243220882351902171501522493819631044791244245103200253230240691132401046772879366592311527624813990206127703014214101251168135361711331641701332362172117811910320025429331351181322821730114100912321611099725118313399133237223142140242254291612511199865291231103180611161732466518854243217501122221881231061738416714819772121197852029842080731217324216247191354017918224573624511115348128116262102115080243193237331351831352852371262166301168455402013648192381442302216081120251144148115160143315138240159224511671321402549138199121301920321314215737867718376362151321823815439162451502191384581282277141213187140214573302448721614714524416183222505014494551041891076288672910711627107112596152228184672012306614715882219209902151771221831014112316553228651152241148319211215727175641752342267813011172242514918212212100168651427418110415381141186139261812321310746323022423023254221176232186235208832262121212151902451501812521861851681927288961962032131319825292125200129503215217623617125391713137171157811471411402465921421017119818892157218139596915124419687244235811911962062341121932615122393982191161951321471731720215101135780025524473686584132321891022168310655472421582312220592081867667857821017164518320410351724114179183212233129441201813997154227211892284018610042190982141141991741632161691712041851631324218910519745481702072091717421517213072012142302023220310451352352331432183587123227208250662214917161496457520565125213461789122771834591238881812201822364611724174117311116822713019857140241702507215719980141251112173391962531492062211651428062052822417930183691741182252097156602291242221542481231121837097169154126492241076523424618021611396109119121711242241942221427110129128161267831362713414623291112236143137117944322619721538240200254323081224170145255541414247140862271297621212247831762517110822617574025016806622524885166159204311922131622388104317110146741384969791210922111221782252511458051162208411161841347224224218032183351836448128393719559132238175220614616911164022816300256371051207112959712725512052393510324610224022319623512717920089204316812712823640140198112253367120161161181662191561612171981202498156132171182186510712071911972811422212314100151116923932171726324013113411144188882341585100218254931186666253106172242032161952061052311401952106211432676362031911621574190226218191596123122419193971392552072410724911532237121921285924064202731551761892392194840312348094217668925562254119246772021875822301725491672162413912598142616515611715222251182154132291334520069188178991391771717925224122461159176147206423924944100239152247124234155124150171252204724914716018925523011906322613691194105167216191421133910816214224248372191323113028247248147158177199601941561961589671281771611331881832131401781425416113312720513787124721221056125413424156341428514231132204226183205311233541679516714123595216242225150138821971941571022724563193321121121112912912913838351272536015192272161361901926933573324918513356191159128205248514716718918921913521132155135629511210723524112610040712711427112255192620213919291201141362261714024477242178243314461842121346516118516721004202544132784119255160254791352312182552361611364750210552301201291782411652454719217112414517825421522011202978351931435391001761319623910816023211012119322224035237205471918313382712771568241194751482311218824185202198183214815417371223190195472376225511913321522715115478222111222554713815923694613819510351931792521281376159158981702441701693295791521753946481442024742437710024923017860431211741416021586150107432051811452288913824320419712154226281703621983158235392031417103681392108327191220151245899616422713521847437209821395103411225532236211819871332261821471141561891892521751611572472265913813013517016061971791242551211712381305643111561852058351676912313513316718618425538172251117812091111515814211310021715521016912246110311545617321910872121101591012915871141246542481366612963128155411752321919717188213458120311115915025594132552212181611051541611691541042164521912810116152981161672442401624064752181406011494301882162018822018186220127216604791562302501321551151801131427424825594221240187200351367802556424238318219183432442244621263112100103216145299713521424615236802451596253237254156251119591625419330682128524142245236217127702559616711931284120392220612417412722421651253319312918265522476420527183141010624711621213524621512113213185130113312311861321559247852161192201811449355169321422522910521216611122723110718222254518715361282461331681651291791356717871239961491631064171681871962624518220481321071652152441610651331291072001114652301681162817016214121418546732521501012361011852557471216172136371841649512511323970515160200128472163617122601165813013464130198441099712916124814649196220108939600034200466241741181592301783020267861452251426923525311969471382171251017822620313410414211412962240646738841659424119710212812915413921933229421023747119281721641182089112810116424958157247172167184116180107178208273097178209831182218200971802141091682021011802142531137524814656176237150173482231843383135155103404048230229272412421223517911623550181171211181424709232214100105859484107204211227935014822317815417177211471376581214423010165932298456431901024218410036186982201221991661912101011842149916420611518414296128107792518117119616918714858802295880229549020788110108923713795237796684128195833003511212779581019219413018721319451134137221215240141630802471372182332114132176132397416617819416414013721011819972191731442022814714619822511233818850224722816019690153682365337813622079222388474972502555145894107902451801270811142193253672221831146241473234223801720090304819819452142212067183195103209142056477225123204342106416697187117217241219611952081701631741291559333222222626413513825212783412161518441887599191237136542512020320627244542149111894111218482231782456613113310818964239571772093416717465219220677619421020822210018720716093145251119121711151081631351931118373801088712135311866237100702641672541922190962082421393402131110159130230123961792541251281939025125417311251251127154716812841877917303220310153516618816099139255121125145242234118202203240143233271482152131092549192332191184191137167452201944127542271741201082209521797234302381712619214515798238171092282611023218102228229722617109229157100193761207121515324215822546106136672128123119621130123631633815625496164126226155246253525442136314920274212522461202257777229581293224447598870224129245148151201164225181142311111419055308010182212119170243571241979528984019111930120252248241208208144183183551054913217522912923240128123120336324918315940174252302792251716011223994169174182926513221417271601761422400522312443341881313272401001132401714056216821851313811925442051286861671222433613136162717220125518725063298423739207215190382441172475721783225519018423852043240174215131161742326002383116426243679253233701914424749830881437114114422421202619632352084717322259148172127103135515815722298914616545741815016549247229811391461761218120868317125115814723617013724175177401871062121162138412621717223314610183190117192301132412118221012443731901333620786148771492295022818519017817202091972401866368252461971462501452264312748230155241125225161541320721301666620320113110419068137161106252225104641252508924921317945551552221140209398118232514613819423691243662141881961038620230231179199573322725214881209137302381671411016362123541922211992201932198615910225315018246229245451481310012717924741235133225333229214520286187143236342056620724629215116016427116645148775110055240018412122413531163160842271622423519593313530104138156111108910614891101413312094225620124525174166152124244523611711214313912163676011256881991524302547132120128140235812174119251179601281440251242255112271331908642300115791810713329633620221141641761702281156024021324166136717422322020717174109173923417424623617316414845913213581171512171802215375175235115114212642451535920263255160331073924812024024496247199234936496238225161680119145601503612855913865714567192131230661924121931281085441881641392498223512604882227210212273234183402411232122260392462192541681901841479612814678095129138715810152282321935245250116771261586264181252186121243771711741871432146227245140137623015612818921825187218151184218211352261931002125720825548019818916520813015916711480226100163920519202291591278415519013115516320120321114692492324218213001240212448756206240209386726611117813150240128176642330106176210121154235560489420714895183108186110213821044318610821815216379196205531695133215107201187100821551658312612687101186906717411093142141676419117520224512675216833012824109872819132112617416713121511146180226228234541001077517515511922011523245167129250421561877428229554522955453211518419899130227189329882371407014360144244168531562522091232023902365652254779304813921872231220634802489011218621923233642224110161128911120140471131923221156414819319612416312502022392362151460201982121451722313221152172278545889553273219636519963813932733932171016015336271321281597019296181772072021664201310457329251164137191395429164502381041021761141301113240207725794136762417636199240252118411102352156914132662212310462521691042135241581366020601452348503565166772921361189735115481267827619411915571166896823717914021810328154186139172541451796319219215018160240247122964155157318356711016525011111910010718613310418513323811224422369112101161398011914219691361091191222022520180131221801412341912055796135912408623112824723612554217251108243641071432262531972082426524021881111128751281509560601666724273171184195266217715522167182120132045192227357192203879969155681641292718279621021551161485699178394920911562254219146170254239662484125412130216115202571324515184237572371772511401032342515124899134222493121648541068898302161907320322214630193136601927860201786022515911621059230136154379324919728321246947111911837313524221011823623022319322322065252301011955420217123424827181874123923215213323611522325313710720257247148143233169159120381571171395710222521251166154132543922609212649922542142502451111911762252371412352228814319811189136772555114295413212917511419411919738045156214213210109150534325422616552461892431921473979122123123851551967248903019220516618824925091151242464117584198223751312117116317418521523912625115947191063602401532236193199189113325042019194183301520714042242414017519024421813716339716712121567120206238631192484723225511612023889862246310125423423422820068981226846637642216551751958212010452313111210812214173131223557296247175192082018803301601912411012021988740235200239422521221951752531102231831551391514211415205752112385539206813015016416164283922468818979791371232111372093710797190181482077814879149201842031754822915118969185121262215715123719720124610620024211020424122522817757571931881561048194170442559621723999126147108235171181110725451117428254184192291831721671088913519016813561441902561711821451945216412415096146255243322412132272371831432472206152801781671754017022716679127177255125510294241793214292144702077222619919718771165199123248231186132191241081918094242235180131152222132042051051791374922925314340272251032116317013512312672217176133242210462021237017526120168121382323913215821495716919114765924414410223262245208612341611692349713677625376662471522287282723725410018857109190571061694110818541418036151542124914321451251202922511702161891412011571881919238524519114358181706725072541271933326020286120955742176316042252792401922132725112872181701311221706025117110412514914125149118612291822211655423769230109119204192187392202531952191655221522341841071166311886280125504135227131743518178227132062271346672131422531491181892295499245206839218320958407631201282428015224427116219114321318734123932255639984520325315110010822412989145151916417525022617425044132040107245441210016025411491064824240114245250202104961961591806917418269173118196172118683511712917778882972942377566951502473712818912621228502096423940178112030162282352411141171715224611341711902209015918517123313473791692901282281381224510770109119441982342210015016510820817219211192042432200215219554281701142384311515622612061106142717411423222411317811710721118126179245100551722182382161192283717060702351896171615823857101751522121641078416717121510210521310110721523123418222217991144716314120120822210024179122981590152441981751161991731161974654133789217318115817891214220203198117571865321758181168147651876271871121971841652001181801291802531843237991281023564611251371591190194396244181216177161312115310223132383113125137216315359152971541264958129912872192516103100176162489624022619616191631510513046811221414844195143731921121411112141174210244139211240141524716923029131181151678721214704104593512416787164584361254520514276002191061615610628150102181421321832119141342783121522821214514489391617886168216154386520615424212018648158171641664064130128115463160152761248120030658599211247133151671582183268209169234125382149135129702249414415239746340172431929423521613154113135204194247104250681252282262556221310317913925515012718412701041193045112167163191186173952521379512612115525119923524525581802431351072206322316252241262551521512025511714124731872612689802451714385632054797312532091351462239905155217120318232737591661582151152383116107139123200123842461410213297232302512281954919912819618221119555369120134193111672385711476520559101581331201165920439613913716511876698257248111872029112812539241183412282391594663250140233255276622713321078187239591351182575592032161152061072071991401482112381371991731311466348118217972302332911756100207573218623697165922512080202105123862365419151247117236541052161881352451741542131711551419424920023214110922111238176124115187197433115316020611624410922127242762160108544910742437225120445229286124583230238792520123160227788812119919118819720253911871425410139223247129192105128253120251327111891681566012828249115214255107245157246151522615411818211842254226162472451892430132230230102777210988951993240182241651095250481451381641382037259852501421951152533143238637675221183113292661823014141311431202277052214189217151540366418181156601947155622522134712614117413264421932451608849707241200811251025517225479135231158594291449493189631831162382282500120153224248225181182351434562901882113212310172622341693315601940160181566612217241192111923228155120482262391751631521111652025453100661201109011696811581883614315222812279118835117306110120629119105210107118130124271261744563215651522312042031661135193365947787252101151253197525422675129146171161162171972522031611304314522018824941181839612372077921632052225212114512457143286318412716321220292661101252713316217714522616918911019120724619115611317420576106190125168171228887597902511732122541466167165137125691611891192521661061951514911525221657812361563697661485834582161996321321824091832261992151752542192411432274593173205220921802893412396519711219248111821371782253524412519917164225047235208182826711612583763514227691562099571652912274432441847023233141176253234225224224832134815152177771952112047442142143118126602091561822082018922020118953017840131561925077113891955315812516513672505641611942115022547107571271366226174231239247117243137255952291442524421919078232252419917441188150712816214142235817416016244148711023291052253123311082391741122394218131170165142135813845914221418714447251251202237120121262472542487820519717319475218451333814473652252212137621589112578721592112014053208702351691631172121901142352225017125474219177122261561572295116618430164199042196351421041251011438521212117720714622012718520125511312323214014413312032125879322882289353100262412152421922624011221293212224229232138618416278048253729401418624646315717658152178581802710912142718321830177322422716816020117415324011411706248121122220281577018011414590931982062181395924812121831497875821911459023941748622915191265021315411115414221318577113232195532061631811741639128721158238902151031681394625128658119221179271752471884711656145946525321146431662051335412521110131213158839222325177225151541942311971291632451401585017025213412167150118931508612514561234524945171897301301506501522483918917779250226871222261583216473129246175244196471836920572131135571721828217018820019024915816323614210991177195801572311481922319712342613133136211112012322121595247141921272482142400561264012015216248126176182224155732071289710413877194972002202261713213937233024128655219712315131393813052662108154201215231170179170175380511421472121259811850351932503012812212341725014591208135120481219615522113118312013211016319514134192173251030104250197227126121801341516995101241137161560502107712915213220650331109493104651154336415048346016036468520922423320914862421521381671951569210709718713240115193671932193513067104131532181012491368525233120935825411338971327142161982917813622017123144176205611041473523519516724372025334217337129255143189183014023420221925513183111177212918418718718725120410038238146814511810718710918318793239741897211311939238238174361632118445825523115651252149165932021902392392551586261156185115229220155123147231115191711521761442411282012019222023115219792232314614129200711031169140188432014281336752135222221126252101612518712157879025146179240194101135233718883710849107931374517924612122120631120134143642296550202146782281991612282710526157911480227196422516922618620917716121045102120641082111031552481674018224395721432525339148211571298821215356118147832202215124855922261835619911111814221923226157229171812093911013911122627158177894622516946641302001223921614146161271561302151612363015823030150234221502342814898291610720775242122072441422208185854232217113621323715141881881741063599226173238251052214522915224818299252911182099115698223244741222074112416316979156185711801651231641774595195208677021724211773173239490758913081125210137151367322473144224232241362281001592303823061935122721917636118992074822922922916916916920913813718227149211369318118318724724053607352491914018220620738177997795990591562369380165518472051511201291824915679196311522204525122574517019117014620214217321969123641887241492315951925123410323512711712223692216149656612924617524819511112719115254271632411205210372192172631392414413318499196249999664215171997230194415122071302271811721872328719553153119272142211733919312917113317418921718217316720527143153214305245223101821861951881083910813511523346247154131156178221126197596027143823414242432471121711548531124321923821768311224110720614519112212624171194209151801641411278680162168196224124620607523614995722462142549113420715320721518115825516024523615016614723521820636180158138108582221211342184239124882317378251811754323185183743511186196138537941751403140792361692162129024694932092513723222249242312099722516623020615438301821229462114118301751041551901601062401381501972032654471692171901701051912022088321749682115186203478115518794751441691982231642818425822281018030883925524153612875019232151933773324715522392131157017012511014818593451162620011518814623121215123121991182119124370115237159102032542515620687243243249255391525214430229129311371516412755621122261161061153722512923828199238752215124345251114205584726247209254011225217623924571212111831752052511221172382151711701540999144224901452371411812317231314921814321418422217011223620753187909612117922012934129113251892212221083219381222890231224715494206198582141647720937139161822317772542081207501209618419421600124021633151251141202337264979616618920844301205262024649418275181239146141176458821617744121624101013166610315217661100186851121752142479016199219411632343265117929171148238844422116980184775812723521814611122926142104131495614155250131719261212231726522212282191251188105219411311866726245135531551422355215920810959165143149243190949118275105176192172489223411818321811932215190227180233245661512512402382492062371034524120024710121922317322729305261428425114151123942061814722317194176671601441879317422612810212716122725323064145161239141325748623414122176118133791161760128198586619959194200146206176169785016524120157190128224689514811232150646911924884912409614551251205247144714825334224149225101972448113414186242131511182271951999957150402109101762235661921521206307515263222191012141711522501112091685916970811001281897114313223314824581332093972641210174116153181239824323937229417589120349598233205620733189102225137237296821016113021312110015976168211201312926121921681281051662111761048833937014519519324419512072449010213129170160338218873310029168018540196331361031681951421332431571357240253140102401723512816022456225104177262213072441311471367821211322016218100200149191204194991851652311010711154190144200247179169619047863210644100237391092331639623825324715723119810415964362529671108240128254105195159518016222217106321611312415313724375134144323612415090121173113226105111462252514522755155701031932322271462263413120511613014677345164745655014414814155126208388110548193170156402511912922159142506815718610160227158162255211142151442212101987217914124810813714253159925112131442914625296887182162178137219100271832014610216310911615012520470199184777822412924877642231489917928200410025246177233182209169118491051422411532289976186115661509121010221513214178883358205625021341582214512616312322038183152141174811537897105182130204378162779613812556118242134125226175236226223176143219226202551661071949111897891061465175107582012712021712219777019017222551181042042718822424546110651221221185082902074790643662714513948010214551010218725523923423224118214436878724712912989205872542710510610610623922218943861923861761432400451461301326810868244228125608252225185985721151752111941377191037815814914713019913119136386206354812815947121696179982091941854713116881571011652151566212184180457510021232250591302132851772161462551862544323317758176246661646419121106325125116747451301691508852119225662101013920479710379131334429615419762481501721986122162520999133156244721581054724815413213221010718592542325088245198205154164592454935213130235691101255714453945106151538623654462179790178205178981671152293023924261114973543141735924512122839155172547203391221893023519044214125101156199218408716980199536015585214170112154416614361691780778011951422491023757963343171002452027496151190140175621489412512093199133212246111772451991212451991847719918593103321979250244158243237602338218322317824314823524519422421985137678527174851039416972239442061084425316818823215910320625423518915836024817416622278909430582209613941404213552686243143214240139852471382132401402112461382152457321224395167229159162301441621989317518152174241523720721936207219402072031443152403122512911150147231185139233310911112541961435462231111218883235127179194112225382331061292111121691231271291111191131009523715523777159201481254272255161241702551437152126128721294105210188116891101862021722541967114216718085103128712210412316119092243174139701091031318646154924518018586104117223113214160225168702548620111525590821907119025113049144022317220815999115163144103113173200262342034911512151131191721742281559520649237203541851461112011761241282921019213020514118135431215421513929238213251220111244291072421591042292224011541223171146730216461512431418423886233252109631631248623040223173702263100246952631232137187731248104131268020729173244254411218686136251202181231130691951715723425323422918714920324716819220215112417119222631859573221081471302331919322554822332221172061641082322513221015724214912314910715170151237862002541142162182156208107332431823221328801872402337411219715710623991229238247235252239215250131718620689140841207918161317218825527551594818581234121175158552091852209341842231921971322312221820601441877746159826521141227155536234181282501340196872261328722741396879247691412271881761675174196917519614723271632565149108501281561105362321372411122995451141001912413024202365092160162792412319514121072316419313914716500207141216411112138204248194223511157629574919917953203401471457389971501284811386217172189144148139642101371832181451136881102271142098030963416310698225501075018223010671142188119810717968246761531323312343522612182081591411358751404721537015200160162618093161680526107212993214223610524119531219144647945332902015513030811164656532120202482211351639951188223623680251951122102512146046115333164682273642228172991771301038120964165217522915049681915139466321131317112096386232992294310323424923322213912022425431761822535819127209238209242168802482068779553112120213216121133452251929721191104176161441286931002201311901071563852521632456621427711662252504012013517411424015124581941419720177116719210215619273193192271881361411582292031978694441117071229818112727731361938616212518225161794896701961516392231231234209125621698121762417099552181981008971102216701011307322511527625123212135152761992164419918476135216116200465820554422136112113910724210212812967921667522638151132141144925118145169144671161869984186991001866768154836818610711615075100166756816691244381831845515618222180131981832161989625515529991822321207073442151641752315915924317813816617714318712714632989910023615024013611630471422273123310423117336167241226226872301617521597596023868236251127721914015451331215221162119232127512532532391279518416150233971222003248151100164194243372301272521937116210914415283100222145901991031532542462311912073917321197236031392307414478210020211781001931621854812617612418138242242167793039179111392112442282121962042006622625016319219662254215245957314321312913172196461177159255227179151232271947444158187104172251960179251228902551282165863200344500301281942203625142126123163246237272113755202351742111558207217552918316861104901771991721201358924111815520222123811772261432407511925130251155253251177178158581817047731721611251302171261282541248800108128112176614819302362171951731631858298292151122311992092172195175246110170621881692548870237209196154351785135310714248431242171592362151211502151262181832491521072438123114221130131249130155101177551715412213108261722221241654217118752179224842181671271177761141162422085511648492441164923071056132168115163180248990228143931783012715746396947321971361799420747891955194205398120563891491797815315517019220514822711014822713010502281211692421294122411851925618519224131581831503912133206185752332531739117421419914152422110922414284251944711318715610721515199558823260842262221472272131533110301041092487511822539130522542552411929912215672127215156581552092211761851835216843199177235341054711657207162251181291292716524624025093231141250461533417522016715225322923537591019078234180159332431519221724710115520924663102312123096019201020822992838220655715224912411846721510109176207254922032192117419516520621513929239214251601042423110722241641971265022210425411889198316215371022416425411855019020824724201371521613858121441754356819312924614412318125421510156225206235152352102011108907926214312141745916451920710259134192311224924922317220125110277227812372221392302371031217124717198974115338891796802421739222221510720625311589201781851742433888161249132110249301651152559214229781832422019616615716121117313017124914245391401224713014892472315811695180107631079934111225462473017324116724423512116321229119123249622451561091141215920242182203872821223443112241058152232121724613414722220718914521122114514793179915797163205129183265613114922213114994147611711225283189180119683110926689822091327176914121140183101108512111993180961912411022453122468179386717621248190825100181442431286163779810022051619010122110017716541455416323181164159141120225414524023576216452461431332126719223204250157218757518761931371741143236642611217146201182216120154126104100192152231462146811610173149246254107937355623615314505918078803417925117617649102172638950337636861676766323716912164331015415014513642198439822818919416492731073710555193106712822123249261032382610326924019922834802633231757919822441085245139132245551039189512672151771057180120113192012519431005821721822101981031335396962215136101237247933016351291721331591461772071035920722523923969611818153127803012872222531062551077014175245945315881234517924115024581985726711661556910311212878246129107285716818170109251555169768735724322822047422297582524171184141168179156123144651121787722070155216141214491538649892249196196155811531981011546424134258397332141771382061801349817810898179144911991028981211792403262203446210724613410891443312913623212341222010418215512715017813280231565017816251085223313252100151154187191168239963272178796424115510920114920118013720318077200178161341335692168116203152521712161162351841215524876145985110220322120641012915310217190222425021338582214242291512035414321772015834832195912213319023566891471975019813921423275441463877023017215625514613016415613716916515915179841208810611610012212072114323919419421211820143486182432302049148151126042246253631649513072301442151693637383622318511514318417425594154158158254240163223126239411830160239646291088425024518157103206146109383915210136243116145938061131521151601771231472019277213733176692432328024824336949032177100158196203886641701946479472472102041121741519155981402382341672192207781432372319245140211997113519611105250243312542442206619496139230479248119621872002361986525421693254168722201341341106898125247193160207811911421571061721462162492151444353127188862532351931782441901882162461792521541313019759281391831852210924343221259018259190100872421651751863221226262371868610941177248216919246131189177214717640301922717582301201454614589361723018023620715523614312717891264445123871042331451442502439721316725215520624115420724190206114219160511561421151882461152202141792541092312532031456842924123443741888618122990237712521311188712622092242135194511112392484462532172212149495215198702111571673014416022631175261617119413787230364073617043616911382212185235212574100532553613012542014225441741235205723522933238659602096249192131782402291294150129201144582079521913919674622911018822225320680752102532142402517712918317112517422582451012192442312161423059122305718015711716861231951551511481592432141455131242542402133252254952281292179312910373100238311582091911921476158