091052907320172224603964404247083077456213102335077004309801235215821337834305689050586248290791008312643059427683971424393815401401564650323374053540641070889999734492173774954870324536916638923412211408385210589056823562013398211032175386847619804806454061334751510756676673497676141829580228130121915524021343587645221321596508215895701117828476601332514500390511130576240323810658795494221809791028784905175683746054383456173209633428719086300557276052059397807994459640351686936624729711437096072402194511903347370092474961571508761485410418000750140273975901605637423012690498937816714992470299353173720458322511780097010056196540204508500755303304998181520040402069936500334457663844247132041788448920314324592228162406990006884795593614236664840028261557699145140683637979408025148603349051614343837693295214758306447222173086739989005721010146346133888648714098330090843611074887179281987629519930923985153344810383543430712192600166132552477153505427778026243690619797493257111532798491937349568441609657490953044759706318931724233987729319527870609091759516342881604694635293790638492175716494662085395046409725577966494104148860489108931604491064690221020596252058206612824107422676337380228776621615859328702232734807283060872023034114030647595194149880602660804251330187775618419330480927060884585004438660155226232070296355622014361492700002394785516784425612830259557351430534575435216311037729404908028330455148507190798468451579049062739855907148114226884825967546451558727662996244704011764328840646109626022061725616519964054435100338402708641252322930515157747085673030273524957127677300643560975630800291471525686770458931040433410938449049261641571539702235389014091784871946485712373110678408256281284428954929763055583539954649595331810852599461624220790040940610012545392570071340451545693680886024108469964922325853751116713410908738614323257374060279237026949843113050547900923249740473009485504292470914554070806993074860063414323041199221006305468661117993063146904005430950640748633877009198380560098977968329275529602146104688916119500682193956610535650260273460538057657881825598970104926851992448893621364354011698031484800994054860880977972936495162851607363823178313317817409943565633085860117485226282848256976181823711314840239795481695408416703247830343161286319453048892508335872100134764356098802531098288274758295526172034572347185378776950987829702920193235534675657710006941938501404645549501067325128724386104906599205863600257283069375667791975615521891331419400658501516834878617249348781449694568631880553565240945077555040205002415033226445986119375614213459106839022490987952001351350668750047373573071280804978209629160030418273213382522560515402728770128573598009902845559395316758158402883718635343912793137690776575083010914612780939891778244293205388653943608236687703470818586216325127546960743045229687304796039452624778255402480283840883290280578148397458977776802813671107156772631925290401749682719029052883962985443064000829771442283120865746229807432538766648788388008349723693794277873779325558221105031424213143505305697260700768795551972065645087018723089544269445034997837702477304531130026410143191048020648050786893625459066266520393070361336303951242449516517512569258859435668633404643741586447980940546580131382548644967927360343147268223957843067356509517261716043325126312403797328259831817461802973905213540010579802838413594731472869325672419467405670462416512272476037610624114990636571081290654223885377977209045038409992036692300155975694277530226050883779870672957270243548909896026797122544080393182072739287795074708989441622319052012953629143072542707573194483991841048945519337935312410612812355216201213495455157523843655050972296165156322510556349299468241130015540148665588082412843696129468372858157316202017462983032208427037715373770989326740242724130136273415840537584094820085270514183306142034162223672609282151765960754080552324175202920697542208677819418621409512292382901997416211002502260081052920513204338408902328071034165270792855798990155272929844001809457217942276650511524904421282917570914674194775274125810083164970373328082211093204297200935643293457584934847929255608446932509865078304608005040266859352101976125177969589371701073423209126164246605543053767800489360462428905842647999570858970001870295688445096713276183500196827277533882180649672414015943698274082990071678285805810282338397341002859599255606195447165735789858629678280878721693035239717285130509900766472779407133039677500616305126047006329535348344599973436663095513155013381003747515297936126513980560142821174895115800410315587145491703145103169527502808424430539063958915073218560891139754906579360727597299259300898114240804632194360777122873350129001928631787732611302066334125938382477513203695719683120419066386011805485842895586540837307837021127031298048738135365069273057116868312000471314554255613963740098326489016222004065132496581012872742357952985770102965161162019301036971655494737947154966292044369426056046104093683474520526000014911255478879577046752440126410873070359908176581039460261758924350308439577090652145204433239353301012342129272425669682484316065166634875091491106063673978198595593271442273477502847673027582904260147845647916642464305117210355887731610988975290002651629118496807551392442034061444855504950404655946730072877008877307300293390737100701546900605820738524341893053466243799271829207117214257251119621266056655610254137382043108503360651672921938500130797151493518091616716249976183083354520698151219418195719098001096191945820665259355701314028403314860043020607039558558492848369924465900289705623776007450621624575545018813204175087452355455414909921704192403626819642103192629855627063303225214527900688716783702222965313523461069651971217995699669143044411011075071011465032499726555045553983394195930054817999401868493863010478440732292728906139260118304870085913816378501085680213118053243077908787700302373202004770078032459509387076489118837184780952808696193111041106300565042940914105792674303242599280672789536832022720294961670921884105607808414038150312824338842699211012774773757611521006299305191702706286680156776021429356495775827254015002439665817797719453154163864043183960974542706572669250187460377285521905085365471237282992710700866785130521777105248511630532673263003983124687458751607540024386351702567301077019956680007341955868757007504825621917700227059514660754214843714884300293189017810718181306209903638958282662857781430663093155617555186265577610031288940272500679959786177847215107300127823200440722614137078166805043990508026647037685879057580588725679385140527866707380816193852240858209543083083273046366149519988995336573039798726468938710963875933210440185801057812227401067377862122547794990459271158180490400837057930393301321334722715813377802301512195184615171793155823885052542704121276000703122061930760675808903481615550458072047231173082469149762250006420090840924993022788516427669872684553111069606799060762453493806806100423766564483813780808501442419006344924217609061945218073519400032456898083892270823701041329697201082358925602433307484515368829457441981085345530427034751959780655834893793602019033541080907109654860564182438823745852033348659815828222247079901111051932071764251779331761627209938917611272409397503558084275048225444898665459303895300221090253359093683087206908095529073550418415058125212058996559200326179354749478051274498770874321960750067400078745964280485233403962948052317412249958545707240929221055931792923838725876124165998258417162643148382513565983379795138780743210483279506812630914825320296625015875212550565243191338706957866733865221019734802066824865489116717867205447801062277270758430034114996966523779626405179787440683588264412896639906280382202147591185407270279071823730229691901306293797521434142036681414030109627346105154066008820763817143170835105428977039896838294867749209487965932303384211851921393081706553674093403615548791154546994585945054044063003943056114434224623097733827905352186730180383016219043234240263873223013284726598671111392284808684006373768100853372676293842918561376512610829925258007091004706590016474957651280393979692901035320074973839205315426400404958063814888221898219145600732283099870814896158771673023817599619331509846128879543771123432719905566174056014016061684630178023271508802715523150150256194457707438336420666147897000408067515780208874098033012597112650218189444126222116077722921383554648176216531522125134688339775712563421363907973741032261309242992080041641678867237944010502099553106581523171173805622655742476028889732700957628448700676480898900617075209080529037500885574463322979585822733788157859703955205666251815197802340312274912070285824968949515733929979919511238885652261938517581132469359029724559188515236011477600230311329090543703707246124491067366656633873881865756633185952664579509644509513087405022977091412114871183923485354009095682883466100523289607588173551694889663473597543487391115947822990434996698020868206125293192239688179104611553690130395574450120202330818037273042982230894856114323868641951119654503390212262015457610111579545201342891060394339512642465022631311476048273304099497144227209126281545086296283690694439615355573184591881639524465364147594152565660509340226837072999507403685260676917912021230934204462972629005452497731029850868853216235351537210427917832383387537748809590063520569064138966003071855105306783459314437288340118110719884771890520315175996669956605855996886775305820530913158906472600380703507806901968352283292876024633116633067509114000052286847996562505400140733773334482502431994492666710578673466166841778716561090058122458229938324684420283163110732609284165099045668619640730160022439714604070037809912682366862887740012998027601620355360218017112505761301960665709964099886220428369406594366161551541001809067153776164273733448824510825253299603416102949702223549601813694530909682638245632156976622704548778303783485807755280817454703116223698097753658872078025411412981392245374260901986820242081700929428236100726013605515077088825385852354123472111079338257898191215963212799603705503334262502604564858903770690663321525347229507356264740742028832119663049156153942186426504931459529339212347200239872007596108769327577886226992802356710825570875411797944172572095565625148469524202726139892249759269437654319304607181511786020600717563124607102804961306154019974460870041119560317664567627620611542378860500924200261184381318911472381071703831870722527267606708638456361921354171600707982065528336858032608667683060416729757388037230731986945432050038399696680383551108323715222443407811252817745801824140802803207131046533854060029755214070085506462008407840453086054626024060502838025865652001523580600853785480838547040227632302046713772424064784950406760599152369073011730269092057460023546136709631208118066816329755791207950393158831463945096720110762446426036519919044134746204588642668129091311569601997654852153768487124632712205271659324185710888948897461958021201370574111553974080052485138930511960351377239880911003351681462224146931400241218341301436006658656608019004803671067868804899412062797466231146422502776629346480920544032214265711402800940294802547763790461041737394872927050495547112460059750791060403200852608648029298994556030463285246923508204811719709604305762876047538504542113647526293229407833445815317733796907188865840681400314643141001139813869774262569646829010856830392080783787424075535897659004802747747507922590260606740162587509852955928617362242407499654103639397754535185661420710964714485463062017931259597134918051751326817143900784150030870835503407974561620442703194995668569490230093740953994845849959020853987009236242142316004427600282423982635961987189687893063003629070132534180806006740759513655227221874020820038573136221297102109090190503117955586764041584342474330163300297508977038123201012591553659486889662932891708784000215533908356610150241019750793569901879854530267796342767910991646620213967000308086255029801738611053623034552572727017441657561181241152748580344521460310036744085860165861397244353165662253026530189128061499432089253575408506001343862012244756018708032731774214159712312353284037179370573543758438470866018319980663947461457855377769010906538201507561614022999601427958697947211993291955028013529222031895906560665505713112575580177864300582140040145446223702151801833009301405030764110704705079624090218244957842089915851040710331877752734522907045890587118308662055590167730430183838251383759846444817317156105185469827435343254224996756878920072071678072144036756947742537341406059271941416670311960100020467644889136750207336693460089872119862557721240016929512102856551524639789503810457998537924939950760274402690547989960460598970843833031107137845951424699585626319330015587865535509096641096923405588849807175198943650506481176927593011228874318081522552084533226292484080804447073815769302252596949300706534925850925115765670007263634292324905786356084845451675241600691683504839212439046270532108486450486935078315277905079030206942942306129203708421976420702030142301851300596409219619457815900596508740763856859926270097272010306181294640129590468314581794069197228560052205704479736803454609078960242118969908147210426590024006175489155022360127757931508110846083310569911697022839347233065445860328729016252004508445271995116015559920106011590766528354279157688368430928972999782220956088682911296881821936198261196913238025572989220642153765221031479716106241126851985304469790508705442949986695874787923967861754370810782015504007803007153511341769759107669925738533400072600055434355108193882534335224068407712338672120594992466500299036045438038600012270884320804431735111267205113628872035395752824350728036040919735981367290752985482297779935863341516714393003921200415667011740452039005203549045722065170054866040754646648618200074317019999123025570880552758491426393422656580049627888542164529058378051935796954408985965894000433088428451565198906481807507905192301199048730537506822726256678407799697964397453929711853606540961397996294066600531100440124980916071139740494755207264787931744772943945651424207400266018602203035739566720855600355823744227163438678561845034424416531612711520467582484871007120194368416357996010198295258806602896465848733418999409340018005047538899159689372330651002810360341974026671515535299846591130440057001948489390091095920577200588968169236314372101025604210996181376944921238370380640502933900104492585096649904441490255159726127331570469872590137720301191369700569262612461113921439094678552844061107053266901099558989009510069569552055206524547679662856167470273610458358703530734443700043805397899590172130069116804761753025369784025876070967945406677076634459732438965657239517367899946005830803102240190755698924132908698424641324449201824711759230437516055074736008604151966976115806304246919605286304293751524317804710567310772610990524214725373085280187070269769480101325654537939662422253949472662492103164513188251052472892283213622391697001853734102930915357022855193730773087363654463039724520676822928638698141758731900689100986323773780241098776524226740663614405161509040077600717491820699041786204473443307224552028657493717005139934667991360186649224093245720506754986529079603649215402718645951631781860284270274360878954981027082047518356230417665900017003685392663349133120746388603334538397094933219501585885750275770771111654601221855278999855674630820362050995936137207521293218415284900823090262314970605803750671304065733618922009207163010716708616030146108032254918916930017993395599923048004636930110215712005882404793048157109271291609243923873528202912128603938880711806505402339006007758925201409493753983273417953381714063511883596241080597077779132654304173675487976200572404778210281419249567441095883337385506958885158368310145917189342809380005255350083132031968393918449143288720108632963280174269728195628703160369384707480825668896093041727296604395282372408809405680511538858399817803521709742383521090180814129852402150091911662532266719000378584256065400666060983126588357569111730537241936172153958585012535504106120922252757824596442386653081419122729350605000478309805906078832710926370043956367462211764824186057436788808115249204216064478130454071224326507779653524009657543589769189192155637628645015568272601462740149309491333510259238092599787300998393064611867290610631894108206051695215590615106070901071725500658108666934206339138732594836110912820882931501085370050016712483624336793986805208323257078684400758630833478711416057212816128888356580080885010328586171678617152025156154263303488103815483701724197471251610944008453006435671045721145008790158280358238540115143884542622384642410853016383083448572963380694021350280230292098165414049288771458978300875578400130729539490187488402346412248667488135004410924263597720257898706182225056084246123460808302017395793637069001008008615373937276182001363700852055285490341008077281462153364731567670899253009201319872200030393818617557790236168938244540162899847628169622536784391311599841024377724950500135803493984017508223099177109511100608000105370080163884335732445733685862098395907705863445251948349356416947342223685844685062275035336282788305601830800780186680740909065840924066639926170773504048977542438094657257366091630415005499850612758236298200113684664150673266513153473669202115999895118439630632103238620812327517527550863572635916051492646697237993630634812182243967121690432406312913110996617926486517471602066360255491481062153367918920713390000413156367470335600042391127274924340170548339306672774835813806017705783035904763742283300487513896807899260083180870088045914399800100968755046444473408791258269566386757070891443757437278913993280804660064934946081034795037394169022246880941343611312234471240322201749667019052005183355585440321868200763913787858300416167001027430842499463056643767462807839296977484987766651797868622069870835227282918585548826683472224594395746002735424714502974590906066808231100673758311657501532042918404680713585410101044775209213203080923730731675504291006014039445908782004508992936836737619130820107528314453088790946298320904939564041861987119113057100237567692011059322951291305566524406095313406865598564197860598778502179024441400167020476740079243103080415241630290447495317915600212211271261130990969859166420307977307889350133027645407445155653275021219275877978814535604724940383172514979330115058242371487722830056441430507253269784707775621086304466100407334011909434230056912696747457092771180850197831003402163071301111327830260628046063362882051905077069150241906830864091936492007975939462307377997420763521497067133263747795441716309370941904152855914147230630872163834117813061637332615381400052978018129957645113500056087997005168112810390770970299498965425586042357677680578138924834044210329081550359151139617613509423034780307676673208177622634050476873506376967621802780008371960911207560873030602542290742239787168762943585087180608827383153379207512640048206896733275630364924344358507459669374138462105891268422998058184639590011073039383522875640072342258902030607450407615641246536977878793717628459150921631607554899419208070342687371600130548061647000503838046759791385714433486091368477680484005273708365880789097780074331994114090733425680871245624015836386935918078474364369643217397174074309233500120892912744076537067522785687276043912608162637986074761782147001862671438933546568485719732790409701777416738720797606602420390824504912157410144290863265846749176811373328704187001512256668224347940827670802160597268851180036604072506383152407140171986540346570441789014843252267989969454963829815781881395546439281037480810799327049001541362595095078956243262040927445238030815028591468875080958118514507273417825097088342244238307508527586006051815155509297166804070985287239347897785172031923390867253694706654696542062883344970902564013685030172030372702208113967704063390225872687557363696193362750137201315181075242514042656126903458585594369581008216314336744977540467473416899441537100089896110081807738371504029387645598833846305636653102756403634861350683867129227431900619358709354745447037008627900250583165989592182408393721384000103000945067208790510516396613388799791071371466924050001316453267617624422360896419098372093218841682602288384901989308437323930046060819400804304446053953104547106612540728701345161976381301081027435679598327981686288034107027231255018240266523609506160219119027963391660518982076283109050318920425850369987307013913337373750633988319273934189858533355300004214014566914000018753378861495496099455408437724396795318470644368335887213235196015076673091855117817160730875104114451318852480232512779661854107087119664004003045095659700317551034079350228036511563501623027996499377304556821702620459189100670544049714493462413070175027396390551484794300750095178111669040074811096651933230962659949095209588602739218697063501022989066319562127707305344206670593042433859169826891021867182371725508909826151018066449127635021805870740571738389930997002693149850941498366910874126464107026285128612713053737308227707363668043152315588431034996170627721823125802487900927559194131050241550408406997638146920901856458415069891901123885159377037318158000314421409310074660580493640627675393592005334146013412531779161958108836653740662022198925802886310209650346063180850035338930147585162789010136522500451307151770283238240109030402949544458676727697942643160163250158922428245276632710173258045127190009688145054915870270153522152035002533830502268174191168105129573663030011184107683941718093456798696624868403691213674418769175752170401037494131881147174165278845077146024019553370458120290775672268340571111023634105244914675877760116335419388002379154942845303999134724170861675460443052130820888258168744970679771260245879809800378833906715432010013101130358469312553280007130684311014669316992785844840339207107076786519231542566835656490512752579845450103577898906186968952911009388852374194285453676442543693517017026144946250145026371241007119944954110302773688662446336962502983407625209161095406024792788881770550026380971628600110459350300688471192563503330385270979390602160730105006504262119219595127120269231006314417348170422448003485600754363508565623373503037161517979352090707704298092168167121013032484007081624907521528135705760350848152982009892947750420048417500115001100720722038406336656507310147831574064371127934548907095750705140280437084615388997360914993262413813376676027232439679166773104243527041924702612167221688490893947633620477361598534810694829403043096985173542406030463403339999699346690822092651000241594193146172720769610687879677683653403827672907674068487172889176963135609190588942179369499270627107106700873795598970905515409168376898941652891804624610534356219205608368505380203874870160703038711536623030709997072220247356050612562540982517475956225180690297100041851531361278500001745362070698005253189500356509148099462175153914456480424180035404789333922885462567924664333888335599572178307944834870914708819321768895270823399486975111518864482700413058870259018619220057727379733649479382520638790238854100362009561786085150058933912598002045876361625406733703415172188013201442103219761790612110555151330047066772364968126899402811826351035343656006465438078003190039400467229405030356987263352110051286473031214922438951198082178243730971380412595369718312316992013765004421289344713989861263624503423445618265430644278518023883182697805085867742474102254591806854001614643001690425766225774827285000103604403607340165098326917008426019942066602500319969665835365987005957510650849614189789010733972481624968711565047857037267243145289077419743161695200214918277685340622851643521112707514425680458732484190999312733976224805770918982871279042408688938157538007074520610167979397981924875966762151532516558020247504689254960152480320475966844058599804280243857176394633811904031450895661039014208328584675697340096948394557005750094344574680547696067386954067036527347850122475260407828460335011137499532078682641681722554124739708956804796217081574452580600140887716996080856307633273637728110314398294646502061203651377037217683405091866410825052851734448986567825714494146830503101006462122334605210046164560464829630051149236718277041237480392044858753450191325229918347176091886779706660980615022846514697782612253403004143045612698799252725980648759178893184122242605679502919456555170203057961840756468281397424085276245251626604130201600143013406682514491838033957981358812481843463266231889550904222822447306150124874566462634746310239422950893890402230989947325430289567540681862566789147505657990680030181168108720050593168249484182837808152189602983309470439008317406650132168358609352160646135754326442342469072310333120987020109787596763697606022171606664133634977615830961368230709263373590160885700480360398919688392405734689160876952064452730283246908794994247927546647719683473471842488965105274282707678609551151003757481765292880556306440692496144716959998377875556656452340682218684664231869892640009854659903299479665908063104414283369812652425189193360191907159238390119431032392709266621615056582503750361082976096598576684243461479976710480419006761263204079251449605810210594468067857740815172889010902042619593960206815175272878655478024644978103650417547119872338828758140680024288829839660080009759003748005633216892790664393830226983320937924600041164082270392825264141315070080775459637424027201926668194443888043160161341706440825385878029762347950154200154016949602029791973080870306101297158753403539887505105059305094194080235640274554232646450034663053763351700201593560935358720820990768922100370931280048745182304185052038184407351795992835473021503492029107586120537571506527034596931058154176323526374242091182978144322077841009633995202430721706802251922470661814341101250803677125032224832053975885956303926069487672958910864280313055737681842353512721170418055236023229445728814525322370952135043879227119006258652229250230744290096771611040479337255005290124344277021859664488133036552908718545541400412626226308703651658600737223986922451908835618029929890080621428661182538734150402678789518332182517404010787912334010928222560626907452791200210080537866864080288526528263500189464340266849533110144459954415211597953012535108492609841050208329988602618301376265440645049382890231301718234920382468620987163191778441135552180022263098357619241114254878283500950000520406166780066750005237633390536985754599091130622056092438919771073390129813847509908637944638289910469516988400522004640407499378756218449006802207250154833906581340185446452316121640632678913361450307646751621561933900807666816960048762896284436540083152908201327052408230007850072123731021228392732811702590225802938553333212096877956990646189911051799109962126902424401783501927310798277646110956694648722387871608989717031704171044000523234535792213565070092715225641227018721804850404293506091988859214548306102626836422211629460507216200617327085169484542709494439490100171443481204595575824080946433054938294044460582302278994468304280706020718783150120307800354046932397802613271722651003006622410121536115045117029802742738574554410949136220001061511298111516978907137302406125756530380602220827343146305489542269018746152052183323748042592995534436601023493870536142024801460611316796063257976713262314211269363039424263540340244713040343493624652323636669013074371048174979922362019069580976299657091484530085376089130181596360282971047280910074846080188243212243360543605977258060066556079340986636800046895122756969553497285131884399850241329152126676701206055307228807892736267260407315883145218050250993240336550715337137093615236134687389585763418209069202009035909165547858229098112159850021233886290373682004168110302231722134019458419203417986385772481002708430754186809579312306789192505294591723303015670266466246417098904062507702192892258726261590525654880558553392378173335546845125644098813082804002601303042431534174662889806757760875188842998083557603816643902859830635048116929219698901346034501034854215329079886752013734405832413584380201288063721495473369005502700894315676863142837805615955026051781379330027926560197438587635955733059814791612019952980805562364367601899409729101929856117486628163816310525797860435214843148429791963541149511225876622182771543136777054082210302094411435348827413590566100872090671971396073913610524222576667133504722839850081703761731180900017192034113265373439508078077320072553847318027590951323104034953398281961411309475838531637743301911509264450137011252755330606305460062528634061792450311420890239183347360214908785219379269622991310621133832073628575548551337025441043131254591001279366101320965007919488538627776026222702981700926914978948422976897772166721009054419985402118530281433520542880744887108041445697209313191030720028282670696313055265931005940559451285861218804602806214622205242055828825617623432658961448997511562008712832944938008494023491610261109379523059581533916552859904713114247050723318467592315268238782262094494392953527457368215025246929975386497407051383950889710807902351545234052788203008902001584554134149813626769062455621174641951263350542653132103307041281069287671935442788049117195137430610251788902731503402674011813750344174470612174943857139668018977160179559723352224397985710704115006323641746607468886537550254822688088204328804526780527105635243075167226033340038993445450636626090267107705853124031962904084613263420636639987588897738078490333163802380507569024050569009344501875602832633460041125512814034871616260499085341281460085869240970000141338829090601211354426330781064020246961585663918593155649508309575446261157351875305496338422736830639014931669720637644363553361916443758881930559541507180681646567395958940308270291718475704527738609972154191637494811344036205497051033787145576538258666196298565813740958531287530945558601187796330854100856125373966870127763008140195599630225678665201405991907770659704901012014651015033778342543742781831064673203039230658523519751495564580840824558146813218397105280949064226440235606634239206296510372090690029842439008185415266100895143420990187272198554670543781510982802544866231200446653096504020895035081641000819359142578037000967694009340821039913958235259840897309024435891034964440074156819093650551280401596042308662370755027152227362213209130292487821549940556804050078362021774951596200347587553342857695076210901721820841142063242503008262564336153504679008128860966323283346853337075596818507983894861785405980237658525136707781800777424056630331267829397536396165588837264701354094257290095730443818105986907883649168433338927152425084004005550000569554016531877139101195088953052704208687504406380037000523805355629134117616818769738191113520812419008853270596858917007811711906781908865608030811785691373395480309137643113626201250675059152563348408442574115707087286010213164950304437217200967072537230895801147901713869723908269960899162277714340922049226095633032081877517431399521183785492562109612715073727880568463707995005083051753110725121806406200385237804823175008284204452263668009004451714074208150572014977125373615219055555838551004762926839467461853851041910238900883123678179685805743305718363983732772077305570459075245904182063075517341758851185837697832838087027934708450785632500417544508012563757836854421994273004540194232297871050665893078874182467700550890809836618578461129328884273387164038391534188022861026484975152482001497367246694201813109763059086073002160543007114416205220089911240232840593100969346961574014445587188617245856270635741800050524774059671280540673002640005118143807883035291617090673923419900040313347398886129760217461728587051300571005168015333431362529017186457522801288447913447961320351610648820580480454424524219062236121070160021631986114791069012992762821570019462040455941517589652358016856774990716283033309876520744155685172783409496589043760052156623547109618024536303677350328658661607791702960356938877083386998204121751015263710090121635755951705542363573388232301410330770692290877126568013913034078596323864850170146305200050348352157096471809069857059893082317524312790530454569834605198412031888282312147139767761460714943792947021700092832594336319991793269041058029873183071704186557409372489167424061614215208984675302551344522594767357113629219949067311582464300487517234798686348916476472015915000485135159178802688224610542623016218694640225336375507105304573333874017065326784118481477870359169903778034306813442410072312638853063458230128809174969172843621049203871515281464894416234350260470623016509209655400515997246208600477213912551049387824069338463590885804146511748900014166197106400288556625897077602354582261338322236132228424368229858500791558486258681341029597276616301701530709107969268589501929148040286253661718097320464105354268641210096241807560411377092183021827415460952906144953824901981881550252312310840099450251203556228331877754131814372163147195766340499403002139480286449123328952054170116788483572174720050553430826208846289388608929536172700483824571228466537458002150448364036502215724445496489810707191754893661379315578992056878947325574018498731837382038372929078703383656717833821595801065714897221966143057903290965818841569110720649489069212740863738412424527666689512817055103345661295873797088322225459704704635191952538218062164944168800887320221369348656048860130141656640502003102836262316270342993044095029675776740157993283256149755501150288952841171801883140701221911312155409574297608728464423050519591162660962896960440147866092641234776154671379256180773713675807218568302592075976225052716728689915191910317969017906755066472240360391924278373044291940100813467871340053772188780896055139652910319041083863621771668380881915870628288864081780405230574124606709073818642974674304729513200645927893479001110723017867444964231582538428143056180025363683234214205725227227305168238335307802319183136446449203718896778070562593590756360863036794215339101458702882102277966443373040173929601516301939427287287860167534886699993065256022615090325342304179525742327649224226350041520489304705327858630530911360604048966982020931558659050080752916605780392789790683914449183216328727401853204955046266656013381941595325930070158976221405174710177360590843007110172209796019528145370349746935275054507292031141989510920159566064456702581309369203774549213664729958549176162409935072308182962941738591534146332073238313818913537918006619800213911873890743171846572441522614306040585700439250475950060127054506531571528261649420028001182373909042870502107641864664365955072752338902418130609118797836714456064724624213963665636151237513796773116619014300055099262255251948004137575944827989968177255666199990032057713088932350680279224389049449367500984746450781460001491142188396304017828660137807618904132638928702206020703974938121868986192509025088806747643812640986816601106072415264108030562361509256531747731254528526435070756502038473583485393243102327772272033007474179021271410366301013926272788430912350319783788066590846022757107646970067005900335229557579211450100753931155091670023006028744996222107361851528075473282201907538012294212043144446127714921666875982741712992766659034184949310157328412026094130948265065221022401590531909103799219572161817370196562062834511782058866604268155246440999394896196502004930248963499818614252612673415001385896573101305685629670270961085525820178845390995478748235422476681820091587066686237039288401109803558284400215884044503248700006589268364665010853548484430058900357493102514108576002101591713639594079025856068056150662788158349416746194082134403674215206083956719797389588174027035608899396773984291116486977132157556180705701556236710811964791695161033008164880305381672011893596242299564022292124805352961869847028569575038443085309245030199302740585843083327639495793962979576629008212265494114906304080118032997465569011380211360710674100010221555424819505887227100011345648715551310597874727180085011170145540996577355345498006235421989735044234506075716489068217319630756340305737510603855183685129880448818832102010093947904644298472891521464984115295645810813929216298217761184305586290593866937324985203713221060105510870932849383046102692647153096498685003939545511155644853599718026069579890781566184046074939517485049547104863453565502307012026198450183896052098901813230372721691158599185148133130645176498697176572058781972219949368244427766714904508220120873516440875410404139707683857503340306410939910569197154902520050875332701554665052452796585239590066436035920405511091219233117150589204481113701582540972271985669340098669090400531401620795178214134816401564992972698637771936068257352340318902791468688902060155101330015927300407835145273809559189034843904604450320806456219488491237576927244534045092469381215948704481113864322514358073878608847855876780091593496860402253744013301797081669669120894764065868366804685274085574654741063056022780042534746395251857490069240790356714903736665754050956273348500383748640803590865616042358094604435808973206239259189984332331829231879913197535434993979059092078051962461902784827140298621690003091561192216070714369450490370797759959030039605761438276291585599024003458703069019880429842945635780640292735057039278249275684014553229409662946300479568677624011501797286933045075383420091996194220960558546904210867740093682435254256387132542433878600392568446828484059936063928227827153158042505830748715180039696850287072920618981169509823894059027376316016106008360701329198001845010666424651623693882510496497480736302239522876132419979581809793557032833745506934499822159140625052173097110800787504042249710909209031633801067866778508711463750754741691552145375004713111138159275100478426435898961764056433864248748162432420554716594703002573549252915070842528379921791541174328261920603419332680387305512074184949812255368626066107947905649645046259680072702871462509290234826016632114707000093067316427932276819182554878783948274092904428742997332306560604374026266457933431102047930348989148060446516758026791065935913152501192915908126525878066876058654519466800943148732926437232688660890621310138863017387519293081275286189766131093110577513825930392940994605963301837845962470006602014265424078298544545277589614998771605334012428249374377220837861711439488045605530022569758095390504471999451239573565421932371996179761708394960876800921350217266139099059367587869457402407560305889227047871326667409598363063610607566867978686493351659298202511998130396994579389651376164679402786593939883028800080177518089388606285217261994140639016931695617715647204356666202620755315699126710509693640682150076549317616155519093022155785653831004672135373382011505437048023490790155467193283718559917563266802100311596665529228526650245113655065632626345405195352110852296758530664480444473011321860784545131724624741509757696116111108064930015358948293505870207300494711461070600919414153239784703055313272216310150490650436327255036063900052791700860854044500139445518726050945276491920687177815067928304014635344565539187498068343124838101862664295132220573163232930452170978371434423659814270967611313651305907517046207971635045873347406753330086686700448473027861849692099087810924720580822360158055727333872625401204950544190600632524758539885657246340206907729300159800703711143361733521390480806577324179973140911956912173164866462390648992479902291046962643628858908992752829260927042198380268090722954394503344184617370013031397005532532858555646738406201876098340577983132010170012098573400611890011404589721777609795725613040216933280597265360301563192457532151416018942102413098180739086300511114772901362397222266078644124993694686650584122477225322442191326159304915935216066089458201952717850564086019288005717961950595035648208552339676586018510782299946687418386003007693715240108873586717216320127372943047674203916354195144132228644498100090189097487611094704724398096547890782727014101431047564284424524083316726215493462861644190470439253141996788331562860542724705629459700088222800873798469501530259514292015109750704331996530076730293898725196550010028051917821292749783180879071915659855216989657116636305502650034240718841390639613053558704159677923431577605062201647038948240060535609027606683869239872566008332100710435342079809776023893284032045468576215842136633446885790727924909263871244580590430880342792722284303017196198624432801305648079119660188619146069088866408413577131290832889024330662188540487605306568688363295544502091170201530927009706205507175604724702708131343478069481109416474109607387880208929676703324255144116649027609400963642041170103587122403090093620312208040897473901424687153064433253042870480118039000067199639195316062112278562958678009891009668625109043686337728492765500647162065260083634372788470064380253102902830308161973700024479041501152005379674158297937756106874979519884004377483990264220061637699049998695111093281793149041547701020698184918117216241529397635116092084910008041723293129344314900009722799546362878478217161483844990031125071934797403572608549022324428012068366357440028505183439061510900559743413170529470360054746597857442076967289905057893988153038056364702621529145605286105161739129439331322218590102888675597885822005906017523021211606006038659136714167183328026368091004734748590241127501499697407909503371967147500629974202355338638744450013098043666419705965491069728108324545703826356681099146522384040212261825819191101929837502602245184797848192482357590194301041801955878420679476275024354080858816524967056704508461457539303100362762692340320124115798430950932299260015979020090184232401625576096862301902498680049233964558550201605885611210780626020144913215468800784753234853627899103907293322502584311899261300577713776010307086501861792874098545685755936255149920062417651870358016242500655933770503163010750302133357040782584349227547824441713863404540082008915150183694235716729112576459678972213486605152436869588535060574602316492071673578619364016125404755206191117488426430313124191536708103741801773089503407309002945926300446526454727841666627041543740863194034876289100131179740275665003560739891750733313330998757186063090444254874105087340821505796079609167740380016535611681470783801644348640912558040041747400691970534698030410002740810347838709895056519511902525002691166944190483889774259877389636443110327850623610480479805510728540130546203933633506111950888320527308005918068802409321595881182760563531795385609221998117099720520088414873605407441497329344578451770211692930268637226594896677055470196215466469416344246093000508770294926886140436286449463689149683056895973794592925375009743287410895889620800911867005151307022071631598344941490310792138227354446726233017830167014038703774323755454087100809662424090621977122565109063399482635815703716780314384140353896178007274316740888446725203329003197760890264371113554017741590473071050046133002398371469935096609405383172241699041385685203590032357114705499849710581769823616705714111400841241617735084693360899192015341215426572591150192646942170563205029456447732542021331382038045236013605593058184539953402530122058398358166502594082070204972644469053258011147654830056118263936195261072020459390406894560074270038836805027373690093129277335607700857843185501698966715017234570148883636862252362297672499395839000798910331343730015669626267183842825470224653040770842661467132160825808623212847009225905974136646709799780437914922092643305052534452525297121390210181538491551000857591741845047546435768348453708558176562302558552927365759748684295863088423307584652231034307062449768904817589699243858090765216543337388471171796954005830361403142170444639475630926054854568078676846577818594907720512161009280871909056291770808062027394077553003075790641592451108082898098072291592389570502642675402844394115208206762862657670264928502473000326219800460569961620391864170978566453333491343579541623702009221003418016790128580476794220072718582061651754294876024564456436626947167742344418225853749489080847081804000212249741723129355763094705457773803201260911513560277821041069482137831481749882804471228339267529994456773067563229605688390159847590534880712033617876075539436404844182240674163472649343510003196255341375361086712079310586014920944416871732198489558666062107850308826306055291809333337964039727199001409435194314033950140985612081735309382707044784072119264914356894599951262149106478456801226628812223288404888770505888017044144912511010552427504404484521189620844175432978693029783725492858150923550572392698745132708302432720634443630974770636910338521823190061127858320937949083254640219631435618950049229598687353415912385022447816403856307784452665387828656708201409206583966046367989104336122082796982332606985650311806279545915103358177968779123099399996783457495672590788013550270031600815058774509722453297666971982907142405205140670036040507914072083800308317418865000007306861811085704000094655755138324957151634036042270156758711996419505788859030473197040491003919364375604979038401927070056089763633249245665134680837149825997633244545801918372213578892389610184968914340293557632195376505781704047815794380283470177972452516525084713266613224300070354117120649334823189725743944032660644516187329758202619291101624623504037767308595046331509442069741507979897098589300063836395191177123394246652396722010830081687281686832044020214860848174269815771636981024653284098291694879665328736922092577806014327107424850291306914308890533137848092502033969326045442774358826133500014700248168252412162786036129803283480836701875025441376223000088924826305237147193769157354165319049387412748057748199428960808912554152485095396097759084361873492225782901241921815407502738544934349811578982892022055488439614615187779037030225873518351784933030163740481191187696884037316649467553864607869516380878684572889138918918202087352210105010044846030015030055000500783089875260316713480309331971653035989369785609264680313240923144100969404599655511277923990502032560106672613101296610767193308381796764502164680225435832503911987868590868582852032585332425217508417133916641192237615861924871223747096505319311818852576370576198208329820243200098782171235461620388863852426974981622808719832057648506306325402719750341254894448177738653410700686589254366546325418112808055858055206019264909847195378713068660789932153170814585857035880266141048634025820824762749280289786494509739979054449971849660005061671403015643219709419805712237729227355463058657738584309825306963876106228274510025354896401015126472556285040691005324199140118820200351342022477739604668458750549289408296643807447754261933705226395693290510670058361158064380608377611782601677195162364717656526787100008128178850243748613651811847680510101300059383515754819062729406172453808102680671097439281550945216723940305613551317874692000912953510135916810641548707226689091279353318380836948166941850038310676891274178072598859163020208154687864505147615576364401500223551478389464950890328782179578312260100900964580219808671525853081286184236608675156108620218556904903316191054498072690563784194031161763201091638959819577703771109917481242007119981975653015073015668549207990303175906602105418096062091042854075140616077229605095217434834728245680380070401425536188345722551337973110660922289098968466499375777164733814939415759863565832139485582081586955330919675826083067898261929023882980511149917868285137203177573439956075023413090203346590074676274211380762101513052804272186008057266582820080180962313027091010804250613401405783626007189710814867044235079144266720601773055839946396663519250848080360127477911740522650024546130622652060855141675337607343248786152074714458428668473047707474039029298147126817122652845808711980539843090874920074941698111841264295286200101092481163225212219840392857504062903613476593390593171372611120018529126476676586686804904079884091544733411048071519629260949550407255676705008335902894044278605264270036482618456061297002417435808558306794800059480182496600487000096331401547245052322957282612209212728593959812750105428636624845161323229665219914949312626001630800304738047812500101481275427611400063826362119552844786435109377720913175658673080009887046572823714074080204357713058400036260580989087981506537829864971202505494649639763763863184579065361219087294281416405380742471956836348023684897407373873886250474909845458244751936655431519584403409824978509106278748550168132603355846145522455634950916835134438644008386183823078501404045767134437954086727486129758686058218554895883422595567686315412444113081292384858901501773470449201786374123126083670028387270024134772060649639442515049953453206967424586717757828059672191106374266188665180076605859217677352967102832747948738497580642382282219722078701970226036108431650489845327540844180609987068305963653166090129936830014058212994076570501041305848159474129134718952116485669842435041324291201689730019140840964172128705550494557955750089190044213685267081695917050870861856702218578883337249793401968387251897772956527465832629512644441088924377434106127614521761960209122121190947526431530021750591831587667125801430441660226127417938234133295043549310957977083540982701472246558014064654952912566047661564772688632240653163030932956205237122488728114721292294802708442129406625834003042747408866171373269625467025141045963720937117921930871739391297022163706100015284092184593244077493214116297628668772085225711050956455014639321141814748116286287157213070893671997954460324731229466454405146457826214423800293007840933911128370964788154979581957103723033584246521863529539117719502107984807211968964505089639913053394570422050430070496107316883035421876133982921106230340552431318151811991867175309317733188258658735608013432573325163938817808254212754193479724573370512985460692895514581800769398335191194536448671371571301176829032900306680059211210268601762917961665291658637325628143188077071057929100495226021204787491742006032240960224166219183306453408695848301556903476463810921014170068134565642062449299151445089325048008812001716360047308597802154121187923019402870596594056525059809126490564377019794142641000750802333008801346180777132113166702203104323453663944531387537667301669326338853872600138735132489062105202002284307972930459983884150023393035924340873324250558639660500253380348783485976134141555984003271822705725595205090695107559805318579870828679423850062756650550102061721292780917941898102100490707232806977040188359298920517241902526374089916472270903006540633949813392316504072338113086296283899633583943565555421313506230598789930730590409433642483172529510800421810347401551771041007027860790938350965147226417361053158131940270802010580405314987766542936849988025460253391373381568023502082847139461468983069501736010775007645445157150362694719877553253604490475524181854289523968845000350173963211622438412299872516423026883786552525902043663029207361163508392019423858719346234057057762013225055532000444814927459858226911722765008823849867221942413238256905505949850317408530094947550045528995562996550905414523496328813330271446873340869129031682145629073513976538566022541736833605489683464930496326612100792971253261043274017876659942759240758010066378199090081537164500238369109095897708464737516339797568772421231600042470032741072851076776500377310603991612053560795711355316237634246662924252000131289724506636241239300763991088809744671134285003836010441842611230365885243554224826179361069143681423313871663107019630717039097190027454016750004461440716944316702091217568667032711055067876911329929727543239857604036582976646523803432531707923712302214626709513735706166788276701108544164031180354321545739020751545084647455200309903671982867780167257102365986314927575413485496989251362180027005766037553073104580764102761365030679118161614014853544768448250708203609857454369798268340522088042800969140038779176998534944835075608842961504950900369406924579270764546331586839472100251003422712697148409688300814085746057876776721687181785702341405418391882008471060716974869831320879410639601236207831838905672646629124711708160955727742611439464951268834733769071006413302195781746063409860860019428765006240241493062057195767418446100486520417565185005024340300449878610065551242880804404348734540169619446270927253901680605212064778367785819405323473079698016737483235352865993017790415967828380843068891067593941450290775275184507206990520716437006547544350519889529170843410551867949079402089373433870131707112075539024944607010581470689011954608203144167624091585554956753338010203972366209574703998626537537231157011605191041035628237901810153830471898960602764430064106076292834654805359520156008683289012727591973391546528396996601511872455240010024008906730267500144963748350040463380763501543901994700137710870449312009236772826930331948435124226143341492085610606123117835147054266261627591571760612762602449395425992586012978853547247877126190204447476072485915926562261740308236675083828071387006165866546506933129917000964050664355236303902951148078034890907422345432183063834239468974446149379060677152383077609803511771734374901459664009207149069310241233566323301300661773202255046885983060147460107132765849885527200208303061572702774915792344210679531430906046034810070032474180845475452419902345929075988563462953860085637104594819570004493302914033945016086760468713537609047700109470465560197863817319112719007100125119349940631164267831198522833526350795334271628416880125896896666592197503550365029562545251441853007325426571844149338918488710099363510829164298179976329007418456777422745965298975453220509218558120878543138091870071199304597950328038652391497326447673547886448507176594026402584246151191024941951189406453958255651307839582481549935966399545811758207835738714301005270714100660111079576054901364600920703428520071510600520552193301979864898638126770633505216517495342761953044558780681060727334042361726642616632467057265689100092674895065365867005179900414214108732482747470028458410046056115895207703366180692520900785344467708994329143746064056856144680639106295594848485344190312209153094810022310360253604942316093061162026069822394715212953005080912240438262927725702402141169226224860691503804013160203920103004203517044042775601069880600427844659019764369419754516412700013223021051801029302050025401579113487847377814845267280748528328410206258520693002737665715948365573295221924015733948056644875386608246815272666601521715491232027014152525996815316525164186340966849452646657614847890619081330218061934051863285360995111884159471409507373342280570807371352755685111355405153067034448082585957547509908405495266915724014709045734021888142535100365155601249092528088492948370444987317924607946152698261101566628457035812765174025872697263551225948026820600666605056504701945077040056209180723870634511880847932453663508392350247366667450323705092365625080170886400884238255573720411402999571799321736050018910346721484347697188901790302634929605038883438665343184029238670879840603325599307544873650954067925500590227177550606790353098714148820129780462942603264352982261205832144114980026606933352849315620357082942121155823250600225032156454210113982108025515509259016794851930460941039955043670507591311307966116204021920539844246660894680016312059907441784363874829404201296063036070951145707030101339859441360772133474408222347455362222136559275418767182340374321669879612538046327301836053572866145170344173080409676304280575341658970009123395668401050561332062234970959496386989099886518962660231179021461075004742595602307645543521771222650749012453675940416829358255180667089042273990898430771894250911219507030986257476849714801510410513475887773490036710708854944205228089457245950259807399702677975571583867027440258522421756191748809399604790256496068408197683781418230563454463775062179737223650463978207818040884018778122225525882088464812895470781371082904553300560096351242095912452229306136966659630654353430142052984430343193262273219649098128007455902038022084764488656018204316296592673345520208528378756252372858258000742111373706735806011675190918516140684306282316394770679084934130991466342110426443405896010705598730322976041765272914608991685474088829213122015534509730884932123415669631418960727048611530171566536613410341268023233150658296744867001029395321253578401590332321164973910103640653218292291141719810093424704628056561400655229817448077096313735034039307308043413094083515808453107606000066479102071524587381356793097100286306028991554100810051310627135033172930712130826834088074802299116409741826347024952029155043282088141257021407095030275967789020569113210052240032568091298508232186030208037190549003973034293666568071461343284509291324412366115253661934377093503810704219207289432821316407652459074501217838300152840735985487493844220042196389260048281024429817491438824824111935699024328064814091774540653212515115340853719031838203853078117270331381198497032375276893913507245692266317885222030259021154041489102426310547622502512359277097321914588314220711412608480541593747189605419995659046469122442062902308559171501098207151363704083056110621569205123165598685033767270787844462500073476295040820728716597210151342841420624215243757876345446829655147786106126195385729608898142324363987239625165925703033854274326753544303516250759574026079748680839974781775325800113532770512163628347458061434403936965733688224702865889309418614935064986617292625649476764760879527905449791823093968009002065913259173819460983831363665257051848015526020520696329475051848651301907341974259396187751008808159099981074761614555156275326930443816662368202663353686575830322101330560022325083147520109575421350898612979852300089956417907257192411550046249347193072066238390284309807525327335990202253450451553938010404942467053721203957645945753504690284101330740025904254920633376420592001410516075236541407513581595204321603628974155265061628376562900055548164990063572037021131264355713744017443307425360599837262949517025752931755423784001420570020645459113371508941903100687333135142565018308685367587511100190868966232619355482291120596400033165280443834050340230323708572693576866017637206004731592228155890014500027498755653620106696160424333455809667607468367534042790174117962247805485524016771556900513856416470938973533885650957758898870367838553637271030787077803148560155315398145222376204826021185040985532732518770400041209031354261590575598004227004913941495525469022230588756091446343314705296280991762690947070229420519929713435469202935687983276472942276360441933036285125796108036739883320481080743945382974384877700824503264140161014553338551540305085433168041014937215173107557209621074011585770854932266440725652309514741368721037139172841642884438215000863637481748770720304484915077504203006088754814249197630652177140232359800932334451610183349460224118886876323390734081411767301467854664705775067436534869064695890667610120093494392061519463530436805933611981313405893514369578903522947694511468058796323930568108044655323036986187109246658216570066212483607203964732327808195925689703777550494099990390139381034214470129854322237267661359833943580729812317517455849878370941193196976910007426757718682140607578297290068803262041792313603769229020052717715794950134302343343223105890800102065790039502841481879389541939795398840578318864213546480351828280143519198532436620294766225975035008204000063169502937039360961061516864119408568865221032272718118393577511878585151569819727094162654355967780360719608593560298753304641231191338801864790927374342547080308684099404546288244580611283588465156007540542508719150568022970262027620090269276709960885592421254700010980322608311081032440847006617434239260157599964702606774323283007875410103786938041335761150339964674787839856053000140644361600703008066230719109350090546156222880708199051701385947754763622783995460421485624017930630086864641604209124501013141942206943521781797883301170383197850611275245192162709479872798397294492029201676443888407554817953211538487270247338476333297813462256276541887986451731788003351276310480316087822181907695305896556650001586510825920080386178250109172176072399710603662727629559311244976746083440903102369610739312056586421250282614136360439106679160408010350889371426560197069458941502857967663024633524084201744712973418790418824501585022876076328279179690521644170326391507169761026575895939702543334385412381041185359808180405733687941029877636541815741253577435000102701788964125209694644262712107406226803312505672344016939900109197821720791674759188366219180223082158511045961710610815766851582458282162012084550026778318198372689225280054051931227555121565678595493465914178735416888092015102955492214057582003446478853046051441710827496290285693485550978678662581960810213250749045765622151600736233820695044934263000172174130399817521910805200383212949934365110042995742310021760498168157065212523424740205795163314145758017939009314173786866251711985580590402687623297150381738406775810111619565640181529998131444697920363913303104457120401641937550314000272188106009850485682698391454708017383781327327855377755176841426977608316313213739581307330450281030415057221711551046654404919522283308883361442219000729021657190326827068194039726885316676033479253370462411061788034234144584037379290402344353215431239311500605213956185345397719719193047657614277376010460587331800450584756774211168828036592620402943864710275667202001598939049959956676739576731770307597995131741455192354397098149636713890444946066469120160868670015006229323651988919108747807058431748395278703158112104498081301638217733595364537065732114403071480228432434049924838305637517123638418925002193550356258039443524279199130046241397400780038677927067525646753412104332057350621578710166348927607613528641202703256346963809180268756608790344675777015946282508174268836507740162596030697312056162886202023834212605165543843873389407030927702016536183233768780428698044163176525189937427992508793686579104081668174073061008836358430649074492914445545601865495235111080871580023359430323083292397887164777059434607736035862740063250651102002831167206085718139285479831716989966004371689052010384914605286108366363143634595644856079551808201080868424577398002946873682504740224725710369409967875360729110267021333315379959243124132635931818305007268690072272579460801795904179082513959342068049640775814482486428013295111329742414522243239311518948665675002320346619067922718493913472450070935008429807005206513706089659003089249197010468852334140044024650330406870400706068621141784204667009192353133630203793039077967855729959930089690458103934953097350414075128017973346609006261828643069513782087196089961619109976664402976783828630221663520680316799208801035838897331900281947849751146512923576594769978623341436334872951050642461677692525050651080617540615209817202402868541908868349363163009918351803203468191033222155159212815090498703475580301012401097613576204314107108279500232380560528734341419087936123337728702205584018920719958537460058962484605063655187302421134313135244205643927208027184102302804069566254055360586206149871435001425474830293387472916051765900593970094753746787900293507079120372854828944479956745193620841084243401893840319659195915633159411668570068140343134930320649123466723098379829282021130416258631153348326422430331589814618018248331350482110721023430884421477431747571890077251749218084733510703170495669327138693737553217509934737096111740011578412923878159433015248067426155313027238662224083219516884450660326571100333740023714871585662738617309199935179688440103358737827644303471715974875417415312390793223709609024115277248962322854120491300973569227348426567011373030417515921784263567258755110550739005394432401256395182235618134837843153571931005836004305220930977739990792263002231289040028840778228180527234681667466400291234974055410068039443506870092981115791600058220231727694055597756509226419374934093207115880703957529384502875645283606286806442351325708449641649588655020728518130817488579135120931822613629083619242296185996009096129585905672479505525854864135767782228406702417613820340196191486460606550562075014793911624890973480536644001670491044418093504221329630042812905915821579116023758744626657983637304463502979385685035130472434164731823450955081911126129015917175785458567748385786447730360820700553029292858254830503361351378217628503645288655000343717055073761812059340175203264289665797596169135015227049419700461829986115410600872494124840683547901003592377704120017738967869040499602647693416472360594663256362157334547903488751990128876388781029462346243409585513016423110322506835388902022026440587749086349269751780189103468064352362111589668380506313936387406261453058629309517957014586907455129398664895367649586537441335180527120622204868451690200290358337533703073053606223462611507024346953550228206816151214707446544683224905351752015673114426458128272788912511446852939581690334836008214656622002964469650223546684053034370438778359205278580563564451925342220852980636932295904070370195176172130215483936087739660830690110450063159699976187805171717448180699881929984825903420991166773441750626060167807671903707987541988821861772910666493603504770708372482707478339797851071976707170118554589688350805545153940320110280680320913477010638176443104208691448666747946525561550544350710514808053429392594074541670706474402594689523041439753741944525657000504677769427977522365333546637036945785667044147512287926360741350039930737677348702716162122192474214770429320722378452039599053689182572575634721866504331595079751889458096807002288454956656311850886365196002531010335006260639600986302840909161318967104801395203038878266221313170941682134403131173898592305639531319036324523411045606203039532178670381668492371163408352576531023029608786087073150704707336209721550450731676338791465339377660415846559995932008050988064429619065688529312465565184273042274536876442830911607414126985859167151702420345182870110300235308881347440718911231814270906968657299976285047708389577418078579983406245766443106157401469834809399972703694033343073341073553060660817231746909858117550214451930209272798021022168966739941279691508100868058559904037063875647647574208791422046333404712030919015062817175808746648393265400692477557033252593381330499195267911809311832317207495106634530464082329593155781903682948545743770834218436162820235304985039220732087568162878878763840786087453109955832830730834898151144614130802069241771790997560127839082767603010156030640955309845235366014298596536012007672098968708233512010223140974410936484080160231043057524275017130734299800222293488241326001300358252298814460381582184097842368005209028537272860810719160003975798659531063373708945450195173975371228254096376389064847827590671300757940303338223832013596328271220884049902251445763857599597221088108958104912954544147010049563529666160721623819933528810490439346927012399738859900260020478345308830172276751462980047437210334235244021908033041546533868610962181806066021269433149750880733838186303523041843302433270092997179423463603291377935028627466615447290359786288875258054270641097347132701236281100598050628147253214955743577226622206976714993112796407479871421396517203937464541551655825009802405006009486792954937638608807963134308262582038240128605440222185814080718895220098117680467333200429855229830596292733069619225877039613454812694007495251325690577699271258924381362230046955098575055008120619843238992597170526595124902776848973050965781545914083303130196602245931677750346547478052772384310107066440620384006064414016194690483581539530644117885820288076600648932517010091404372843683090074696440086156901435168565245611576771047455805429773049819087214773869265524216291937428097640741349073367932482302367545967646610355855171146700379221694108328084198550136800003040047409710018238744934542700857045953845640009397012269591620069195174670438954836373328454336374544905975917573929262597917203031072646803654852360374573934460651152686418285085788531690956224528107376234710794342024884848073825196971031254928950175897599432054014050090182822104732082313675595138029689608120804565774250187730327003881283673163350870420280228192479234925590030150616390303785738297981694806983756255846878589927489319510561546735486176111368203969309003394005942152757037588507591775937718408239861302059000377670386152381902578027032557953154137727095132793441121049089709903621576717961014748635291241161653603709077728966116851800005795328500507743253065997177054520315513851151608885444993797922730261453830430202441176405026155591668017028915008431620640705631527957266657229118507063320050479871237920192233814893684697694805032570117981687023227400334833943255203775213140156749431904413538815829819280377333081633609661422387070042855495533545571261311775602030564901167198798004602185982113017819916081390362056891848351622426455418336161877829063785082793709052619889067820641036544690515272588510854844304192418001814120092325071239771667186071384028228673749912475424000099328410492907623929719920960483054600394360201514055233245918412270347661816931104300052179125265393219621500004869601974813799970000276463554859028884027614410708615197891849600414350807500452510402263976886089367495875382591969029557451283086086419278805856835542100759499490213709357306961336937241201299244782085379854611970037703837050120149790653680035924809194708083461110114369170055233405517769966878609936510031297881873988075593293357287206723179701393254869510511153347161476627486830727811052177201553459034870647042052297179642202730208972407967410423728366630363726389908011790595207481022802349683935611078932259035137944827403753563863366891812086536995169397240526755120208879386925429018057650191445457540749207732461012230097724006817254559570576095696827536364188810695808142717958975080970528101469315666407699409703713315720086470659835597006433718510491130457882752986525514684654680592713955546330019713719549875551320609946001817752521870306709674674793806308199170290629358055401163610033328988875791638496053340793735086579070443467051257770783069252900651141962090414809270558644894031351020760280360216093816808738470956151844227248647071721828821379605440772539782292407449297311076260030301065152007167608020488572456002611905122172717212336429434903621920011818120664455453805309709925550218455631868767015336607928239287201707521772530234334434017659193507622439314216162229851243333400344048082535448825038263775329801933500062422338009238532478933959102440928660791740935612499681630583690659434822109402782318418361696067552898131952532970774901245904005935282378639157131248511897223704801313015247164011315400780752377438574352258811809319828895906423484521534010931695627297414820558491037006174070042509824369855363026080272950977465800127147750470319211892710016791567411871757335310713897528461345736096119148301624283001771237253262102120501076409593056097933501273174165288037355257632805198138089095879205044730162486708705729339032962799669435181225350184642196906051844194384697848196610264983164341961650082232859966061350772490093941589280065013539479146143890736291459185968721090580668561673791137863451268006280203302715822383561920407833758083727937924718213685628412377182153936661096202658884127939494028553611757693706287110126736269383038887628795300863511636118796558134326553090018676465903800236207984652115238028245104009594187161216198504033912429902647257745113629427187292966391248985568823937303369101561152827700194693052068279873660159865735276696205774121602248610742022778798862066180845686790764265687739308071947031330302034180301387880606497392078050394204370303258235507389456281048818617204184741987694764649098171915552140459393480348287510880313975862591386101043450408909553622543925048713243488334657045555173549172122546765440240020251073525447659932987592482422269575393615050328548327437592471155272990813908991012402811299436874343070808062241308139423324929310926986574885692741633597645986515156207903102605236825551323876450843600540174197028945420642820287445066673841546520106180203203715101022131914926314338688123505980599911363956076829214226005601165062739909014848807120236598701868465121301863573346750803098485557706380365619431254161410070222207323496763800300709314450108749782446367691300221956709682332527199386264810369701012242014198043547411032259724585381097027996536688957901650394389952959551592393711012287569130598435374044708142011134375971525114800360728792060511021965223532881550602595240121994877707144424959607093638332600568205117318087995206455707598886092244093184130167000207957472103371711990370570063670448625573327690210234656390196694400071599149311604409335799440994101481296238392120023085620559280477041725352136241165475164762167313960306763026342137558800472306427044951504926295918890104963841564101939174798520141003724931108020099713003065712579193205020639932711565830557777068083589458411390214724393140252272948791553696004270940751397142260146522816278330519177947569296584884223373022707873980403513303269376065667176379087328819454083185427174045700590229512056154701252583207722751241102045857627256049765235447366132189010311101349905213463628591168677111042816258051591236059897243986354109556700134129833121192833963004413312773502632020820200699498847355810120089107641723996189370109443006753731762541699454649890514612560228422027924428667539755160923454286482797694412080102028558296299655995049984882706518652359650201015117680406798013540077034108027401676073254299188289153840471156166524719303400490437426567755916309181651396268831460609509365213030525181340799444606430192327671650656194762262373440000871511860111965859320805180739455409983773956370111106666083309878632521060241091461590976947813715099000184233397122917327941405546146938148046075968244027185305252036003312346932413061889622873249115930815478010677583522857148073643067389071720145462258091463378168915004256632693073524278296206052430072118216855770337648989607063910660326875663854096002888405437276040655324658180002111763911666802315445162043318014544291015798420549000941444300628402890007377013886938992403943460035849719918683237608906183947142153849285947042130495015352102283172169212942860160142512060274664803809035656303312328600420931268571679150787563266059276923441583179350765635456525026418827024945268617100133074898292096702198034568673881330759261553682614539798386351746638282480200340636503727005304250474910185954630695726238610523418573366934911048170423044216277008048899026006881344040333025563121377611222073020868767712704500305656908003123557339207050665664452369909859613820369323807675215905712269935315246948100240232926770508059059371072878530130155259823984291560242986946210013289901954587987167061162991115542016852566901479262630664358500256325697764286027973430555374489624910213043648031107545101900409486210336454015967000881736331358890395709188809460741096368599868542996382452125675354744724664241106424040313629975123218292088453545125641998066997416114594202477047228291147143242201184707675483796560177170308525907128602166347114082394909584003027509837105845417107631115734557077608017028670626403894211675114027175836324101921374483177905926202954584108722131599682568985028962268339309162016128361838803162836804237534731498815547390537021990719390213276817676927662443128767620621442447138943140513813041275121345693620689055907727520123961276295982046088788672250390730999230522613450965956592768612628047827800144657089225781604380694702301627629785262753024547256480507855430557886553823484138379417396512745837924088530260006727605700021226015080644946334019161785887239354405301504771515838106304162078205102905960503883621108285721811768233668124360282205959341543781276877091842894789006513553477035701079533295713497871643673908239896920686142988862903970042305005634848182016302055700722227000612473839623804871209525472924696469507863023837800685077717425444735612505510470709708403097470838865125511860725053468730326282250647512759596051600744759533833347137704965938120973955730755641100971110311622574224152940805049247759690045573829546843871831086826965148957059615706718261185117071768077665746295445304790792220827343738683257127502433009305567502301812720483323000627608666165093829458721813580367219203225208470479279579189077860599229778422227986135613336644097918302504070799836791375037495004925240087283885255885752399032061344367638936926612544672040820868929427965159059567223096369438599728622659943772719697126095692075098802204218667001550036618239727635278507071047402038709447410348734082244858600198741577767941699954049155478306350339510264982210812292632041729008171970524655232168238614010134170841988054073567879036115508328450156406655323184074897519866345133029518029024097628563279005062293150628216423725806407866080640807804096181456679507985264469583950199763591540370772782705964714626438506570432622068444306085476603598180124867350758009214484903741117336795537404044486148402833104618954571523745377092577305949466408046237470802598657821775233005708244221818987086477296784493049017033762553883038251222639610203912599881889831269139130617708220966669005214152765239959070660823431688836152705449713469391298680342268749097973633390082042093043330384539709846640355480421248396533475538860670677018440402933638870783811972506350082760042056678888255755921279230025820057201386396118247431247167261400570172428776877050252770453202079028886074621059953014908134086004061512931299461105043696746026448493465447084507093448321419593738810243107129887672362866677820988736058822739922644831065824760095730503918981871917193940496861638470031526940855340544915105251716217602671348614917010640066250523261996135842713148712623549825513321735933443610037470959547027868260501439096199493487070575092103139962823513990374910693442768654461991798565650275949551053473426884398137942096966164023647458096874316076949310587095477043349924553177113719868239691267797401171513991039719358810797433815152740351708497762013282152569000602635076300721611983878027701040272325865292586622441339619488170334610429450401036513787361887854692200355863766010718018070573717728578014878003965751999203917951967002375208057843056129840346615005193413389380248571281600121297596029884384756895521814127831984317479019410345110674035358695389706405284820321787194983706434112335037170313940169412006838788278877852592218390966426276612028118281462145552861190744901536600345980324963276078046791408771304200141314276746500424185124979042040256240962847756091034804021646902982477034618043553507838986666575941832674384208521887462192847804459743874122081769001061227405016267696126116969371374435817251923019086129591042785675091056144040681132519560913497988207373338070564587636626030937690492816222918127363793190426167180236689631904833617074183553898197522436810041904912159590002636431275323112132201084433011199052509800051129585655706046865518772440206352058415642790740075479699032552032817316207613204019243706480667501288145394232746295544908381216478167913310852093012130027960711287640441343497752065709076259588583888618943028904664270424404108670952382571551108471192176162048038407871537197209554446011793608040540616813776884969106722911111708904860167952738908583370601442407406130174499045958658732401850714598311547841758603356791737860539013872897521260529633932144579453225294053125477737470882718367267735617922284007939650656868469123687963802272281817522820695463102377440590088210841594635660738285394413126312153158026581091640386316128674408252600735780869061940362554709052314735480834406750002287177450030550509015790114345690845109666026021249481718541499271404362025627269187516101327286509444993670581060295001012409734839758309324784902549380445878222417179285628858506302071349076720995336315018491778692363884749544849712865766964066331901577047304483050732018798733640383115284867521353544932132020748738223672454471940555327909374287480005980784086037214425502381738601155978699092553059106938569875345545701062712091986757409771410431868469371617461432143077097199736493000945393254061525698832519954736177618801224143710038362217619504376496317869202592209822645146634050262624266167509830036402175271897276236518562502318995613657435102202174237699832094101143508528194570506270906886548569190402391696582083059416499348925286406462061383577504512976146605080810988406433403988688005251059069140130582769569401581872491557691229921875077817584810708616515060366394137490060895118552731301215177903065801221988246146094063146750773545629788147392069795203758115026103816048874324506070670655499903038327447228464015822705516304064043056124151441112804193591670829245224557289708057608238446739554049317035804804607287064829492578637226306086551808120142056417136462065073026200298437144649896041582777031670763157554361633902522360998583956862345328033055562145889901745754235439109430070036815870707455831117926641185387004629532222146621770654303513060535845615161845138435222653015089732625743292712358970970607767823697202576540170146016936476671947647762779180282701091087627083832263993976634748927084350162310715120919948783097341052377594558967708525686283622708772346949639003905200916839408344741046315011448577607074201450941273409619288087204286972260158253524282863519040126347592539990632008332522842420297156072242942794025524006583144704071982696797081510925181569974611465744923104167142648649402326310847794030087237710285503016802036901358198940084335067564393115411094986547227640392573802127085120579300750013115008987963725072508487594547108436051983094554235671158662314651690724559000215975825503891938748130499685257292206168406075111585959699726947996631001540434251051005504536197474415564779505570233408842244810891200714062400833459449163120602897800173321667283652010380261991707601369352914269389377124169314341848285058003384473203033546467968018708670509051248039986362390566458316457783892136714842346964738401308195517116507325161901959751104218029858413133957492062443454020002829691862401137160089069314503087789239121776680963094424531007090298250794005688425524048135700004027630862810572020019795178758770672584938831649931449861456897160342309027908950738765316640480247540736265753515100264164059045809137349781264551623723476316971414071659524007439459556739676515581650053709344259386352090419407064636158408246742151659314390189304903407877862565618667730395634420841247709874030181464952122109766395483703209366132553357018960077249773185111048026862166535237765064233194063084672902788070605073365616938118633547619637434565197701578387564145360799784391800113187263512192970657199061863118285903604322763745657940013612809969897871410934681100065636095717087728302107211434003747011748934527306145042428670451023661355021027606100008349893549250869299060790085932122635039009000456017979782009065706113914477541570926300228343225772389637813560454860011935138567014194565925125177455601215206134078209951688871327332367522992527045378054377806000124754929190151707810055309073051922764688555122630366226403818003502369820012257122330827680149850001197438358670493107620916733082689267977070476524616808532851287321016010375450375943877383222923079479726014985476908735475424720761981919052403246052541910050013470079601105502453130612443026950005339821598512046502018309781482585404139064378266648511431201708430933313098069080695520705513003727014767786910305197773548007677775023099770020151705564631062881393620442305129571076765033021031984170556924286325995519530746977258091329834753214433978387089888959033398724855244833705288425889568061814198593822615066127067502909644701959898613720572037653722634167317559305731864273193395294905320852095065413496198055498081113605067082069694701616398856685662925538421776801077404895408791971082221228775090503791285577915894472836094401672439220635958915576355497126537857108502367053989906600848772098045950228734273715872333564485787627029521670042242403134107207226171172303171330316570529279191368280756788301434459411405702002257630257171209748030560276942921029060456077522253028263010092077667042505155535868400063069508832492643613220621455390880300820981253645847915274610096909676988866516697800316025430298743948650502318631671273687727557750414505015881569303272652075919500793058830913837328647602935019866692337005778279160264865043266642054810669709618693231878028921236291464671062606910500985630437325478522886749490252124414266923741385149525129290422251110093417084584824201298381880475902187194150714406060918168812084852177350227078214043182215264559224019170208096215248065526886564494103835733001531161576054975186849198782360321715671159021729582328109544379068263565112699025912692986009914690851870508445628444972970004472430133541625609992701194099538730185370686462909164725930756303999216118440499904074653062689707404264990398777122402733251300862595046906734384737946739639341833707894737071493131498289434399363095784522575565556172342503843601605661280439757502132322112372577433800104065190402825277870761215181132867547773013703910578630814635050946058487683921041865321400152492000312085580498493759032898997643348050839490009702416938696935674121108459123008017610013423812922519277657240545148941604800101569611058610276612447246444258877314830050000885394083358330929556506757412342099931232830105337114827823059997341808239065444075009695009557371204566883280480173728494785553958042548171138537995452783426442642803865607298921627703161512017620102386765800032517010091864001914286972631204025367571448091374732608205323634590820024777585860723076938502960629447309364966878073016811364911767820478957953278949174267365197998026848139485211431539107387820349995043584681229413590048350695581280089473959738830880021055800990698039089748877290789374635566015709632312367937617582406411666196552222150276893919019513601843101289308668936367802672582618071514466325588782758464080002919698290355759707073378742486619419146538329261004363149534828009602257121505197318032303705924140562621131811580251310413837081026661332209405113599669739125261010725330280260529627415218196250638829775900081610400905107069035542725858190630842160609862323601294030734413354098286642694289302666342985125804177882581489187746580771550206681484289084206495956787802073550124746506051316390714708906298382453806516906442219680110678757256522910749596095639361492268506073478189979837367930275042890500361270799220778917360762564108231724882839162103889100400274807016438112370283145809004007098980609376582800709006555366584092802685007960224820714747946227350984108039061972666087046012661184133622984039483771703479910395331053666816460713050425179576716093182706015819330899551163017915783008601160942268748314538933011830791241751901432410215100540422910299229185915651236028546451287163549490068709261009653454487068469784983705163022290874248615915370784584164308211045410305801509044412783822577194277560287004942112057115200696518080337695052884121100820844858900186033230242757417970960298901019647980914744222915603968411059820563036331154620691584914280653854438573071155989715831456369225133095804858489338300283941886068008725080467501009579053509306053979143471353466545537863295209712341421176400966346128072744665429234092404130680987610209465020112125972095401104479615941901538759501793208522336358847760110807313591603182079149015707022922740030530073324436868594020481161890310866634480107727799194802072951314283089802525685509218740821931674258267274041467386330769253428058990174846802242530912769247292919942450909279268389799746146322652543113337988644045010618074350190089560594726319910507801855492246102066400643296522707462257239314382188383239148605785611729156535201328714424289484308060566847362568162297357756800213017810044729722901483611281143624030475016785163004307198005820253859624053545685200253383063810931826679047343232839639569961810684328466340449579265037132863371665743269608612429743395670083165090060877940602575469635300067396635205322796861544959408175492061356933521629214102970030552156419415394151328658082042580886108020793756310988660613677722105663628290729032990425562614797180178369307804530800413126670092988139274960566452472068600445748194329731482695011035388687681300843259049966751154845253652006313503279181154171224111155732508380930818975513546525265817541928016650854844423846203353801303694930151811981111864536212012502310009835366559037222962614779325288670339351907149067073138303241271396875928426176112340506098984007421501162129932301735006679200980064459461073315325336111035041846970397039278441381557381448420181303021297113070830081576692306186283567363601861706524195299536254906458221248071408048700038621625543034616004269504007613100947252622663457032608936081934831036133064933213450532317765466715207594499256434538124524233272427016052235857887786910590971952871739020180410418480013734267256249811335277730457255910413439013900995165380421690917509967847753030650672020868112015238526507937565121012973526891767091209028287615079096709337172680238480080555635076387076928771255345790762884673716481020664628805288483320027258688378706620742280458972055920237609921513532484073242004646341057913657286018492151727272786374805744216197208034705287818848319378080350799329983472740959327305104673682501679306328777741812779204093492168382664507648933420013393264908570250993907754785407532832717819226380272651721386401192647974417661736919714314891184695071909952694456080964165538274783029090118806377936124894148291047216066330866492085495708516537955215905468480914777786651933144510328762744438498669896095056105007468346375840606402045933339501063254838772863739276622960464971078005103016564100555001999021640091206158127088340456445001483338789764530453101095229095672781370743413301716689204590519495672425999533161041985731166530106576763520509367052998377760092587397345869406039600000726301450467016086684002143387654600051717033644592919136262443307457424372759771505004324781734751973830537544516468742726382057475864030718325754436952524099453042625854290913236137756861247715590104606976271292791866607133020905293686195994190237747703058505886672899792871538881012235275028362172533693351724197378137440008060010056342849049137547383240591336181437104672114453411885399032749240408374489424844724102600007979829292230241855039299970533846076017338812961014935485332303059598067146528898916461608749400204985034305499895020886096067128883723014260801731362964299780246564930263954442520185362873620814811818970157466035297013463010758737056258751354329046552931930180070810631023749346211498946320937356740031172607496819821767108176496459896636433602170006320013126508431199423499854930631764604265003077255886779151293955001875087555541728240851539971544185689319066721380399090126223402607290200140072824005964731719236349341573258355742615027871829654730680519461431070720382387066709715557205628921979948750428880645611117480122527375960222798590467057371620465931251901120991883602929206991787824496562802384219521023798669629906660934054826066014200209214020242002209507722236580047107820510292574295582589214799476466129908474919622849893534182418011322278851258226860831068150323047664907933023804399076906482348335626815960395068201925503637377187906040913618656308825163023740004350948020724778005436398350106668916376120530660734688906408825587416548302301917021581357080601028602277003420102157004712735407910560864331155386021518118118502000116485354362517107719610718150410755101250576158810624768343240496290455918736834805153580180989981469576780041069900037609175733310594859347907797379779850043115792092100046414983932509249845298820384543484873679663250546628096267636170756836852546284626797610252499791382277979196364887358070947170643353500705074388498940529050651320947148048697373256544574593036330078954585873953647315682242186790700615763672105038547065927994207076465191048811276272300101133821551251628286000103125980049009600455688204054709876615560376211720436755255446201058788184671032828187603957253767606694708613911856384123393748701001249045806111166493170389955321507769932464704772983054363404433428770667025229232605475000441340092089654043372032830141543211182748832176716301097577052772615125685511927226027484496955430524063061245470813456133429934601568832406131230095880784101523868760917658071358357495322860722703078615338764753748627153656773545754705746750549739060315012328772611489590529091506983110645166145756032964280455340933410487577392353268841594560536840743106527808297448965771385872824280192677475322003447657246890021831617186345720138685953534646645132025654128262257761790597671496020441504996847423141513720749800651598504138794091961808848890732242545380083006286721620017630110703074300492631005078142096543013826325890313156080807407112448353905171708673271416198064577280627747477755552894009000003468726997805974492960571589364908345207176120729931654837004694979408201807835018388780187635313772005606574567494106699338030859379821013985645347410915972664012610059665084655715023956398500805904008061906134977440498338310892556825049441302257010589570886076015160462854117970439385348275964308824252753610842167639933987622687472255777000907889708142693214803115749448086431169718385108390316634056405984206825328040095551832639358438061575586723932413707656995050507153354819358496118201523852475865155979512130010408519277705135948230700846631022628455508677783897838277218302415219090803831866090990274904091117836732933894473453812963123792636224580706547087837073512295466353486605828570439726585591376435324486423145063473195691552277067703966562628010623099611494419005843509524923430291895146658747431578138621117943321919924910377679159191618408528350064548602067042159988127041469711877551529700420943644966591963073619365185606633598365720590370229948573920413523084444690492408167945144995566773880529772750375940657146882309732191934929365680784696265540364948460341742529040026460114329701939260393650481949645043366291356532528060038955612099375513856545282906411924522441871870284353242121655337365975609800516444286299343718953282824711306900971212343004630755061336704525090009951323678120962702352126000700692548313420261681450876697974217140665650279537605380753358367735263045798462580307770588205346907379652196510759645941724225814702266046977693026491540246080062350336081590902648376133730016646760771846100260810609497485521131498230282764165169740376556085627800937608605178487240429005051132555561035341539054988740241815600816336644021624390116698969445006903952760338151207324370729312390284140474667913222993712913405790189839082781176147300097573200412527077556122732803334730783469483521448685776890780002089067124402240414132808823650419045054579207169064120955948383381052027116822051500480155822935710725002354493975358465426767871915761967579050530307588430878697629670995495826525210512900858073965725977110477650003046173701052364906987849232114516042699177407176214702001535979753790042166434233060221597458341450192887014170536079928394620619988016368150011493228140525129997144143783804970806803145246097180041300478007929599371623360540246609483703833211524896237520588506506512201398857468366734319610264005934715593754353700810742817372432600149696805612145316508409153740039981410237861603106192308388501426947641049244106186960484770018875608606612400516019484010985567371898316938421302630006268333899085106797470092530686801881513642196243494089132233123663797776252906872161689510005143334232179080047205943023896047891135530744140336278577008162184252840377890702532980766154141399512156309968877364453808900341297666258786140227206274811651844801074904161234054595872474262954171564596551440161022077811492952738566241477234574208430471957424164269759605745222865440228390099409709255660358812066031109778454763771599464720977311077783284907841018375851089168031562656485240037041807710947848886403295398677955134580070057049419212661059658906561346025344227898409772849761912575391293395656434286920564467805581965974194603079634535569132576305406014293550749560999359558436458512585064804863407115107291489949302770230745584845491303116034214970274062351812856120170282300810202922674777717164507018371548083758001048053662464328229546731202020380690483616501509318944908671057039215524842793959258551636407638751877722928584533301573260608416500167409876170855068882550141144769848000621112651803607180280326500486522576570551589591154162971663480984933603953606765859978041685133640571770282132944477218505187780604737509581604212226843624140139180040320554412435586081346298190424603684477759771670286262901442401841255243009110504201847700901185111060762499470923872311244195977724138631032906119666213302905753612855047261636829607152405469050068171013788282383202854153610960573021764509293064969150709203862817639094229097000919548402877093817431372417709100119882208580585107305103755530715183198400630348463437068217345229175239391324249734860381845748642155834443097746665305134132335413402096930041515097902354745669329687660411899077614247307348707688976298743769009320662132443052034893373123056537008742058677256314548818691060487162330659010706414160413523816412916877096169049452970345030047617056448941412612874863922922653946672744803365746024120916802224408503920678000334891460524462872603784706406950071884900336708194830070794108897420375386721534161207947185071148986660700782874733800762970353132006241756133042932070963513393650690251077485957161053268472500834608609242755968201307539714696496295906553362713337303784662203068640899988960104930084311779095757834797714012575149608163813065033598431059940314491972018940045738939371106744733320895197007250670792787045518372043937970751551233879509354944431315694242613210081020709999015210878900031212607573490909451283907055409405839175812463694390053562037600681013492314788335258901529733218682760133032773096377081508389770541220332156530586337859739998617188849134030393071639090180541130361304047413588465894196996671456260971267516434840943757408948634315240052858455053277541909722500823678125775219294850218007638117839598464126073932560337622839792427073376596937393260226776042784104158917375218541503194947372754111063935212426250092421378902016079946061007240095220095685591810443426397022421492520043193080739190486478395929721568341241980240936872346071218096200215989073095355516026539532593800936451731032959854121460984220520046153308978644540902363239690895968011781030801826124068948588190840204675005378474273811603060841831421954495558123566555017602028025423080318173703125818190513298498178215391378539116460224488770701869915965001472100623040077229394243597770701046735088254290538719034983559992231219208409253039379498039613351512977831279033305044708543426362186860601985058368864907903409660334738840690050939517220855676900910149005301991573817333632378029581819974030945447166186092294599008777955736210200477195855580860037840247181300642135162640133320623933182540992357215250902184778342060376003418931551004259960930766274682819047557892144145391241933520030185368913298858412666696722899077290817088504071278640857541743168763623304854641570375747320223053487138121043720034022771548842419788409073403355730873495180561502487536432926722671771704738071579264254373646440652130920787667583799829174721247613039420966513066686303071088754604559623551008414853965907121533085706739507729255106973388485246359258044339805213007131006929761044411256169809731491035953304880894070279372550226002905859325994955054772386478067352173507908011770076405113459367244871600702939233907503789259561165186060997885932954560561561816362297688738784611044113811505353074311080711672781128733350833983246532409094600287217144508342710036193401687848753000328197854869863595104916203335675141064433771310017548132213072735045764861708698170551114786260310532501046590895280544509059353799227245442368155135476360138589059311772391446339587476186290504894041402963770722511475625099019440874970914543016872187529861223179642741969541100925821731001155020089061049702004875769608349117985737060738450597849953314918406953962074215863734084040000008062920300811189350067236680714578939105109235968670540962879230596915201699025825781319601120525106175583781327628865706822211044651083403517576470183881040320080436107564250592206462171406151551166502930103471808476520384318037412560211601561930478714438258269988501529477732437406103912502717409576605732018916887142641019658252980612127557512045211587004169908292750275642204090811111516095726421210867066140009295222678435733365782050678457245083280510421301430513120839446204638954613340030908204078536422078729990342550179918296841911190570504301487726880171932547034464811524813147679300286855550199224570610074771065026869302811144179819030891464162830804936404719602150421951766107260722308327804118015235752841132077656437432939617568933035328386250488648363187785802076471597068867276346231750914266779666413919629772024203101061017574340865633267415384045206408379892110970582797631357419345852638822777704496576490153579037309425720556246009053248027763865285102587779383519523501397593711266597728835058656302356004299262654610919919198167007611877533596073658994027292047345539114880200127724621078804668201895259080060556120340416553183613899426228335560557231402448847984861552353489016325474027098553000359809444710338815780373777319592747846627965249150341761230140774236917900542182038121850504400069045502733680305640093692942167819034628781629780504570230183021852615255044053966991118498762418556599551810989211607482528070265950754988355017029800779044510585963796464052176514713719322927386070242638150390584007502166028411319790073572748489891446553880711301837559206280482407195700980167792109597179417339253316379056918391474974197596719561155040179264589918730008847706932583404052281518476410765341029260350004085273444435753480251451048582668988170086931286692055812592668808803515015836029736923320713039553796872485936691399015750313841374630173309566729422250894600102507853866327210985240642149638958901917964887352279254106263548665685204802867894498333604302281713571492928734906090115016306808898048989129625673494408698530132360317751946543602201280532893121346806274340791447636759814721204109422904104825449155747467123235615578698308644486527302904782908975088501320602750163541026005244666032538314002842851336333178056422038679992922175309490466402761088970191577500408246716311458663352878000151262622057245120474830630128092699016692920430390713379522826152924423830359950075671728642009812642882221021215859717219430388744842514904504727020215455184663325518651696901345347966797444260085527569871349156082077961412857264064180969684564668975233476740678157115143487201809101802232455841551337621028745459515075327817839302836857670468046909369227324408177009796228570887445388020913250189553234777812470616977157781901027223531620234974920432368121237927667262753052722049628507541182533129205719206237019964100871299146906154393297527149585369855389208973323970547790167493370206446124814002387258064754502770836339350091510439212523699035351530263453738056892085234366032436303570338539290567817763240572428857831449932507493807426028960495548270200979091443307103045366837603141999710052359354589026814305959886960218419452681718410476507745090737018297084130524099669538719435566246629810344049120317194276690312423907609288754126105608000160088454542893316779495859630542003550072056741183693081004328100586409097489235538983539139356358953063068585748498507287365127697297591518415009092291097461700646697974714881011382606984454848966477612967201826061405351832104212825563368027744590605233840645370089732883306198360365402794046133092651278040810464293994253890007742350474926258910718869660275090353345061002604535309157370190606902093540596411023805468316145472301029019687472064230888261624951265366043129393229029754707933404059093900094094209566323364564760305184494808574674701809170931780308290258032993300894240690540205734276680225661616090060046566144603609389546794219260809540005838900246680820520329404406722404029565096708598070262684007640048516113721786894073902163793226541017919840322334807384018271020046614500082794411000504608096022746675003241603003823241230222307747562321247885706380294621015102280912161516726012276853843691888056283011092265907122001148170648225853124902655082153690455177247468195565064537584634158535726420815075995197882412514630416883555818748462110225210348986303055467861000684032063887363340107233181225250407650869256011491450407890704508755811838049540011407648477374946050705164207910706485510367533450870404360410496270594717273815017165091313149460777333789095448475350371574596662075973217680023025626203656047949712041655538784100831927359101099158193917971969871870990595969154307683144572730906417033772320286217885783705617798603260122501979183407708651588276034781958690197840030260406177300552166898305315161127498949082582526944025065818563798948143645658180907741231473361049138200497444806907663002044069106120347898375924888838300355301799423423606526250677131393410793583900797232686544379267393751072752900463157253678387392865599494288919610480657813359783592584921846314657408205037010922894534805779648778440060874583370881307024026216773783841035177117900404776080568412437486609518938098940088500851238538974926980585729295886788064332942291772796083128006981301650152065994868415080427617100253066008477043556236049111000327020406527874391464048119350122540066070770822807324842264477458594559888328906078406985803042448004884133007373586239704720529080414430674742266945374167634839237062926163202557360876420992326670987305776595902783895309999646620748997511302007403383812809856700490271501094695903675564029900773370522162220830149762098503432949568571516206349505580590279905080653816372560101452030715244065904408086130036336565021245677243804609708336113628106186203000487125785820926418701602803887705926230774623707294318403263473570244361838000100907003904122334353879458723423487332161695506270587250828425123999804271306426458293266190591693293874686766548662646478523265824708301193096343930300607569361022750096675803412283162261244386558314395148401194974499466009110583197576700003671751735386537222445855127660938732716710994537070980107211514430157338748840350843999553970048661054006308238817095743650440452508376705245400741050874001178207440144147021094283601368036262179492069227986973142258118669786480910174913044067008915433779536317101851006893816041082070463245913786003261254075695343915433072001142909572618550026004415534605440063238408298453861598340716469810387430711340314863844079203080966704512003213030304340310754582421886851721058436700671770300486813051709041402375582949238327934159895624936036622977003850334254297450882373924064717448834483297058035491824249011875471679298756903988719325081095825187392054673096866459543320097854204812731174514152948820324521579969187135541393720096510810020910084343933710154559159665507616542958519269679377582251351480061650581290478960838004564441977654347802964021729033519009714830438172176165769482923785218705223786998488224866784043235729301006246344902085425935374050201103402200618546016408488334553464513756735781655051042558114028567736860801389014463851625212405060062221062162096100478443012063113959760669694079674307421051000320939455541416099661390707070026876963188307018520350576831548760508990049294220161266254966013335204492003071514660072953146623431877207216934293147688465456750857867804466331985036978966153111598219056224019057478096560385838549973152164572429157096272096377519437200496681801422703430600549867206868040013513501880426645708430472584931680400183472741308284017260123419388735261793198851028138990593799906583249450831467302543870676017983901357723400585218558069038071190380854739472785200421800973030830380755900299766481380564001136364515718274041742362361696645414867906660887037056521634271109541167411181176581848400908989418980013314127630940892815397333604884950681231560942492253601590374568237072308047640103874034470016330322697472793373009262178303800194317972868699022241723270608350244890932223070168160626088658590713681515543130207164925582088048486156665478226120585553890635018570242810337864430088837362066109077104429888461000994447773441371717595449386421220084395698720217603079308311805668371715602662196918235210801443913069739671019338407381826655705611470766073690830338806182998503831038957545913042113207048837444683713831130075754785792644557610718625305170413846756054972873740344986031633374162433723856625001516180707198240462850064269576761877832278911313560378133802704331014359480512839676012221908617648378386068911871856937082736850130097059604895925144331409370148567642203861982988804230594999327872997635473645689548991911299513262804044575384870100888877000425973555720352565540106430507954460138205309710869890074143004845810412030013733380517856952751303237840622211180352238948999175951699311852008267941059014089168989410921338908952561383972385202612604840222730613087910095864263795153150886614416905174096253210149652350101788595238036901732531532717945669348838563700386003303017992676556490479718492426307076804217884893246437002993435300182927793425628032611663059072547459401157159868530800381676436845775067022019419160875527852624356799420146304294474083857633388045940525408158539545553167060145315746166979130109239125310054768897618942390086395009808049804259932822060839947375596983329507993688800030230205991544211199217558067052414020570112654205966483063710249613097790274599984426334468300877093148420665423576225053246269556033852160675247679136909794087504981821107040987334071110698401895972180400398471439767756310426537787589914427262364809913501953980119519498302829755363962491298071966501910265433772684010640566444727401171444061000218167260495293403913791540797606930501470130354208118405201856056804097933342515506528040428450638432223671220658241640594180700207718058774325386401327388465652512616522453057834570131525605275051947987718680831274400509946500820090274175889749738247020070510291941060171199645113013045611254761170706463152906580145491419045369596199915201641886714470910824937004106856747156020704562571744930288282071826435617566557781930217725959439397756647302938182836057206855469373750238532687095715985445008345211163308684357632075541323575070274403310400210429887800504736961288578538766204914218272793231235747592910264525002551002689390793794108301299846433025106259922249782014293635773269671720202095002321175831789301305978949463355797530652163158608657755262230493172341400276458400593421955053105463008836591134094625829683090803879974218734360896015055650408724732276234249927040693311490988343420406039501762988336466178882823581976280227182102120023080035258732601139106696563161051533339595611400349297339793546666080799911757516026056167109709941552566524873977414781241604305821610124817020309364471177008572337903945303081518358588800167248226390772940326403067502354738275231211202573219013928831775151214430479482767882093975422324822809706408178009251050570262375923944705788301077374090908460108439079050942829766528974591258333522935297273336256229597380560602597215150700345629829014539876109356004492480533146100102845809869546757068783186425757214887725395293000388753661695114923532627406090201590258088854012934831121940332436390728014119803203151838641527631362787285650729062062632006652361866737429380902779605649101720101441097007221371279005571847966554035584775050129279299452438274943288982199113322275039000614785576923509516060175716207238235323927472482541737016025943141558279289120701349333585662546089258642812208272980704064009090572889394869947227341075801823099094621400555800411381714498991369688638475790346065100282016009278288289626902474617593228366620648804374173267964587062751053057717020597100950421700895647413135387295104634700952993431895201050600509000026865627860470335412353739571489743823398448554013339223570474708007474844400957195396149727830007324059517308768202735233963268575664217594734139856231617650913699630571562812356470739210511888259141212267953445385472081461766489500908910239438789150228542326361328248132943000221369751829116308124311630701157102563935186854744768029338981369257010032461696411306231142610025268442497140074493569391765935084014399934138610040629065928316324462627790602169990193811905457462024597322700090028704806547211270001108067837760545593561286357036979475523837330342348987961337437112406660834183813951450267128638556319766834510520254363705834403243324977650818780364274392150134839680671008310607261909265983054453105119355433005643072306306379106155808330559378032927417750137182870532086712855709200068602406822132228366903473243643055010787114218572209580990379831021021308701011443530853569994095235762704054933142901428589742795022176067874111413158369347810045495063854118288683400484649879814410781115201745588055755430935131635763030476232538312539039029608430850770464631157223128831434232313271336331506805871327756255714050623310613526713050284692060756120350807406098401658369910002150804004889379499233202593578254068124985313504006323310926521963108278012280000952725284564440357027368599007853844321881905285009400057861334037042680225100264991736647649001394792099183746582273309091562264872037057933231090000593645441130604431319390791857051735650608508965016157198086085550158573958614107791860536835739442439346361084633397849575355151872840414525799080473252146635518981083326626602335625065063206935580307686359180699736009230788305744092459777463078911991562528419756335833013485513256813639261275444905987588470690972600380640856380461021737009510435180844275006814089929028275980913130235900539601214699366160280671703637806667207158647627291201032944353846460680110624681052328741728092671007541479110872251260828084784804345964599915031980817516232792538239176835756674194487125078085870087910552027862806340930078552375358496920622823151254952471151563333951453477461605501059501901902609436394220546670566384440455895147978401146365294117279247194661814225645074594765700436622142460718191006270931742644317779207335028173507036658512182075220366482494383013851329441052349647224262856450894718127563677201722641110128667333208271810843871814014482159329816698105500419629445090772595675014426300433618987920035305121842906117146059580160179905324499137092094027052160719005409243284260515407905811350721368193088352970973803340681431057089697711900769057701777338840278224973448848843055730825236491362674496740275320411912526133833404090760006010668730530700560645594428799842814327160607289181814163072535695009365547664152573946780690718271080054829070239964720042360435042200596463990597098425871390463357612076467983468271924091964134051024909958637079139410600005823458677388216457728108726025334973478687224417748039509833398664161250874490483526969078103926846993102874215362723679155314300371031349085734557245265420249135268703977567882802781931426678320022204217117091435094903193526537266401108454357008859839448470145865790241772371533204008012377284363102858528083623710450708178773208615860712005983569488106718831548636465377780020140404606869349063923647839365300013912487155393980254636066688055988706870015979527540935553208790052899796551643558027849805635176381446971803853478209950475706850269501200765537045976934723197383897150485747620752236923272853551260051129845180111111966812333301550505314806796014299014478133432864333852926133865119206158469162066371613852787313191589091913006008434905993603113099011345790735112888296092113160220032128996205822578585732555241240249985847963678613097546895663379239201503089562806029207667924024915228303549099203155709085007457471749802499216624040694702429516232093873211774635743758460180523480947461277367006009248695717582693146706014500000603521973740239155727343088945951567081252058936176923675782037602102186472513223214650936885400572837152116420956952100724350679360057652082298275664203227986253329769231974185845264149001175017049082311901462938417793718668456424496610267910309083880600077449703089002658765768092214374010220372339835608653346095989030628068055374854717156046610267506829409076003184328126664153148433545825500405995647972197790016691870451314780264070734341408075348019672236080295096605212491739779480641766376825959116730823026451554944943716227693881455047257777606711894161691197960793232059522406741082210947689003220065192667893806017551384790527006967327614616900060098021998617233913745012060565877308382564070918782209539635529930403448292130985291181325669671023134699069630547490793294224149240835100460128104852600969391599763410443998923661401546511087301370422748547670451808452297462651687854546669194592915548810005801694401740993942374271509146333226650728366600598088484280930204715741010005340144600083610705856302608963008317515315180966022909463010580013299072782375440338890060033204521231164626455789528518727629905096091651011749057193323565086892535952154625925202737246031750335522544200831004300137763948910824101957142954223262298135112203621637927553626438011088211344668177255614685887855692081533599850739007826068888954024243563396529694739826531159649408530317354091202376822030088170523733203836157019458226325780776971200616557562940584420263548180144137806604024641433237874845110390170432627084389334604207707800845542287073971950021915350841944902165161843058325509706478343970103738551195289235128125510701097800478947964154805040652604736208547072208807955934950891250458638037265435266716368484601593734004129705763957225524880077861423771572439968699225183414337872173100944099305308504031818008601430212155606804711015229980606024068410942891010629618647016084776493334585163025498830846040892023236345521744549112768305114054091135058957966307937191995163450550660556665423255251272460301227586608934545759414609328323369064270624996629993511032875453443877180244193349938591424687175660253732111987162067728201365938251607881311161895689302480636960725649775906170082244792449802317545054070415631099250572056532129910558471179011402108830169053769245310010297724505634257866916457302136518958624118044256589972366390399433309842853060621779297461690906253653398640070122697023577180300520944306828437116030008830892055600099087971591223241474773720661355196330761968723424948792107008995034571125485979016378778165251919066472489001108149396403450608022725482340010338037820461799459353762535303252021571470202709723764708682280140565267550438485016274311042082285514321400955204890520405549529300241851790649671951550462208112530757537205728461482339006939239917588965363391757978108976017837595937172513033025271084179056600540574846508525011601877382062167141234051460122047960080525455384301006408093717365091349171610292862054898447491838962119236013748972818752693052950082738399438509253576724139961298118787035728044965034911650737446763485565761018165838961422641153129082164008719580082279960332308724714219858156556003243081488620234131417278965190626797752108728453753750561868006467984709150600429212125066488351736955669759115956010364140200959363822131304675670001868962970775456550099011618569706107520503706662284300418863760567549478080165150832736775005121013652875358710243009747379161219054628830465942586510580300777197005293240023680404642462643926471403541927429226467013918307601055615420153963674417335847291327704433593508260305147233576562075184293022851805335283960509041359418198695986180502867136360061367022407853206617070188025930582387853183048076999032960285181606725203869801004162268404273577009115686532730069419333392540143054951110381347391001173443144549748310940902570547670709035092550124282441708386522667462366830620254056612464354263581244842289901941994594325449941228409471464949465680298340060450589292935895082024010132082248906320298641078164078622001778642026272194212091407039464832460487890947207185560578377760167804801258039612706592119811830166981015927367076264338700896802081251502025191390499073088965521239408714631429318417440608660354872168764367289812807583606230009735260473158820009625688461072993111094202211790436541290387668464582165465626569979127584953531727136051708350493271525615701518202327002252911979092197814844132436117856603522618279325580670710915703942180530517822940057305379230581834715423894723487531207945471561077061980356243006621759003669228116606401733400332975407878674494142990908976061341697883555315019924977243874030762448309671105700265002530766020347344001966390975529148037202107038646297232612488438582405206100414799427111997334758947000716753911166570982803053024879714776731982747804720625230571964434079856439701088055510921285307052909203140629661485042526009967864738096855400924070209355751603430809278737943032324304425162571754952905910031479005163497060017417487733808515628660287360000842760960723744038156352846196264022488009504422505193770314655142515677321154872321691795374615450817682220893782274670303175008853932215625245421517001670577454313074023719642678976498103644971444315302025213838483763190013283091172954076650357607700979174905612734715211060021137800013024238705054491477392233520478588179555439920310984727281890914214286411781883109756148867540188327785400023099864615560290143974080918166153110856904260260621978902533020974309510634663530924513334148156402570556276490767777476089336312576344804005395645113266231598465593045512638905238955236860146424709612388118357890180209476483644761027021438695192970746435861213046844987079122870606305423306964643728304241520797555653274404046284720581251015450071694089270802089456713462708833540693396499049973333964799119602120709385754720359570937080307447436822197938808993623043073877545293028772389505915029190423069986206121590921163177794627192234053385123086700981804015993500324344480006300293335300067708460653279003150604715503413299256059573142194247410685606325182420721004433961524340287025272602743082974228162224277908069100452327497848643854898556284600130267227096690009782190267657662134329842436240802228632643850320475909449504100938453540540257630627904984983307703159089735928070638427345967955173823437032771392554262109081048012847970281028762086029516151335084605765493846216872000023497503472341495130227034140945176010813356537807034685450670775850126213058776998874072197592525659582540046370389549637008549273631049889914492056081580616615600752700405504646280032647170108913009037582051190124601240208650099992096432215018867571009177099625627004926155623950808246309328940705158099910026232778608432514440524538162225894102592390180493357820140173889554516136176869442764315642450381243571837400179990441402213305613131581864161725242560687305428379170585120754700010533512645771898077888825147009355906744325979721106281832378321716811160626127000860710751949888171700579847304159607764815045394156137503193349509856491379124807786146591609307853094542395872091808928600842671011226691135437803231563216319772164605600523920508541058611714483267164679543045173704762612001101352477537033429413578150317048352761668493025918582058435376176704554933103113976350379201410075850531254055085853682109314414840498942967753158142903954657890119106822624080220472158088628083010334256650226913631231056603007114703915454287998983393617506037888789586749912215339231417400540133789102600954149225658851192845329101525039074471360892007730235424776789965168080607014362302790404632610448943115510602641818602567599366126240990091926182999045732731503837739034382366765231505170403508787871478867015595433927870294554525138384329690466316524352382853310041096968949350817231509150237287502863189208446193457780654316023228205419059940534546608347252089911442976639320565126195197786142012766379022233283216702021732030504030903865863034869724117123382055651559427980831100241102186680766790900420065749469241444160004607880115652499417144276068050156545290105179244980741773993790148469732940563357204472743317157691207882746416427309570762320028610849008222725140691266902934215112460019787059048899199192744911007523203718034325385631816982000452039201940661654164089370682942612339112702402477709601760406601462339020401775249002453595962034575680584453018906411879698212567461022547577200310294312437332281021946119423425991021102674950489380819348939968180309956070652483395541047052220840264145520353991807500147687905567204081445256970371612240910281559412940547635211149515107139226272504643918461657760482171377223479003925227702050344134472890216603710576075225500865453652602398053008707130013494472522791054218253072003156102383571354760815165886462931821444252402365301926491034827059514156841093169454366313868285274055877532750311665566461839593628170202717279998927003080664060214401731515340435799276147564728623273033896394088604011139962172757962547019509140510250153016022723393132782648675904619749544539217201064216007820322016854094617281318327150900455802975547173737190300153068673920879058910930467091009905626376172043121496507753053690628506835963048202124853848526361064186616377505763394330170369458080280854017386777425714236357467878491816624493095466652941114929483833631729893828945782495693682098198969473778902274161003169156363784353404185179955620575182069611010502733734040812827833111129002659604301133308178880207158157193595284630027705373769352359724573106756710710115017922572418550651778549993547787843424631532539085903914052395104364025427298033135062150123907531068311464880700404518612382674135014582517424502848096691801094819168023068678912053404212400029594291361194447959603451901601544378190738671805457021787098398383254257429233448401178190547763915254477489435171888960937155687121902039236352402797441366126731488194265727421191630344745524687270728281627528437313324865986639644920653005282032075411280801602205437190427219371134572943776744918659246541002421056223087669086683899597495380144752202296951433177090810510020893877900000784864543508304815224327975940121047403542790092948091768735498433180654172901707231212154739841333870095070836501424399044387433189685258481806913584679924191554759850301043988703108340896546406313645365093031204533396745520621626037355392848735581159068078052841373298777846985026962451428002076465082890037580452889607953147445663028882395003809655410538294643281024374447805947541130366538650509571083908569644273610070362680392010632101331577880666132405750866902261262555166777183920063035279461060220035120887291294801901634999163245814522004653542758957795186010887031392544865464152894720647270938221279261237709467431629057328381450386156061475842550644298043546296863873545907039965954589508100060043728330184079803254279961091281125222957479217432302502216682276575436622725495193778750068314937132679130274784793035385450533660777943537887489745420902232093161068124290489220151536890468818943624508605203173138706135475962949641417579841400095524533067116228640066086023098531107856927093856310391651731762951861176810063540403751416524450201722787215901784394307731013723042060316299727810004536168163311035444912056051742518310778907271019600641319808696271381268995988625839429580828762484053950490004654221975546721602712453048253651550239295305040157107794204418914544740818708671910624607307740344954419565535404315508353259358846570549432995104142967786528094359789644057369440667306828657024097894955855049021911885688194166292084951265943651225581709081788321074544084005088934973636173591287847612326044802800033144942307862810509323344376362754172033147846893821777825678447300064437006051153479850640229515344329969818879861501176011473026190172521456171184444607074176525478132720076936928183786258906229210104119153180359066125013390408929599359140264272582305439638469474340616334969118502525038928110125577110147539313101512537342850346760575416622288096017667320330376632010064509593795979932737221592278702925355515920403979823327367693908610582531430600108401424866611282376705411658383566502093232856704931094939009411208055403549559021295422033890620690414423659825726859431426322061549260033204058634449902024471090968695034778047253206008339357776945754211641641170230731575486106832509045067583027465510787708947079034721852084560748402982777045420221858364653660447974052994276215032202229247045455206770301832856156775302201688861055026200540038853596187719663144542321220134872471068693272530475640833943184363101446024297341104600430064020438174695439429104612335030462280017069539510188285503781283399714627476602038311638217084602061236995350950129123916689164686075860860776301231530024208795966502827220691078158254060013462616703232670225131204708522669395716091561048951599239273098344119048473341692665366079577855092473827195776278638435719112940475207632622872415777311500268214645009961198762250105857673052216296893885052558665745595060256015675166282828700243112636525089023342285961886310840462096219055034884049136114315016984286940235433885008713920896263079570581193533956051178921090524082999202170104526610302934376380430408310118000580689747690267660744723673359752063946863171707291336969593166844865720925724966345275111060915003280048946457118362275676312025109681096366710440599510564602071159174322602678013272163266191215602671596441428701010127950339402679644458000743213434196044043144436469793992501474104097749600131988409537401050718001746206819830342605920804401418981220706973141201050663089056888367075037513807057665219212196462015970822083843457060923302802007575454050191327954157861945667334429378474708704320170222144976432279168007443929434726219932085400800853494048158440756748605401246888714680900085100025169740547038095734802224665967244607030375907402176332609414973655680910960628871436503913705384080150726542748346405027068026629691315317165430639563068556384602499010052441545698021012803013340442314222036718054742290463053005302414301901356098326787605716474990953035804043619037926770789474778465308701891367926780384495680595333858660310358589480458404300429780207708437089279409825088080783710857980103883876591206440074613222409000049115061164953777963392624802695053571365044603230520899958315136823314013160757598820122394212081392439503693436412495701882064103527682341404644912897457597647088958170440980689255030585932227384521247868271077165919140570144133129443467172967285180953362481213297342719508990551133930231865506060475364066794994000213908510306420011616452943400765894197134276308674690365075909492140150109614923527360702295485435791439162114138657698844028795308505507760725009460765095680350011983363737595031258802322044943003966469059698085380656130432379114941883490920587945839964861753052558164424203930551178142676864058480889806993642081131396651796713517399213687770056236571596153088116012232820816717897163306184915601552434484797642859647285992580285926245180552624494061594619533990917500094996051240096612210404371209067336007124879244139268450108588359705468352005597943337460177750683346464625665263432786469731210974706423644103840447216706294911119949135304224290252198016396120109283693139832017775634702173515508688735087525619046009205077508825435633995974487413531172500121936080040123095467539077490839494555070679186099849099540003924683994604628019328804507213573998080856442530205706212085083206020360377167204251022074019672963670596211227744393440300466566304250194040096609191200719080322774081630819334442219636008626126440163102600810918207015137471913868880054973887312010010144107188104851900803652440806268179208454329820009767470375348230005033619014643327943056071976929002542352245530739899835031689849155255800567209674080309802076895847548051786310292129270030030342147769706188226078001416141960802115673722837474047172559176907884660401107736815210980211086560032001501447140125298256881090723037755097262805040235256375041875417064407161922426294580098054030246063201430069967828269443993910188952303015614720301067653048096354559008206423846504512145250596592370414148666214849130773046298956466609692924355209726424850843351643289490124795266003058082757397010603020778630764899485891157488880674428733041112290724790271381241913899937510627588628570559237701039224426526176549716758052925373694539147763528143751627249171467229165400060394029716287570421606244204509817269006710238492636350170067851810784940579452657585232318877851491098252940168286014828008590574154521563118695386781525417682795001704939888996005180823117881561096722844662412792700666080908425001048840080202420762445006260599004667714113324073897675209576839418730830995020061428494190695595382662465256174007943721090161409953674026030646209696397063800458180643274081780385700350094471609002780767730226808842294897794602509014535024902835757606450784206026014770010030249535469216531839800501185599898665410403431591879176676391310876811763711100991924251120812830389416698470464173622882706249005507445273356421826747044027011901298152212903912806160016063742322956883899232050277696459321319314915946366763016346543047454785239773427107212990998701511581320182335852836273068892003508820593681698352281450492072517780079194026828553098863982103002588666855780186715640696647491361152460131525253249084732942993544453130766987415552269350214342200433036627625003619108321402524026601725343071402095403079198591205354580987248061059142085603012338503038262766910620914006567277920574857273810694432763415614087788830297586306874593299941056571585975434842092012463125499724960208242660381117742004574614991358389234153044801258975003430722336533923079306724707312459861514520451080062888310413167829913289064202730666209155948011374175577036703095825002195378934235743150609380204530135673345215168776400714604880346177815622520610131826615270537969391970064882350456497300297396391120375442613431827774694505243744940990487092238215291385089926253842610836956206644629759282075715939355858422297523247851411602687467147444308976035389373014022772687453656425022027628597219560096010860707770520133609009197992087445348732450190124853990520115661434773561504346505870529005800509801057710493214639871428228585065547690250139263835852532044908036940527258203161214828590068211068837965782980615036121664652467381676981808738668404071400197070632075757818392879094688606906715059049304076209823068945984879078901040123218257814938960892906437021730899946909327629576596780240303194647006648328495110442174305077785026142606710568836468102620035185743527161387061813239663420361744975022031024067505412320799031932934748390215103927336271775047047560012663514974514779477457049566296108833067703983450079710000132622049158384360670609813470283753096933504919035633462481174749163917667378511419010022289909493495823126903560086340410568220716235367248290298951740014770722938050322652637352846970825124722262752551203504041020231034082141695612528924082150293433305308423613449670697446125508534100060284672267524571497001150232512355019607116459219736340044584008138835656640080711859297042020725012112362700280525340275754920971615131053032609985263493674007293094029165069300450809059004171423898380664247939313689547330389648008778407773061909155522178689201974079603139215654047086213141448567120476520411359099839155162012019900410003318081727469274318483493198164376034958701699028495075845472400884200463723996795033909047257471165431430443483782922625883010951710770351820716886386026118244203459085743785324945411634796612620824791575826580473020399796706569036555798320416265510020806874455983322493070500405974884910165913221103680455349703661839024419086890986162607143376089553496041697572921772418907896657027465486644703830843736236409675535131062816429103134206543570672120825671047568081366260509606550006404631099905737127550305853901972936286707380009055546993000033474823777231428314867840904999107144636067640921700186680652128039980789273941052922029863888530427064950061281066225628823105071579728272817330409356519163030707110250023864101361147454234440263030503708537838220227706603430432319200641003044109669341692186493609009337908658419276450353158066725946159877259089619448816333809060241131689587346268053730077565426675572222939836785817558971004045431322015653155655507651739761263548262486190070562455652810070353658910017958861044964536217306976626619160372804416093805118709262382147495723518856475455028940937006377516810317564682367319261533024719792362565830589849078375901035946358734884493805072778402830047591109928084560199271315446104067871613916005292617347554811426852657513399322041546589631233222649569248840162858372373014956679651425090976495313097375496722846299008801292624240060039507448226144966809065327546075978486680911282585273829540810332710163975816662640701642518434322372845940040349106624212184202723138200707633271038840556121723888223193010438791268050149965923266280206625630506582999141391663064231000615364192438584480606902853852447650240036758499213455504870451623066756414278103054674266261918082097003094341436617611456234357910039044500653414723572500027928140532201119070110942803004835566982661293619049699526985386857326113853571436247076131419985594109470128854578267046401215315178340690587961082952041790939640422105715393554273585282528021627833616026138246122066779035182557451400454572333610482066576576845266286615524980293288089601918299908392284624154291860618930877318120163426319207701687560243651080261269984389236694968850274422052950921917606307543421663982555792791406705751171624993832155001417350997092154451020082712855232010126773713400435036371021814324248944136790441197399885560737568238988442821159047858490897381250985661068396290247770900801614035534817257096003071492801046625415936292234520827756601062337202594357736710866159210041956410583024581022258091368265463680001555219158279900234818257075610437600667361066954201444277453715468103934939654917372121160425340613370745798781204902268900988470275086723685272830053935357616071860928734249437974616600474425434286631896080167031138708938078560408747183155653125704600409291608626775418100442054921813237582930620080058463415402628465060093112908160862700531201352984430836461132903143639798936643505806487486203231986152616083546590297130409509600339777787005834423116990213032033063254166004502319804086968480372277386100031115758346733008808083254042010060591151102065629185259137809613022164441920539047244091657717008899398557761975721696535158988317837936775920849214181137150037227291373845059003118711241811329330786467140580990611647017336813196129904779682780095008737127875474574607976469314173001228987916661403054266997877642472508388072002990581734830283898152433388022627780423501052660428786120984506658088543860636372428273648288766314084671337830224434920352733542237904098600217075214814302074423490212203302123439562230391024163103674275008748911178060273979224575308071392914696609692511722722128079274262340090848612581083290008040781337171786809332695593305248911229511571310463352502084174389775330795019152036569953447054446686633271279618560477772805841440844304782592414264463399690755854289567593549189998929315595305600830200381741630250495503100658014148115401787541798680634204643928085090325748231844102551414756167355958040536310126098633657976779139073046993731970823996907709771320387450033170192489519520787141018153867538392112992907049199050302626844022340256050803060600519585376879890417172908963404260908874034037027930215529378539917514655363368801236293800090978068750041760551647144186807029285470722042197553284538645961017834762795541914181693129060770107762662803152417738179360972299011720070473878195100373066239857307102719765108031149688298922394823531973922152183419045393319551352522591144760025804527872000343943993283045978087238420014075971201405946178849422366492006658945326186090843179748060962002266347871906805699017019994874965716364065811434860171805451469000564185824705605545182154311033936309981321207419308528494003337238402293260196505803645319830440162835119453980098582505153089621275749860006540745309385708926131362262518838765363133298747665449022144211080767370147765498930173046748857172750645126020406047027114304559724772518365183943623200498662448027034542890280323955290263280317473027884718138384247141521350404973162169710014907793445608010526045878197660974233747429345020307042030430608430081288060493690502945029429280202598484807789411874593236740529629906151425668129633327748840909502964820495614116074438900567346922060571810648025874260912505000219538728059470435775040603925383317337038154850801638919099403308722345182631116898838608557657363366900846244172581103304596606220943138611016707693900095141266280918332808968605053285792059248910042012290240073610232346972001042221823339318010076018659226172948310675389879789254282034107916020057366267991804564067647120048550809791374887787260914079722971701689153532065964533200905613035698578067241835332603937456660051048825293183720641318995526806211244407326420282542680570400821218192989680980916417592032242562000131418334150601277165602649925261338692727754607215839135904128603568571635893953118609101233011425399766199314583083753643592593066346670723267504430647204339813194082629536093291436033550035124218212657251360644267160090876598266033916320070308213157060080253237057824125178738361252905748062646049889028259795689852848361301351361331771445879965460948677299001480234843767116919628741238570101298658308610517602096645132638606217226222674845078339568542666538595242357339195190551314043056861363002087758726464261228923657005314968670300106050610854824718746054628006660951307210860099537317297024127365690559262190397904523437267016712538386238112867432747923387064512990209830463649183291080008119609334867475244612091007052662646414306276001503151660195006622831626625510342186399938076391118508066334270823660957013179798071242016632085670095587973866935123566240053474559768459362240167336730763405980835606461814534450393150784990158503845799320290646228750360069243563600728105706869326040039908156151410428987585736000323001064361638017162410948057124193760275905618971937972312675754425761182660239709239215525306012691290295256102011805854196626302684665429563349763674702457220684025625233605648120005043003824905854910894847820621876453696780103417453334622974884922891992290064002838865150517880683055825039574331469575436206903404091928983337001213464369100766340753321016681684325182671680622727445434617753436746846402592004416018032384781586760237840103701996239936935730300837826907806522614155773024597450019819490113504337387312474869603750586068789002919760630754929063741130590563786297224346493005887218173992422268146703313493514220106115091185050468499336155884115371742927722189058210426670620841067079448250194003378699677341001468615499190504868178884661526903291985720104698877011397802802254014384223959487300754745138363206853333963385850131585210200105188804055982446094383004675780937194313813557554356866370002600176155108630456135120356508409809149790931572179648712794679391063593609885826755777780374026226061627804334833083089021920842020600188020529765047591058853375375386279132587593408387542758136204239205036535844073868978050649206493945876324446536220878648503571210260248531000351727023378477125074286013748154373917195521329350906857180620894360464724484566059483384318127428849534245039903359345863307708040848098530876306298444554686915273482296044622183471061166005356300400124812241516669528181478187379777439578414466255291713701401463380402998078190650093519349030556408819910066484985404743597860090068104088601769132124520536228501453522008427910285690808151840882339832212503310681504444908890610841713480048354538454956762445063334050608307456601068925981005041753830226737719063792547015276662146249948842186055000519260105901262353918805981922480505065888802196736925796272953714060863808020262147576099960216039415908761501165221595297064053572044632761070356096822283910724920716959373798306807397212912388877820506696226206444123190303281318545716777442909375033700180281242901071500729006095565165680796946308080905262135377059072143362620263097506209627652953479902339256252043067714702421569952981011671427604742154340727008957731401055205999204787745202204835772783917981690826392748675938495403027644262650263609928047284905409468854030078580362299710774949344239075638030263049765316448866791254398994403063443741860676190544402069309325267210316004483642910068551029058678712654462588177018410424987686546111415431229685600685455313890236869060859118920514357949678434270363958864870218341870185072709221705468034420326101967568008143898642842735797275073103039549166542076508733622801713658057461260036506599779782242157548090017788719935410979004689704089968021187425999197099241278566890166223757844511076976062402625553890559925601176570603485613118143211913207501601826113105642443368181053376837140430049889099482270632162920140339666408623016552719875079171373909749807417638982451387090508392520574878709840475968898609033437356190562663090646062396505290644560107264431497501977776645275000379021984751190100057009405573589205393836935965990920354389384946792077704108586046670454362663300025648246765575552820268587996120535067717650683541146431630811874166797804180298688272504858607041422428055959377540067303307383045479607865427213199302406028865444641011824618643903185771615891375186898042880381284475936470773498102019203430728200928760560229980468510563987717650137904003999857676948487449692417790547938771029083377322751092117559414700653724834624471173726808461005811693428039186771666082816062485391980625908921891056651357271434724200999132990517552816879119826275202832488740665088538092614265202190064028909611760743541737721609647052208602404977741826317383343010407766211005685805157808258232718906944842982011747528672217077667585169025540042741800260114820786871335082283413347308666830323129137205972450111029732690797209984103185432640578401538416297609417316429873129616271000288001223695902120478586684613274377788887872977021871198051215955332688235443952717615917445385300487612382518840483562950534358646932944721105083051091041241555694762509044839888552568014609315273693096740523131320345752312741656314202413816834131314153096189330865000159749173457156962091320705535829670410578673975155185555471345588958306959854394552060458938726936413106109919153549721021022622000342337965464223577835850260009569425449628638101348638313495457699341019237899203946453245077346052845325165091393003239106882274909988354004736199488907697558066132514302972860514710465630509176230889555332405784963857304078067674845823304161712065212323004168627185003265828127864588898735912535731234839353090884379685340154637691574390870691560454210101163372028536811575064477372740981977885700350666010042204251661568968987145675948341786736961412298776751676047092005350503705552779796182936520321402707874445606018218086785521429345687902005974670613729464710588874525094875580570344705209418235030796620201359398606932324521255421460234166681222326571366319101800294896272912778589131220806260919769122343229237371936741401613100101666812548556535883419649059907330226219237454677102310137674295327073380850708234158739114464041193636584370288220162974024017792249228205954219990641459008589715697686002211926973095378335359806542069612280432494884421699045788168782340775501431168975384306779622411101230131688293838820972044254676865018127930671711445854777350832111078192791686432753820368133306690028988603062347182840284710945455648819473010084913248974108758618445414993397371880265173303450083062128153953830867468685057401688179447413767057513577186719878181047279098836815983299584684065551724134917436298091518520077444051383474022173791888167210116213803375226632379476801864346005659146003979050789221240642054609274615348105084254455600751104964547620670142148017094944750854310558705000701635360445808437991701209813102491575228478573180087627530291903135065468075770510200886907164820072335391925220403447012400970050515953820371720485306819609512180484428300502458959989533358914604482019811233704454875825579308859392294609769823116827490538024910169490533648260300503920371562299766713731111766054475477027862934145625484976544619528176697726426448923806043622861120069874093910564162487600279564704776800524670310321518970828636338144337586275880180903188187620712162504185963762003006569280751060040605370888987656177382163317676353551996577902373324517229355522249847345090964493672990344726514990980361701606821145033465022354892966303271214560228621698131924939535496691760426071814947006475642347689228758069856905098362411811077478226733420817734206855322033462240944471200478098759066106838538175309936906304986964606511532744878389705404112726457986078327797690340643042408564064792434090888902301507951080800268652454123211667279871632408403112512964340802625880054536289764341707236165397763844640202829421552205739138797010958423090478176506414968523800281818495022933400034016556758151771606566000221172178217877721898683694482344011047070184568378328823954052005749373760719030742552825286274543277211643845457470925476800468469307116613258802646535211501792005014832099014934860597814562545467706852509575853763218372698074442544346111518045849881205170636464305387310040118151938118298722110405205055048810301139777105470700821596910493239870185600432727294230622016947581902652356043694790524128029090623150968413733692510368273364649757456605401927542453661625301128252709854124394239200362046336050057001301040599418730722449107283506593207446562177603005071055724058285076027071389402168613600046879435685338618972479340228945323532203628896724391514845360327216886207029451275430313322744532812685020289241395209075610003747080780400589372182990397019308112557553313355970037626647384176784662659926638613953957848648840534289707075923655627858745086571006472319056036829586857261010321680025302744867437205547805918903586485351793009229456449037999345803730550834390272502834713036692603768617637491286026753260191756816508987318814990221714972505475413019968392925493731805903550563311999980152613702866098155697514405203178373158223081297412991010230805202231811843490962761280250614741354529704825389763985543200908075490011620472290785471265580252341393117490036689275276924155247937740998094457761654112071073297153000020625786154203840146946239870930369703701903416673783660580828548316858886619380595828796141866765188647370869731466265540466769812482097607437325137463726175098318908215634894991129469595300601340595027097672667754948684818586893511407611091580035952140980714191957181034600070512615700593335968927940270991889926362140105022801384415036151299759899178530105202015715795872557770496294662140643901130172343757684206044141607196818312153519740104565361120508127738920186605857965372355014555904076609081473307184682174143175273020807956884050870762454105675609424891437692276153105181872828882407247669107521093852935401726258264329319425581936022970382950709577997938875591127373629420142675118072009191300179142567690813402544869130279428570779002043596135442211237450015837832768042500393001303211626920376240729751096931487888015927805330078323275891594330040422237108601672888070017705333728240653886086984523364897496912507560284110460307282236308901722168352216430057014284458759244192385641930022401202379271312565288392797871528719047177772966609011393128005227502298003211305547122249861363101476025211630086514019005069132254294023049109262028892512490096000785079206548091664549517476305583407192447565436522272394010510319210195917591505104132067366600970767172770229689197320125929787378243475183278683099112432781407366402471218484485298251086066650161982558910224108626486335338255061388703166646387860592404205734593208249459905240595375174407000794836730090306110382894366610406043722569338787797047330466795473055863465156462460713030780502710712641160398906708385442354531468524406967304838599738782121246313149200178725355888500789390419332413571003100360159889717369532232052772084560403535907020127041405554047345618479374515195140858755260750283874885055028984810085479026089676860731367596687347880932310260924054429578973233659715949825401136712587844090832582724878601650737446007620256812800627173879117124814837485424891345490567549397736040825102314181681972034873033668886756600668657939212600390649820984973623016365847055101259446306867678357145298968993114004004807645881442294570048946564517745408908889598210147010066354025214423452596771550863500013931541457080267741650824460401977988272608361212431840410912458309962595166364526016449020777765695506893448904163305405736697205801387734264672007266911790076270457584732740588022682914304299337218238380949026212630183805683590991367084032326908090049262882103751251456040117737972452444698709651584566969562520291485763930942310627340094750074910493316735893560163043757817655207768001810068645695213092167048343181121722971942910897596530156281164398904341906081389891992762685096377128869344067021913674380104408164919516166070706124128542621390850845349048186989246125334826393043632507232654414176227326037129404856905221620906451595074067475722956188374186678730791218759412494390009224996036291329592021454415822415447163293964394904380305306022411791959134980378785430302206990097051946907010273102264137502598231551890771894285200742157868391308485579262641988563462559002107431504174873382154074920098667066627008478212061015850449374571336628372042220107966570341502312029016361353043116454402413028039171370444933705933592259449812020779089551403982668108304171475815037125805416730747887015348813019335510030336803116666658075602187006645469961390151617604947104529405528412006019045147160668330328100521961414885591474397470106658819311327210492258262541121907099252301000285169191642145752490274839994259876100296286969153232247710272513829178003924910546391928483500133222467824528492452225099311063067345101200071530820891384029654086279578284786116814593090853600133268216459899047105850202458930739525587200687381132300910637823632880494137652930070052544101108707572803601983596519425496499147720970064032603432941910625010704844383660956434111496735255107120989484308770033430760268744849842118160221610601490938887201062405228366823436222475275773507353238351870120471086528932315742309371964808915106994157425087395210253791631104584217058004220769834501150676274900016487868943940287923913458726463260101439040604606099975034156882748308990936765119914571861380331717015200546356491100230007286497076838192946558565887972163961613516850920800321877274371308221751980981788692783635842461382288991345532432351553171263091649748098880291001884044913398054010478268632749312304280815308994443295582551273490031617032389056900117760632712940538918809651815591414680688497403820849252003534309463684569545247175616066716812244769447245090039239126148764097189109617628041432837323922266116740473890660338082261825341406057380738001172431404734293620097829268381804080000797977104423696751518919380095545160263805523031791690389845813779305475346370870892769783198615118238618968443095634647716390275800319348814064037608807112563981838878038454269157946970764410718079017956497516642598689261116025040619066707505900602626714256224332017959809040519576393808600815908181078598311560269480362883718230627511761614883952727026259470826267868613213600401291792863166324431555549359192383180624820797561065070926313641514453712758939240637878916016983070410301421449446406217471614283591800265376344054073166044900078102821990675503494038970126017091949699521225734030182944686406790888530478723504006831059646901802554546896452982867046790269506987000485290710175183853830203387712368423004941571268226102898392540802223947054015389704762229193625357907724611770699959352910549282003050795562438047167696292760021473515323314630597203414775793494045209042377555362828942657021215990014292073524434343663012096664330452397129950103779956012503002279872305974320068628122108425077207960798374485990252914281762009356203300792933881382837304503392591323954588381025615730082091769253293706672180671743580543521392008533357853826323054845532145007260650495129130615709820522739339489302127416067362227399030675147506404381593350732006773534288090296349062469123166910365418685171082006778324259502929713543533794634585608306576355087775172178533032142951278663021588881384525726655619595570270846945795060387595388902769067037908177198056830581801180586478431704310112703100325637290847670115048238325321897610152001260758030220000849036702891546139986300456761583821517218896898820140207850545467243133779819675263443756183101621934657893983053103011007200758248347540087407263303557470814023373458259760020086094033584765747812161442265154784566455368770066812320124738580270892544624422152919754540375820864295180990534938513883033597175667303420222755225431285817058226809580321050700278956640546406583941065604321174582098900661470620724008921541773167542259838258954902211473680916429953600035071894647793023975097727724050759621253112230331142332609893108579362604899459219187876857100860429789085500911255761532044709715346322871728824824519000644024076558810850539789831637768454304090033479296202488232613116533665489707409182188856944339824530508010613431453239520360091142400378005821773989846246773018798244839716249710120146626009964109845109757452953021955885054066087325109047867013393953053703020719974565941971490260276938491259915883459352887651403789937632056942766500706234074775969720166142921227907728614633351476223440571317883705841022284546140182123951284061615049832439694950007045054103655364970172335246596619637052730233570962681158326123954320867409032603322644976344114701782696756026655275296273069905019063273642219700851461310563672841685590926590744310523145083078673304534292772160726397654172414106051456805070209653625109662483299562601032442069640010350753182202482953689248246649342996472841092185549500805632602497457690122934688585321210067577190840972552222734240561390694363741625508193945922895491698209042019163780305864806771141045817950217567633263557144160573557651694623298596757440219222786268876042782528891970403798761053030671669607093032761001134407022408986370950354526780960028345246387084916916309344999957037673351983041850106860561653478151948673023183807990927736763612039877720717466489114174898598946414248543059407622537257301674461053015968114780507543670017989355367526176643489015055418797291637718057451303940645009101551434320366076658713680861530875356786893889031551808953968020537007737460819511982456233082079770950370501898029184743401410656052329760004861053100733044632336451576826797511179737639625697073079662055305339974580353203826100529014814628687752272299750108079109801063402790997147871212600404073511001448655862458843676103377769101511454026100339484244705273262185854208050636905807867168845450181057042193103420096262618427489942304625420272350650502913695339419021925650034176581701826709620380767310358415675068658568103737818695795202154651451625540099765109811211900914430186419636979167458456689064770937060443578561694428050259301686650970002424582814839160300837849285563009264760040392808686217264047127863225122396865695570240130986133647942501945603157833076963755390812173959805877232061702147405334406254669139958143228796763230510003110046020811418852006023693045564527995828950380062586026084270874211644610764394824051555307379099438609338780873514592241572575759966191525240197974092677908530081664705006005694767025750794905830738031206811012389237727140756993034279973701610861736152869692573833112670296050502617317050497669877088001103115187276912388355830126847567425197996120137518020211761301495097209490508408175130616624380338456600096972252876069185002807740282721000231643410865497797686427504453600651141532706231834465697243664940012974931411154075143596371745945061350705840364002180865069618601854502251990487094383910099398850670074518828080296902236111601214837029575409679431649882579804404672419022707862637660202368534805233761234188206713042469008033655815502226645241406526453799020500443104794654142700202987730611927182956617444459036352070994066598825565294782900928313280987346535798082906008501864079721691290744307566921915925360397580355089500766763120658786957816284159425331241700756214480436439998238725100347017905170904581185270691609038277497762510081665124740900112965584271362924317993351076026791903913139668927769506837458479133838600949524117806056531708904431488130408668526232310233781317690096335753879879092323147777107883665949395532094289205014105833529209518103203203013567031231004636576300098098301178362454726682908091380626776080860987143714232801179900431035791039421289431805503301791649155301220255906531849297546749498686756510654541603280695121063316005394255105305718036935292879532358633144657934020013223189966304030082018086621006913569019918665300192254121954747379401829415401509935760146554779421774971411963450999031575126303193511020549522959931987740299469412174632125643518694064223314979517708793001287041558659654285791236442300988070319243707351176054401113592841360037619042055966971054267208192010636211396006987670571685094219064597604186756689024705017071805047928933084773173559544002663634909471570535301611983190880272107474068708691481340280031600849732863096363193940213099000050024425119935790966565358876953851357037226747415071528804271810582186152755576017798782400079992120202250429418343737658236576278521490402375829575823008845960149565234004590757078300468775289068025062229936168328509162576625544028914189579765680066968040070281425257627575369826294210754150511598629091720593683378661746254787082261660397494723478120536151300459717664720481919400200188909330794249504417109779264645303128008007020013628974628890867230395696264078002062279990215367727227300316516038101020034862011793322211089537156528813757480702902763197976750632282728723628690713029037454158520200731274048689444409501645715062632730452705014651050032768326160877064689148571013972370214047576923843182843977558840683098705329615310132330380611805728751997090666045305354300055230813678707671856447803869829503024218743913015503994229479333019284594920073025628160634539110858873764177046590228000609106849749345597973442823446059856033317265584287750081550000187400967703618175399264275836011457254784906838023993170946437641743212766299688911158964881489501728313417741630884204466752664163318374180562938667404458416809421954482692447116920723732295390007012963604163223877470862000146465251677441706855843133251430824468741010879436495640544822875441506844141070408159931571933548141582465060780322985059001197267739790563121642219584466617547383919746452274690850859015230978206819926677110105031111000053839429087084952250808212766042952753670108413687173869401188628177153109118159080031580836987076060380900575126323725129611327581082031270850841779250199383761553534028982751083326571008428095531182303589794880077860883016273954588999959559402763506450052606598602413056686687517096721104947045764098314617602148753736013844609894240171071095076085502779330808731789081416722194773836313197028660213830486355779000945852440044777952816051911821580398853540129936177669109709350420120830218621888103884216266423482138685907018279288674386769308732208432349176970540701002142306759918616252026517279211123721028660871160052141119747157095063069101987619667204207268245040035305965861245902142505004123783017730723059365968619103670496041801947485205884466176913522711642388170374469251625821354265850768406628810350713270672931229770737353580440669995111038794980371956383861635728265188342040475472124559717536285773469948050240710076289296981021462552919435071328150260221302020797772701838936323058090140198670203166239056664084471959002639718221391344480555623877823175137943477736000919496512358483416036760159229833380918222136535915469896440299565563516203958423856811088922610978868019125390943603980568576645962958100826947940380667277340631201557443118990309898705620694518717282026274440653609362905204709945351271072605276736096870524078183604538976361509943061211523674350035505902490850044474066054172789609805791015684034737813161447108695866896322843626872756570672700911815812227933708040910285728244383252320066620942822166850602776148980119217613310109060203690584515578787512609079073055607959315323595026620330802557902756886295716195729691086135660762954347331457034807010191833069962745697494772920578509855566363498980147238570780178837014388397014669798128852660400874639982038843745997384157499261003367225002760060390224472613976740712672396881459091010971121955100304223201651445679296778886548802903098713398881331319823664643643486649462031353300211296620246366555366400535080058227155948912312630670223700590776773768562500581712158339479505138900022995189253056010158957003807209114381626142046057361825793850022712881099339117410015250706927042157853713045825100402052830307025022251044592412664091545085497811131911131818820411287174704270115890894233535530740349641282992509741779665922488478348194055708832551522682796800154391319192998609224123470019277802050779129779520905636518919216172007174807174742698882365674973405069170740966307797720693211832293533875726328842380807600664077443678714395741042544609949214143248049618553303597160900792456268654723400501495989073226363719644224476132058303918683330821830506733050066109983724927827543302852095278576791111691635880217426628713644179790504572101722804258686597128282642794830815512823916504352118805723709095415912814152522453520264110308367450438081490821731525041038018306872074525532550713824860004795928007454305818748421310501210172878842564143009332144870575598667468439503667078835542820829111502992683529070274565615474335731354046204661257414344391208481506218146827044070944683808443802586072406463106930179568378941154101325206992809721189774580838080614695620002988325806518288553961070782300228053816480540727567719362776243846152386117328103114780615927490810068207298517039385831129108748052529820405310670010166778731106725597416799871904009455808907454873784606233085548734262810310457827009005861607473862643770601200609951174752095877746309828320321645919580308598958185283249520611088872418903288537045512071078084401602240790032010537462613207324997892220081591166905946134140134177082080457544948202133741519030274150503053898663291653930617897572091772626353686651468401940408250101932950432300368825732025059383828154013633965454359600610450050161343954992913853331374842375381347600045364237212051345039712560270941370139210023023413309783239913121363704540397545612256770095031862471817912123564722680134676375022181046337404128164501339220301491897634719928406544653859944243430534250804057674508085993790016512207502911450212715720848491500339712082023603394341752952725849823840883705602584860562067274106954000715475243135438820579538407742010211278435716738250669961881312180360614687165885766590041999974694620119501416514200977001704215904451211853002900860566521339721005156819870072639782897753483808872487393722449510646397840760010032621760510126602086100530056665408362857090977273506555875105479545148131261000241111767573992087240511048741103733646440341009342756997509999161640099787644409699691072596615348160591591539739907043716513219771660054191079824847624239570221116034270071214763047306592931012078067439434664074598781595402430641914995771308055797231691214322332121835513710770351856634114064704549477154240413429458349984087675951778989023282304703021426307400700805924824080600093034331416908557142259551350100238687071933501179008429337350081202633164032596365750484171039774425795003041772770376696068308129375373779159581234962831404854178274378140202769968596092368970665680375618290270424757594152415338191778255468979087668477506658383817050180712762956357152167990900205650884680548440603104670286978307047836400360582853169960147407957801733121618215777125200046027205621824787403990946830057432712428791148680038792407364208508704732310487969581138694962814213278998005651247396126331551661055733488763970065188229278473621174056673490168870889353727881342434715594669844744298349322042228109738601631235862789531978785927098984450841082980578571263726702466048564026628941601018584024371942776588986491981407728614985518718793650475774232929035745224459289486506391290780381319520758673299639509314132427087922960939117517448013764400120902029280552954107566141629314011852934138079520145159145402730560521075575540558929633196362555759577935987626762751440271638392353865752575463720002801832074744433867059317230012510732604930072852569008942003006339458130495795891840533554915151297851180955446112142934789579537204315342168355020182390140953914508610537162834743177475276675343121630208534025710760427920270566351282175421144632972946168227915758608126203248048436086037111069508240649097030589697595633453473944400891463462515798029425844989364633149609187524787188237327597308708731319124788084446359480080247264183752641139314422185853302357878622653271215953139336798068857846029794617325056376913072795965655266866613308845566990000681865248410570327668460384149479310456932697802151999788408430577223650800134454164536165443893941695965186561447119048685030854901632445040850344584052600729478966184656034344449299430254081439190553495915045759159450193323310395109570195842658253039130526404493515301679006385465883432957195281611120715585212173182309506872225253344858481500907993809529200040044208583062901974016339408855111666001245886601602906639376950149725904772983995455268613884534204920010003628412717067969928502044496893782792329677799550215191695227090633567001857445491743277110525238881840060400695110128515063814410672507266235029407706119078983860512955899647247826847212530941488101992988289842061499240252211031822259650600026311579341627637057583228239403818468890442520916026894087010406554450959119598315945460167979080420483100204605522039451327745466640742384828609805796978606912153822533604070096067623943048028916317818702105014614153950082451554557316954478404081139920313625005615166078625394920504610157595750270663835285108820028809415526925639102062936532785036521967195993731247901265235673840904092195610563381207902013200848833768387939579240605202784578172284268221498195548747880583934651474839124214807645170423759670449552870251350008808106481440495911789500812903769748143423304858464130735340046727142842441317420817703577360640385762024221143431710902017895695209072040317870574273917115487478742644707246006923730292263106418950030063734663277878298966817071957694017996285284903680152089045956736923401526012184100585559973798285405933453441090864938530806730014655262919039591948053025940535261250860796790489519072690972850122149311001287944227474025072020496796463668098665161126998070314595312076105278938513780071043659061797345075520077040603846620876370315198880185063500013042176113741826308148483774421803272248430990475001137208331510885441822965853160241103161328095175222720851906527690456427978636049362459104304822932150877504797787328498207041615715506129673170953430906009103590563538838088710899947006097255093493239151076351626590933318575125163844208379526066515691919540368267283146026240347640507255747444725085893413535258050434829388172703784133945130937082473167578313680647048294058688587952861757644372894447594736726797319561053735010040044320157626670451998394310496507684523308366083438892674544270593527437098230542016688968108210953261208951875742682625202468924971279550504039707285798556246597974960212845057492103805170637312241868350907822617906101121553846335914080797153527805730100056026482418903129104124419921949480831954191568606986805040021137209054860674665939943435330977992494314454818006824053066981020652958718419572412757053285211007502260340516355780622458953702249095393900529754532573038813012975133579455552580590006889345168291268558818756445093391726434072422442113340001350363097695820681949211371865989770153277690735596109361567769740064990135808803554624089771269970226817690037447960209533203032068607503927389683422666045312561743950202161161700315500261477983130196210791168086932120789154004680262561259563608804454212686545715109310904031634376669330942515661951402617091097989208825625232271032877570489744515945324470280965341631516498769760173393675224240565059410334995308683466914519157736446803986652898483070100906138532913234979008567806105239421138047211219074267006080400424047179007353051882922706745656759758397412623994368946301729586307844577057992006300808450338759372508059652012551870205495499066084697961401104617165902623460140797359609558004200240372317135762724100283975523605369024777368564064202209645143354344498858508083094182429171280617974587266280356191404129982793060524496408071511002610100815530102606051643875291585597450076018519392472747004354165381737042604005053296104432527438315218660666061403392554959826512116668734463261673501912303995045524405639686875087419912128185024559869521872823205109405804612713410530310569066468769466670940576200753177542159795841102919014085780767188764123012005024756960064429109095237974905770043272313108312687880032856633935171291529041024702370341886328601048198600470707060230588034381452615009676181046623888649659425841768037860700662300818222538886464393478276935829465742371427351026669062664003306760280630028141313397770805580383119170368395509030276010454245802363373502765892084250596100646662500191142086909517352700270460305114973079652803666108607045862310919068521596649914361498321810609153173269177211880882950684587515290142673441007081500819718576340155185346636309450683486740955024757407345705428023003591366444015760559037293794389173700993265096714101842425605303434569112050833963250830633323037062710907082270358121726048963572462008000806400665888123641481862344418641934676686327865147211442197168025853911843431496071024004207020633760938511721815945644030987295098214804877648006094041537006158322036784589976251846031928019427914357761562636974435127754181087602201675936945988636366419008885359773046729289070745032904472681293816029355083784475883683238430265350818527751565329204650372522206908058404625465537632812781446105720309745663752157193717395988888335922106199703946186731460090403538335754004671801608548357696482637048891093272757152535556558613599789586708500935458778711346247524462319100339905820075036574099500915063856650471816477518084983730530081032962405005704034267976544109006285050929250552463310296937045640981120095269987586139602825166030596258203209264870749883938890007811354424446128020050965517305107446707664419835667637596969685666204994169605820272689353463287070763372452557454595556027172239754601521008417439059471189230684020111050157955328108003739556032274922943471177837642650472313211703012735348145036609800051805558901346493931819197624439877057423950716846530733945055845604228503260625374411060095146441259259116930732556922524642623338206236953655179424036445877834947641949106347850307055082391015684061463518223325228281083278524956373531500524237505723191723495027493650344013728525231323383551344221182775862234359640614545329818584956762143734761956410213642032095738710263803308964890688076327551912186170471116002375488233342884201817758280230717060728217170689302212094220038862078669827717073039643760528132877227123589756894735330436776782886318289400111304651302982307371121658888200003116488073395121730360861294227698674430554289730321151548965118725428870418231400714401301127028631673780223537880059148713844763205602063060101848197270681271098636265438076076513463394120526274870589153170098736746680099877874324856021421093980012088544218173669422804131191830073985635866793859277420268236373126067532738203886319454745033153308247079186256794023807036506187058695087218305470272353638853855903069675184030317010427564191079338393035601345100384432698406168849160421686727319113606217456958770609910330848327839102771877785367076179990587042931133622407173120443841941653175183260091372078954055361972710921561329294823060883179018509403702921900793239887198461976472918283954599404042023992388058221050321650220179720731380669436284635447317599513810120480136249961620420247624903020270856024010729396297569473183877226136000108844065386410588808153534403585424414393851333707195003600151794361843922419768502835388943602805954604656142906580855059058161771190006469670571794246764445548668625205224041051611462978192264758713075671856763219930838444537768741882494011966665531460075780073092400933166921935429918180796728562884368865094963840023038489648702980492350944212788033658034400628649239878848444814632143071675878326300290340348403355148196966622646524350809362991938396101606713071797026007607040249505613667545500660132831418367390860962081070161560991076832501760275424870288349919583597512653613103449483990923333398837766520264784776598153760075923578090299022404121603489267129447745895136685700793587106487319928966048361542147548034599673866518764806586361372490953391888540651990947313544816808893693482898815735307051388997529373920664282762153815325439745019060682010132222073137315112950109003279048501245978378770094512117482204630226291740033821134007236161610092017270560481703401206291595770101303373271074047640291688041832181332293057720110260090306632067223975696250436661544386421723208427537020017563033941029029433047619573400850248599847791665685938875457503686511635547251146061525031461020266070418040706543285720870783178007291984365835350618454266783937645126596662650756500506252864345048643117240418120699802361622445220375667818016820764109000830138323130246027820876702998031823978300484187476864044974004230105979801810020203803131362034648166186927831036054824292474276536232287953591048806119129162704028714855406532134689130837907732657100059026495333153440312927738844601905303478459459700650734729210596208885932749735624302850705083351233511548360981008406321268130299284337816431100800476791305976761398884063847244034895891403004279776682567289614003063269092908357386391260867451358718490160087176323545882290138398130918142841442136076661576515455132381670044471031573341051093221457008881571604720236455051002045181773351868930959514790654374004457514501190165331961471397647556910552063239680471862277069161218623065759777470976302302180688200000086433024354417567822782525012876904649434406335223052600869380378743413025145887710488296633495037510677282963385008462507880440475020201991629675484003404503812017592604425430540285644206475048106571387723011653762980398221561702416844690299825038050188270672815747378707027724026418038558017000630081663023718292107931204481537502043158419248644290148027289550083555242568701906200292733889658636041518890829465974797862051526631532237551412670126014693049997172899528780855078281232682356315413617971359750514900291193982261487453984272511159573150594831001615124619482118825728241291226949768364983144366002740658825494008178059554603918819316587769493681322228233414217121577901587594743281437233255850554168343763932039357039060898107131563901130244679632974205004640857283930492619604085304756599122417597689619112143107361917403611122881939301321584373741074524970102880250854108245050774740053091524413680211458239373275630240782223121354757799709988754752571261797268058043306064047830388285654902443351229099644713352710589836676181307032050525998597705015084523470748048606708267036043981502791327041838107065458070358752174012623558450809360443193432230410005647074637229047846548918434720495015732690010146055754461575764072032971428606054320266348878773457346303375739177392520778217003920446405976139617016791271774806085803941011857707285485689838302832211051628134046043399300160602602279303726796722767300235661372518088016455505178493382038850838392108960599288323389701537380364648846600804605846516837705537877649563245291243957108896555104845919522174647180220634913537164556623667314416577904974048108150793005613167825690287313734595520734859806250579573307068715627499808557242009876821603359478002801768665414466300546334872531159426616973632670410105451505192428615897530459117936305355421516021425455453709260082120068804536106209519673283790355485861191243700000101287438262288486852426360648603404077673001981593834431460372833078742499099414913863203271805670610517214840804561568193370049179078206035356506037556159879863438064629294859219485869310220540667943694293458086043404463334819283251751296524051776808695492594826973841842802358010610105731009344362060403708083584330973671957257149435955089658573975510222085577847384623436573129255589000680095027022224253202565670017114225830032087100163452537658457117035815287703157620993276645001169468731550254138262447891246211029612662276669468393534702784757693113065483819200445596066345777698053351017591125457078580772911617550086139400672575943605659203533592066858713614793144469426393351109992752057266338187254072900080361420197009798948426771478322663633958366648108116256976668693657745188621128110449825165440326420436806139627410155330773027365901407183572771605330360886554905206378140410827970718753060966023328900373918183484601005137313333592837317081043609185871149342262416520803355000402789657700218368492157272376592353902090665925494521535830560342348910063130361154543018177619739577135162658255102171161306563916918137511509590888107201731615034711706117339446491348046053310704073525900040236948772965746100507083462591822334817904572121062039841128361530444779663809779121471076570300005242905485078032481997925601535182870954068346935801893920299750134238320529074557540456237749378097088450787698207011362182580169586390408420233141238526039957670876989035249540280854213570900040597838473762042524741254466159419835149094420108313084135131565561569251002998201405173880354120751214193453178583861067317540976880948706108103237801998665470903210086876943375534370306083652687280164957056513524817700180293980339411080437155916109843503105848219716298082321274900753576131797193009851344240348707985194352590855085192555980589652026330614920884734316961949096708018421709949127308872506385216599254148197009903381538895788458472107850642859165173908573873500642249580627603308900886892120721062509648454477346337311374008071142022696047407954940134582674100317925856369972930638172055981162005600101583930486718736064953008959410275716231081353271005798080462655192537040000480096614164974079281958089489487268020876465032643284350507790513083014300801215599810965730576391590260463263437561224566874383523690367625750664708366719675420501702774889389278885454060230785039806691326560229281570693530794586076227603580995070742423398609281371367073449028618605612573336622938688706854374084371742446873911864862642104090503744174439134138448938935136799962715536971801951128704070630933125932049831504071289119825277829073701807716488816723514622274813572108640773092234962527963973497905506430187509884685660766934206419580530914804584469066824898082996211787492136060687202409211930973783047818235396004010060999873844129327149033312085781432489337500532090618613576558278514502651619360777649505999740624780106358629574981508715953413002623224931715754630247070592901236163811146476940237740424390911737264824672082994040244115702062891102917707392540610354213236092321636142365546236777229471074145780726766120432045796032605727501015105938775318563954266061678600252477511254728179007256939276942415748770045389242304502257737480345073212970363769486453090040177227372795602654644774402265461150695247827059011931392365335486165759247978653926204984584337492908412702091861083772656157448712307529703108817603744234484290660056975794735975721057766064331877363725927565830908612504310592056535324230855106823354300012776005035141475599510371241064018000973508902566859528225879215735371396667995874309305005270114238126984328062737446304786844900280302061205267677012362495835881300305050984616663870445765755255287637637201570711464924076778443317527809413304425104329614180280636244389049767145256677164002047968904146340556245271305485941057117441335286914590139859520042784264255295207198769459970702061421311414971487340224782665035230214407707518708838426796623088054853711351091116138431133885072609169982435525123259034004054000301560328671589326675112147892881069702929100475407304045036826980015002141245897250420101154634945193903012051364840112624063230289285147519568163656981603248058541809176588355032281535189279321425868830498550206688589081101741500834190302367032935953040482259022958948466328882022504797395250279982020711107650826032061230943191591922862478694471777470649868379111800445176297004576855109715148150852940950725577982075466349856052397719063092830652264081744730513446513820388604569136339267263129223451291394420050564320701504233640034162004517973435135966458433140509370730509544252375060591950111307467064922130652080040201296306641361704058971507414587050045319719872857854835532540482983774685957350439851122049041963409021694238263297952671306939132921839948874660451108691531608726639525077035094271229169575536323157910484535197724799338168525645077481371898422660669790417174358234304493196208200333016623536507369933824091801384281471065943408959324545735462278073506698427647448841034090712067545870592770860674001831162723211490352078637384602223828461231530381382969496448230790736260999478039596325005261200623022586904565051090312707774236521578859024650456001701514919100526853321585104694415265610425343350959036665885361117215204778428163438248100012311315378680253800108400387262804001247189786928706561289803861024162717964015402252952839003007041060610701995036092701703735230398005017019121625430568030523204244077211950039316050991281984141306736109296177827029685524828225211099170523931002554207775389683513925565982387093637873058519134590376465139046762583375034554411202040643415292757505545354225664997547062456571010023438061359878742081280384198050745401918308210898207021482429404304256072228995791609152541327053639339010820425508339840179631181733072428104399948802820491484092707407463453080514566128926030530171761485206624080197505949489876045550618327133262355034061529507220481211032603352157391551079200074668853651590901544416258742518223243744900542455087077415062757702850675402009481642750550444107553824288306025236783914615195564079222116699968045400990069935522880033313690506604563230239495412002740741840736569282641272608012613686934757742371657787912330131161081158063722567256472485469640453389487180934209362557617043475752593035194825976057484096241470222800342569128472317511137650889527527529077658410660723975155626130368213481047505487169895392759843202077518432391742336735641601802630816860743937542784980445518010178200034536339607405492400554447283670126587035369180191292126014497055280033357502018857383356148067910456200100965009102681640597700522000353693324555280900220800360054670273740713370158483415485798206599453306341310223460501848392453425030467954027903051450306503504910947032948890309299946100704322626203191730745610273826028670173064404694506437602077529949636555121936219291706796946938408437795579271118383372850600600007056837074061355577001398179074400302204558293915912661924695592607670288041027026391837622935524321167930402745191819597203336793149059746917471549457316918012941170806236851471106612444146896950137944973461504372329230712913895480568353871531843800376484085900518846819565090650404553032013935466802755178947041788323640149042303068364591196613593145799775216870077494187383858518071604625523471428988787581527966003839110394340602159687866115711289081014762003200903008109013809749311434303656724753834124823737026799869674155525044883234866043781043074029052791340025020714197275816535558060928830533698250347868040406920991303621687680337142760000204441423330149277713376300766862166773645829661802107497224958387101023879044293396981837668491401380495194045029477016854719007625808970218083003828843003872404522977128703580765786521052861495386831655688742331120350590264510674580097791084275703085770391053560470526003153701959513148113851867495693380818331156999283732220357518772605366467720293552162280853654191553170521651411849039017970164339354050352408856028740162404565259387150219345174211411179839002295522161767587717949069029704868791987821363120862080191022304996733015623843745250273753509006509916240884022907688212919313029851230939896074101143843007484790028356558624165710942887024012267730029704197700630803345760506965986172869040364463006124987697266394257870799992036080413347551936335269182107732231253066500590392129055391076104949098452420224162161434087532606617286573077360527175319577086933272559210370021210801407610291748871862863481197108397309236137871201572873889301060055001462979015319002256666002845998743309639852412457240506152365308480690991022194663090696198751740060669600249593916904699143628656214283642699043721191179915128358120997022676610011636094925187254053110704501480087028004650970049866721515051532912252839283047009052036188303085394040248691336062015033677339295076081938674520344722420942381686850733831349339148721255754366491710077778387104194638202660076726794102356283273975900343470308142230805063045511216263257066810488838424244196972106523632451259753386782400054152646964642900555259816346553549384353804290497057316304753924895336005714207243210404196094437080143253691409946635066709689050063864250088214011833530438454689281016274092103923820937491824671090878810000056141547241109667633330006298070736080715558809848428337495014689800810885926634096286655953899439224409801792485293241834987587010866226650621030040000088721213746222434122263694689376630168037590418043688620566676812556101081166511477453296047073012839329969686313155010402654197335579681910415303396037743698890183857654839655081499594536851211818604035445070061834577341899035733702140719123830636435282360590953229110343060943970100590073601672533881150639737201619469327901358972267042147478282134523373719765984801691508060774447129241309598355827268201964036564037275784951383952551135650705346929322262415201342041012555234208404431279861381634871725284923932496805214040962669700006080108610215140515838674840184563935246517783039536307430741570230360710356806503346097211262063826450091451439571053132671258096209605842083200216940600846312099676686110104949890774041608302087462460591887465391567590452738708282706769160465024166011161163980442295301501183717488514373856070241410262714455189237105848506499023794871217406086945643932553649731068509425588033017757503550097904387962226239902510681620753259688865600038615701243870769904535692997845077906624101204522526354925497449465249235344600627119892701030762019520600318109409409075984794788705055854004985673253516751537807122208400790193233539037758284560128947835591107226817860513018021298737140394450480614246527191602024305109201202920129098430098240409309089159535013434694466163109240108940779382849190886693741837046068968732191939654847412090978975824692180174583032023763431004819967720931920605998318980658181438901352710548570312064750857033667715483275741496232025400015249776855627032817387251934607807118304675582015218435151942102386071998870017440636302904293144797901082738598778851231002627859288424959974037695736770506852725455754502167264990194824176803140746900869841980764926597517330360614293445469776175077407689501471858070126381730354468041342398511370495107012593017615142915180326664569464549183050940681955346201182607422842631795496508512262728007075506424660832254965303501681690724161935989466999753928007278326023365805612242493894068721552658076268558458317698466344977185381856726590350388521033878779318508017998927124292359147010738349329991016145560999033208014566480143493366169043381571144959548595904310056387227823214631102726723007849464421868878745047915288251290507664154924508461909202961220985607302849577953586236972909569927309206378583186075064483221830937007338080144394392637024664950053473411160420859633068424117729183561450285625468151474982085505787391290800482365440845183085644432690245136363521790803225733380270552614483508710729674133233616442730353029094707733004503681243581515800659245599692771174053769208238972152739521184466699873572399807150277024152980577990685547180672179697754871294228645314062456520314570249700329953659466156052285821960002332246765010227174145477573618339754707552786411890840761007600334966000832014153973026415109411156727794910347309254541208573364073681768091220722533327013157070838009632015225796487624930130967534155378378985499503017015561853939620953019242706435425258619373800665065617705807599426857841688255068240284722499817205508085050156077791247756435918968790683763467024747056311159001052239570356953773730935030407731457130969336792498071097647296100425767607389073703636233226583325341215063613657275191364847295427666000165067073661736430588086233325990100082000772894143398105025369052216258537982031083304922972774911761954469058610104346717112198488976701471310052071217240636526285185116650417311820688464705436739650880912070460743428195298882371260005672013021940344500167833840404575932217885327806076831785476302196451686669810707334210089778010065532352307998900132426705236579705014003084609607038750072101188730804123243822828933486868166443595070575788508673569669517081108188655300486288455873707015306977974470323984314401837179067147387098312931872009996060617739840952028753067950336067609841863312203921231952242077850489314980067118504821376693643041633086051064922155075002200060649803570890842191229159102320941387944766309517424226094318109141778048850315705783809642510028908480705189839553932789570518098301302900411760032315907366617823434722992206876376035013491620017878284506107806280005480397927011118212625922634425317031111089602650017501133582495723648703947271258002502060133894477566542459029720659960530282305672006649000910819196609306230191532406543181860731750098711511751532472500826830713885866470409315931729383717030585202369806440630441483882590977404500649975000826406798080851177583802083501427740982606951590408039238318233377179293933610377495870771570858326434112612014203530662933311256252737215886937507831740180283570323369654652203572839434326378741842995304320066002575351926105971797647256743472478233047992332366195110390205467927333844653856051519927040220199543400907546496043475955815689752001889364882881329230904005255640619603181097693252081951078659643061293406771513042170600010000297093009214090334627539342051204200681655825167124673244369369519402248653524798926344518388811633665520979986081760482069232395419547370291792539643008400023613030749266439341075706611565120524802964321188140840883858757418763618248552413515241418022312996614719550996153897893927300841890865238080073747979600421050586640306932935908109185887662760710855026294715403081108272754966015328076269263262100417428700755051596874760805396240597171009196198654508560541480260516708316464111890569231966934270939968487852119750072483032222759844013440021651633448984300009509800953420877107301303722544631373030297421800702238707387499403020120038002646008357831858232207838619302318403480164745538381533463007242014567516967468165831368077305071582031927442189343026967888327070205108180158554229257023109480416233190515724064950624750893901803066022837799116214654231548079620071767347272360130053909249706570910858357203371114508036355450619202025717000841028169564644332816572922847043486854508878639571372994721132506885419193289032167437508899439269420667556150772368801060566882995920490349369916650752349320863492267638845266441006947904538910192357000369438693602539401411434939653981801133997518075525166677933942271225910154816336708134300293247252594071297014906937245783392474836628157743063809182800709798656221982959042055818432163424829986898327741660343799540920869758528665041880319855400612921414257535304346730802602046000052494003007789465482618507549628216521630749825718502005023150474732083973308363310011043118831611557558900604641193709138603455001203408820046864248177620460839861075549439330853790606265021070633346456960705495646306465032334730097477650948562915026153248487803067552341371481601207499504450034255001569935774127092439519583369082388311489380146472471744762069922240488542120010581473096016928039970689900212386311522414371957545724215955507209259803770205087102314019026595747821891261933390822061300482705969885512948006875571302070337766944992680205764771039207576321434415275361700124912569653180328051003786095834578694851374215523102447700872029740730057578710263307281424071695647340039370003859924399497999399266216822641211383822592869484518686615691320971058666852560353125120656093107424927631235995487476962463035479333504932972494390018659860955516676703181207208448599545729740301264999217785109534463717028673347174394673872375171009016317923742490348949331389565596872939001901179652444345400484582030637930038790267320635603518301277059448507224080692699045785631460708032538141717581126824985018735514914030573034402174892052487790753135589158211816465082075964739052248051354384220290051050216016972334511139407079820356331262090490260739511704573703752300653596557204963764258429495018929939945790251668504627166227829601657153025586223219970645650860407309950086048241003581717390861030921336899550207705561525006636504942990205130157882302803508901211152735934514149389052578756525403067935570179557189455393152408345144077840572512824712945326746304901449289507263450748415678780056320152664049000716057895573545309458040369585602131391237060976986126213522046849788077163718751109974633811020033811397255399702237797310630595179083071050479152448814209827660203964502929811317758372263015545807013660029596788878417509838015832659183210423501306557529060460398571464806162162806102079012391347860165332998714687402020186161186636401855620800460296091671537577102673990768683050264487310188215650956200520896293588411571955564570994481903472103406332877701160074926010375568788080371038244939990562985202423067103198081684229933715768136765012796223045724733578704062555054432200671947462324970930033069734638259090192941627032930056906985417829553137489027408632740441724258870900041789199881055236227382377196437448338225367753961510844349668351018647034523673378593086300707609485878000658347373443960282710643071631300501363486662369755014841872322049760178803653084999806993238283945183203906443785200809278364837055092373017216639800538523261459776893839103647562298629529152012393466595830105759060988027560254807557241670156294284908941564802350025089369771382986249554157937543977411445192820683506253755964440884005085850596166547120201699599234059336048481780108464166403865094684092886501043673109875011684872070527070285773304778872682649881937402985879075804000467908207065169850610750368332356907396098591794750582740765896610171290460172095854396296549521204026026317204674513771305666076223500824336019820850144601070061570032295651430886090509015205909706734975406453076300204780577030108882989217183627323292293267691917010370928072161386225511284214880644710127823003445016609921728177332771999271384831159807747628748602973084809179046164157726832283699025020805630967426933035180994713993836461470550488839235753768809437227614009057965795892380007281280603978328302262844505032030253644454146318243259612996989939504886455949461180139617121037603982175494478205178928233137
011251470773826071793037145802934236045451640055821595899837740084135613840676590477471730716033761681756190672613247238666158160142135329373965191421264622184052006647096371505156527133109261170907088550614419010943191410081201932960213693377361745174171438567844439200151321467922238870052478369827989480008858871514978138702552282247532882641515632617483498627447867422076613589353820580677137291671411729425317233729429568520797341402289103785187320536616692751606648456608316763515470218511101180301248881356654910008013098423427732082584581181709067734404290496002007787039582063180782814544020043268075271607100806304576474894509795408472910001695410862248306018257069647204544300972755860954211529315349695184947037822906860313504405832703416565800140470230889824646919608201044821166601441327886974346794238241423293737421718062562292274572861045099453951710888663703145057920618810350310190480267951119230151489622658469470806151813737547107345471878549570144136524242566312378427032354092447433457330602049214255319048663018070723060193894316220059006242583251421619617370302273060527342863607517904105646209750222884075685830638518434462395542551368709232693215978605812001802179447162631043712068307700719290891673622716009498683426574908922800006714112567339192548506840224379540175356026309216514590361542716712760085390174367936829713207688605055400049520580269043042040525487485019181778030223854421008001752051077579290598042921956936295049082851835773135973531793808646212020007090764274431071559323890951277497004036000316371970090141844148060048273062586343232232326929821400189870100677446063323969197705019133396210514068059806589132500407797056470465276244070175965807170914319267439809630995356022412293483030574246210423655769950817179626757820879879309949050386611547193022323679448763426097510049819207605990384926896882000152660421435776840368116016820663960020861419792550879590279006870582464147028475743901194053695034804349042068240006799881011488771032817923497564794674245231905095661029600192835720952640764000658857871017413180496003300941381498349772201596861346536108170442717299021150646556562088035675994661992660276771353028685823024031294166034000636103431489539885559255439365714156761615901425841239057733048205915866030604012573311483243077551511878781004046654138904689206213185223132991514952040056656211063409882290630077810351223240032510295959004732414304344649361439074497294338450420632374810216043860282203713405779650609385867080277709724154108308681599304762928562037321390648075585356924764430130014826703735474849794993880273599873059830170002404221923208425074062005916402039969254752807816882788830652001875639364460128486307449933488534471249284192709906720055010124089286022532069188324956119406825261023724066421018320004008005226900271320144416694273336309096529596473296434033837806462746876392694215661840390210442179116001178005798028977008311379776029130766076235843527530050701530271407090356308160024386704485681802228562031106030211660692424041330654009190432169278530283742312820064421728595363255086032852586559394394538196443057424782798904492911725823241969301644644612138328439878944536801503421751721630362062500538700218494090675004686045297530641300407710626771322338800864818909742092025073953099410117659290042823427653248472018044158682140296970135294401044695877836225084244268436818697833024586656849740102536570493000021040158624866833623795549166208707529361294600482049303212612743365126823602005196864931797130963707602962704300849813444735411370799027742058725851038293974007394015909941700080067301206091456013855317960964884746470910003454092496867403474177151097580734508804360086583092723554827104540582530619443749427203667071370378489659293008398863564108038293014016055150323607921420070041513547936938208392746932914039856205757114155317165681001776212974960411707863926720289817699857423206674394073717968174096279829745615473297075312452065729910641578497650007964356073493527157670015519149058606795644758087685008563554328535184948095566427448791123393542215176431343304070602578017687256085245290229036321317214039889603198552272905004222191069151703069429018152087107432356974640494951006841932014793324134230966276895518360630811456291260373515221850515120732055218839538562594830550351029699065814423304321606913000750402498413172700179398880050207155961059209310815840044372744494467687564214601967167223735097604450803664200344370301719921570106853790471794718478062706567355390800418172071063394875691595131390653626002919100021704056844932018596302475907030571238949442657671014945284032392124822408908216540092629445492091655930009531849600184497441158203284091189663576302497140897121794719105947139634210954826866240984113368292478730797935606104754797507757738359987145878286743696688384574757107714479217661068203909454732971111791164990995244789230080957725540105338022000299021239701188014913935568500301978110940249706033080800038845012710888757033690695538519566033704103630172513433614681094125639578698855028434968420495083047539810000187978240074424404880979465421035169098480363681847462456616356716766766497420990908262198505374502093576020607504873609720473697405538129130225522261212956952432040024887190050223357030299025769661112599176510016705391807370401552192440629776745139309344494129955044933239927042741020654889932942426358248421097359921263079602886560220756403028178790850385242642686375713994347044713950550887843498633623300630069404565206860430188928398947719683786506044305149138360108548222791197231798512638355824294308001842492678639220639897384503331500101555475021980780222323325609931900555652194989101665570792034848542781092778926944539069450664834317191475252561898378958685176714015224107377084612064130534346045702004366617839368536328424368348030135503973475984046794664614228995839293023138074559180150604036108271193426938884892019924516145945518314315046701440751232033400989575528895345725923677090400911363538870562515223213092503022930412093225985351059082047207635653512450018677299953506132720629594222522075074937150575969814303124678116210131703223465012927070458735634900987913354308953023781050343404799142485824637560733182982641336810602018138409331029055063502033021880431624755474854538532503061760084221154236247863964002407821288266463920635306001568014526088039277950719342562139682713718106310982650154131284652705136988082260771348570430327350076780812223738831708415590287152027642268811150235049305545312905364500439313004324094065710011308491194849813812290066195596311159582559247460833021625090961909441971843040745120242008334901675615257421313998615184842002659141628161704432227163243079400902404559021760352215939061289086287957475146448940572258097080330843631217742209209837725860663031677566382158642168691055903137972682917570396913600521685056896704018041022427871133496507886268029061913981126018954896003066573340020507334027207168592091279055886278870659693572560177004667080530000900033809126409181538019445234065371188086711198684905383153991737093471855078183882534529476713990083729031848440370345558701246770787459557965650911958991539657330520665951926219360960925160108358370119049089880592837594815399966765106889307260357340380852449701680261108643569778123638163662478976728621058580300597007796701310794242630503009848700264404209875779537287908232042799985974519745619230802081576777081083230081501227505270321487734551835157375205474731701626274615513416706496131669725352589528061459941249438206915005773508266278193000504761447551235790981451406214015728001224802602559385740875457045055129373083012219304795849562759702484543682403564007778388207138003615414511804806039794569593027733022246068965462096103476827306117420090513716045632506608780204015659289469791005696884570899856299052348468624296051983420268969688983812891522794391366435041276016182859323161099196078967487641005404450328300188065916763743838718023851988546306505376176206238335083031474052380777530957553683345836772286152264709083807076242619119347208208734856774702811470701873471038588808915997150914620837692837000015708780320290632121780927727132892068498268873144129948358870507029005369238665921705360935631000142683641233185960098051784790072062633050385102104881728566126815361420720054028981103457268966858822196933700903405659048316402131476291604700603555895619340002537082525561309039850020197227675772971056185080214867440491948780318513483907859222289941665443979594503322409431178082668692427437050686866021781677016677557184615850330977062741065919890818640962615028693539198366174239624975624860682049942984929331019451016332444407966220472513144403535607082130743665010847000946827895333330181297337882048576000084007530311104701967003114968432342764380558462180505243531653912874900357515163519419820729653674959130780252773575302418923342326960018103258363630333336010599389043062712334970001591076985993836050392369817184092115533968346816956300826713905124217721300476402000184133487682415660851614871730803792808950856865019488773364466434414157670785256183461789820004145105644081578625658171815622527208020257583342384789526618698657209634275738810154094409639248123837626698450701253792894623242694993915948207311670781644735881901626737417934930863403801487329098356207152790743806432097703463902477986746947018277921508314597568304675221601246003081846042706682252697108689892255179908135747703935228403996028165076767566910791882745696185949211045699159009731228915000044338964420291320614979376935451610445394791025422801211641110016330023971832826404137930635998743685131439455734249679254950566092426563089603353218438326822013188413881938903343307001730631675100572686548489127099764730805330121368819669334550398565330790113210007940634070502559087337963431302634659758963881468526305163090010071631190570521590569760632824446468160730966166046436746239707298748450648704666375522910759736007976986300419005008367144061470201307521519062686200484752087738182760926083756333962205664929061554887887090052079065161998037235751800896073677713594373106836787824716780014163042852102083126636157803004044465607302316430459657775232848433142446528004345451015755870432543909273924618942905466969125501985577073491878944170462387074789460510996034441990152622013703990277183288164461035408207005897497725642800804140770291809266058081591130000575624651121078288110677499018931818342878055673133213940927449924965085694282325535723858388877110376716375171333459628108018399608383126968120270312639569948156611639878645060989211493906420255457995082337114819451286544111162369282096033599400143316611879504408904386628707556582024607684742191904809078370209158193467176807559544798108110046339518296577516281925103374972367495144434300698160307211846614598804462785772122526954720109306455190050239020249445736440933788680022909032676972868122267961001933289610234307092245480828969432050150214553337554532607190685927863597764200658348683726616835098808042810851288819274351904750734517534085378771079636037624421917324723738188380619229084962009540009068117930853988281147325616271853469312508571056998100393074343982757935994817534160197050108213202552748878177011875380650617072102467735776273502115703939475751314004598087216095127775459514380809909010250914907493469146195640950623018343367070004659076440018334505290362694895855904036094257452385473707779719830540881632936501013850290859318381575138318990455926394816565450403492089844169079876089714275198447162241953810278252632050509237063159634701990077089272382077077004512463856540672229362543660620939485276504180238751068650202060041049655444256970522875640320657164678593245455047580294105003016480529366909965346006104100071441725632803020059120503233775854717186029560001028560309248731911262577168818530692695157647426398177770631905438134626772714702891180346297886800974518972221401935507606147450013574732786457368478264546940801075331094218281951550287016194648288809798988869605478203620379062717223850200068415897930072306582671219884975451081048626078138126923671728651519933966028067276648750038421366213225904536604030687626695784935946972949160816638002795685707294885246147040086708787044776920390868740717040227617636715450030625525029741434426503800680017726001167622404659008091846465473472453050867868468572394901405677007208836971825380279377100959959354433446997464916276137895337013409853583021230833149766745754603885532226298192123349629689735042827870185198087186468829417245400522958922069812731033764612032898467418261888644224150205323932825894702558716533456714721750241960871621200589041350260268918207862656780744722058078175918017561993534954050619242712978609230043203365062543602307487802535187443843479850902017150564038824681928043206115067162634769632526622920238119657402178104640916613650383530613025083124469480903093058577700010157317040052010529893118120013407280200521381977970277150396733447009419699052433064420942600261780619293271052150020883030929652066974796658454205044758751294412758948368917674090700640863796463894699532183066928134485312722809797559596677913782299505110571177229033533140649203220180159503024947163483383231140110003522642517712163220200238120709539881477174130732701409557158627288560766581769467016244608030098250814600542953537824200547576205090202054750278057535672390088140619500459561037506009457530153773996479537938384401270500859099952543533072049955841146331168368006000843379843211077032903495180071801336293465561770227011675346042036758641500597793090772140894615033248491843697058042307194015270141215044029909210826225392869322583199357033841256334579266603808227563025467617444381107134805890974244471664427438646052935900320961559225931022244089754136175528764883632703866061164324448837168389826911909920000013302303452755591103217254156697286021604306324311136882997452940690993336350561477205869275423919018391051885255606482137400203912329717073179878243646026244178970383117822205072901242981563200547279864615634914596441882407031901503512472594980507264961048902447750834209187339938520062944901749025088181783156031603933300306310948591411035036940906860846506794940418732019655125002799428110715530063858326405521507833369689306644156252176137835321138459805471120768874080274873212508666114871804811797017327983163791091790383088854159065861326790909564096242235134903319892933440598523636358321943958584069177787477186556442580058831607816981749650452018011836763349583388351772426689317063453179862650673048490039509899500402700330033604804720514361355718461472527408467675751064570091523565787534507604500265500847874938517121539895972410610271105580837963142413057800125336543637429056311010683568563265256594313990607559464367819313386098208150771717113409013889238461613379072811541241261044880160092630179213674051649854529898244834081900091507625397375476438475885873630842962988755068931794842073218122003635056096654260171340645929068105010585282856087445985857021625582066482339768239501280174093855049888101242532088335562146318812863764407410103811786677282347974026263833210935872517224193153296600493396006050225472383998324366503874845748049916867003098223671875691051275753009050670378568688049623399883588779305772703161926530507729431970260202285638296532902604633611306046408724161182818013240628376017592644285155572366118009777325225527068661011618802686854848762559109896682587042607236646835899503621392451168682992592787392004876909223830263046379385064174712040311935304792607625404083465923475856768524899694886909146603018594100772123108311196369028512593759351273451348807292912906803176803074512300078940746954595640040885770382814045315027551847791098786520106000322032197650777651011112039932360566064347953046218298290408796303826720045618000436423807902702806112908020862062670816524117023086021105821465109315454631525687136349655443701114826542661814010862603248418104620320016077231054206081555803709838877350520556427182591034300790635631152006400191016273466606272936140304738667562190530192468561742600576338499297201073477936866129770144557613804022352007296048445121113230864281314894404013021183076700269063080408014880048464780904601872299059574859149176079885616915558001174092328741161696602999460061353059329383090812987738965074854542660471173084736850635876001533544344773338471273078575340383400916231232829069116571397904400552395576215861644001573159733661887591301740801186515185186029686025003391336348820129455304699703128298220533031868315046072905486247554261919225569188824820114512532466350116925674705014192211327491020055180215014146020795820971847982701029135466313612895063882829021384621201287840730337551664194554255705212110594014801770190443563920504903515182876740864631657369064056116552669716350057851039319014071315032025505948042703769841922892545951753708506907397155958635106600838949809170070057028752311511851916709895027102574243200271743944052118259778237598814302676576663530753831581354626051233565980586565641154793639218291603518591398635562879399552736994328080627688980430392091501394943511177235400826789122343750355470440508560407458519210299040296809185506890707521916591122518919194435293814856992602869019205659261612737329647289264632789024052859213385333467276311044708730739350610677288251678120108458883332201450756152103363993731329338737551121637141591672860533906980576985140732019066369753399305923300441426679039777946030585434240069811462019366326173079518912270198646143457366083788516806172662482894961149511775441880330585223196083037703086687514288489670793132752870510951897043379078750269093326876889569661999958090679324244670519437611060377228865383453075252832685015476598656642168430360125002018566214479978869686612973789025556856697121067027444514556213553415108953320873734586636775117715890689057940369214664445366028552122070006052981975506109771895202339696915691913946429463478948749139132213147071882725505949066172007234671360082407610257053222571191657308107066370902622303072737904424351070315801813138203790397560110756007023894993937781445459256648681178496560657083605340281097536950254400787032044938182404160178015708939881207016133017580320587161166419933547599812271291639909279351094172130905939388103612138692733915968480305982442976000086674791859696500132906077007057278131818228406823084526529571309933017724266930462602719561105051572625740099455781738458185339920175168519042366155047396064186130818306670349104968180207144629555244377220191906447089567159582064653836487212932862008504399740330333709254379221014833338392437284021715164319832963523180706618670502894190976652805116048083656761498321253546836411974274392534720623874369155965063810973720002039371901037672233058521008606736627834939089662353098071426040755541369367027055400866856969721679360484799153341901370036764691601906910590564309764470382522455406555550972213902760320314221661532935650223610238460714324360482796449034859267046756841131526097203151444252863603680390811913079620274890097843036743150851799750460012423420601318991891406100610876620031447041250693304567704102525045386052373544338205394632094198449537540262815309109482818269457491923239775883741050952395509732388532903668920041036271173040312758318390454192082320734353908912595669453301348637774446963844402612803569493701665725716365531706889530982210207262758012533792319961554759408295063347932009053082976506300787309219692923705060075487894397080331873452714473241820531160237355455388123925208297612158100377431503422500585221565907890514522026165002904303430074009387443025203489750260164831550263828180438753023824293517733238472352650570914371450042701518308023375727731558012096133852913079050915328800921156160992080533650243277985315543203459532718306816383000657365143149433102006987043398641249669452051969783096008351610909106837053496535088879970746601032620040210472413293940341094659773504172599019449793706192103835817552400126202306230329613797629016121234549101666445024820646819068411246056221730933739143617231614051156537400847777027824579855934007068877060610666024231916585054483386251521449542201589706605011202950329187918219255626485570214604440762837294322256831601056335038940115639735178468598180641350646451043605291359629937534834121407115100896038019996690999824714907719997557302343309066976522017763075799196483616736388351304439890544912717907083172417390718314215810591860759567836863895059995332584437099975884574694994174772252933357648098012560049523201611849011723188150926770580599794828471450730859182110983056605375041015838616929347668211560688672314047981983762206153040101680054764874124496270634195781525703583624848216622932884202937101038311903504208539572746659693450982000614404312372902264642641269264746616839550643454507460472626357145090702182333410245251725391116757488063310051673323587800463372770740100682988642978796278870517707330465049886503687639329850650553479264543005606259590851396304120983048611345586609327700266444790840028020741867826539177849034137944808015211642773690906450841443016174338408640816139784482560271041401091254502423828097070131487264250666869417393560549950400343075401772775060650317237121182008661679794202043039557805689731716941089072792074119955299518026073899309888948740432845625709861273365968490840174405058734275196510022255684837900667175455661513359917819384852936650303934958818421081073527275215456907386258467978101070552137972070400009048169198704466007142472085262169845409207322635007209768755109977610552550444446336272492260116888235770836976373118593151219386701054883279547311857152030573718031227066760979922179614517935606751292428080519399998419045316084251910303210289071069003578776446444997865007728804962805320468352155835820556423253374928975623847319522971928711259626546435385468714988324483839533611545273507568806057056662571868043121168000539523050705105135740231060053280170488548070850974978336074304007470882935855107431947878425970919317682681325888813910522151381778028960110886065348872563240989403937402188159896129352273471033544748340110626965633714902324557900577812804703995089282974312602203792880079597584094296116417519189993387700402087692557919663508468111318348941739680276337317100447665872085225245470203676090734915803574541459309925436708480723054889678232067898695581998565530588076364656413765431122676603876762538958620125145282795073606331832074666155465012018405781646416646094299672083738047952181372892569851942479585233024215562801033612543492064412801149267887758265851016674290910851745402205080366093154585009730575103146386556357607608735596565956972998755222607730803761806889052360756532259221589784363102395252714790320406627745567895860640996859007845957935949776975456121529954621309303516548316509532149802062320039186942305713070811000108011647502192563921678294398297150574470092892257260836615131551247028708383156488049981794945633628742750032031136217927889661448819173422402709953894859015930007017882820077238847000805349876108468338067452266940877003281748246933414693890071118781960879325243530055512864620162133570494894912804300696875694201269528437733873029005651101612131158969070299010826638481383557808546596164749157300775449671427066337570216772322002501790572426176011074317889745262276662095722100098371021786249585367604680528310886261938245784652708843089241094397600044817390157508047462089626343593977661121296560968140483524314858943572733242451149106529867789047664933880217213723066018599014210039651007263805384031014588446626876070237760684196576254080705003558329826942796317208189083092847290234748758605177928280353948909838233038690095731670084060093320620812306623686979591900397720643475305392914440003755890605535155615584143240859054097222155001289944910422061522254850660322080266965314995085824322924758002040151468312862392074596392235580884147642258022260684038048138442129947313331750600380996240366185351045182080551025333858315516487646610396330063743230247541543021886123538135168045558726920848869781066253309110362269098715565520444892627802901370652098115023590140933150112136139240132703301652142477501780487001436588288732582839807965658318114485488247120888390905044598440512019029948420233614185353660662406061074885628348435350932947784338651098530416055510790579300222040423557086525624961775855060484008455605077725941211955341942533395499651698163051142950752589742368104616743505898589065946198358906240493780399949056100837404546307741183730605948007309609072976927355050827103020933507864067645182563437358741562008869069838558095271216720143798025965004918086435385536147452550687426057060687560575357648335057610994602377996159894806941820057534755743509325239349046149181761290532074504961832050355124034909134848759406883918833151691409137163531086675447100131257163067046411226024790652183358560431634000062603413524246400741939031490700633844212382944612343418301090280128910245066306629682209306212774020484059452268732154371815190380328604194874395738264848475398267618703091708516422465423950864034500218154303524824125487331561541426607920741698033402106432393159625965446285339910606704159598508999019711372382178839156240960494430056219074836291290608551011730025457703530200011341567840066001410560964847150750356280113597425231410817858102801260395706035327934535823505973035966840220539700112569167910531330741214200365549519269073070705099437101247093430014401493408061225400561157585922363481241063213342401130005092901610954869111871233433426079330106127710070777382819056258138627783069912075381088346093264540344035755686738101685546703150025098718694589051802563137202312947448471303750070367030808025753020675896742826886654860612430254451620897105369041723371776767077848585334967215516056298357350004647249519706561377898637009187751041859923424074766290233659824177274527793496047608898468542908160493013383903995590882403046473624508791620351052356201400922838072154049876241982738197109647705668706559945720673961155093943055252839933038315519302951600651746316013611812302704557238221574801562320778886074107159977812152869887120030579344911298740708648235236704024100802850676730845242970663952185825415509552963442052221002058745091074443128209578972079352110025257540831169016250060106166107481318090471192929517087440433617318477455184515126743238770706290870398047221799487666080017180011464223491716995840595195132338030769855540845521751002011110653791507870163446854520391781026688223633664357770028003321711306079215202512306065876108728958801140180219877901632899153505977117614639059647008437033913034929004752767297940113585958095261162273810884086229126607500181644292212320047942796717580551011032730398587313890287022291290396760292899605130957436638760984549093617398358303767818541600350207132404319052593366753218401200143714903045142841080728870295861061503237235800264978625007590694864465342970038376240796900832325003933439086738808770931080047015517656495077489908112832769846735281970606751795200998598283868745928464993528007623438424827280304768918260327698199906107692600701179232852386780019853437771900538412063477342182914572514527946509460505018069656228921153056805289307165850421780075732384569071462328133711553943209919463300862129117842116706196181428380356755823067101490462324612058071775933269482105299850893022594788851370842933929245502637799199243989107377269173644852450570717956518268984448826076255937748079445563008176696129493003742598637488383221846712453266287625784512509334973793364140283184020003940285346216371620112267628158948000620637884480333511007673801555469974610324566803466332001014252712697975189311805519077456561451064461741827112262930029233341155513303028683008656572820014805545112178597385300023298113382521700863001805332918548619014884341149008022319157489745768492926186960701316650304156683790502457302704836339858840020848206004109070625600049727692495908027627752357767960549181096506713332485118997261001221314620190377633010811391263203266642880083017553219343146071541431212747280243402761417422324014436858781665677009467755674535402041038722524301256754509996128338110143677859824717057200057997156493450415160132365138969830760999076252565917401940902043376003850246802506165386907539789179155971506506690460787530355884361507087605191360045902940091070668229476419807863762960085160340947522764365011513612737164831373121410670392052323109243936016473787072474332314598105857710268526452472588570198219353258051790282835590904094745985864251093266485973060917900054823899029906546494550489012965438398662140331100460463817160647833015830534024509450927242293127007521470168449888170259270298610460034930106499621546669052108428610000779960785041109428498292839343105035609324587108608288661185992339117943296440637798347300059134597947521074984031445002704438939361215038080324652678988094961086096548152170735371447518113067856827001277053101121825103081286044054521165823155296246857818030162421759714342690365113568049972710199001182949716068016050481531691430759153715765734977404785200134452000043549907426011202955431641581164330116187965326560289030535620233080735261323154176701263289200948373157684028688631670629428405615919409462780733762980701019457669202378978313063610617954028115408736449671997160482908255947259080506388285431255375676846048351109407446108941101708415240709301552651050920793100342018499940810867598856637395761386274232103559679395062645016038660540279353041822937252200064982282554290670959203017501075464640755198303340380850105072010463892334740920834387964115023030244733392478902727092200105884124072205713386733821133350077111102632421009418862417019462970105740451966260267082150137360676150764157184415498783769621222650281205735500726029295808699077339118789601313359163107223252439215834883642867937322685406062898641652121094423340066034624953180298530652360896809345037189051261128286208556052619360377312693071637661138163127902203479163624056715308675543609900797385562940098995451271169771834765737334160859229465814795008471308512348624045814140624928060993850807452853324283759534421034401915908921623730276095785431577924200573687644817213256009556892664367371406480848524472619909175509113138221608204702081140772245745613764760784903785036561647222558020861911263083899128677802092802918632425589500216880011502404806749749313308668327141944284449748906085112017817662065134305951709546060479145738426309399923426310470665079550928444904324529048639128437467937914046960902577716620750437095709502716421008340157942732257979280540403728552014600431109304117768699208177938857006230605651677632960743514513967587479533663700604405662981287121439978131972617958002735693574383255019176297255270137616530170562660650220496529540788641555740409510989192874489825132060252035670961094807578818946725949656320572409212120390743934162744926299235202795128615568182416354054271855590983182286285203844779916945833904537435249792952928888946238191184913750888370386099501574622625126489860220348910160517470222811359427814058198657248186835005895020487498002517422789504591946491436130372241730015610368712981736578050912904867337964122182564608052531313278447090681992955206359136337644002985908808207084784878862525394118780994104385791795106549390103200215419090235127545687489042999229407749443407101803975128674902574848819108227109759834010030049514014195177699981932096174230252725383451887384217020981004453618141117854324897153140933470619250127210335898128735760467908041114125538090535215508575702362013946438500826874017982060655049193163707020526870655009736019867081439485761676138128065105847031632586434933377860406046252079459926996697439542055062776208900658652187142407876595693096408783530453581654558207703266253793247436121950571624473326691363963057029599093409007372976330057848026538282094087140873208682532271421041616887890853910000204636474702054409536088701282320532070162640860051624712596534550397780737764884859839978306053125205941687016832157327620377266514168664873105473947136200659622019569691430210230884531939061500018384676036469817136767863366925012016564677623544338333208862038345509314206610210355014202475450281347877605284368099555620236811770966727535228877459226615036807293946690143600235705373741672785389254660427002738292315090298426177602470811050718623739065041481787016600414348859860732466319380076027700845093167742605803430008608763458781400526016599855820382585612436171418946472644198302383693238665430626841654663648089350832683013230695207735405161313151653503911995477113963367816884195301797289362887750781395642170444326519034654707096125917994271517461498128144384500556235151463786559335427591941941634441780128058854493382658975752792285084872231904874265575735926546133170707395599760880025002869477466507471852829985269861080710127899456260213951584435691283294011223454504976127150070778667978363817251519508573072815208471013341305830250992493101628797437975612050331830458049855929227746230351437881727433545633354073437634742419039606227946274093548325297314818792176635695418434970157686149064601648104643781906767582061684369831887895103960500196268200764716738300876680630027787210748328889333610585552139096550261171933410447916209466356445908536094940340749361022103293084990264203790370632454545190570098037520201034106045279442343820468163037361294301946196344203018456168477991336086407760080953972198304013652656930704208423920230758958179224411036667036360309012910091564330574378020086840076799595202166705716638030247135080958269926549588431858901955032465082896758377675887140202587328621716388602378244984206392023416712083246490844029862224594792114357098365483466899853425502141275215572089470204832213074201983100356132846274803370013328059641945887250022970135483540404523564370781015011928004004683914817885698274433524256633408700091125913608718892699536566675830467861283183123462347788680928295011348058533099019703354761506135242819508701713005849740746005950023315656003785674357044177725962799677022032040034568961346976806941802673639461700187792921445003158310067190892127082711865857242493579111320244111608081099937155705272782350804562245117157722123509620518820094754456948809370717492526174200703570301234943117371905678267665808498959372850118753710542251211415095670043269800375595325561590090243900440020129142270383324116607418002329281550248888689067693146384046743883062093659029024602089992538513327474646079720133102180963526727782501985381120059957633674927615082404321896000679090480251188283292566331697026327390160759606942440728875515264969641052967923672358738543400621167640189088265189290307366685667996133823225039366090079307306954888284566206520994739045539698468761430914374579581958817653004559329047305360215160604044395292369070281873308807878521980203205291326686776974204850272403740674253553258606030060609800670778995633419504940310390325152479673002399782276348274439173620070130954546622569117234942498039993388507906410099971448335518164005390017111604320911969788061203977138043443580593935196436863110706060883696951477868131577756608785168249206056567846463371728625893524607594111754031750792647261725564274887830018688309051400971831725610765526742880016363143035908316272890450727795991170006790476885631407149241098884467329040930941202506857085668148556424590387155019445381705950067886153779750470732549815258279440935342667818267548822441907690027892310410734773875099359108260696207686305842102553773849738043974619111270202519684830559013223108573927355406790269990180325590963726580832201129476316329774770596029638070178121953158062408232735493577203469165381696091753760760722724852157425218096060586965420702651062703511782324101136481238810161731521504793445891427892808808326318298923175043511673368339111898403509163901879852026595024703662223251722630494835840990392135176590060739589113762564770923816095696243030446187421828040018506522800342164333326664230459287150570029643374314046021060832973950814932553673640847530350045720978071907482500464248775317760678991769308105575521655314801607902801833909317071627281305971459700487580528203675447847940084848204232286892030560218611451539489619015240073620864921564931046707940750390126246575991281680259617709706305490549447228367853029757173195793772101051377725713026496548430915188203333830966073796306186209170554011369902891768897610636085372932434462045507976210656856201452417753171715290166413198844301103226387246090560647088480434974159060364711180147166530944122317842307943800666103196890284686119666820205349716040773613251843304411618562372821103056024137988600854676032220032197763850997088517427782572852976311843096569102888064089436262849229373221734127198457301743927103954202003680166899093565784978780798883818420385377634587213059857741932668514228600939755498006557677831505084086558533064027466232277763231242633959631727448530323563238016173240106517799362164701024179445537347199979523531670093472080181693745422733745455655403690810485712268518640177536690242540501973355406323282008413132138106546081188364772296460272437863235202879574815273775314485247327442173296219523572191041496152906160559421624225036253321249984063481301427910601358011435153536796849715157464981026197149740802185653946110859240058427150249310615450372610843047137354917710959898770305415694118602046918282300471578325922343080369529930813580053304052903056957070016163911933557257054197645345203000922434721157795532745046710260031909679561930822186881715062311011411624416601897389607309196041603025001138241956020748865823606881705595501398505411447777928221357559225372160826240437534140859284329068673541414634486354788234470976924942592323104107421445989231175021961124784339554604149131437444753250501068694762879229562041035014726102174560450550014155527470520570464925626973871625285228357350966095590085178107952484956481411016750264806000447840683937630140371840167853740550546000648970902507844002226237443551433507457971387426430516726463820251670074008558305175031135929560147319072049607638317072582720032572710222223024204817411755511989844684014390829204613603307835759212151130652542047723744614444451632251984023652998184739920490329302695164713439017335814612764360613146667566085240791200104034049730115276617098653324681713105279045063079569141827020273862730011555287978680863176923216583175416939730180249000002669722113128041606086011348034148861507097067632967990062090320002068260753418684007299895955707961343101686232105338284112203734641728834474385786601456589324428800421487172993674013918838281325426907158015044083337770780850028212320582516579338814114563912258320093503901822533683900901188123694156758090701853188631659076052481110243626892015529613468063108070294851132431493101229714754560349081190953454404387214702711654934543772855722006577285180856571327891102645535633854790609700664113215847840225481234782118332060701976274200173139001402901640091137236146103186481134570770488706706887922214986320207295219950081741782741414875914055235030679879403319849275326355276586163874050831417065114141054780410025737675735688638129087770557899699144910746226647573309970563360637766211938392390995208855129188619892804567681033641884253172712303133204048671672518803943932262630101537457418561496508903685737601566532559040562180719660815169347089448330586422603345406038253222528343093808022108790047613862593563550207157970400980812619810276513127339438880064061067770011713055453502389362325241290814506703266344780633007947692299988524880758841609462496705617750122786037233468527499763039590190267574055888806058496272148741908219072849046981300005521051001282015398529560839825674313402201657730501930453096033478190301632420022852534328784952428392328759128342920190072380686275566156483072724802911700087532300605434375530805055417553331083262413609038659421921177605028903984361405164875213949434173344576230516901673742624583381713008426949388547042549713903979719994022038009109019264760468235618203985484756683156081540193760853008483072014636286237826973602900089155515490383603208156512342748800871099780870012308286202092007409424147207607901795501462432135192432314485940085116531001309839856572546808808389663488013742273052880523257434569828152248039002551879354783784906908375672207305722679554507294003979963971083700178644390910979140688044940945712063312481387634406325011776287152009560369177681675840402901563906960803308327664135477809144844877213785125882160706851607935282554826027010987802562782169373309179701730053826557364619679230460372128152436203720150956960055045621588909510043889095594017460781979821947854932101560286587328328799667216675659366198163218334417458180036312486327829554987476505040213193910574275270141356142593592941077452586562137292322498816179378006075078855924150078722349531657554039810718607991073681724681791442116526042754912885209551774844896418861918595939254983050393985423701580525264609938980331343511357376952297530299409653271888011064825048714539669316746600697561694841686222031777297461148276654475851752972036103705765043185989056592073335297901643372584363369884902002299823938433383823314715551802707958420009334592727630559555470275607796303685068097000908853934180150197878611827209905253001235706164493075052829415671402304613002056760081449560635439590983898306040300371881981704030127016723027708080748064559446965960554197502574063389013864008040873556627157721847832533725508464470604888151706276488710704951343271960730838371774139140923498625571754427411943801592780406684122420969570020457559678061159799373650553133989822088508762274298672437086173370118430646597612953777736116190402196430166150317354890090241274269939436435694049600287078671318522059989725259690421295520452283235048798432577094604134305954368270499411275005252770733982028073256867790898073420203607878970574310556466375480999708518206345592204133474855033011585127230209764692638799056628351371427114600120837629925625204389372963090528208173731004814914015715844494973562642287040838709532331361206503437342318696893072159218824314565953173392347138567853845329880042818304763062270320123639021527530111389876513931414402439073024338921881862501949603903803092505710901700213779019207706198461051576286839526010312829300784230573628553454618245177593042915059750997975636126785945350828209454730192759310177249726784667007670833954473907955008848131759578736243070398431058011346464672902990265194959628005064506258354075324006475131811961385337702671456031200537966830066078164909448330913850576984296741204809400550755095339131185617947197179871708455439017066255434602442982099432414964289333640190161092444610232399465804673199528161479900398702597770623593843683503236051825599755126790803506389533286191342363609407530460939534655686064702990629285576459485481713090415317553342049352092485400274784860226616582124156774996489558374841192377963151301075026807051270363971646826954768940119138333941293229476244709551692140700550109803006547463830966140115351193205000263685441151572033661966026623812611553279766571798829017008743620620845970149339466201205695362416103408504963059262184660634798833657516326279120576646085797201137609816680326072368185818285140644612260958226648674604650658999173320808346131850554129836757573512592630062492922687070949360683596682895895432161520718806247965161815214408615588650108073620136621328708740503581832649341552132111996541201598879500122617861572098375606256716700092963340820385152874908001013787682615336804065083138747635810420719826160747204089129116851894736003931036199374389704243939847520828517868884373147675857177974004033858778349299000102499290037023386794422180807475609361107719661841305115885370606091782979263572565616880377289313259728161042870644948165305595104121570718364047718134494624955236631836233507508947809078238852141309728108100445292014037376841326550080243306472545447809910014194340405221551893973833060867032629913748280851910721990185174938226923301900248095817987051926747402647427147859673890565430890490731047134348836760071773066439538231993479120288509391141906224408546616518452027250570270990748626503172819601839203203429608385701535038465605193975960483163370050735750659207564149240319998394278195321584250087246693014533334293042715134398569301784004266158073887075272744910230108197424337683935400864429142672206772502310889803492100009686619166572344128670146964555867829321836584340455402625143604218604608970845740649470680548423515158257691219765633977478019383015696992708152509642089234202476361298595886787047235219001067719864058217998335095057130280945466503100848937657645131749938700979730057391272812791454730890952324912866888434842893281510328160672015784260241223579797406627846779010050206004619453794591832532577922363732522391926144566099989600441231441646992357069645554730368567601672770020401149097544316501597772942681783640974844437652604873571788860783203123746450841534602071914252618655983114389620847700581066752621543063220916770900080716572204237074201433449228862656580870474380037061782334050087170363548040851327058908889041300106028946781182189068732792673270719192998605189044861139034784063763996224989121428505585650210410139816501945413009720618554390013031529035623983997279388553964034895371172002212182668788474026881327312224176627130510231357905808140652200015933818049950782311508966443662028027509907106984774726175951349195007074083255276207584251265068372651486590930222719687108822100466027122267651002988632492157350807438625300699960952931303909496592825239838757002323694171918340779819061485481105399803055770224023464318007445351604000755745390977009051946779930986882869573032808637958514209910793093407490161395570172551911846070213415963203337534762547229889061373059778519640660406382501723770952497602204674772630753708112605274682951199567682840790739102305118020488122017448907818094953378609503484277890563086362512543531413665530022413262756727285782060065983163250752297554321884949170285462328708504989062605954163649713738439110881089652519221321487346665183717128092334699899109935131845787550453539495211305024906050905518673667600252631065518651380236749922806073510301910595200399984739326102730120300825223799009808327267008995696730236489605876063562967050082647631807500307766008606512570700144022855826061978068059196075638426782195993787690596042323629364690389373379756750200210124322116349621030195883012443372775099523645911419623276980581245678504025597871020006538247563981475574660174282787808582941644474040365603600500720264238159017085081066250418478668104204855946324054042152214926463260313526335271316634676024520315638231229036004410719611502085435792636939646975321749133788600665633347155963074177509203425298858894176926442273027269104575952251406098321958421077825110198301533044440554047832155360302283968066308669699701791433025884315447335783081383555867763326301807635282303357802839411594088847315018015429288508343428299650519404480666200636269856892049291277390335812867841301422118270910651057472690809508873087010400844619659050379633579813561230030211813167657843758709912689053386663750997283543836829764468732190154855666625830598407239548161660406840267270025749478900755806084894409240610507474006206316885503850332828864479731401825616082122305606907360106214475932047425338184250730702323279422575082270754832131075323348280317985573605278245560074020070896753209404238754307620853183786703322757082350231430454119142159780001951811803906468206026834238055806874420463030052751816016021048575898906820072209514107636902444596754318143740772080879449443580139508930781351114032336922066511113935774038604722650802173261525717617720318703955828627813220946730258132119619077452893771906056443880951596116010910950819442064907169325720730805496723938836859463006588780281208006319003873470877142442856725034387775694245027502392856351115425528240391341810978338432119550146373210174986078317250165968609717047229671061027006300258150639728712352325407693520545582777101644669495472191026843136021491338424248821180457404129793325631112007440171148623743456241528682663305037408565730293239981369859176363027503240529680716393590811746362687447680542793955404732321060131891813525403938388556414955571182248395220775886416940677658992574018229120038769761099970888351487960997052798820201964665092095913454723706049016874937082604254260560170207769907884381823015990102717464843550455455531232040439339063048587520714018330097744882722100214302752060936296006138488104688869926939388426817715890921143114553479015303527682576617521765740454848175167153244218253845576000952621544699030726119850467066644174104073710370042582174455480275496382852076854708585477052804004010718840016970261408871065447068609547797343316065225665001423697415019490841257502060782603306127511355148470315469255182535694240006010384990856350307110512452212449111250646807299603113793711999597692549797360904350696269182055161745408532318801855016803458473043538890728247010494662403067517315092575597042349479921040044183088441577406408056327071801117594365820863560719804014680288515916588707871230368913900628395134843248053133442071510206116359780467837967013088899399100106042881324180602743600358023612010252279683305149167389006295850217077520828513872399916538917570726839200259461266665558242004121419572574098431358339179823402067330066750892520665913022556019719440019000019055609365223088032328379437257391302229379278659367064159412684905226884132862721419287550874093395100943246275220245468120337064532374349200089259705880988670724580308784570245256217884519482975506897041806610145701528864307891174208142043043902073415459188358680364444141786309216931207184819488200480543231371027843661084576502352992124546019078139066994817820426778957807756475293809833073833482584458509166535381230645283990041035886060797551309960589501188781011950476128836509056387589052695917689098257173122722298027526602742451343253985563320650452464885109644287230123240677217589866520519009002420274064031681664846503375581521792400652225190469029973419735588180030358277033024117700341312395952846836975028582030260768743503592804096206943434425030748218961839399919523551163980443709623925280928975429050823939307917456700647174953700776610080560601234206822400187255783537856782499238403491941008660194283170305602840600756598464200338619829128273819882222176829595393020446712366615760812466971688487818161046045549065284390960130230697301753612929009578346952749933806364667101824467199402479096407742185656695562424008202494840466222087006064604910807670139829545221804229161126925129718802335449460338083701382946010101292812505298367148422385894405708071475684072701985975283712713098277359066470186205080490920331184410700066104530454478452047479086573796721284090266809510166652073767463968971683145158164643927903741747177282065298035652503442668692741898057327578097413771634840513040093146876272798746407383618421917498717026544510901559942270063393262692145958849605333563160842442842343528394605817227003616852638330154810334486141641337734121009776503854711521634097251522522724756533439818702262731030656665450402168989794198461890305110326541945373086206244241150815359706077109357235578198052006142681850249751594663476053447181494693581489577676160629308050226632757978746313143441166664020070413159550164915397503281805436192023487658269920846815060763642128608051248724151602901290307861483081887649416147822394422761273262737305032735954720708013207929967268127821919642438615249344988370740433204172274309463375941339645181936190260003690917798265601535065730074235483868988363827399439750536249919271766300727826993722987106994875221427356597480372875969439842976822407819641615278253029671097603432300820752107203232643888030470270353203705445793062623903260996920808414055832094742576578565260053831908503311395856236240003698738350659094288454675070643073534928875917135619885747798514987645486172785592483006049299057776274133685254946837198605935292050564152081880399860160550385551578951563797107485402903400698409095285129090474301775619253065049263295106836827481000485740532259770439755454867543070566485518046049719892371612313309855984000872373167470285519115097758199588668017311220834319321090925689150884063293796292988780399587649171465981241233684276290259259575936712252090224318041000398296022250264550439170574375222627751458719510902028722889556020948462482407867041567214497220121314959142763909110137611413829084108043787492428438829364509156231098224230197005586114324943686417707141994106817519359064819118136386125914496088470700254863063337397024455303062483453705446457210498379336008098366007738453414619169606060107456556464991925111590218309003866008418799819106337793060883044126691251745130675790455265008632915383559802680850786957974980280066781001669028401300997790733700833423608120318797687879800998316723783072790382507453801622021716081837131763993976126460964034568077775311459157037679138258445791847220296089286601427706701223227304244855869445770850058467789074263656168873887615671463072606348839017739347590607013909010480133000220641152152165720802558669045965033089630549048604915326151230162933990813033391068702636829034489632642343007066848051027965750350480663507003493265662604460533890310733348824711479084106348154635823007214458910590755810369750930383903658368086000060121812693683477779253998907094491914438799741057258449222449096258011259971900012070155965081225222595237850564593918680944950525371723937066291330367328421080438525907673001866934935913835611286462350900199891799542457508135862080787969421199411000182009965411046560151997192206849101666792894327121878173633593492011161480096070462489953378866387499573163155519686064550214208678409032818867660264480020602023623677410032701554846634426089287639111556641917122256900096420541068845822628407633232715012103537049609900353597315978020398974061080412850346641086098182886517405340374033160438118241652423155185728382409941899758430420483548086635435269837115213510812340409409208658025730192231371123389454393719315402442009657301066323538250606900680503552383497515902264613704837193005934449136362735039147382401267415254698271201833259630714108782676106944932334003554606531001645060750257235761149184718300840702030181542616502347841243551803627621949720322081661894566639987962131005751562550799309067889068587513468525559799156723275339305420190126324248300591425680507752187335352514622437613350391270185610568885218627405912906076948496448372648974038549596518140668115224764026651541968502018922076006627723234577057933884731478008980560461642710424918371057180737672070376784150790727682887144094044026904315020653650152245412753281155255713072169781323089903136660039035188778445540747450396664710039155118911653034800664563846803465753237131346094550684561172233658275095258253193586170645435776823667459458907041594558000664079512280909092687897948788830251351506964140633656874207910740645614032938501706353897645993795022380520838057461226919055811601102374986837475652314402203331520044014902268171249822915350515360549770334248170600207500767182922332262009408219049358200390927682050979846890435561643524610190361275163183580078070778419109797010845074216707279827902093205243581211852578643612217870288836607857496389127920119791900061429060080570317602946353817043170326690774457648868079886416898174488108497996231878867634058940668966819454544508470610683735871772424654053383627332383600128782177674301886600639098604938645262004121690504102594140200665220640945421278686360653518003458735211263598606600978265782977485433321037003849457136855384354008613190395195502798818381969345114604145758940465866307065605340870685020018716980383555790471477378010938717883980065070396430932307368400862636311609827170941645811047923938986093317234204500144058782031875063605522620365188041048481613912066669268591790659545790302013910704439740742617941421292230410133512555741791571210608259335910916837488387921528419483510285753181948458004657665422303828097020463172902114981821444769274000761625840176443268096611690098958893200112756524913587440703527013414923687540106827580027086089016731324889941133841490608020275964310331511358910805339751400322448479062446149336307609109478049202764624083334113852343093051485824385033710725412226351278427161164333985059981657975088080299011410707101788222820985045052399034034530012906946468790747105337458424377398083405975571262369728889433383643609521326716319921381250752699480007477395466219227410008835020605070155478781314197451128514016770164227773704704314357372256202433076394323019612920875383673120622000115842333920162437617290609440598241246102648710100139408913908010646412804454226522655200852092165118409363047783004751500181563250930804306710910758192278652480591379802410079950834324727751966520938209440627511665703969041229684686968906383332923571656955710928725086424295750043536660060510813255780762588196981683501387530926481172912780754501294707311136754039750444860275934462775370410174176159229368051205837314365982688295197393670484183456737080868109122433921952755750624331141927584729127860430729071603626829001370741212429320036467003687752156457584846752000675876711766919498562657099848326808109066082003881880923017751917851617165843707206460880872265295223241778925793870811911204160001721219807737450604603671260126010283262103810010758018980724672748291172551289371360282693872621304155098778050621002010867141239008751111170065621546025161924015149074983235831049810844918511676949115524237986276465595129978562543162531226390075537135414928086458244680309394299031730423295201390477444723238005404117895020831058403850531058057108237835643763637578283738309314622084847349414538091618925128823802510691172812106713136438581604241098775182559647682631523380519737906737591080625962350453034757478870344436693108985089010584100019592892031567108409753126055246407835461656400694311497046963619255226246554843240400597906532945840895058850954706293393811188665741412095274053364698265640188038283223202150392063417954847243841613014344294738370717557511690424894009211705043151167897508509371942416417524295142121691810593864047562364974184603989138809050145472327497968016919210866414808264351634830405142486337019872426507357434186794135861199135054019156195649631612226655130855071043775302794679260807850140629685199671571580840369511093036515241731457006332080831965157268101672037537176540673153498948354480163323829161941226210345581221121148260458196556405769119623851978008892945630838566321043115195845517054637767487015125508720018645416993922150655072904020160594434931270052779648988577656768214403343762282004602999843572100040200844292595142017090623697652565673976766950714080910077463455906872577349701355690001004122478056798745959248480196177447803391748269572408945262789046622341886777856913115209240137067213294346250495500970090486055811198270105503234183428332803358087963315582284728437496071545221985163390164391052059769680128015665448125816652062739585063148672167260148280301739573501834350135104285434600862204032388901340320422800465685579161562010060517018606574136490330365099461052304228401147263632012633637653369506031013609010332313904426711602537362090638101460482865294429143263434400802538005892648505063124346134004748139335940919286294174039252434044894591923424835505075353232858588389306379892128034706731277690551596913616438812979015875604005172868692355605876213679145126734209163140128554120990427455309501098039111609735453792637428529621420627093660077030243590023969469794929834128067808720367095461881730682024435880670891101821061644901481821344748704549471700533745626461588481804441687566640102686242748135961048150102062765455471966781531950023622410405314782036472151846915872916163082142002947023074012979808436091440689324428079035992976801172797618118820054758122087524451513853204935932368048041717372632726593930711008066673745060043724212992143416595740305026591327944408177480050351547222873037102254103252213544554541200378302009069848058962781563669748437250270792559424980758857398850478179801512104829616310259067760623157306258925436308807194224778297347468418457445179206780351305829059450003062183756032105266148650113328918711640698863681015919916172888535304103006542842410281019471229822868590425480525063529781264726387950168301030961703055315792024895554365020087543807502755720795760638006333423433049109609394750065857909132541028493146005733573395452115777858210096233705610845888000267947328752720072280547247969568003039604138420587107060680132102820900138655816396381689064342740995970201048393534057326531002941697065515008670730384311737028827143001795387144747025773373099247601868233878329869811611780063630013078783439481599543185823068805682110867192917049260105314808229611204711947626425272123815340840408069538526321764305760883820864239587779900087226330251078495918880234814506340770237033469029561545498709057496796660954157687840309129486919000950095439241140833050600090636799693339576047730305634590225108020007808277571330832274117754773711742244826684859129084350960680203080157786886916437353839302200262461039965598626887683082741412019178003748549308623406831798516800062215336614510583961405853228151494520732811311545555150816152672045949027443845000121027689689658314490557099067770620846972702678928907083393375018006759669165936049276599278040182822673522931601710707741629433188057646633333884836299463198800801568398028536653045054375734634297394276073314294462600231270312332878303687295072418761624342291109299750591271000001753087629139074826229721931891095807063254803071525767129012002154768537104537256228141454153086217500053110291863897166409289093670131241090026391258190151519991364187546841283023506618008731927755761640974987471285525226389977524272000832141797239095072510315870987736429673647568174481962855960436450242581231369022173532374083899635302467877849858321657802659378092486411217067731565065820416111734023991207301066020825851108327205763443591846529991368350659710990859324962833547190531056686126216841919964547487940879568137987157701610289100064857412872805483293808722845629641007000289471132758069851491390095495054096060524899038259628769906950268776201708704343187221955153046803364131008936776158462470064455472289784680367524142256011015698834788920684509700080693201693636806061007726709500245030737498042975122600697604800368601251363122829616506039402484248601139704773382828610738319810644581638291334036889122766583537166244609396417416900636963080398200785908440965836744586975227142287824050442189052534716962677713450245061401503646572342839256753590173558120735720213240716015095356609294684865651551950947162562050234050046555895245226491198700445436357001226622926168845570224053060008231846765156705613566529968200036639030134738074016570806317790450985041281578125625283003656847372270333176916682148924050760081456005907118008360401553091071469355800021008028809077487040841058014632077572389846595154769370869825398575164416560134388677307299003148871881331407260237624503306103432308900603418615646585836389526515977655429882512900151430971257052222562766550166278137022215981571286244662383970102245390001942232643278363509620835685349972491638913879849314060444749650699482835610126369739464569570720562590951372734348179775705676243772981195132526479287144251342990094238506742318918850770500995869210864033366922774051427731812759475153003170119443474993224474717078475086766738033801676557246766401081380700754910749783289678290594288602122857250398203920645482105202862449072820108160474208585262640710127322199048817054966429085376001520565535390964508849694131629331765516788632384103830677856602529717976410160409688069080780803054608005824646661870897565619021226005437353580484947223076698090378975420852345500188831598003126838707093982332789731362539683012224237230042247879848801324999679567292516872714766851050259153790052793362920607349044346265419887704120310014101971432820593610462442710232539373006034004496094334480358481932617257334893729247276163073649924007268241578575478055311219889168083041473386437976083719261783931287673663103840302840410783262101553859488411492812200232174076908956113929050988609730303749207774000127017170341500049732710771449237731306205186430808171530127489937900937208033071177923175424947335729656935821924404524349568175030673067618420883780220644197906010062645004460187910104262869826831835318923580104418618680260963017488210857400629054012550297731180299900218796887865046330053948654353156458716721401942096099714123188177670056474120037817394772434820898602501981040069318076025584592190377003350744574192658391001020716871087066373663852560077504108293401026591326614051143623540098577290089481410313110900035353885447587486660548561677059309501799792976027903380063650323202206228394628035620632084485359668642618142961593298540007466450829060983113160553532070004304044357803481539598183570896492494661270358709297441688766854826895370360890360691926522842441001094983848485242112655599509295645040086586888577998023908212617044813906070259048169462662085672737544060545413310710935341661725069121615175458423453405346679096233042097364069991490859114290002674062733598303576260549606089868540914804204367343197020282891763297102198150071795449136808026703542173673852798098582862040990022192631197986434856354435849311823417900525620212448541059069517878421404904161150954646604534619709141679053701986362873647142521381558605986517572415061455612209702121946668004405794450605053239577905010072908830647581753500101120560372010773536114144343956565963084216421150102482519008434256743970433060821161933207816000243625712301670820841609591826600604453815121034135034120015609092910704030178503251950507521349883678130113434151698269648754176704854391210917259410045588960985374675892911154840853285514804857855246308803120408391810813337841042840444553560094807100827363455084256120807361007234252800077067287951451540285892600673008753559268403767970342094385313504043004035067292997040433583080744448580480822088631412977884926701197342908753881832513079870848391576660807706056719362512148491053212832834783799060050216704001518336092010818551733400419563408033356893340069832165391502081071393965725396601812365509004124322554290761949614085532182202626806981915011637229403624308429619145906485071855002122352998604731005325938186258019652611205680110404981870877406753489225504599484747646065669010430751087606980794087001707094035439935925977102960667206010158892919299064619151337769060270291395783407211031897141461085218011915836498956123047679699701019813983861120030458111227962639822427419264867869843069359648810764704653086087808938130052016369560271594050912301431025546009415335836706557441872660187187469740799405042060775031192493676280201488482641002011967623035557750476735433181123200036123207221220423336621404744557824842226610174435843157300235130078402597013942745192014270160782473671108779117754077499400933589039200599483848049852987042461881689171406438830766255556850086777109027900259867838204174604575251335540910042017810566245532622934463713184214801278049906969493850401509150816135903134939268025472415267991001126866851556592538789107462310975139364480616964256651033382492099334456210924723945277320604761965512040904667301740639720276862404751942983307158621225218889228996209224658641374876282464486864372120504830390995164514976797902391711930471505383763479551456530002303337633213715020005794971252291534603780410169827623376010466991492243820156786645001998320904878682369408719806311015671155767156023051403394991030064089060509402229499656670279303110186334373808465082871086187851897925004282249605612220947247615698982253520939356143135985071280869305928970198360882174744016209551393996182909208635696196317770530207252303603798564181082068252487208172548004291246540073346185552130504251373801966711361359058655905860717695504630234533393605546635248023380850678328697897602471547321129699114904511377157358757860056899967940820021386460572830330573386670104428349552175063002001033307020495410074060328026908106636736163035547797042404535883428021229347503123107214114609407501043309073805698062246601077232866158018636809568378772586044344508400762807906059938809392660252395686372060967410514455320153010935358899667076720105330398767600027570911705659320566677133081145141205265238799802631565083036231040053121400242706661909110414634027653930239835030691192091065049232095002311184336529552019159062690032909089523325883649705095201273206906801230342778900811466023788879064040841393623382002002114320830759836745351393917275053963140107790163636797512051726938020007808499280048581948755444160286111015809748517129389690238521334403292383199404175462991860078352761055322102696370476542362902609404414103562089901743124772355332670184447124482311377996583595621159751236656277788500675660305490282721383870401249325868397264900625524992901787043558315150446110998224590806434658807841421746388757392816272210183918687203456709112648067134442565635853868666938110739583210848606180832109359080255354084066971318645955580080088504308579397627704684246320416108673990730420877487568273628622268576280094872393277073137005783628686429592406023200004081547983152030411102834612525582704302208835680982494241204820169000022222728266546090918043870881608277197886409190361885600212050743689073236559213934636381214611094000632911384401915813339470483393387851299830909546417899540863800363430656090308551703913501138019010841999403576277894645396650164004148725076091732039084660081694706898528642424893045393301043802112296525914420996042707647275220224124034698409278851402140089307220118490192367017277725541053980342357447330506197652061696541807119455874491637241868633812083988205345797292105127661253722408961360751014897488570037214151136733600482741494104320189740803445830553010733296213725747369171254953158750369267250561329950975809735542060349442914566082050120014165376179952480199096202077159015060694812052550501260517603273363012341942404613168405885850285760220143619398475682443509962220822391339405386583736743449500320907153812937478657023928156504316243650200616089720549789597606345202011061090238010560143099282294225336072558518892611230415460904679248977837101582110743441403167763390939269634928760902124741260611003378305701726029920410918092624738539687022306767938550625683853130013138340874903022330206361107093666351362317237084510148589367791438161546196539326230352175752060034042055424066099010004369968078650910088121478024269365021811256348085529764150280083494479548516596548771180912516452010641737076770161018471146569629448130307071666049865029671559233294789692100598968773644041475171553393477685080558004632267369654761766209125188454065394040017603473568960443956877136263713881701337410858611505337942652314315786540518846388579111333946911405309959608509003081095166411008562762245074551191155606047521718578777712210634693250653948057040138817986486200432815372742326697083104038065755263743189891698644709521365376740739942379235849805586603905089053746025831716162953596377164091351840904125894973265593519096096146693947466000068063878953663639326803145180553543019792501883985734726571050008039917044769100938831906559260027466767394280739530203936107014705757034514962800122192400329106775635500731313739301607243653546097179402299816626278728645314229550975486635145812260008560572715774882668515997098008692703141262648460274043833970907370258029106465361135993437105070447707686047930796121561392007868289724391937685371409185098586408745966030578092702586453825074001505787420305251194402479527190670415060942552279267146746435010147940270314537406100794577368382041561487547324964767233863351000207721995353972289450936059670692614279818912099314005610912348205704796386101864061715044418961145552866829289075074739311131108054226474377410036483001305009670934043401318827676540548070949304300034916288504308482458702448815485304842641246602226838048926459875300487094438010195924819202419900359018622761454920390636076130015409547299638300565621296721187930756397163390478100634030110422103301542860201356828460583512096498037720234030264025513718097051035828375154562057970419549931076079453079813877979026279593134068049657785881533850450363110858665052937359298403525392384677140646980790517709473483298169578290133130768910808198731008527203519266186510045438941342917798606297731691667040650549851554272705162302890788056760777995772722673274069415198080466910602082105069379652976624648231702308390902295392349906855097279052038566398310712648829984263022985217157281690624024257800156654823703709087677144707366116006369704421704671582971221951028395608305051674031391304281462003720495185403112397554836265725151989781061827826629608082725425894029554175950672365488886540093105385012896633758282395743139059996004998418027828080984936526859420710562662216942273702519904885241942116408430670907608195161149706650634825051865413244577807475613396832511439655609361860296260031591079501960982798703499300198202343379008401163762180851017876831598612485276431609087020699041440194024067369252263279402193777296020666487840319318707515001824662063550253425196225685739503737809869280958601205505370718472178954018449517457861899596896642038185986530953416022307316938034794533443887470266038801050206186490326918291922312518264323447907203303022703615609071203201615376497804368350096435251804933276167234138718779554155674186868429922178726100609687824003083500261227250334341736106985342051972576518775937484431696893474141713957403724050879415022452703704805201451943113293001125334356652784843449505607526203122825561344550023821196400260718636850118448830074930696259368562533832768680293418348009229941638040144671088883944884359100657158628457092663344626293767461146573825671859908711014530474148011549381270016556003229861851233896445146144493419229602131909094554136515826966176335634877002976684556592164410274950928217509272883636747363477880177667423802812177923040475034188017944920436697743405951086703366816270988264644008596371839408995985652326904375817477543510650942886081190122667210223673060087165130334793534902996910204653523929394076347701326030251308101757608588402381681665485700664701005704004058373853307900062743528629163140327154856479974054057881956041122142899051051247259200625950109565784745987986870730245705907835717396276125339167948953713670977081869377656727121020840107872184303922078858333600915085905645006903580372975724894980847046513108508683540246971556366410116946501120131521066296693408305337407153229024972326156790626751785636688439519407243764188672503590818020588076112525453036054870921800701513120980199111788326178764358747846649139136440805499226538490011156113463582440627052526502530390386119532626479304844073086052076684594101753659527883268190206515825982718418809344702433030728015262734015118166905668151412004448175065059842409610087067802406873859331940592523902331005793351772160623615740343283096649397768715844396928070510256623655938204694467798604742168498046618490639253903659404129183016467245893963330255671388794682052987130305099876614858001956929456392019939684301884605107769752351899208240943871853724987474200930202775366431661474707383802885197781140711946982480711894740146967398174972454923238522641323243785409653302342070494103860893778326459850495031377205400878677725340350101841803431371640492706017855311517896333500197209862265101386643601497985705210002596595768200412308616159812969728307259828663123482941208786888676306770186954090240749071088225407105955496294807437263390403801181380443234000619564367003958041128337860425716618397418905818736778340018800568534850703513392274561441629416171605053847532691027214340638947553643290172303296491273954985379001365260430273024720016533241485239288163834241235409376580044001607034578840255081236931460559022839717890917898485711193980598106295970962406596318562978000866102130163128255425711125033044329540015241916007729774456095451483582380467725677769095007286530353299528530432319660413584092865976112938812998170699055364008491327383769899052200599235901078818999276940301127773767773951015200407006108655850205511175029670720363905027649129104264766376108034269065278097289933490795270916943082179856186180658862033082859122009748290487768818847906851720333202702653895037390079744956464345728601487345469528454467877184266217857871921096229844206848361161272516601946381787796508529959270746969052850430528756606800727588667053509341177935523326803684209961096265278757014616944542030213628543813123921457061212307448097655115175298024085800621570771154179261241071377940048020530070544962307036427119350688792443009440381665250144729010865039552091561463785653570908305140122009650013912058140085440868520654690545280235102088283007933253374997218626775322821021294839399865679159381703425062520920836999607031644674161670660012703755608651828972476935859792338431008994437305255153230206274433283101407356170831964277857094468534025526440006110126008253309779115212679047075817998039404877281053683214311606481109171523983291255292760093296860364201158591938211674597136757016615456409578710903437699047798351105063582110199382678924366542271481724701075913502701125057950904226231840195531760125464838161783970653112016038110639262597773030124612888071029251056213176173588336129097189078012185608484641357608481967213859130087957954103934175003201113301214672029653343731005459088101309934552055733691819442081327332147911237927543361119701340068730998883571992558246063749550663500672008216711891475728528901380929370957214707879300451820696602157793714692990484765730545016966393252081501564636312715991680440238408607245116766240970816639349133872072000208984138947092167220753175238803297440000618809047606189784488081779638533068245290453484484348365319038388822987012364857459720063778341864671289479210604670300017068353082150502662584097710517118669402909573800520562966899029994866034121407043587176095530289830033708006230941813078533946768453325081360899813800834767421721825224025321050271467104732729501029011508300381783610385582632049213891086760284061359089682914245055662420006237442219581429603397104773009335353076120533214989874004734000462104994648952137529665184750509410568006065238872610069969277183500295854086929848585044460963930295930676800371089288037960924742219765952782110553793834826045830519761428815361071452407984431838562084678107028108419957191985946343810456174969868651102710325105698710805217893065873624102835422558550857798463738753101967207730723193098742003911752707727894473038608265691490167104140972026720772753123510207896673757602088923439560733333020140058403950030017213408295155907407440906555710970253729464194008762076053167375805050948101930802215382470280129878900204959871712094714901092831892010913605490351048895894276360405540013322301294060955317180449559450742446352876109030712112107273429261739557652947502208633657209398422112121315078812836322265182713972806824193138945400885043411847641003507753481269036155356986880593200136548004013640983358163481307409798045702464803136954984920871310097967199212792786024090365280823052498702701865737508450053003513193031517281069407634890869964935784712384401365885269433650003650962096316380907874810882652385510181110100986416342221676808288820517059692925464006211448518780264671504426806588228112400440117951803211565438882666808391133674021687632103768962136159044661570548249699604362352108705790603225297185440446147378076307609670963305649056271982943874152092923343082230332239712077654942041040941830732301016009294782448110770170044218830627509819910479058235386198346741535581500010642643533411048358136536606025530865394470019060198501735195027947904408521761140143967115927052938305819767933182045309929592099906400170138063358567783265137324971600902083798775616490205100029911374594954117466901185445620179235560400665512521307578720360536431491595238357523288004662884988023600300880119550508150921590023037815630518460081685026442657957291306153606880583112275866425767047922601252765937040087427444699392221012547034004719967092753727492006201698032531309997046640493679633190054054790877213607812098373012184223736338020332658736046920602409284188499024604755681444526160280246533622499123074166938232969032780990853606005129904858310177372353132223193660339829350165073388074823782013863278453111131005333180543438701827560300823802878216460553426095773721047113443438801007938384601416560382952821832308193020768914035434689910453521214047075599433716812180820368933249004809802789348518434637507005111763670294425082605359596381723535613525882354126500311433208649187162506214112508011274163205540805948950977113841923707670408951021380813865143490157165425421344886700081920639452850525787075320478744600055840825454568847915119809340471704305442590210637222702351065435250475790188694342012205199777322652933026580444457654857123124268443895932179629366274924579275927328909508229523812941695070660417636200847507637164034320454331054032823238202434561834433959711987677157575568430083368887017884660167880503320729395113186201074604115801525569564765107342266303926612762207850153087952409106208698583073002648763131522969152342747687599760313661915372013169310152128865134030441949187195064883033853216906128931428765531821761290316645200830001832350546998414663611605390389828554602298860971230971428105978963098799020651583734488909221660464712650331812287654477690051331091046657897126171978000650363672364417020218475445359062309209044692475010430361551547164802734810800340058052073012628912749012974087069426956077967718601806011417363532286853883002285113556262069600620137069106399721974321842246098012026574827021578202002001564301944681442665820030715285398049185240978957038134350108565712457362034283707953972254724842873747003108071091372199952394758906233415984388515016460432651456698522204780550038265606309580376968380836956387306118030471337209742324860454072890610034690001438110626088834054588201294070896761718356564283748380941098867552303443088026683606431516622145116305049002155651833889923326007470633135668308246034228265781560521980264646127335859090271211030808152571866039410577424881215267260870123119046355081128988908105879280590318174479751269336945772363376089923718481878864631221320832614178990363785188130395850774864313700745263774699492122150309264724592957886269030594676490160546898936453680114963669094528687960618901565440194036043904305309630260655751600897614506303097673063551198235051925572210916610490322122147134385330989154760849153188366158917808295227274851239207590290657323803076647983436916040126154840863724114997962522617950961876433066317797255509207464934755823889517166277318365410064102478614409524628900129101534326842535281808522552801207173133582060362127936601139642425527182320501470529060015394691068002088750415627665168215743966982281630087691743953535323852443506981954905548893090850104446072022970180234584761537966026930996842260830255994654203406093542450448179689521537974420208455570133895421185779302432255868109306323840561097511768333001610849362220993745971208006390857601142025893024774717088800141241589214050399773507401013304570279623842099588666452665103917045807675082514857201693700490241067106832355089231987114227022197823493383595066486718140231840359825318606096123028892048681163585126613880963229191226900086848236358793706498541441612005500109222462376861387954948089452270406443932650474920465561333415395808783219795169431728796192682476615113438003920431289479234248229280100339298816706470868855124075142236313101224030262503160806319507092970728950200986572336248207731101413629004030452066722881508870365647890402292319910722151090071248216151124128471433525481902305970030150761921360552427086372695046775116071910971342228464156600657007026445828566604327954464198406871396593509812981237900550948525763003842943640147010347024352661503118212305735036835603810618207004542095463113422526263025138725490027506743901055085222845558873062046081018363179410105718136405981452608605794726736127384035754111272506349427386392692845092312752008427498908613536078370217349887717243430698268847569517850691818722783484280671087463724753118574172125921727438450250579397971006957060300464919899705834061727856366186049762041109104092276208913759498002735994814030321203437731317602623974803201032511687257586691803036055748492823881705118505480680064048804729092286947131976149572276055805102638459339334721728899501698854030254647880475170082507467137948047971902424328046753059105000059249491632195096040760005005616353053498750255578074707437268985026400302404805428904600610800447213025829200573427332829817215741703514616922055165539964100002984451269775213721251900870792654905539040269270786230003733942780551097604040311383392430211200057520090102568433504534284202270087415003290795894408484891784304959486947290215624162409191333609198255960361777804509719497710947411369223596087715392101500331622809958962822598006069442829362247166231699077466074003754719232067909860708069722709603185977108702319529304364550015874988200583826686490054062588338729042243897013737217647504410111086134000703256720129436122038857665401267702220109401088108074022036801015412060721289836070662501855526828917501306616811162098800376299464108992209554151841164126996863815175394226203249926067042986505922730480511884145989676480182338399723381503307647050695055064142010102662462081234970973008246273006309538224164444902681438307397593496115040644579024360384799846428631197117519539821284107425737094609800313621412309544306080263907493434492791918337220096545962676065193131771162072908802602994095510020767105920302238494707621640830423276438909158173240124213214730862207025118275682632983160483601085293463233771574036898701029108232330802708173241542881614528736105622124480023050403209808774214556037702568646909686064259093118675731331309803359719353061868710477379833687291308717737002374447534519020773342705577560533097790014948132872131631731523632397027717860901819489814330228209660982395780508734654540391893321152914180595843548937094966808955305178951414710129299402681482426096035453833822640004000741798776051116672649486990594706878813060858996749474668719061148352673081508796564155624579459087595004252730205008698588278042954547005337604327539904565981692903157923690170617235857791844175702010188540782153104440647037396896189414773043040901281964029179250906398395071986185031109603012112195413431414319866328044004548320257106151669240001767405825071358625838634356856987007095638074100233300646618264215650063877168080877852180757271624359783592087179822851020900598333247966053167638280085668095602208167326092059790004985956053274077759804760935627934917586980596805964301815449506722801222528424645444503063525250969093100921743965848670512380968107048538410207916601330497002812454856166090488109040758349006579333664824494572629100750800099706503238909948600690400659336980418236997510531820370022036294405845726547452384886903911051430691939518469538895865953936246174010404002930710845540880972789499363093288708336812690845382678628277819814710759950628022046069700518700885096322325521466123662568990279430483046549364304711683718266842620083538840052831108519206225860308510176500170059652058163861121044306632468490490976495693505678180302834130451112525406199570180490022593282013854606108388000454900531229198300314938432979085379023279595985610227038218305549954206021579008361952320999092640408371883328750984297553981224956654978600963163002679618871158822113165062886109457877994152603185099810097000018410781319782913322681792120942094510696229706000994156805343827557763524270007040075942649440687750361103939873327217056888116481952191577311300439819910731488247680815475191859224721257540541965563097241517305650071707897680392023799284582807228447760613703308907505498031911160737046330917442583392881682179635070120090926709314859314582584458214826795516234245466343244475553514390614794817927219063627660646626717140320430502151791654000129507330734360848700400935406130789680844816658815896803279961718050202130046302678012203365693007743143999034356624400500900661075072022369056626587603390170565225693930961370873157845978304808009875379317420047265116211509519317389045605082263813826037695074467122462803005907913361764328677054507501205052291373278108007770234990504816218655002111403934940400724058817793356873266698303512765686874214798613031111904386222417774882974040989218036155906913093226361966079269005809074806485124087213661019302102621006065707035632801694230096675611638845596526161682943790017534031023017678556455121738030422053537877892668290340738769062169537787021963794241848014758912786624460319384512472708359571818882445448785421169418783209682700796564606390818214395880770466737143121288411821691981098979967271441165223300637006860546990883317198566424769192065398346110413211307838797041553948590006488152407898643611468361425211921047090066964082707063488032462807226600469071315443539654935330123339268666720765242042371066661406376203805689528705723019384160134940709950986791809603799323462064930320784090477156341101766660272494627402190403720304754694486198304830007020083028844723067110693377200474027336385198361546266564823736879933484506379507047504073160880309041139805124237190440241342003627643803793644277708213401007753743765720937201617802925625607905687047070018927231908675860806317326006322310607520209180393185436597805616365872804309114306282777021494219204093206294309423035018057703613427586748806985707059024913138213259893371058699395520030117000309270055594402022290901959081183593200015296337478969881001394093607973595262585361049744084538573183995910348123354510275377225517585078922673169834547537682625464351084346572660401746745019727313260002297402935968080063886193939839244796400925652903160449890915249442409655226679296257369066432992627211305168589543304138244116034704630503427575070269923955009664088269264098261175496908935981484330147487812051116800329299984840619509070710891715061613721641351505202476617470985363928565671182048688260405127983072418965532049811092372576501750449644468227034922988031120370003934974323450374841773479972627787936482687944865310621105187207239332097873050709083039971080051252527981430889023605002545651434353764847271167516467256317697834178050556695030489803056161524369556746056310660218006555323862340872754808064253669230622050205213570026099912606507708361818508140350216202180904993541107650759831218669558538527707357671431329368654722811795919966258361302962352240002877767656606548081023694959348260359534093759828567471512236317445535302983769622504216562980432889343983404183008680684979690090757810449383160476814390286004893779405903651511801899570656847535556627752780200469452997015139919980218890148388340300141619158025014081684222745694268027706504538144615444408160758426860004245819180500233278826961984264996600493855249853327195728007822242026253830829777544234814352428820146267307086555360545402949097925490203320796210000320056500561909304378600081200470064734412288604532000975773700298242568779022150459430581568012475653745507185766489301894510310067327038742203255575594797305759830046860436507402499982639135734000835941407940764920827733468762673780936235667765187814508274302341922573239072971611676145045891316652046640700723227149862479625785680417638109402662000816180314656681158227154862974555390741604441479058332563488703899611181992669073834514965000535458495113421688664057678308062564098558337009991372883027676584107876569048306030014703366005530636470392183548501626842012130705554410167885638847423849089275201017558284707019016267120534306003683924299321133315055590214636317844561509905047651650868697272049986850302901223958205262761490738203941111027307017536339676671191855003282344596547113182113710726702380137046288791326010863029155613987051611101602839323268383851057423014278571005551761702897016946244843869665650049514778048426364318710298199086564216121834163430430079102711923539887104716703493266294830108043608371704953367600013540714078817013293745298193284224345240038303850077506749871067010398916027312592040175239696085221105553104600471000851224208690827503884221729828469003462092518812913175240040039004530798808001907604007710431227642527689181690645253747242103227407210777785727151807698347082947021692882310886354390490868569143362281216606954086186714760540760362331927174568739751167698394857230921253246702643342501474730274032614364867230043258646089131728030657854273049453062232641329971921068725406528057364930010150519252707908781399585632099088971722023250461541202735168233106892427401106587445626410657080317803349454577154252388292829348173380804054079131723626755498956967416325274728341251259477229511344574270138749174638480202202039649475903691885790702535066750027750717687111960215278339931206805236771928305732290309653113973387471135681633683918892593116546501246530962606480807801945590743367282102191207105250898059335340076731042597053183800096080681003840225122008330244979505528115591102009528014919892314680222942219475035673492990407043120729770606704809658082708076087553980395814043326034678861141479080090810850595870042457454670579894528160203270707756209968439000830682634382795702701060604053943305631874718806487782832196666004670310068084222605499112391850795508527852880651010732194211620850359253086147209037195364101729909280172066311661918521436362067586051843206542531843661103106192380754886187043832152399049210652550352700697591250655299591347303404455530303711502101762769014515010493199360205309018756000739015165447092109422426338331470238003073949959282998712600880602033465051392272420796370314512120554015121716597966726969648036459507236776341311309896107357885240645646001381430038078116853153492136837761008102866419182335896722293186901760541414427255473337412223810214775767731284521688970090795245870234803034796056604024709447601852700967224800559236079036434983991803207541811713804004160842445707211915624009052157085004945606882156379019065003434109009451003001987720552436533835906516767518127317774080957059303630063687817132453644887295024007423164101791408095177558278907742923701619134265763525384297771551203320645225276216560293893042728386606805363384570670120400702910017611729070486330698847643050387192312537762762509040408373253510300764720452775529202846610270637245202839413611393107181673020800047708421020026698994375182250402713404750693068433790964114590658919313377771728066296486868635228382899686137858262213470665007779367035936180051922840012302589560323859800967358519574500897982739731606483903571158258276300349608747070815218486303850554093572048239671011750612617603030073219271025882672547312682386344704205092711915825500635957026048543422392835876251167288403000290570766624105648549017027970906875997358185352491021281281423232586220736858705043001418278640858609637683475589334172325244177261102524715886578599432116766237932450740560120497663967354325718030553133478884852108051904633244317169532014989799697199584532423414555322842403032330708022158904934666254455008759404550411761003717822570232368105117285834063510671115271050782185431445408466168856637660512756453225005968937206879351981039750773920032075291008078705909802660216280163018403104867931931998478363138208107331736062381344884442863254098515576044649695718857707409445307018357281681811642503950253510586722538351911691990589062170759056470755999886064015023487186315694427009489283072398473982928401633191031608983953044605182037335502097002127897908111676064668651206035317786770533104415310399628238116444984604862718850916467999806326096750443768035452454573741003094801392507059571647297031149931105548100653947620423553565341430092684002333730110052772980617119969130177125455834735986882110464757123838440585048319432207582138810475606835465722008125720405105463529139639480834123648109021273609180830252555346114164487956590946541830259900330262522778422631815271360586243093910526168469046112055622870192189051050993171416301772001864239683329351349081768908944090433685893404893801970402140211073444655107606145503608101283539779382997075025946020100497328766611064755924614841192672440502030369256375114200675106380891832048510020695125060269946673575960875865151010135232640476042875841101461812781054066102834822890281018052730051994991197334732776969010428080971589377308633156263471052624357938430614250857107895138298323402499452199211979810960619416749369963690072297032869004587105644859905774111996290875016136690813014653916519170373749306685101296732820506073063564064306746133327129317537560837326027713919455962146469552019171131162514285043163050330057503815862694456627904072760463911095865217814518756116478711736360097568657840426910849555188053299098952038724238472543976424027425460505846018808030241652348618606055240045124544098413970391559900593908221878285718781019669522913430095820441297097615940016879393636157990058205050302546088151307272897252304690429090642480017841514464051427610106443239612571295660601124852531730824738610070029569404246778696830651557847964028909017836248265074817802179199514868031592161820350135600213009592260540374770859959095819063868216012620618496869125013007503135308145311081782571329598317241160321395642205397280382943963032476347953987903874603145142337529724569984192440575542097328909397072170669008500232693934163770479070997867886887036090999735009739275466922492215070771410720472094964044802968973445297556009804900283154818390086054129123300152322623080497060261029358689993808663867913467220993484260248388641608323049833042004324458451891400796308631057622692280013139105008955837900062699045937296951024500000608275009219110920984843834246995935487952697077195314955441666077021277200134680051054401067835666335064437798162698548119956132954411916953082156258498060172364411555544694315157306701419502316709970488421995114717600354666480540417399842331763880020196546605079831413523050017832508918910973744007572466283367239015263523954822800615110199892677527819062013406104760431233281370760969172020590293029352621647610914402533564185074055768042237620104583071020458407538052665619554543936381087710453550804650376551773224095871830635055440952169808045074915365434455129751895872406558497372868546473269548227880341902730660068373699250526039832506366857804788290608586044304729118818412755904795743134626483450670928966588208427402342313651806697511300871683321388046009198663025652061269090184182028456683004101510623471800536069148284068647592465508038676438983416091528433931907598740201113015966989107028273275201555460639182935273878096545327786765732558137558055294944176925408030241675939574319281526024564601808196048491399530009708210890712505251032266155984004128500737287005610060735934499253590961215114001509411278863896943126290882769190346388120207460085287037079421737091934651994417443710318118150046515631438797898531379365369255971145050781574804308034865839396178018450009976754528990211230201798276545663850137045005928196110190585074642406076225139996849363318399354209487134768340330457341009442948001049097885012730706903875975668440645727016739604702016375900062128746020608498656276357911880044749540561310006802708292723300521688372799351067434846482836863199700058321388745014730946510421871055245047860120197093372086381227854690767174704819331040022472423643427228502495281001626434745846359104458319275207346416002702863278873712059254291431739316119426911604090110375448291016547756092342843214192420045001332985747713013710610716442690107760652886758470230838505753332389142540085927729209110256097124012712959343165631502124363827813321542215286312001988523934384592555734630141363475050166042010212710405835649837022117067072934270035333727551388361761006905706140054678926605976124327770087281335326816883467700180141312542356103656718963064151381406154399671205905722859179055721776274422018261168240683389611707645570510195034157090056028455885180711475864494943401484110400090640040530072614257671905788410232561477845481500308002760412764916926495145883517776537222472756645980635588725575039652980900878070095555313447958840176242074179810094794374813648218917225101110936859802818462051217521971490096245051413027037065924466203015999522350061204497580486022904133295045030151494420663080360434106170750403087220300129370058634211710470533808464105379376842824777768945358518648480773519816468879919916840002135026871693095654228504400583622171330440173053179921034756417449728913786229327285146740071481256174558169415723226007137213580043789967701067392861916760349591415813471806875956794001109560037507204982852614909638808143244278660085100931601594994480266490466680838699271142764731763009575768577076879101903511071064373659015091702861368005874320109757125126481389308088701127422333119275052832423591211605181078175896377559333831685820105799365939210640770279409860052829180964188558817121176745015980016838791646031966533012791122898483948933337748897311143580105093080301008939371668861580539205216110196036329473431008026673106340005848772133207580660324660799453138252419258132667222226319855774017621121878004417420000241630040179061998229707653423567052321766450203268546783114748750085206555118139150056630633494200680146347314532206894044229991517996281932725857680020800489902368123906703938023032283502596494500085121117811051206400032081734804645803738033999855503473637008100571101702534528658614153423365540406031521769604546805110434569262760455208150105231534580093605492523390341794721650758521461255793204038149508995112146405805930014881464614030459401390316522286823301305354029405286357817978607354222954106089452689101643181043420419316903381069327121703733741716270080903270827341555151014004103803873322407546089372074513979757347514371218792257432677746109585226404751154440243406159007365148121933903515520207560530891762078944725685043196403354827507828670528804903584748046150361065413038567247159500872250050920718641520506703681449421203138610464653361292712135254812480331421706836066251643680283106441062810882983163530061936639257857840239107391063302761602951556750603470056010468458307941015039067446407233073126526324090530779043377600462315057016770659000023031654100097832755107666390697868187678602013865010807714995166123300749016730313507515599777493562673922531024446027198534453505766626932581651206512733630475171725446563731825004550464199562346519656680314694706032207631821119043435047442119981251509152389005313731567241952922119922161167842690336210326606069824797153546647537507397848366467116605014601997236640671654860313306342754377375168209872960380903476180589649225800019974827144763415663626911297080349072180746017589170705170710770083091053036083025720218519784524869232474308041603987434619223230000639804083439430663786549850054070150021805870830335465331228262507962262660952409400095190826792600654057762611272221043560010572470174225391679388309123742010622750510231052690320673329177924185550150145630689710290607549383979840812040971860429975984417173703241908702172640727242977951378991303492047431906835260494760081830181368550855039744408740644042044636404305098527059934466653605677979492573070485857617321241645497899765791304898419460605051309934386560774509209007855314941713766303894172341416308430574153002092541776768520966196503613317878959237941779345024306853096115964693189592697936700777487690415673764650441181832281070537626086089228593601911122301747934606214790313811368929434834031329663992766632102023301081916032338600740670898302746334402563451522203560304859266454970772997633266019956808393361728877292752070329031766521149240761106210169418750412997795604332152775361540464520109752042631122304400625319518785229053485605052256521988622215753238134745830365380217385301643010296490687063378429762051357690501173008513695171559934433025199702538304089256103271737149035093501589885484435123204550696038284381878650844615779308364109307053589214030647680765027529978938002528735965819038613763338663127148236775737165758000001792737095128737740347906575119996697274200521845451298758023068819093305401796324958811749302758714385659611744264343643991667409350447036020883201384934390014998111046023246954034642565302207322977817979256401940216642879241984780086971333602901925401935473465502287058176102451116017708774865483929244503084985342220800458206829989682410706016023816453743476310604743407219619701188083498718382410153287313288491596020173567716598547094085697518753229351778126825070303901170427538830706570822832005369210455543534674323191124214474552555485213181916204381954518083770069808207567743362898116316102831929107625620766017161749172869132709447233560096209279005205896020413408840383411829436743149922803995984993390800367372647602550629021030725455484526270982409065688042969992460906110953024641957170505137398126485511316974089999471531150427239176146203839168014736801474261502320026021008024047433230040956579708402956402018704725272728782062500986322082074754842493520012680847244406325964998075825075907243858513007650709813251650981832294565622007237507515874099101198281351252310001814981055874551881650761702510653198449826697840210370219453491150883004031996644807504003027393875714002524192939436726077284463910053628166983110329247194506730170300624645123200025186484321941323114323447510781088183386559274974842083640045600062223737671559136806408950646802677336781626225153160716102809514623717131176678517030711760991244957180601269363020014052011072974107921536267097972867949238240486840592936847507335147622253510322211149337991650956509213335887933672473393411785269035113184860889259862996877267002440284735830500925040614166059179575844113799044664408932032626985750032259300145982130394207713011949823395091262130650096105083209021136507487029009450252292117116774539002183809902061180411356305066970063071163405618568503564424124767900048843904960750779667600215726396571092071609323075450578026792793299720706027180539804731932521953964095191816669468242280977414384730134521890809802343579703707754715570344486933911577237736173483219739345374792753404516799020476430857863999895661278942410841306723643771536562649480099070324195557006772766500149828580428402434742579006335006190310262450203945581502732634399170809930636086408262232078274968460923119787702727446414615437832624823786305022155350595807916450695293571329747285113231650274830622272971440348015656508909613728935482033630111297296648152002086723552706782923118360391180821839147667490895770352124332953174908205713850705899858202414750056301797822555931073402320576579841333213943315749057057968691704515427110180603024488948299150917646356020888373153082185614305314020984823550055688308763887020135540009248071034051416700006036263159253238578879962883322558433508158776318139228427996506902335188476245825570813503084126228747128722847806656118020444521073712018746014009610454490667476474120938104670180816843077140878533206801102030742479974766245700984512568284083755020119145909116904089098557869720800729573001279482105765788517869573840583074206270423133112663471666456507719880048051631146537844113414860414462489410070848730012821503740648410382629713171591079960805136776345801851110760975270184460470580481561737301258500387846254166280120584004611730258415648290202950962368689603455079637255283724806292714667851424593217825526535476048287850398576856513172267988369138912917485430978209702361931430874015327303558111552387586632100252610100810095602493143626153097844920617460302906695007813520967411644286272659620567351801446658650505447432503970197584117046542932118046303832147790006245722792504905451858731784843274352639253048368714934019380851084709784749351480808028667436857184093890947865376380552723207023097130522718393215451987799243894277904828093072947007238975220074461598163111985503187847397256975708077700802322611274318825760169674962708450094491854077389661333291556525339793056100748183543416721401474161918915212133400037054976286693042350852704298075154125584613330728828432420587715691657013394313389153732051135942092901476106729021606613508885229714808209096809682514990681872607803954163663660336117744615368402019016146390789205334460267631159116320945265201478660553606516002604130639683632764645319837868470314064374276210268021665967454100885896633481344514289346202026164111212604519104120313920894303108472905717809335951522153050652208099341261721470110822894537233511945050916207247625282105555961573305605232401299896546620695748921896058254797333703081764089190552136134200528067107041611180112290512757237920988329666859823005417089619002000061912854630231032143621014948055824887213147550322022301344417627542152704016332176160104212406337621936300036503650361472861221309290402129434743120297422013410098136419210416150975685545030514481040189001770746818568447974161024266170715770225148653055820031904074256408151557854012556058339506016215566403543079189633664626354644295098280400486470493261095073174199114510938147105924207827434331994577984038739771094996505697776604500993421185214162085426090357142376540499052224392783311626748052008875048497656447047731854750981151135009283364118081327301466390686799587898609191315336100084590108788271157540010363513085222683006786606462640830686201340299090732469465888507300586131836792686396610914077713359503520088006586480897093322719006857752890380112921837072296793535587689336347665152427428842345629491694618001355110500916600264940808114331003226005206037893662785615213449463878904633018091766241529385160937354084253812328069897260898633942245231830028049616434478006776750111077524239110659644208616577161423321125444563784010302484408727034514817785179486922016034093520979458345614531617805106785645252237267882654171489460576488800216723736225844612349654942753963042066693977004178219371942903904855340126100417751057597499940123229622294702057407716038147507173046798157014884585601668370040313732071125977288958076315566000205551601433924577553028590828921741069935702908360078807459019393069121824806084591106814955141543811942315048724139518759065943509066557527748342357559497164375705280070248624444382276611730767207880377288021729256899035551019748250192165910018417997830053491468363725825761290261457324123142733788229592206202030886950388702938807425335844099457019100510033638005770495883381349605690106020861435391144601816129480467303015105411891428477247048633741808059282217432510062249864087761105768961230151101386908711903002208685113744241560778506739612980717909164266404729745503638031116692115147495183010018995418139765086711723203694302942410610175858947046725606664693425493558760487261163843512700700657973253647281530509098663434392020860769327651066601047550244710264846864043036244747334096417867648345733536935459078190453334006494145478966644172260274519155023000788282206780138354344436330112723177289013250311483380354016009540497202757351393833806342471438773776045004397103100831200440983792850860083568257367436301117364229480285780208553304888242248271303137501032833457054643433160176429867223055379832888025801583570635942526186801504452346354593914836313351928830435342626254790952706085340340361525706541762427081796081519311042819018121011937787906314507172172007253497221099719744354434671819116392494685272098838491568520508920344357419800471805668342468119094002574314783092925969406754872084809170055253475745245069928603033107671447452641875804490170101432921248502074646795313270124249010641602105304974076492577040589798354794947045945060150508071309003626283941025330224801907105500748526267718909800407651353265359380920842628075047321099630898254446879936190631628430674268003023575716010283180407700856167961055655265727007883074529420888383252901176090233006879223432766724680036595203911857286983042852549866418269005615725410376453960457790687409324012896484787998322142602220004777093097088444948022844571674995326025927113568989819427516224255034859500813262530261020360140903322279855655007917797922024962363311701055356900186979402559003988579236727507260442796847165009099011553554183646192910344873134472152179203557126010418911254091110551465765480796419221257172437452060019804203830705132372905937741611063067860316081521060427786905082861726356342556045602028828038085143587063889008030486017707575106357614003586034233574907261989360561214808710450564848761701094253649733015873195455057860227304345392207236433815340155266977621288670042412369500153441429888035689773031867272539963542419104220173346136900566855310507390715741683276993965226037850372723188091206047594400173051099031916823749706725773788760863649434438253728445976629595443180649077651099031062968889631951825013582542549731301061872646453064457449959526284064741680686008614786211635146497885222150392527190982991729593700085842246540546943765998320073390770615097500203089209831287162082037462995171207913401840892285770377441037850147610904049152056280119122837708227257419206520660399968919528788156798166731009404522635015420962487261401461717541975473142805438529596426756789754508236293855874314519743000070822981208877406645488041990524003904163436156233749627685314967660204562977704394303061272090835562241492128960046344293796554823904854711376328776903766909163562348943295673198273413130591725039599242946490412093061660932401173196034378060688388913692317059847088248722271769379577074737033592241014322447596046066610738524913293459911871700463200515630952787028273349337590053387706806162487768220358297437390109712195898116745681357553813302260490606350712948127647040471734280181851333124149849926649193196700976763761200238560603667714984430160924600891107548384474626297526775310364386342432619803319824384330140795399416699214169316309293820989431668165335213063570955057038136452792842622283984918823072840265298704458764013601614609034417615359194472583470952593883563659100857323435911300931764469485864799099461368205690822068730661276358269035476286162406798200662808430603439019758361317707670264377581305302010203886767978010247719314535750065039624977735303683062786819380072279436760889548978126944409612665452939732253672666844400724344109727760171853055026526357126691743096326520097092170402031770370133303937788321420262958946726203423546313624005702125352809341475748362393400276228273004053989181370377429379847691186408038134828863791172131582259908368233790675616576333674068577488205185411639209875102150736332797673350883370936095074921544493164439255519055650755306895096197404152901017301014912208234558422017272360594978151933008156374319337620064219200606467690600942033895108036056265939115592094793373474952938414633495526181809514263920490170288518700196297938068789921709075573150137465262111653266862705554465314030808313121846754745920066023967161659158296114394167731286167185002849672040618145839962464208570638481733814721233541309881728101646173069300014691987319605152779428966994427902854703792536012351331519314531448625605039744937939677887323180852511449756140587232025809542060090573624695065351851074380725649768666407252820280234307790653047409890556783353405880385846776334022605659673729040414260051754794934041191790922068437237610741304430436306678751252860952079911635810403226931807148341042581241807500913814330277772220868308009069243091745606321141730810958006049744032206270384111224670816138311109712015031426674603099001057575383600810901036070663054343246389112834601618149749683461290613045370294016218614069104292449575650053448033676924593924811403817056200030584021990689829279333032498492233962258813252029323530202345212252779940283562723106448739949860122888318281938940661014994306572033200385550955561860461295606753071820739075980041651336832163420897292057278080937183926991565014199698537200032318802250674792381657866079374477801005294387421444611340958015751918100231000940102100420006460756497496640282193749757706013976084768395310130545844200617052845524254347120538398245364101508403500445406480022608259284518883879611750710789139295503923438075527518502490005399929689883806251415655570040566645040434419475873263322736337089170815879142560466165745320137044461524084167883073053543949520211013638342328696490701107741102081426534635064285315555533207946880907966913187092731864289206203033711590211979251040690714516646900550853950247341834630047630159857729729640325251866653834011569171218248222164082445448733667483567723570886759990173464836710060311700871586807424022302499923434226508583654700073064118540064301180422265964503171758481607540627564006133703720040180708812313805475154350870708203468484312710922781740509260382209167556623240462593900258354056076226756710730762587397609008295069478567474477154383980945929979631182044003244654619034642261617403424401812096800406806665818150710802762794826074666325500027392721635251709066341570046749109579238614706567929100568418081389611001872909971950668992846629577608305020539341554002567954304699404333695117838852877692388605585346635297712724995606623273511491833847451718780958059746212096687960656133225038307294333491235050191936984490116082331013221985106323270974057304267025159600899492954387881359261300931387215329084583300308988220946964686134737300499940301244041792241712989299654723273699008636531144204024087183503589817462760430707064287374330267229482377081036965287977734209647117764600113307239424900919565876767018004196647726472339010325260195402343438085267608653905040704497961704876475210793765335367541788614007335005617032692400662905289851651198445062763376633783667619123174845106817580362105210661580952040275176097749024098284970689179118069099937828686526483423263020757871493408708535705004094370660774132999023342215995694997338555063045152942690660554400459324249571873882720025727280141710638790335092276042382241574991754728178517561366035421000131888521712914366019404300634239813633151960389859518902343335028844711080393937272997859416829373358258883335828500065424964942921664991728618705127716570017010277731681466355988845945041034392012578304322041448361448833957494548507515267746053424887784742561310943060632622323375013817220458262358816963603888718206693283448665827800039142217242278032955271328394061241376132638804102406703812546039253360251297400315945207524437244624028941978365302708925240961763997440278316408086651335887226057659899219077442194228642143000865269993117684476611448703410441233041021368550661943179328222402188439093376206801258329085317925822768160418955292227359504519893186022964384045612048461676134570327364004261703638130074373089414207846032074484607643527057800869817873078701939573400494039957880616226482162664014689960650452199558309078275877905109780904422050959438476744660198841850493132445854036038728007350807290405503109868687166076428252173994758422609590258400246847593030606046100082345012567280133362790452732042936908214129890753781141364072889286736851888903825814790799249433495373547759529074184830237685967714073023033919421178055076423097273222931223600810069009825901355592408361217989334039715930501516050057939317802640121422726300273545076701945101165042122004685289257360162576174630138967931151081231354070200436885422940119460023059064690681205770181887442776062611375089715974549750718892511195948886048940646703531130278503925256641743873387778720791649222073800222864044889004151691073610121848094342611673171094757273943038330758581332875867799235373393017029581939646400434973975534849007239210467180950647171701209802215751000738235913074687384447866411860218530808613506100904523205103416480670648490198448700580130093100439685325794576026036976488194352537684379868272920949052552260663939409705216223072684874726966590151694891896302546811093632282663838103906561852131684039645904069107117716296301923678927294466698360124727190932215830690500025013917744381240775930980726167000265145245239301100002998723036353113231609054957463710929040474609696065174837925619111323132262740371546425387955333676409755582710490038369370314099360990197927335151014009783064675709388801067100464411961862707085388330631966311830991470834068507993503983756708132393060903839742186840732839713425332216378047354341460327101437893585191339381170573936977757667107808150062748095826568607504926921934678070521983010970051530601901072304720094231262947507145410003465820760703229949172500286726699713456828825247345206436667655716137035460082231275677891890295684495670216976209621516308533285253459082610777701230050547780149180137370811143376018306770408214068206233278007189044391270032305690150770514565614076800252577422356957138435210960905040753400328862405240901977302558006260187056595009405001673066240052609448322013740604701070020452000160530544885731734296366880460243074623551238333605004975301017756332868356735019387071582510554273892785057549967215685042812741198063980333227939013987210970286291347497212529490536767210569975627341600548944444787508885696842583206557370308424103816990006120563860744587023616723639232017500130615472176932097119479803488435371904025930520907826221834548968398816185100871719702918408957134331800232259840227110895735707216790544407442771682356233222464947344394127774002878095941160114210753200712800290667795899146568880003304444476395689520285057922916664425981928267776335625228605603382126967990826930986884518925145163507048310334009967015832695998373709374869914950975779478991685151314766472661715755245662877602354372758238588745907983118410852245858581160681678257194406346865610488803056009828918670540028120071069849373725013855778856782553145336441100660000649871501712303700035224658527711424436106672588152254350382937868212583412584020060601361145843308097944721084615421726152003790566314545939471940220330207571000565538747983035492702090139313606574290063500334699745777603444701020842898032679676421993448128397497753903735103441595707186254800401389051027940034204850480575054610292060814958002997309433006697202063195158626256163307512708371028020454640990974254461273794244240020833529509130837967222416220817496038073489000405945345060339899404322884511743876010748919062870654472384000317930223858387032506015796644210513078993736007526609719675157395079977234391899897221122934814037368580182071445510747415315669786927000232588257975008641318866610177560787437747003306401620624000022475737501342769459252523354092604016690195425478214598626064572299846034816146568702921487084457890254601120661016963976007377960400201062382690947206151013867477422502092526446003064272265059004494499165303028554805186211309224198823623616026009582542702504952310114450780841689261665772250719068900167155007902311969243034844156799713340373806169150139891295780106860928029077758032221339940300903467211333361428115042783174367084072308381749991458032064994494543260203180938513295300484263674701825110382807907409214151763741650026193355153970181210150237283756943432769984931593722755561595219644805981488185828861410537318299731630827057808838452541646787154201140959303109040931308092055644036973891988060621110943388759233902133339238246361019322508625058597800512089103053505327162136530350403491463000830777211563703870691536104466294843130767372334287328137051502857126001873486286606277452879583279499261476940566840607431432323336664424290232157366375747319822366870508641841598959647868244266905100897506498003823580439353866430023202340068584853608068171648715640317080685050157359937031691790894060065102725503843130315219779536881878139176586364343016996076963265943720708044915254145362072765663592892592607210773756993644600240082546579061320891893605821542320198800983280862791604926731429183972951425075271407633838715377948880960129565101142092053985157600359869375532950083594968702178525877606523302514428723761575637315512788394900426098282226645122217303975003228800256001751616720876591566611153269132842158603808500445894577117441916264497355919211740106506222345112055531094394045359675053151057998392023527093343909719020664473243101938467223577766116454207621653885442905042017432110868245672976409600069194602017851885067257785519236903809884071410735771653805025392309922347550902867753806343081555340894804565415012501826549248937567850034803560077016481469481544712301931571852124289378471386896931404074556333077077665198081626933712610546100103900309023190929776688468024017018181019273547970653109337356075773723409535650460856817547532185593148870698762660089007214769698639304111630428218487476113993130270007807033524773482224610463801407469640610874857771513745008463997996441310116120359259433806354041309946646601456558040614451155291922848043992313794052193143360575735047028128697499935934003567053726544722030465812460051461468177881361042687580271311709422086475504220028129563437103353570089901189713817040047864370609945440292860905701019307908441702931920231343097073366605233142847254556068154550747930436396017633967822220870243968709831046603020466775495609623583223684330435568137620711759490080601906032019747608020082510605825452069296715106555200959506160330601218335128897034556641337352805883282010193830062085676330866755556827295051056915912485769979863942152872688646204382186463793004108645298689252806658608557373135508258901290809351590102390028361888536412090563730265846628371484064330351277870696475015038434813418442110232726876828671045019297155797693663829055514444332564534119977502905548730045501403796046941542603100032927864856473040991131587477071520716993530713423216846662304802524372922817517323431678036485309267062715240880197350444883176399136552121721042021708415266861270228738324441201724893042297076964278088470099029293231329409142139483231960148260654285027263013162795945905635168844121912559094858896619530426891696468366731535045510160485325897298902300168913889049981437705094700731367393570401455785805052242466535001998816220509913724045120913371433744616025846511666301346231706652630150375527508969420715036469644015430091260620447507202032630052464634404333174524494029801346155445109275010372198202120777176180850356264328066210950469630916403384341592110866685926769222196230014321840603888903501428641858434919816958362884619753731771254009566622604814181263108152089919312120204459505009415493096553609732828459781007760873131377000468004330758272092762175040640397864932574641103068430600656620570882320848550111885914820093572532440963099464177492004999190023153216866644576978325472309381659358248162184978814569618640336520847108327495272152459079037917578987930611010600132317547661352033430681306071830832244150036231400535037118415329545036022988118833465944961608906314036986716389921612959608986061757660300116550863521156282461869230227990001750530936635120538578307914811139368633591968285324606714144477624078389138045606313085489935067450630833307109500053728424468720794364832542598420309815815520714543900040016643467408856703068040107847337847004533910981072700835971820811927157008941848614258140737610384601565607694682367529101564917275406501680055315213267359200809721518201065216116354358132456475912770257585477961933000493675786616524345951136036680099336661794776828868195574704001190069373481446035624378060202360971349436534574805432022393096738760329834920802634020188860137026859090215680045039788077256044039219403690260527706504538767550871003901087821736618479320602547917944031307422637733009397014482265598328520431202066174460031419941217310293531569650893670925305778496608322871406153439480703874753272690269094882925279166187283937598558850397935655305700738802091000296311707009663725473837004151180608909971104622872545308155543037650433363303747467218806214120048306619453831605911044034086308700498430746122056556459315220815763469906876433782782389674762156092565005818690777126490084735708513711028951394153327274179149718557959045500938928693321649709571951150832583208587633758325188736139538547484772280289585892352201513529067208275013600082604002013050486082010040711084039578976269348915401600051632227015634650133527573255075665187801446444001365437810122080822636662905428470659132553273304501902766199961370030001527757277608810705208278094962859718530307004844080303696020386541614372799204422526904325571580320203390436922045508211632664687905035108449206408127467081976586030910750174742013806204312902871759029001578423369673987329050237216035841705540055719348963100324793211670192317251959605824643981898358314629892002520010419962143196862616289804795728101025730966071847830434256781943124014282478121293301078930031509675273768800407776714985849412426992217561338237389892011402931358378445951141775808686434852701508106465117120475349708420961356596914870803297806991726678205311590646485560465726562670865198855024727855886084338489300714494418395671089378408694251186000782359367138793674245000470806023107636357480434539196699766046415471200680461442067308921068426996706237731597413994274894305751632006604883406641962228402020746391258920122826550500377632380865367185826115575513428384973380386565424145377301160380722852659608645325903084401284197260197376927653705176412097788004164188800043884325704081895227754388663774920879937615378112691419306861350978921615737091054134863028680960792592187476857378241074234327410509499053747871078579275996002233818889248079600661908623051571811011179481370252227032287355280996640207828000691828812599667071320086025180060208270093266520873270050162760955955540312637644313112601849590326103689409219847006396177400187676207122288275137220865487310741243468426228964697093460049139355948903234296759128758515805810400060001043705530937250697690171227063568178252922953794809551931155772003098511018017468076046755924486840173182745919797284121140014385146068589334691176906856592679215907400370766613629638372004549031894308965578671325021079047918774155242346327104657558093765202229080914569074146426457710645333659054643343118272599019418849260148950608348908496927540730096550193478350772895740497137125740351310569079361020064964086205271774276299151852650519990131045073338687087134433749439094543005827240756243735410073372905843862550157697797248493815196842596242324022695373021663340603111306084925919080944745456926092360488200485118844088247385632570534534637116434556186496681231057514563291488940200672212762995595003558611276219285749006896618186128433559620500777750371120852302636043221036208172895367943937554515361768421299045782255016788910016068436466816470077713641600576100798839044692162035996072817306532301710100832902192671117825906030819364929472977772812499742282320028534087341177518860632555220842568334741037081438615590645350096842468108439095077487707923665133018906685086095526093344963382103005431994905952265264235314910652604020117815196699388156672528938724524491000151947835424376166771679217601454490137234980582280944015599664056638067401855749197073185066243253578480261605225389824765826983742656513777202630160900699246413318815205972454900851747803133191559511192630267654028306387053020505050686005985152781958453807919820945260059113018608236733908087030457895279204370646050072138417554840742218480337500638486593166029182679917592653704109947903145126140042760996083147115268630349846833301782431641925308055612535842144005626934305390618228250180066770865955473898495706059785043343683897346504679055277347107753269873260776356269267002241865594915418077948620559501187106390794124164145336466204065092008064102748800026924458377904530860591527020581490416923918103741205558905209016789359349297976593839624474340751105102939881223710302398798123602625124098662674221802159231222438202702259347569782836243182749861245950330804618280257076013614369481194775586891050837475627854192343714107588134327596570151725846228612787481186858793418856118042856403380037737009146318676737064297631675354741492264089608331769988257768710946967655657454482280470120615363130601126550430539454110327095053118152984043060586701800006560480947022250763810276411108782857899172697476240756756904366675701338935951554289069337752292708590333930937063580657333481035376504202267842952728989051768902923050200360535094281317201055400101847069733356081665310252110250352423208963149666446380251637730260318904645400871133586163824187856739403893485371113188581151609201952746016534071355006047276203596035494878304510705135601733295990696251402510006564220190335842603404049556821922571200959536000900873461087670400960520009808071077107418267753938055072489392754777473281978876391268569283770606274177240932037318330662408159051148002427571444358205890722730244322765134068069821212243081225054674047442011734289339666515208009714824063083264480329735115476438780984613219494302298064913103040115904494322119934178178888118457180102537349667955145717096228058832115581137557995107065792712184301377106564324097459165352867375806551934522304221275433669428032741821192006903668859060446938173028273761015669826252591030455155114416444049090756318750326910942711973190167700102905757466615460985030034340923183355859865775022835062709097330303470060064020663670675673053512961331170634022261665916058170131742458071718857700765461081507240976850770957063240654622673046646578471216187922257458591740565096022188038903501253970800138115003741522965521669889685054837637231929153776348447291706226520618710012051627418316405044064226928020905114852081342461412091057686134306933433039038805507877046958781509897090411137504709855387349641451018838758226664068773836939107547063878258869536962200442078542875037727305976732634113973021570007430856959282030521361903527920223798790075799000224538090454331036287100497960726536077270929590490131076527183720098303169938194124322300861607483603295941005038943400020227276553996927037345520099835799080019298281804091961382101648775730736601978541095691994578602567070202693220337657510138485149550444447851685586617003595636521761775333583785896277965033422930237806443237865682085760046053840608790433835363254685300223878334889119458611817330276280683116588421189543755021855156145533502691642020825413720629386836127205065486914280839011962307254482308343991994136735257050913826558774491825004254015462381575057682147558388297718333251591580678464689626811797280412546632500214804371600914326259805790892120789493313709872647992563651967964709033740064403814341595841475136410944229479163778019234039594306845573924507311300303802379245232703108121425955731445084556453616429920153499175702234169749297516327093008370337030468289233929061876510028202405413317004963538607825905811333038420743852695115740716308250042020920528468714403722767939039052693512778261117073269673251914068304789596905302903353780120854599723154532094003757023063491660421447276914260647084838654250271315570830613225167947936329972190819674140250297139458695084696002022709290346607199983367083508808081056852801013423157146930744006845778409795054857296911275968360320828612282076633034949712284467038387501272056090382429098187095331880306928304076400031509943611186791720462847632706173911078079945204970660504677134764631104818004667100647555790984017803975971287787851114874125055117889506052014659342360014458440133070691962960914113677768431376775979865210017680871812860832735313654045495316468166243049914588093166054699252667817736308798943201224706046411083866536669819610774528125381781972003338262602508126326903494809149617775725017386310492219820065941141991404438091477677456382874307805626840510354458619126957210732270525454698445903160263512284280529501630681980347930405403016001665404665166046375200671054922924401019306027504364604230463800388834530980060339066681215072379222959248281814749469220918567709210603094740423560324935804927352642704365070958437071000253971610443890201269419202575083705299793847142741006327586521200696094194069857704253846122754756477384866575586999101449071301817229036076323360606640098095600370002525073254512331896169771100096276884954638086703282848398520036469457873000379052408611623480190593846659395544687141225872007249086395261705202276610324341453000263063006912218707578613230809079200332580469053201820562016390846020539818156228155812557740031334005278607245118715935704349119363920718279470252027161779281546511516073704270518843610554315745440022802611227364188209133232996566150678742438475672609046458314413422851010642531862244303549140801963290533290111728912190444184140122319234098019082843242706219020486036403372362461423834482177608735954316347884832529005533048234232419907671517691927835746912599817370921897284281059285823110751617027393552849737388540206192571306766047853302070244133544584134053116050276684581051506133711305024197572140457038435908410203829504972254783043310310325197777130382085637102859071014816820126058501075204127386384184507983035772070003027142427309675955066480375866747321038754250056046420444900177009976124908047120888806734140228157380079708797395779108292465851903032028449639558687404037310909084776859428010185067647068859954688450308314057561364647624054029946030833370785082733934037228112348842577056397878296455064230946361271630949850894071564732563328339196410151823667384160086779714630229086415389694077146240502722409965231450006309475800280377210748005701338905381703733903413904046695699463039473083715645879661259423575732533496495334180855061587182906488733969499664458109538522993940700424504010130673989519198528052998802134004081383858101668421720223908090822669719607901756912449400159072397207384337606406733712641207758273216488649561993870073954000803432540199037487631797005602028758144323436680303804705311915724194777294257713191840797013391444272620979408793091082078242399555341973958791017618980100084940483516687020778341387080652178536410094790208077352243878896338316484962049260492918948371867365875499570987576248966524556965318839196660030450660709190880560512415042711793798585620146842841909793908359094238350225666357436437083580284363141442416898923587294850371503082650903019192100354157667118822602803959258800627550074101216645835676345906690946074030760034146841720099602384993741059952039338648130975002778337580584854005863020347502620000105113401526602960222343635898336011065728050203286310607694865210752158918771341785011082395473293306914328013368830316591568181708041170449592220843399846522565199945517791371412360059702959476688561103424323215641800348695073224417716383301732707609346902650806867103871567016506251221672338342136950513225933946300186716253190606462240001181235047272763125564814654077724500526574816343932600329501031509818090140859203386230614206040460316308254766926438488243335170403152770190081409894058679070791765704652052199900531932033049813323617240018037172532023033824772318962341862875324676051179726908543887242670038218882424124844968303677343326969806475305345305544996292820595637164882821220135391662109049066543734816933051920752157963604824957015056204104082191446802671655302287536745852934583619071715155720908987484391625174650976701213686616308262949703705649668610457767775907095714829782325518920574035081754697266468437744846484338097826205093241002201235926030078629061929406188386320777085267424000010925727446893450387898381300941918218447708043195054818761606740080740308280689724150477911325030930964674906040264112838094963052173356361766685669935743734908855054090237337707112110059070844449111112243696110712491615494090364351794255459676898204759317841364861085802715456801411273194272871610051386355763533898015558553591628081729465682944231566374077604388266052093540419459002594442225107640793456895601895310647132156481146043963231038077070960088483444378154450159783439880280493478372358139175562391912616076724862856110334989209784470679460182659978839831123163460486893956217507751439478312172403087430440555977609394567704661304637950302537229454205802212090939739702364045133545975161476183011600152093223166145827796647290781442637898084034063542856308008477008230304819644555016580904625608341876327372401267548090811625127486050006979569091964971512984024008715892853101170471729567969741574280119405602050451921462907158522820363584300532656035813088871835454186679132668446460220285033835475160310957837803075374263520508274719560691525005726338665000001196852484253752603429310027716845733054602207965800274172774040633207458904657275994463149555732051833294683697201510394507611037682102230675099484502666841843979089122324659771625585931950024635722820340682130816253379732341372571637170870593386155542259129328672737972510291912665739505129611063046207835757405500278548380032003956624006249037072867598659569072147160767909189800711079297303291209670543118702301486647314027529386763688523070410556594235870503672120838296760465709705387089482131969812663087235825426864968031121093744039470417204335721423257977326867917609395548329147941465620070510034087694307102301221168939428348995420449093023097745864695053073791552867288051057009079437158733280086637190971234669915505900053402902618906999702525305864021958624709526690007658903280844961830094091424670109757180767811299079909900639138305893433589362184191023190204992129992439735956868027155211751261044046462519060105043452240062040565997336052773876418537264671881258682451009493010791735880620570767928986464446030071673049764312503520563965574507910661578685760309622436595058874133532332270895377025942614391875960210427304107326979810955564740074600231870687078350126214779860427654362225742495269812367553169800809370163626333703510442914940784980142016639305812432004927503737634403169493766282656969646670752001015974828760135240095203957353900001619070260310437171628188309620550048884809654131029524609477658475643085989120377741833404649381020601383417561901749007261733472995796985221900685824405233261704223664965304769108642353992197139368828142396315766724936042969115701019772813149096945005896104745391683344044561599317570493981702575878607341040801509293822183361435980247442542703280104047897276282785587197225849532660835028980994374330358752220559547600902843906380968601620120446784335200792118109627374289357728750044211608130966730745308699138746176890781187810230365504429744312001170661870143790649588396702449467720633653156735384012700333917086417549795349210003500187051490874990313051143011150895092343280341218790321950680490665188702891033904277297760974303872380788539659626570828801830747097965965030022676378475592438616000796091860086120101707328704770432199580997828043311567065968380066600485360875676164405277470763314354698701408350162214105381461769178163522741342252074072896158079590015134208003109096527579599059222369803585780610425808107455969495094398663672432050420880560039695533185553937853034720642218629180373176354774077686761500519590737365886955192517908203399702514776302604914054024265480792293779124617945847427278422549970296540917764122032755565010316491111931000737867756649700470591493402702434473260572076501945231680520780390805723139627791062559293716364885440521080207246330082724230045296510441884506279318282952231405371988963941716022851468533485903102844321808035038173766342763179133505020080302737087805606044076044740879003204383636550837380657636139467200709109503858855914417426800100175129092062623126386126248356580629928461323465495306187030750249271146108859169317427423351417972002308947286020944171540522217562773647078344195665174842997642349150301527697959581724550970913443994370679714266412676223912144676408135168574045722336451343045948040795307558728671980400097062353964029652277731453985038072870871522068923017883697806416019872558657632063002210313066613532605365190702166615623807352480465583284154863644336682641658956510659523658766580492963518462560603981447410557337828715939813597745542000763339171368917828233668167898587306253304283078060638626315004227293042276463555666444090128984602504916243107694419899461835712278601067885619429512216040027587563188090479580878178879610102387736474780261598050209099002686279434743165246921950584974644249048199373198010076011501400358164070322381484370002159827130881732301552643968379430269008013417664618952403712381176306052174272229078733692243208709850397601687895913805039389090450069214951333227207582923059403204150236935445038354418482271299803730623738598890031582137614914015443176078462353376773356100058430280227870240899302040011748790070923333776090961730137039200953899710644291096902940337826146693697445306330227040672960324136654541876634755426108030029279740725851360886134557062811512164564928024725775112250932090064727276081008597277226321314370194616572355361249638940714654785004231540162158025947937225596716359440960412912900306850232150561023564140000038319839851204037613805151507930643032604084633044047363381783948441141024372086019462826960531658970391490184064408140631322604841626349861000861546581542400001068191114625300340871159494350521770220839567289188595418398248912131819366143019567952770455599840507780803105957406174377279402382953531609460103760042213755892051363284215283023531373278383695910031426012554389604336751711133109340473230235641521123433527883406206505540042232425373327620500576758046291368639056940291013140637812426506812431569450670151187417377157039969430343574127389007280120720822606099790192807480517542082939494397384325521540127551056041187711766383800576111209900835308718305835899602793560556958609046158820397070671214045119880546723037429434532206660164034948860543610953088009102142591303913063563077306510853345710251623638779032740058870414412086988366651816646832178525334336080826252633727473801698758577207259024601589760980257610653500372280512390997544390261164635976982085341950007913048080043799719006987109127043420049527222502497090996547331793523836033270912333582062017564348840085576807198313849288507454131494258712621071982617976262575781462580022326445505387724627873849538796028156124739816077030067211832710865004302982074124707357083708145087262206847436586148147480727184863997387112151731120455007318641604849535966962484228311235284878240050917004394514423958070226624186489882257618994314110382101629067900154915157211153299699829784727664314230568682170375399336965065000198411917616589056339318164636010115794121966884980337209551115483155864860361466558800980700990082263290123971093915966718919976003629050622446322487766691915116770026121660851268789589662318790180740609376867499974128202009457440116570400539162351368057458274830616640968894750344781830157134110118347401924393024702665380224873876888249953648288471284737886342935707005194770812963244061009650427740008735798379223473009369309429396089931304047028202463891625802761137012631568030236572665569151515854127363338335627368587668375020773207721789599904774040654991161302658322124607241518533264484180035056922750750253357703948638634404062700881169714410749451897143540235490397441902660693631821477489215882623410522244733670667574223876802495921934955035404288320267939552684875734171204499336136446771001601761004421788985850178403555420677367246368225285245109994443270557278006606001406186020035924355250800021109403859333926550555345931331315016250397151151909088888227702169430123930590419606434394817240175709632496008228297043135420197587202296474870653112497915123428701258257128561120974264674205429354064408576769800003177797664595351061872921853506535657163899253470628530190396168284002346097425415827720493713003981827255360072620086197068750864851030488005070084113558060941867469772280466015067703947024321759510576149179290162845020210537957556462412629711631232323029740029851608048605140309962460754610483095321368400073765617063147232903730020353761545307015115005455431383702246221793216832984670636200037288816789319013990264178721345759606985861942059025988554435282339140208714819053833047235171603456423782696710436799432277857733909796844280153606139330196631427622971488033585005273627899731355798505726997270707542330912870034406591009810556989260002163913703243237641952825410759081046500478314037470159135943266973408432404710111402000135804186100911636445553002523457606906980129158105659503348053836499944200479948504743420564112651895915804714020368959037048086926619424682995001286875497967815890299069639756138532106916514742447808407723529891818210602476777056903731541936826937736893148685675173805600775788700465379529529637053402851630869525618123300618809904621628241217500819406626965490417313786133295063173152608803880588180145203326880122257586878089330265485350739512245032003637733837263329585043255692979940027333874339013020842150538213491483581221470184874079832896458045402881276015709357810398820265611050099829058281413990340358195561113084018707773755502078217638071810931537303945430727739339358556509221057941731325861624329646574006452045061275580777644426500132641129045106349400080906088160533178228270778701166543300049120010019622761730331366682200075016704200308134973091199879495452211602560601274482010019510020398470928523093068313085222996104427683615422895721799123926490969585161567084033667080598164307503152435155121605894495180227047822511675116385661376683588345245201585385163699678152030509066718527555876989308425453961326506020285090450187030658330480750526008002293330007026865356669877133376538742769682907792762905943512360540131673778128981136687063528535785712048427827492033080178200808343018037703016306030855283823629732088904189872909683296020824696640369200077184713915812422917355102102546077640829888507051180373428496353164338245708794345173948472119769856122415291526803046291604446280789447036505023861652080400164436568744058352242654614685469883278761180719856349804230923756340495898702568513248278405986628749193738291549572366520067513153915178307643726295228073581060609625640457041366697576250006195749990546370966932802326023373290471642347255075469551356634900724152064560358301387067807175804754756734035009068290682536861720263215661753493671323355567699963330235520524310146244060488026406054746337260321483203606230076646627089703872471548724512196424254821630103878350720204640123684956252457917452010223871115321020604986642336091666221461723149695624694885953073735316446002120855539463114431660147322352101451715372483665688903853155413881700594616135924056266107469043422596701596531394435382805040742250822057449896161444505809503099617580028709106931302412518763729900700484203175527060682107609027106080712495236560260576525546980681329039419567030698821581697532107304302485520759801080801778927000527248587763192697969189189072035398712418373289742742590149975903384373739005927911624111597704110528295015557154286880536976340798715466590449702053436908052632517517493033763373436621576317141816318658259732419099697176289086977216211322299665739673081149419675434571803238551215110668435009256664694756424230171589902955100073661439064295200175248728410520860840580444607067655374531142367939713268065808900301426272187433419159440051214995782486058891396826784856619537944069075830987000714006658751132923500387007943129700393840741892050737577162798457224287323939757724756358659027450094515971952858776823384486280440050638424532871811110291676063325275400407760740827091805390082036400005812663155490336819840043015885231232503367295379628901514860525511367610177799510501150606602772906001072188074817535460180534714054459021133049060532402066012468905426410527507091801936957806118820087372983438797355021662720781361656407083078568057788062320486100009995502975656559488113480737623555110108907968319121400371628800320695601104555399435527972899362760110701901874172606549322406615614641830703521527017654680620400090410703376995257756044895598946682412441581918847101448700237607397640028087294751335201589075511153621007133760888508366750085294016326188397752257856139736088326526723864981875388481173300440760926993141305941200007716905913184820426414510126266645554093016912049572432603270410549989762686762878086008954891431830603758076293626930470960002616275175212841750932055723556307827003217908380542265081311414156301863454339236614398841271851023558845636744474720522430783611775107095809264903717351135659389403690858060049086106825102035004608205143609118256263514402612291971190695209194443188520853944569686208410097668157730730105445490893554085548432935631128324347911293114078049585880718328778992118073519677164659749402626849037864014712162469160517197711157598404057509102043544743152656244532008484713059681618084408749196022440548869187934570603873303169836552213362622845519684714415045070201055636055309565130958867715482673508167320775141236348242518590772393107171170456843990756236292154877298651936438253662765253539716822164317754998449314338204298331433362665967643859453014316020061943030139390992703766643173391673834707439070119623965169307168957965403353207314385291192010168452829317941780092971283586573393408043438058964530131742959762284046345737369321670527390633485641159849055049608956373473659178773955016095130303869105571593526595654155787784096822816525381644233740741858799882055067058650974135084980003255637401770070553218390943932643452387041913900174013956940636910801408449067359842269077086453160695088185978882326429799612200879099127322309220002744071077872238402901839452312456086197430888286534350028505528459358863010890177090062259685250149893697856671835625892168318400003685508903340730066320870834080353606499070875360481031145919844500767109867083474190520443616713373365181220017367705267524480010762173381340798065034267178090674953297087024177441306503852311213280789292489208008966729001884789638454241295571470359683506010951629897405046605827069204640701523429645306566050683290803071708093581195705968449499479474855238508543822250816501808631454860032668200471564059794720600043857001310836720341270076724384627535072338100609302151488660101822422854258138479518447192650405594046176063329036375825801294655856423494560227621236599779776372458600327331678645813024926070244491853163858742284681980182664459562224685026388097471037812697332518309064894087034037560644064470587532670143732844436063776488081067212274306695625551778301202828337542095469731924528306300009079966444239594158663863049987820045049817408713275130851763712455074481650150326078079204604001552682828235662174744118746306102680458513457991069020058307184615250310973287401725215682505406053681097363836763190170984980831729583207377978165509523520835222080702936137009284831625683954140659175111600429718105907905860984805870730775651908067218395408180914832839295727815170080685760924962336079744901031294934622619561315190757853908738885186503464152511008594545348176426870555728206297342969049728871001410793713034514117048015190542193003647934811801515374280367875014722951908952907589495532300525866370400134941432212739951440972698672794520706403292310024062293130966276903586142046961694211216745602404175531441583906065719092927335468241211645327812086806039383466211029194013494997684483341144116057210678643364028070005254240630426638612507440032906610701351199549728160654083108405980028706369242668095186383626007553650874538776704411182770947960092189205062589989556081117704060098586502306000586096212717920830620736955499484738852885733183152613217410852709877153344051934951076497826373759367122376421878180280504513335630407632055618055957091021140867668331565722069390713701597018710509707036695577306337980300669975706300506394185962592334804731996124930431653539823592230540503444361741364000151950664085419189917725367146010958969671000897441811423125361243762442087222363389283704902040194168021463616698691514886796965168426226395220255581645441132140890539014044698141160896661267841671065032070116767150581645365488235537136296202638947624828738135126730995598038241148007675532475850001241026888290164530499006017661300304045586882478262983602921587472517542179260834775252793052338525073432229618660052975412835651342062709991204004492659069019342541048002238622724204587497970063402909638261202244860761566960003025518533441181547223091356508334793972169193717213854675087661817603087683501973878397530772757309602585199191072985194504540842606705396794727883305229904700617861489814326444051132651925016234009082433525803650705309655780295225206518824722837519404450101447156870740030381703866475530713993947917135619431251087617498000342500328197072153642820715003328507891274986891506902645801141250065700267890650274655276502480262178375718995602236012459991844879249403700780377669400441363324049405136470607817465662115577671626804505006362712344504900467789970018123262030411637572264278664248605500026152478882718508025597941840469741706807240923340106081039355103204071767630266175740373080285142213086360264496006890604405220378268660007314676224371548310918710754211946069204411339957954874975640358971495704982812161851860208073170198375933533870962789877250495113943755242359891947441172949626981855296677240280776663000173481182441846803681525261713813489761876200650305492678594538472432000109325047357866910245271065970376200842187028876774270744182654344299722595092428840177424848728339849612020096583233556136438051740446904521501851102608162043375640431733075113877308703020546956656179075704298005366417486158964404037332272970978220740500484032155778605412212312119103965359654532419958904823972435944670199309823407234871535008270753416092061094251137780878110583972438579061125302597600673393549452125299877500742844711369657415620136027240612063140643003892922104625755916636427457310240462807779361483869187100972890066941699355965564610501545230808160754144593643724051829735655511493009883365139050981578945617038457167875361901703556536546000436642942882823137363268366950489726213318476296523926257959631603073390275600694065932547044178474413870945313110801928172102664146094685819275079420450471055695721560578446684318527644129082158216260962544050226482796745535234091109423704442662472071523329640712706154164882606284387176317253032041146232221588214672117051635946318434240793820190676407260283103308360917870786822127382021493281055593734077584330548350068005813290570808847682095900703726930058608832246200140245088968986240504142610503335939508759476851326951806323931707125347141991365127544336202004199623692680373893532011344533312699596206357684002856823024447501071451003253457689554052187414050290868457919368515083676067311444674789834342809919070420375264193470019305210318370481852700083174088401112555390637245224132006722858313880070782226336704249655284396716448309431709401236169830260411711123656249479347729950607028659605322653291807604236617455971464165723309447153626123005391557033312456026143730200042633192417845932660194815605469368565436351014540316098609440820536306528526109802243510524491264400063565743704147862177562143684600518982686047182269011176308275830774613193904305360317914530270648342140402708674957854700654348387679633141048570618330004724046883003154768438111130602522770407559139471439214623828971521115264629641709900068154598796113457816275160818268801208287520670488098573072706610162660678604996209261833212803327649238952173495451828956471918170737510291823980092023939100706505470128623584595416412398452893536516105312095272582805401547072697601540765594143727342510781901503993288046831900548823346457396836009560410005311542067685404189257119838841780206303835863170811985843401598197526357109932013461582345130946400350760081904704597425048546727415909237490086383179880289469900960422492566535300640484080663102981358025572158470204613326022523582118205192564672440136319005633958971307507520382938081932342136769847224309003027751406103968049050376050129819630865912404182384624040405057867239549870524133240596386166061254701478038769461432517758952086210421898780169654960461166401929186671313576748729255709345305004181121514483182609836226220031117152400605258896425920439938330655464028976228483789118455587894994943208810233064087869860324681105584012782434869056001970704820099161709547874619877025826805702276889386922125928512715420907066817024249791445984754601300201292570864202870768340779030608528004116737349441501094891180072099796387106902986141129961315977517752317222011720359111997900202412042750580329028755106232756860999862254362370046620864982844989813500234707082351003144146810623960124950590888743079432603740202017333344602008393952035651941706643794304312421272951524824003868227587423573495325060992899152032786717933564144379200623831750366718933255488042187007013310784959833594220745451451520834048098192688553682370072420553842035244265690027072933471179004815117533541576200615234263901657380993791100686802109739525892137165140013432081489424195479829736186431090062688571941384208950238743293235591560201755058359302758512709017328384729201740432603200048547900789615273074787000094828659050882019344298838920095686067572052239497749491531815832010984295282290371338077858974806529021503893600695320118451559805360786173107500500116480890112307731054272480440724571659969390030677735220717579532064006366160433619384403129875137695575003076600917701806239949076016201507868761719258060258366405066363399296694508349344824023744527919150687062227660967431777609243462749607234916163810155454877290284279405240666160446306055772865891086038283161115706531583935340804781320559371234499241264076077108620492170588110109821871822600822088694021883820145133468474470603864588277470932774069057279082934086828672502752047026415665084021471694200808114907002892391664809763397330517427941084254221423944220906503950436931050607241583009941782755805986251656479614692921968417115925623282124823158310994370682848776506971252113532629990280491833067493229479020691623235827409102872305941212328750906139766626288644132200669267059708256157999874211826412303735630499885765768913497363850462129344893695187897190577005278548253287792190406577078428786021643250382369416417536023059924510724173998358030855534669214901552015445162084578781471917334002961270164810448714320956653429009100919736231450520607633578630624611498930441242845880471077028207765315320015706248271500633298613169726702289169344361420888302735383150099742881834889285020235831880536733256656200989502229126470065663108832212290602212309199633522009600032042153819063533110711171227129488030507254995048844451987342013922515603817069673768310170196597088256786965845948331461648035506616251833483354081338367211816001220042649067232675907121955214465478621891825703932270594926994270352043809310902274800724644887169672374193063248328596301387064005675452920900026280537300442199555560876472271106062034046406694502037988411205689125204351337560240724125136230226840657670909725853150261516702436551208513380237236638304108792683445449995351630822806151062443820267184958980092700083161776008800113905946204717701753883085251005166520483870690626269154195705912307745666817425821037023202817558880930098800097104250270139376766011579652887135535934536049805080392610630283665818541943155826708968176530728729127563803193556209134551287055880364461440504361303429850204738448313677474708105632038266056403642353696699934966854806028400562425339561920570841738246152145499862793288818456649445929776737527770100999210350013646389311028111749970539163531524400992034220030989552605387223196619365414243229975859184134316527936725429118925049850306469746233771979248226262582810424954152010080156209197925209386825706850475010544640453230098405002058970099852239004310316913294234372928278290793353352851114423901006910551059748704190626564747000249441891090311349373529268320161950551407796409040475225922507091931852412244081900340779274141151553398603812940574470077814639861886332411866111740213404017161364232245720251474659150190592811695479261099409548315351813202786333332969006540789803075571799138339409855833071855720914377093097303112290884710733292902884074025291032852193156826223682340319344343671581821025701529388217601644501063809307977076955835749613502058583095640730739034738661689046338004067062650224849107731369329705886463207614042143618381681625734126937352248222078426222167880987492056961207244605114905611332013843925091228022847784940398809900726904788269610791865359841439464894770969923515666040404100021758108326519007475133156000662004520250920291689671899611554663880229913115326075192661443911509103552680432045404274036086693728902035684931101157872104042336110280427350031781989808052009612842344653058193241426750099608802081003301168083718573125193326290637898718054259666714827394031224692107335021351995326812238793006962433260825666092599797588164656566883544404010350934205704318706302988988256844909135715327108176687583247926691115604429486053761077383077778603480710874957400141731813198007223850113871388396149392247373409211550437445350606168170948950000245366794033072963147403499023165618073097258308190817598901049752658590864030285020467019828057040980811609401210503443374111514525774249349490622975201498596030284853901336599105672264788926512039751040656738812232761087415339582784417006063680427677500710596178984984571924899284536458999606615755869003221909096001651705052468500170335157408975807797258386572798392904394633278936697198404073760877028887070425067711153209755729139920023142688371680836818041437303904803083043007993742586272195885660063871903742632879183792657132263640740182284903542622700495882446081956174899609247369905335975748275806980303488975408543188828945800281150103288908444665386695300756670415441110389514999227306640517058531929148508764031806698917330453609040208151807303147772330686680487050941086399688637596060789883201245958622690365027731712009320827574910860814493904130817286889127007478134253077396815077098271154792432288202237250189182552381242351952755949640802835196964682770185574519417544075560370284219780090303434970662901448589132191496288240506196004205372762188389277364419443545888300805174699513371515302001281498428659217604345360252372069328900919035474374001365125681042076699704184384192827465500315222685991508507770784325458262398609385523570190925775049604786177214093711937790045624500250070643390902067092857785889974667407720620304522101060290339808770352622223768593827026321200734987684570134279645555780704620017355855291572822780016512947121045315153538509210518219536869080240636809148745429518071907897275110135537061708487375399911832611113821698676048908212497722943075328919276558448635027096353248013873396111029585046352209451502722190742952328094260291839647431179932128425950683423700093503077909304124025695916291028847808370303736954454100737185020538311790652404894422521336024358716326001801442901301663737114029973284867612683450895167611710309337915969090991311478858401727091835558312737287066337460898664813180006167151312547809711050901664396250673586307053032290247038135928935074374492105936548096060089095587103987331846873645774394959099505932086595507479632474069864719070172340920391710459913885452543046758269041197981130678643186463518053310086695687907301160370733203384067002856427170480506132503860050672366625208560773752791210804898206526109025538176000327864639654060804153694016195251837112710264293132215290064923285303471025506599665502726142202493509229600761077416410280848419250904710517979720663925947636709228050095474750170611215294339412135017342833479245499174276416609931189497085490292253502600193186765292373018093781376246351315382618895568956060527944278419455567002394700591074009569520748032277717623277940668022097603983820617367310601546027054782219603173954486723921101202823603547234089101375443195854616934041037137381872826043412924844030658531510150050680898699647063362310418505953701523351032098426301220300095009607510154240993693170178162042082651105408499407051265866723483150671044890833667578753324348205575880822133912737139723353500198509049636533492073621177401254527130259025002217192531202992273384135167124294066621229460385365883452770167162040278720238689280195900304408381820008307095290758803692884464995002305325581909948038836483352956225318409889901018729824478300035177852640918897567439263950464295749878930825574200275648767219063715920527704126665270688913675028412274734930458621150950830411700645025402004303022881563819825241040446986925448991414620094412800338807549838194907856227219018013207822724039290330167370438729953716393603009412814197169233513141035039898492197186242043271786009120228908008741317127226897308553163843540254871209287345662059567614710994975966680044530067125301910148280441600985346406652802133148078961046080016529839629716720226678119160280609370252153137008175312436186435391378158456410504957571890257507160865531210068021005762490020569157118000125729700073047069852425370591049548985045733826158250460813709220592088325180484086806346944624880060826251133441748234336903710446461860426071393723360650782720324230095076300112381535980265989355957870517142029115506880997385489346808391929146006340475000252237472634563269011766324003600606050728671669313048513409122160191640124331368565727708235197109038756285900475462631437768981755917137969190089696420360010368509339208855785425026918794881859691150004833162214339746729945617833640675896116833836370661871476576918894322530089409637298630380763984108213510057709933914614844868255387247055931272579911836825305502156905343464373930020739440205467110396256624347561025045198552560400063973585165010695783340550300609912052760060463670246661743125270595562395515017512170790897070206385427074425049649827517132738973010123850761849246729979394396349191403786708276292364206560659668897499137071910174739583320580431209472956900179489067346287668021032729395844776964398715983337120624531147388384553807548489078657314323046048219677692042637435527355642501022744743465515261800407736197659849946138580984290412569678668622670440423983090074746161965983602573189248044043654235340479042896730294755286710784090787033096127573786523111515049962300774406686559508596841359102099750080980130180343217731993398790054480102053862065975695086705574001693206065045073871234700088872909900003477702703427212050644795200449462408604352827301130759064297221856772483392081252568130596308883035190136482896528640862800541512799884108505305914146364249742771082467666056822203667040710317676110295248758828027217280191965618880963575218983474757403575191530135104460085439806652986554513926402810381201654069591827716157019699349208065962193101257231131227612781999199263065992005842110406312627923922406050699942056161881298719959585614162047459481282582275731465906060377680364390381601221714600339779056039002347722354184722571546461140818020020281877087187410414063974102253501278001451694524306132085777235303200820364099186591475666001600000438736290488295950920799609644006824614072199417570058631582431785780951600677701269560437719046347620314243415666800236910285709446610210981561625035507052394656354242318407086882092081762184779312454131924340751635792445469965062505193836903148125620165704783621023765392753317022239567584923586204264136271338621409725565215450029565288359014075099007447963954787467036361270146846692334758194047824831766304525979388009993083288731130727140024468045950353659455722398919989204818081963305099178822864719984535656471370274043931182265074814632374804963021177685059237943799191221406312587752349106042340924178001218063133899125869294880119709286827988403252211200472351859315606334192744356315808522440878675188462174538175705426759928666805804015421228062018851437010509503034321893960930655642943105749152402298314646931532678509782594802221912226769023192386506207451760614205909240653837044797446360832913906396000716073088044825177770013979293484888502061771233616914393741152305311080252795125371046506407329693596280081727396818746836829522797503863430309969787001952027011051200152227225047203008776040422076687051916624005415982074249070829480140301613043407355836041733475101007359475709976077576201586957929866048921145642704950034134386317374332568928194733749476295147112401206260507501089623010910492497194926998791255138609073067058094826363598102668819362111644141183266812800170390288080889701705088371050702101505630497094379194155973866780646993307146034569564426602306722006532151943611700437044245749091141575540304221941018415960955979765433140789840541014707652943677309970270923422727146101232296526525625219948531214064551803789484125862040006458173624073579854686160618411126892434579616239262220003212222243621803294605743838115134007559563514151046164276355728790076738804309932452519891204006654521992226480647451072443596605082909989848775789073639447738565110066898915488860561027767106511206329133233727992457500593752442344245651589217342322420359319058182748090590895400905004490432797147829737025458310785388090019026121675678017094501314037279605345575758409140889060634692816376030785526514550166019610729830703740043003460280969050432830199671961570000958388473121186993915791452389020890405480097365466098697190134460584803025541053763136049559135752000409523902431548808733126466362347897398129361507110523877342898404166013007494238559551709522398690874940711837501862893679873810110446385035130380847477951507680754851480687404162431319585411275919301105280989706046615686195700329037155175204541934424900329098440096867993925500085488603202518923418127627527243883402524118261064940970801373830235322400657617060221430511178425500353019386632236225335338830611860104158474682705940955326909433751894163480747756561970924976443095764280884064882100928351925743389942195729747522338517208454371180464043004980419335826287797915108178681150810804277092913228926727639346050579312231295642967093688470438525004269252108011889977698394728726619733052810658147607480303438414324028560340744888137232177726930435534770510105215628521420554115330254526742347497318630885996160245109580138248644175895220198508384627201797066981220088015284193576607102091695010267403868691267826107744283460228857430088711378810770950848993366871062854372798061503873813372070935704440108173855266580130339312013046037139462722847563522496376297102245420626098230395060617417325513755984851248872654824944976494200501535184689045378600825720537393035734503773408132966298096665436758842959969605461604276882997223566115520681654903103603807537998595822464426240076238538334655527482000823219762254650778352058231222100038156118531538903355840684798294831334279145042103284895433286780147796375290705955039567149373980250416886242453238255700622002932734948263355024876005812806779406214860726048308430400642642242268039591972468434663682016398698185613250082405424776702843009033540589000540067610600305215298713382978993379038101007851454880374571770054556247820809824679617161833070813305366553742318876993479537558952985559137927721246553506974557805905602112787369516007386470330633390493550571368392496902375337610808407058117141241090970436037668743360098736529129360116366405931962034054534099404732091054899620480859241844546437639103443891399359826996339467413500303174919966200642159719636729060377916263002122192571641201613467801942406182770842112590180338002391033963535780695867150255120119546309154027702625966741985707140168796242245204458641512577807517819981348049803167843424630160811220346907155047106022020067001677326700708203967294426907913330212017194083490653509040116218835363016940035800986150553669722453854375023426776953681170349006618047045744057293892343665935521016561482113843944753487908041606458215851036295670932665817285558803318038831911086140955744099722208214623418183763712258376114576404560344782023509454134430533356372622154170724041125547516327451680106215645240487260558286753307521789403260328086991682040609011713233358232814829113649317204279467854216148182254710826122030209761120359314702285238162431471330677344182300619739454165124792872410043954247002512778415123681610413878349998795146680178805701323619917107595508612287209749538402550321315138570605129061942841633084267142482591352509275013674874991004086265777861229102859255665630425666342235038128730696314421953766004075588320485836707867254507965463846863900747953435000845785723270078508806759451926475281815572516400499808357346074100537549079116572737965026835856594616513513142958964980300800709127413905963376162782791745825090992588223427824616329028045224630344070332884589372220204370431806995331060006968408901473120352837421157060790856398680140002926390787649291175010567228919383105227680249416959045802457585518071694478828273153015609938907718489102198077276244232720775878539328854980840096290088796202360141005803551324881884243390593015134907104850300692638796769322027218085080151821139315250340012151594311597559131371898982905588479480045674808560066700897786116194017891111872130939619916484013859465546030363295608086456629203095098718806638830057989531451566140609015025037172308863483754109410891333227734943038356228505116635753013381190520422808696379466082898339261350994311642206890308741365612263348400705900062104492579020420121925844066333031012528249721130890797678309934295054168790420330352492069103682004288064928502770998737956772620506481484447433020504441740124472335621252054592038935099650046170695281608361483948661994106302346990880329100508846386943305338073208881889559382653638027624682108446305528437703334229391412710297998850973315790419808095602224604965213856703655923700022194647146020227700983247809190010349907882094204663904273201481860619610791845156630657009440366775645733305975098383731650031609468097039375077409519445157453100605499000153092905847212092771898672070293223645400309333684216559992389927587570003602639818410626875530886352091251286553438637637936369704488002962378855087766891349247182448708079990640702790314232568725686582469856279305152756197896603307010266229349279644727432620114800707569732455406578241511270045456407790156539233900515959921103386095758900246628427783364962660490910407844952948153184344678236939933979584796460106304118502346139064703952558840320391005741436512490023463027703749424867784110824465359980110410121330600430087304770821692175948385074803996066401951242718842372232198601558173001449800882112741615205919754704608078118931527440065623890980835811654100223142125240266723400866018048440404017541100867298072163244573886882100665162276287171755254283541636066656987074400564303678615821610543299459209979591000799916087422424779992609264233908592908891539064376357078701891949976200883073891096823282644102218099713337814345949887107196165520826819436415394591036180503722669905302439637701607084516894350722994746407557363604348980052123425662608582420200344562611024607574967905781113108275543925775188250007563891655855920809846809133971445445904280400577134330657309468065437000000305443078333724560150187900622179670781279291640735526021687687890801658195102567672643548263853257098888757595530351421364055941932013219681556556960834212451263503360901102781607600430001942888312529809804309028257110024732968454420149190076860984239693796355843144521867477992286738899335918767948428487363056357200174220359273261341331152055392178365183235051291479599162816334076427207282664795178902295868841580461124581051978709155943085157430220852758701772260143633033593459130894058676887129752965265422003057356077950006844075717100920034841601419067063024254476383299745216085093078745007238472036195125188710000885005164369474801582910193284240598828161019223295032489630277109547424107310821901040306081885744102269308416475332061640462698322518387403806600767762765340430716945616302948442866986195982041636393239020516320370396998757245033059587054674909354149976875083202099880587533115808597533088974418621060335615009921926635829817472616873801353719778205944924905456338010085760006425089719900462270667242290294901212214448538606709301370196203924313919164359737263108570380929810647749634460431878996257721589051440088604209320855796540596951533552001890090235601212362965835031172200210638506060671309116679056803851669060270099006963521922090851286545405084205568232489028541445038409065929037624671324546773782385729090561265829633410532955474280587223687209364393961025582950648323186969036048381160211067544810992007704158678301474708886481399432277041524704978417817317686863738583451790933544012926606603483199168667097326428618462813271268682635618850023171299453080263807063331636502510704754079977340045095174080471601758814708161280472755443879632655763422991005064531147618094013511045049454373764402525045140073369029846196891256044720683261860950423368790640891497193758180585431433005268767948802540687965901679575823008245864432108382249520085197107943330503178566754514259907402868819000700811310520381608019652484738408406289715674106564719790547667873157807988196022728393017606340510715310164241255533933860047886016268194000359902524156834944099930016802530460611017131171061613950002106028638371708102908014120089540428631846879725468880715048839378180156768918173403078247966107207655303026519192483834915085924818710145628901508266703213614896328906547410046084900191396924281578834952153629344541852657144010741002529037700975289077224355152705334017922872479606129168942538889634644645146351341046190313628519863066101340210737192460211754490207738721072033540455992844000824180096516550736293068953755950065411804890918334979830105227083582809903067220304064086361349604456002734148986044017861577975575347315600314762403341819676674592498935154402122216066773168089324456912022143454300837577013334374044065529748078887559139839509081017919814740800562088625526662698534597995413288006950533713905164293731859689172803257270387072081116759525707807571790602412286076057105004523332220885431650647604482748172603059077050040290460600537302520553619930118461724724815001354499605437725039919460638690400276026398468452066307501613892083088343036513907242698945229310702418012522884728871951630972529921174546699595356455069889638421226070255554072936059028197205280185475578620861185461510469941517836234724533516305017139470107064625019192045130774890712057119075721055068042869019070844245066576874405434391750062851606703960880733376144658102202819083151669276479753509231953919470533116014856157444319191349429238548084801802331255700252102523330927570700647864814171644854061455494035358267401911750050117845034218295601542431410968312935212443599821090208396449181408034547463087184203046604423626573883707617546695242224986375482237104764543689287992100512883873001752324054603350745227431023013276547111207301330338655590651093890205042674185512205246002217940165968477010506031603038012423401784258000403802851199691575880402745953702097296011410705022521520062146750936804019023224176468500492798670333692019105132325353957920333504524603766689003795802555968583958511646677515490007357204386073500032017022132744198907497193970161711503846984921316532520595762373347408622606248078989833342839462059999461709216710355926188441919505511215919123594307502222512097984447903695896998484299389908906403048496746560266262991585233728692391796601308606336230623371850309550294900600590971098548439212218613399705264560793418352606663245113323742426819804620059568598117845188637606050271387693437356083160802151210635852916665257589607853980137354894401702720033760366461086851061281690277090110029551748480633805568966063024854298342524418807971952875107485173982230230306145372047911469617811896309560505342076005017922890010852478115355235333032801837618117025265165530650470180505200156937505860969252823596048062086037411160703098965989793609116141708612674289626214804587224427123527303272251083543721485241344388357520354447167904983529860611310805808073615053685352662772568488270766880290307590710566986697243095034249775623380721335749327996605970855388295930940799080012108400383866405753941374068026184431022723320529728046157178526039332574536180900572399189574430144631421635775914923349352921408343246870897393163129007511300229804610345673462732288517657102932739450925666543797943820725325200030305759643070075035209840150312456116436407638169310034242952550068093713805747662740088385635910347273244460427539985662925285091180605255355550904368610048850069901011937243138600052376472032471029040905863482133663466653439214190906844068280224981774052533009889981484404397510801941320433983001266128802934196437330904120085054790423327568194011386834250829984225820004771633280201435314134734602752595632354339095092306806900936854000311368313138077288238070844181954021670713794038474803647024488759662452090327622084271357100757090444521553579475725737034737396937898538015793040818680847730752209792640301760771440540004031200473031185093513556737771370975783654692241906982041173514370195250270266254108748460290660023120380440616704754070418965413015006624264674978301673329647345150044924232084647169892440182771860069407334677964123349819888901615449633513104148404541407375100567314682578681859299540028355191943353190400410645925904964886357069585564375035425320011633215388227059430206629032827213832050213137663044356110771821685385700644711716071846278104334390461804395445113473367004010801548268633770720020780125600020180247721682482084631744067039042234032117524233950184073638851039175019305600918617206582564924129614611270937617012991875061548654461571909095033258360796059944504502450990564412001908940504113261977092485700226435354707085482452736627069823019992727350683234648867349037554445122542989680189823006160183660850006097923444030654890508027800335413092800385717016730831909140243564978916156172332209586307468367273888474024938989962544810422763642563787010444829141867648231411389677515187602890287450877502555980787279596103041797366986349483897626962005820418735008936895766931070671346763227129016090894724147596717944994617971054609107748010405122980142074760000659704481215344766121638081509811617155503711771529263171009542510701011722714624786385163535434718252451102381062408224123907439741748650935150821078016390439351397674738361543856640437278274743015352304265288527940560706097689253684504218176199031932214454190512787896574476791664310806130438838835570302599917338901570292370637780708504121850198151265444320914373721264976275434541079735086952806621663703939870720715608793742820133826176600214026171924588600844176633202035140226607811620236414067024762442316081010367463573553862941116026822358892534776119350909204142480458425700243033953945673076989018091808245800759533502655817221955581220330098203531178330660744636893520126908725071849303490741390960601579605494695949870698080462623581497118251153036676994587290925306946579390340221445959271767232914798306269704867953100143533249680352040927246945837461842450585848152330647851372248000562714335126716492065018133791259384700059220095187747788322926833242276519310661350589309089474585890743172811059973903618065092874070022671988533421890216170633002977119966881206393321468900902015082336144222691764210906696782321513224553085222237711541612081660239632650041596172302703517307230051143629014881942767594629241007260545901498868054853942437426116111846129653674233147790086058320161470406329341634080139106056490313064229984578382048582667117844331890524979412739708214432585258347653039163360358962550624726534410259281415860067376398942107339240412708329373624064450161500213474625549118210469645587801382634243850332409197377886492090510911499902000347965642266433414796449708378442045028110129279242243970574414013803040410635428704634633573131602047098468665041640016321540689285492088082866011119377060912916487636085636928257251106968181524805816733880318673067327762423905350442618533722784220917911301062443627120318781213652140599116550648567025468349822924049857005559167615788509033481068877281301395359812354976333633066175000087478835351490551802141402499629358223940556662586027362793048817754338193116656571979347071201105072262005076436878027614732260916701196086170338764955136971562914003011136880199707050795866261033331598657964146052608325700559687797870030032468103540104038610796583110801173362053750131726363274812642452095713528434019956660889505357190980518135350128015612135939196472528190812963170290332916948265057274065074011217905955873760875988049154063186454673976114451617754256670901219870707972468848948178521361611127139751554055579907741308319918700757410999095582796472660934280643605833107208060282775196297294206125961198184477579939790536170002095383098219646901951995326622745281392713021665591494298574356306049855467011391882400670043050345038912680458349636259606759648297874030677116760028405296090014222708066755983476937951007008098138877881160714506636330165942090521078585934041920464663932296451130277916144866408401060278234047920561477437889469580502523561343933219437897091120317543380628829363533092860563374546801143702975800916270247136298000692636871130701805978295044519901790020264499686366490946714783180077170162789731086586940171788060103023880752216393512620270666747025125272937270910910747213070088864725109516001239283064619094135643635526461886215866708601242371113847767191036672498066664537283895727062743960439329158077109505120520578902427634075333831095582015083820719625447694579870169060712834349033532014073292118291588758600525477953924295332011069282762077195503147120610602391902087000184008667227532596050004666438830860530042745590827739409516174070178045319515040006290749819320655720003110223147898831656785562950348055830809827444951351056942570303344415963374712012085644769004075592210968955044275711398507480528560070537287718952714530062111576584307006072398611134869553302012073616305073035478480538288857227614109120557623238808617896945889513971597507632693900761512096993870200527730102676822206666120710062069634294971612482788765941260581138125755013734580401645713370246653207537783190623834527195404949882502447699517798604009507957153865706085140060754832551098489466701652172010896641313071883367849750310440846114754619751990209284825545719852080663270427931143040706975225176140189109837756103160170332366078324434078267016534842240265453762509327141463108938653605693003420426072598771560829748236426759105802413985188823273010659682228311148862230065752716237102160839309540153479058464210069483321215543843013143595059549472911982282664070140813684809059515782891014321399005088339442901150171090071081843161840912500308468166560181465962044219515197469143280764266212819140801167166577377087903233102817088852826079086704425302040026214092866676528004550519040466015862756097661792516559306440781485109792278504655543266709650591642915011798035134025761714931940619078058015309224149780658934050211559350715746962251895123781438903283557541215065597542010735084919007813695631938565653640254050925550517463010564292836913403020018518484756620223133995336613212705718972113012904327592190849610189771932790334159106012741063085657922389948507506035807908564387390660292617409904512548482732408247219211414233551941330105009328079070554355694610412946159217285966836021308110733788480095913398155332538345604588482093512401355922045953188801400423451900913249376880900826190440020101890208032323293840310083301091583893557813939070704360900520912622351693845113373551084100536706161264035973672383173817731136986879099862801090695843581227276544630140985804372750315898764152100967493204383440846279709334079271952164614453571362799702651336509262736602549406029711242602491111969829278327378508329511876693030600353306160486543645291996376738169332752392360196980557280182015530039340809065047732550974081311107004359008834237976524438625181403074574309691280281749731255027535485719411024623964249197968212715056661267206068710589171753241114352558292633653065363097922409479193695721581742339600461523016069889448168015912930585509128941721137410546460911812547765128092865640374446687383144754302250506333347276109195661986842519027495738117790974202232699736285508102456229826972089070898688601723135728216915540527153628008329421872126639094684819712834966083108360259796719004354166947708112368290744791297103541480939491790220401989039347445028478051514081247137377089797125649053502743703526910512381493520905631023441743781028575809672101930485612825380042623498684701408300604723381121685213271273691298670374231130038808940308036000260161838119519592511653130653854426025079461403593487058070500780525768807516838202138109659603709250953234775428609442037850250470769086724038171867714357800472363310483662086030090687023571022655963055886268139122501361915225625208003242135099246796036879896922352993549585270819608849713369574368296110876590233406212136397314136914690130355205369154886386401229896420264369724786815594591392873090009002199814229000873959771256111076161246487457293904730026345291692708423816711657877660598331863637081321848202845574685218301211272610604915128850307200124792651394386044503489687489750228195436145280140877530698669696838753205288072095089582480376600210589422198273103194032413817171030929158885816521911504392678834361691609352142717454275926895852598630808589278482649963646958171993916468248002556085065569965662009929885016514085992084068446860074730870597369596558778388920199334368086080680170153543306101009474766496272766642710496719144344828678953544587491267902510257557176255948743667075736509808946813239718046669198425510702104000613102519904362000343353082534751776847997724876408977755787152496302107408655096531030313111662568024382702508351213022324481011018573804303001527176634520056090262318413926934303428256525488625029238767311955470152254801718261096765848981128782855357479299994820821482084152343730190263095440969474401526261803305773114980738496919486044665271451839164169925454076441145662729354108994411939000068388561309077696286817393955836463661612091199660571892780230806971916932591007128574987846703664006830351787119901512221193244404707428215454229495261974408708807344699707410640121252348600522925628574775671692832124158806692421057364204830708966939260469117773251636411260962222880736047799021977040751450148018326798962282000401688203906881186213740400018204222007729033525106375405301002100377605062300916701767290410575723709889554555642988648699083016710303619211812316062506900263061610403331909450704232002039051094155603152144594289576620171655960036404374639100651473672832164200816604600167806080434089654040644714862420751399799318850787210275220474059606756372451749070908128433456003470389342631034117343777498350324684690106410899362457763194828878889770213640271558080619055892873048286600190892092745258445612580817485693337121115771621923558181626535979729024338232665362917483842436997956485925522318574048599501598467647732828226706964480188053092200539149038540889689688592967368036688653526460087097343022765184919575425290544779209796720138786836093264035792992776526885029140008890167957365707425521561782169000669885439873887062485031436495206143948088607842886040801124018442209059264687202339209644955625817118670249081197172859377490717977579234662958121345755235091493233883277174398642497595865221759809679072437603425054745719415602493841321759035833480547785199725301478755438619180760781477327071120039317430371206520352921702205300152691532774680413250735574406284250288413889704498205708834892052846041030011954498710951061089130100123482970742270467892766205475572378107113809517920923054781397366913018790261567067897887039181037332321340525720894553488891927594613420164648130343306600807312280034420561105136090004559408106161873714345899316401103259487016691246200471469768081865546060331680148810114997215908615300164683478892371524448631733490196290888649202122030066887175340699711300744599592768395419502593323794910867357411509130980775701000242958365760203410250450035067736992148980467003022194432527461973253840037538678039200751994272711702729064802447409943438432112060530852012662583605351642775210186112381400960062012891884045437438321977998211941727405742185804737173496041862646674805266690493641208440697484088993158608160435394867152826475152480561245011129960245620520508962750914487206719164032009737041300500018143033442173940117349428274292008929250614080246877430574100900730309598027358990627074197010981062475603861305284425446588525042616278168809001804959306873195286854344204709648593180360345919782790845500158493785752062649266234525166371672247502769081623560542965003040346774152140397514525151091170670705634559030850525116349001564658179236636576245032272042035630105829907378172882992605086272461575419381422313270415479892570143158486060576349520361816728796630535406353201840309492433416483061976229800226906745744505657901309657852329011160830722475484609754228544734367429306323143039284703223959463661660409302522125001477820672851600512095112447628429509690383710365833240001921468032145013306868412052654017724606211904150027214728259860270259101965439900425595402403074533555110045880800550177580673987155232234648632183103154100194990817245708013483152197008703235125140908654687814076907587655983154420487398162033958897575892060291593022410660569741322518082975687122350905267034926260494090426029848025783476237350285023373394283746446259431691058109648014555079963623136349274378307040706676787105654765614173272600519047369004308080275231337847030639088892346415472333032768634903003500720524738176061167719435100209681340507844486252258218002791521605991970717642345030152221294855606114742098452820694916207644193886471282811230115171023590610014035907055588057472747467644590010263069065797922189739847612280458895762327571438337211308520133603911630527511469158279408873174101708417487465563067967813752814909416001040821910871281551746917846800463747110468074115027756478939493967372679978830020556818040068747276265072286935887454271387619126947441762033237194537404310208940454309043335565722133193171844049802275317071483869369339139502797128613057797337719291200636869701147170052400568520101497365925785051782888099950765996740138748902082036744327604144099245474546777361487210947805541628871061021259662158445434603272858816138735296185749480085597371892720009043689187010091392225530202442554547506143267516395268005962825203080443022462873934291942909182268270025072684934186900485703344066990030363887401825060917961994884598285847220509211674083075445852247379729309982190986063155021680127437290472601664333713783566058640420998707324921328537063833867686677395907650652030843246801685015761689205428713553528835509997117409408424432128265007059432100441566217119881744189010096102144755513964408077285225032559093070816295661014286133723080906329434081114328901753324478007854331074126999860818368425066689350813924989863436048881035234297034448005547758491905570605497064178938995861780685994208011890250303494010980688470986310782592777099104212048329097902068600734502009432430303873092150880662670240736756445657712543881904205088236305496973046031202502231998259473626173238415213657728063099427693913511383602995128690170955333841733346735135996326567796089095455895536205733017430115460841977666340780961483051336798587231763183826547430595300795807911536600201167019326153510676619310379032110664844530371031691435185080770758835220218053760940506451071028066557006068852498739149735049696599174849403893276196344870484598957532525408212861524504056134881008504403438957026168462208691320827138927848947890201734080963248922857264126164854809090198912830837049809019762760543838713990476575028689451484193146833588548469701163403582450577536778766292756328095208624130503306899607697304604091855353236456464467712940469540981640784399880095278095781262422630005704406408382067821254012398422797769961018212966093684520878063794589575031113274285174072898709214302014220450250959213488515167000750245680281249671413148420750646447476133321397174127172469085541468911739005903722661565529706599002703069204590632761381590922030274743719252360001300231600497812004345489461046849009725681906442570533983009296440642990810710368386258961333115614565491799926903787042
012213477193008205406092549140027214402664742381808500209738975200056041774072280437067078016734760003409150100306228653960964561543600070606340154061815602074952731149179155550036842660116809103410290058900620509900924972004599243002388089225971649971535400802605040056737004865608379709542697409048905014020202468259200450398151407143333009560082333040007098027058907908226036409012625084808037092600205725501001070774713925603907074821009180185645596588666999658601108196950993799230290029048107162703343402350002380001487069994026503477004009181550117917470201102639421790630081901096596816024220306342705630020611686392586431091149000007072765304900418953768346411227006247538002063826003092095009068335654020686266109328906866207300008546030171415828311037839035064330647678600069060760041492032230812949090443909720641050504705702552297005582017382133342600524887003703088668004506980541307720090207974105383405300015202890282998751070860109575408076306328506387736234040060569489059731755030787002808030350440267200169745072049704056957823214834190659007002109593312314312915505973608029427670102270089401683609575700851470780078508008533403990043525068021252290467037802524825000502124400921262588680013650138002133417520090069371616451688938669405191854002260900906790836937000088950415746044369191190594700212862038092065596430089041281215007681900741016734045202109203509391055022061445307189067043358429027331217100575679098967403501906098035805080090040900029808508340350205039682904244568285295300400060009677200468729643510371335415190470346847611201505902102401970227090059194024147007777077180533308600097096481658083080063000000330090161049447068607051905078470360189066682051951795070713919318404513213606622447050347202793053619419555248080578357381504190190080990096623183495592304020800318120687406064918667660922610879657998713562668250140190197643176286157689919863074460340550893740920470870977068340408480397071001056679804867754365010340227706286470159888935871160402569234634885079638873661128080662834707921060040520351004075606420200996685403907901034099942474066490304284980005041787304047011648005465619309030915360033154176775317888575801096967690238885607090026510793847703059298005008709926878101227617789486934824862916320716260400403278710800046225481854040077314490603031503025178313220087488990416583048245831060268026964234212325095639000200020439007970197067948079902450367471013098608074900021609600938031330064288703018368479817883355243657978775430675099630191990953363535496816038549087766035051583405320683579166748713030880990005305216726328946049455616617671120138447474950057917753380638914790271480863078734631201505700304878392690680062593904936290920313675308006722891560420306945171034853897950309122200053861700300059431023032784038896005244474525433160647872563987790090415060413750151474866215782196080908012691302924088607572506284028888098218556147618738754796932670657333000300261075091031021180710376351053986372247450681722000914224226895957889599856570106393788488431419002233987020285699380970049601304679299175457882257564104307892994930480437786913225001360183686004308572446189433859560895454670092542441400771426265687050505066738797070046331980996440970257817010370875631757997533368552741338449015023500580541400208844010841787996386641232992092650406706587306011444360722280330023313404190344370500816920700206850320004465083997731403810474306376391128475912573711070006308814324506940030783603043920340718970973306819060207132099400002127770004127443661785304150670690700238968409038190901795426550980344882062797588002075255003306930370026806700100153075096709070062886475028100043100162534216770698405357930755131509005640153553198700499400733137602888946909493467540003570648177868503008467903920727489702838108820749044401282334945450042745230975747431805559889721137059627824507095702783012000794901006900457368807976673000129849066034810307030558490905919004264497829159209897262290356357971810738150272275591102978210900073257989014070507620598337040747995622690468645124203000423128617903815504606009290695736000820394995211446227207194869076427544483008208420301005704096427014043090017353131793916240369030301540937054960274486331943302073578850911612430624460400679467555158173509855608200901981500772297351599558945815303509010142019713936585908510900077613281070690870569076903898584897840025951030300377879803512042060027723981694709807968400080293009079009800301790888039288080848978062563940135707033448759571670609002648502451835002061502983536684700560909045309500140981295966607742939012700502188841390832712439410544490010685105789063094800170460539504808615167616011050333048097669033304800697300297020818059000679234004087176700226369085132090080211441100092031220783180975361032055707738098606710983600280060609093301029145068806224127485031029849836439060278202806108392057206854659584635063040020556281195236017001601096882081082782597758928760002094016174720280784914355190366557621900006147000598560479718684687500259105608860030689447390073030700079036410061058599073501085829440636270950420397820841681500517651140586160167778749540272424832781080681567169211805608095979663403452796001132301572408000763150630079024044284035945607230900494505133070026900331786598082905303558000510058900001022228770101744200998170459600979060090820740897952280235342254458040967907055841002504043780523686900293209008097067509400893706006970051003654067187842831042002093374072651098904695994021833607920015754959660879589308825748280579517644032790108237899557558021174550100315861805083500263659505324152880002049825409486980079027046102607481621270237640908014860655789486204907205992709721146033686360316037410721331870534202504263213176403722917809509059025587501504097926010000966377073313047330490340350495167093790031030590787968710258050747293424007477423100538144768391000100556208003206880010529952324119390005250810403094210932287780877802107340505002619450000398340028088400690013265801200125141453100525551303909006143000319056754050298350989589438154540824565802543860170635058080908064615048017058810342715097248769638501455035939101780710541988110700712470600890575060640830630000408090780451789064765873172583301094597760174693271977801002041995850524807074208052086031854103933903585770503160700896995693808300084683602075740637727074106603364697983781728153000980091110990042650300052610099960098308184100172564820504706523932921716325318378458227645807860342807807186075975008429217085400260802614096008951571001774809600080147272293806438073782000069174961000782805914990040907581077431009200588823726355001307048270796005901945854800009828614787425401110510129019981499886504700151032408900990950163981685586534841539161225481397221593330389004290387006028753431177494340188045469022380725843885060810871818118784236766750052627804093564222092310496301018239959731688880120409669456452048521571103580704167069328508421270805811272802448210000230050688221191500606709003662579803987435110868001530764002776610690136415380497925045693442801287166402934552833612983885000854640481690043759783595795480883855450265370878458071648325865295478051061329750671004002152972129073531870500037258775864158204029635250203606000205771662048660262210604502759887880843993240604028650966291572097305309350304079281855047808514250567300509106770781547992825030996984079139728260648317040602989040080780281827307859920799448918050615032696265234708201605029679703802930809103618777660002768920095748489458427061036575522105004079124669760696068307443130743010770908108796353682445760778020472360675069045603280637225270017490137003803723349640360307863000308032931069539370091011614807009017404080011202095408990576093169990697023513500787953409534806018505429201205942482517392181104164750871779939272040460921490758514854311006370407842091240141406421402049106770000093403006195525056907384579299362200528787154907310157054780739326842785100071598770782745030480530935069907344722503051506640459361906819159907627988250163972790403354418242068196047675134483085600979610600291209806744011093606792781372682002632338761918633400847743381890060493065473151594906010160891909607361264085005778290231946426542187600206009858220850904845672704826059265016091040500240149723861139151554865119073001940180381632102509874050410666010001132210409472203602418178055769596106085789054807729606097827107626643387761255960088247870047513608008408057510220066200012962058007628671719853022556213671008477230001471050864094532610277977700186605801971656839078910020492818293168296542774613094088730972191994514692482997661433720917409350016040420607056749410113030077098020062625665408708005850749873191099581006395230232351751912064283454379144316791023184978043571650042729401607186375091013932698559446121300521887520059064904059673583050929600703476380098050843890968015006725385991580109934543575700730992078592488100874020073787624817180684008000168860196654888009364609014871294897029880301200171319682840666559634740036028095001289545045114100336064596730088517700087586002408063862086375009501105802584300132025376121598232420508709004801106254890900191604579168422796460422361550590876890093450208307020194740433240980212232807015110496000318975502517467932490394011007053053089508606424089772743404835683063140910489917076972213649903228310059066135605171560190210226207570016110260539482077430094079598108367363900357469909090921172164359460115320034946294159021830471050520146304912660001034820426187105019890816948519616827004181728029707212610462299532800905565033137105539740098705872078436027339649729987733801484028994084195020028017090388170030282607500993392420459059660090784002879612509859699058805895375780078550499494572738379034770141110910632001842480309090336081132022089020067071993064387606133665710045631086700940869066364008085007019161630034220723591020063246123358375892904360782624959552059547677800094040905681996380603536277020325158741080983870659743028090224720100070932069058323802040579308300081354225349331900024155003881696903106940694100110532393892705615300025396075574104106065315702105259438819102010235053082047734543007001440308694018772531193100030800264923766637874115130919272654937664490905810404600702500322980600482994531540769470200809020992179440008080041811810005040070970721217525043519304493626306851231351309437230034055728160700806607100726504933040071850644439367959902810804916105264590080103441578000420488246316309371504544010417020772980364820800900902830807266747785167091800000141680018485062048582316037681005707879867916302400100500923083078032450172616317569887059103610434020009080835850502587002828940871273407289149991031867579300913178105543702517694427069277970720308042860334160399052600683887811700400088733910735009754828901533872721420884010636780749507106423044528859024057402699528005822808260119900106939080108299205783077801805005156034663199001958634610605062007344068788301017713727027405609896606762014057307308083716955915267858171188660928534498673442218604307849642364609272470101030151069320485260743990284408016178405000401712740780307300536309633909681767930807588502038002859511275900028070925500513652919006197092646400040042084004015743234377308177704060038044390009793419019837912469060910715967896660008704388070822013809307443289806900048213245315999066000667732042565508799565033000001009217763085706040760397011948165790009781889772450901585830264681737920140322009791009372866773502699174073969891957712926009230972109497660899796388590830045201900349220402012127950270079074807638331140740450981989553201768000810790104050091416761164123522669700350537009272001220026667932007200098675050020506903715390001049040931461678620803256292262810237203554000510912295962016659087142794914882557201443620508692897497039054395091515925358163200818035000093289346397480917930105746262085377072036211750211173710725571569481765100609387865003036110089745550493540103005808050040008629498048204500234592075020202067078416544650285364582970296140005352720650670602163678505408736102267594157260120025238194550881676240060980406760891085861958859607200908570250035609402237675051770384743148383858711032791785728332600524022109939020989999487110005108563500863806460818090907489048538170350937768011843094674070924664880868169009353608443888091400882900838810402318095956529020038250110049506354002205820153440098039244032984041609745155108825396336993897103064620898070990760869101059037806700707260070022520994822557021139695729212100638807502109149037074006640231349072000887028634968790068045756007848801603271268023404206025956049490007286704093000485755329077661023002608849746092010315303600033175475834101423547404822147280399404904580782511060022937452615958093066380469762272759602086221990172043688500216949601431313245010840043031571080095989990644055501205508097215125151953270490509206931001201428405600068592730144830050640484409504490416870280344852767739910000715977010945008795609650230618098073450982301743606655187099648060691278830012170810076005093186082579002007440663317792830094502548074133085998026186901870250175834091949790620390769951830947660982133094996060020702649789722460311404878240309008205068878190839920069510354422668306660045469446076486717909097307124126142077534099680693598565127050985358388804528082860090747632430797704003042869776350160035091078073210389517285159870196063143390501304235008735690598387078009635500800290669043209386011917000507390478799705700001895988105792070672070314800241808001880010493048990648140098938903078793203118176708390810902832720390763329646611698703601354004595905236308200263071892063543484089668231124943642283003190558241954492500520097595654060622256269648456070050590904809008070680046350744680083640645047040930735094660503214741083301087280020048703735007300345511542550918202402630998530809516209261040239380050763047600594455671700147490326037800607535838370660049448801668920011906464360502050521042508906502678850671538014930430311858506100509903370102985690565161087732075356756926344018436320660918308203045709044480606092901930504363010570691851150026956977000686091550247673520041400807045745170534013930239867928608556337400189545006000070096304201364999600395830805536309586701704341704083547112901098270214365324903262096250696985885329908708370326200340573002280764034153009274363191501433096690395060639190505377634078226096409581097321007817986760237652507070006090654865480376476636686498349407101191930063688092963509904092087796079037145304075664187473140041842490998505405152165849701183737400995611625930260278409728000615174796896972968600271615559497525107610572447795008400705809230921468042362103099600304356805005459964440040373403893060813706177897425889869206416110057058545001073690010547309510907079250679881543956760098090533015132900296149048600826630300606633860379578044730705030408003940285237800039203016359456475543496544376000720153502638607445519162746998577256579319038099081381490657483079551523405572461097064240473425052025450882095104000390583045975879007035240941230530170296883970687766051460089040002060821343005202025694570040696067980322006461126690737700070749623384774630288080601909601089690995723580365400073805044083908827605093634336566669695903707046261492060881688663009760608070657717146004791533007800860062505400887847625992636884634463295002067765806699581637000800086068020340010095785607080096535007803580762750408610044157034086285030081949266610034622060675499020503221006150077930184694719000318017088209903532704403376830078041512701823361980250055837348111938157185810014520303374549769093500376070905085104810837710721590005801270087229340023205551300662806354040002741838865068394344951795234499600802559386199237008000714490034781598043886610076709004626074080200505000286593500609675381725604208966683020677041040750009075811971050927052045148798109875670000110262023599000905046988658076982583746502352320130028503705001446704880926675170460647000233744600021940061099035782070109601990484232921907043366008936956034809006059763895933024530463758445499607486830681071864487130510441546811990501231435186043007050702530205978320072736617064673422272360096068123894352024741540906507906448803163076690336056279450040730808041509106260072199976154842841479663008325907655078053632199340041043596001322022125744290043010968734096048055011044402816660083890880191188140890480579706054220306656897400533300525335055010796773120279045133680967972071278335525070158107120237489071855421100882582473162509640911598001007410641658008640580964644070498516336938159808820818482056303597815382478901600002773226344004003631040767010947056529319581755624845778553440908601540724651181676898154080886810179100001194382101002467714046603007420887905315200069302083000143021067050001942579955976607931537135236420468449087568472394431001978000086011219820281699304491108077835269018103406802607407216310072379391500754830580060000088419657081850365503119088130559290671700063452009303447079452080004520300509888020733211618158194270679116470040088689060062829077016234890871007390534587924000706035088009884715120230591209618521204134203010236082765754345037105904307600328043287969505235275001299560702371710400006888484702015385046860977556370050008248979022041459722002127339633757409112332590198270570595330127809007620982981540682622725506952500418617064591100846543831420600787540240865029892649098420312600421330787626206016030002009740018543770800485534605052603028418011030927629418006147700604614001706861372769402017371001023051311388008563560003739933257049006600091391707598268920680076041366050093701206350083057625621910249341840042556943266923802278550304350067815601012873889984312803142504466728693774123500311485999496177311013590639065012475864624994031394010602740436041708012921340663303219077340103106042007616067696196302015813700817040803145001006371308883506967406024407697637013750869517187250290065188424059805835002062502238200020913010890806908373137633508546390305534561500997494990004680676559839407002736997102600992100030004583046151208275087245247928115234801754510000036805237452132790584828580197003247643677429019700515183088970307293492134935504339964600248715781115296057007003402398051287970367474103505445403843596522376001417007008003018967920648320419757704410133452117051201305408077033755600667992010620225330980035235030340344453837656197114775316742735093370080300473022608460770072044141380520504547480607023895217875034862828440034807003509127507030901217318300438700762295921240394366844660361547798489760452992031970154068187340104074601668040290510208393035270379504870864871200920966090312071795932492678378035102096579028066739090465630471706962633040075578895760688590007809128334974760931458012075775200115320919409084419714201953907597560468876380682392435606954525407700044127097994790790556860604433030220920164475400100410049457884057344433524330604620837111821135460079657021713703078091244811205413810773752403099502690790582282644804988081105027903030990238050681298809291301070732889960631311871004098570433104190099618050548221090039600403882299741023808870757235900052082993050230094273240295997820730988702400462770940907918092402528714605686383205709092362086637377375010604203907617903880702034293406750536970688895872909205052733343537816319704070449370441687353868386088001955071664157043427090107770360218087024290902175850089772005036517717113240954527026119000069089750150962058869536068168071031307797390315300433804722792000132404390212047037351899804460037196406913095001712172727012204120080807606690600407684273520540060469488050070799337842164404273033990529306585769680035000322260070593114216107891196434598906062900334396203700975315144681795697092066000542813289687807289099698025500720585989155046567004718406795977735943276858347718000000200001256150259071661076570005637933144090888017848575700084455991936074310340682800465214542665679131054992676282761610359924025703333055025305788977657250800250075078333915555107548040625004063168252528501507584261707623095508989910674906696146548302040226207909117984007980500502349048605774599058810933457450969890300708507855396800508799090150001206481633200077629287127090111000207508290750304096703099869772206510517164608056688766777503388239000759197700169904006075726799796954011180901202023109092007608216809800307173507873833715450800636031481053170432671316544803573597104334030390003587475293799038831607012123257044011745518044185004150336920302229911920006045550997815800129307077231085548042302345004906190570813673180009237798064073930535034100095530360507624857960091803380698037556437748727801094848952481028038347205235711410388955003120750558330904622711944011052316987602984496028009107780292007414248206721051816165940007389311802350108463964005707746500060383208800508808330607807010010089691006150143390035677850770725037700006010595030417964160067850617096529830380450216440099438621759059565880131109839001447516026713516086070370500402374303176001239420517908411510981560197102410067604620158840893850871068903540606867410996610400901808610085375898240167676503356733805052408978922900316698501057905320247975086152420705933171102996026001459494020908081082344122797500329385960356308589465850735308082660399283093086000072506855071587020507313034570612053805930383055434403514307346264555834940008139901200005454024382279150346012250058730705037289067157052179072022707773033158970052084349177640954509088805013090190212750058398030085998702354770783920469050090011370547000003116045453088184749128705972555019216776110707820397548563273330010504143000035069913759018886695838406270089121853767041750808305000300451359490230901198402491309398938538993396430722756691070509297657458020564958903090361600640046055562500848951009802065571003767201030675900966012835925924008300714033860851658784859750874357260071110430480805136985456801350432615077140002003605085205815795466901621076126946806496206881448498896489015789972034510000607251279567002506759349408578340737090455001000543271420812729140036442129338073444700900924552694306970705170056426965880783800613802628915169523261899209128501756970257056017210807925272674606347043706016385014985293276611280405922031061500033550017708402298805910008347645952937070750356267138030687390976470799690566699477145080500272698400900105670187859010000129788267035772700069032832881030052083320652080890450070601234124035384839430048200090374559732624232268876200409914670050715001035830280695655091424509903002088016423063574580137378802370660200500040779024310807124450306783900903476019521729124604967022708205711785403048124775031308200649696296607767059686040027570559267692774481010981486226900253035067574960904098574124285889043046600208500689672462063201306392405007933370078972807763660095982939502800820603917766023306201999644002224132953816811206011056691297162849873420474029291251810627502547000490395034454037690103449827050000609246052267785240073880744400123014059499129118253145033330600020479602809124852466502380366570828064030764030791742697735777717800910450911933800054249803599406802740000257040608050555044999166010995407498797709977050598302051702730654672788176572761303949704205288261007767076360006427529943001440783603720752980471700945406762354904320288061170064013934290550410864723025060999509443100190299660908540851744710888309569006504561101383093808994060103984988200382066706089889426715309460319579807307706018919636061680060108033318600009600608061433203508435065680499896085078860680674336003359502932920804096940690354900254474823026670187664406027060977305949604978027910340786345075615362670375368743805653145715555208233030860787070613779060991510057370008780497005859300400910136010205200833509619108624891704080424660816400286751067074084147054082008484580718957121323309080712029788757828094224886795428025480071575801390621466148004295630544834653907200300931863406853067587635063235702674106243503692061284750015033209013014884114129599067808940674210094865027844624623607718194426204100739828090002500076050885820896824200860082462876657390000836040513077828845294792252589024964500620188317040611175210067305679698703005033647630906534018087989938036747100451511666080225274801257006073183540775270002800087100452167100150646421002415512997225130612748309769320901080070144313053460203696224719974384275359883920200450380655078946442102338019004586734748084610098499234702917994710906096114155749560647247192020983438044529969710726397740393605292906388059642660134210686578398933730066951526459015951046472066201112502288500554606500828507291056165704524096480589819555652399840040583091289570300034251400500046986501789272444417496573948024220700220187666609236160530037030310253669039711606454708960589018602509983600324763150659001726283372401472110966064209312144409849272908606212209616819199031607397130367571914720657333052338627854761275498300017006500618085898141801440751007802940000503511660483960607674627073680006782589029309679138240241077758023508180708604986088600500327462581002389918074670616255051340602020066056310709058880060358189059419454502200263703065204199837110228629393371442565009205301529001096249850026077805160180928981771800835108400746080949406707911345313015070706230144200781240717470377514000397608054115447439529262025680308069634016323275318660879427143040328150078605605894602310099113803366680050835662081610714863859876866640328770904400957936963107329834656200203610063362837240432304326083040000972450773887755769780080682103185169159401030876287442157064650907503671457766029060059690008743800072097049075649157400599035350411925892290350276463555331009624308520007921078867756499851820939006960430796339390998017031377709786942327519036705384631011620170110901724090440628906055662536641090531327599936558046570360090008741792712339196678278341922562077356470697947884080120570318610019807710848407708003379835906031147886336055375007974919610525036620068448593244157160059301083856708343008332703912675300282114005831090257689341269851060058878070436701795711842339014085841442104017230116775170088685090904051030547500245413601669427003230631670180333012279001830005625270080006156728810070182019836170010666230942040401985850194393138177248798028760596396400022000607656527874054001653740920070505030060445308278563870090090809036062590064122288800000579014406153840389483635080599808114003729311803552112115214235584071026053040209597409936602270232141000080519304610232086897239910647528834109703001779000980491597576108340558096301784239812323906001190007629094582702211057082671086727050167999432352303237711390566778410649393662490150750063954027078855431902310738048981072771270901007006058753065343952401033669278449062940908430585135093088020207257360201501187217023095000844300332515666965567872067830573018006719372903679529007780608879903116040430018440006005799797380578870893430830702084632404280716530087040789928087237154700836004494820005520410236278148503059401301298601780039446401683882636780850982620008019270677959410000642098160746004890905118141199610225658532729270344508814450084020202876862250466787437001350063018703523420260020462888148104098704609112017758820680511521908430657166091677775098066659610800039242505759462578053540998243630030206225099529487070480001987008755960359226527015146491010309004970341075070099600190199009030145766409197100600027810060430970450930095772863364407966814480437807060346443810908530017380125242009197123970642090894450823587297331802949000960086314696084063602283085299002617050036301084753280690831994660448090887178728010369220077055550298141440968210979115145780845962329827447426600990319347828028761803632500278046025807030550109258025559484040551196530020792206835904940880820102909562650302739836405496708240847318154950001858586240191384490167137029083179802070008501200914790627267590009069431975401520679689039709013806467704080045805663274020456751145075513038014840182402228932017047078804085412183044751335914691700279401854021626526902550796031531293001000940435629700806890208041555759310193417020062001177176850070698077508590518435804217363356880612250636002097700582820081368128702902079060465380330250200047461130533096075901028091782350098247403970005392350605041893300852323476375963503517300438208074021810400493072270217639655170380107507272202740713048906230060580003522199705075832445030504836060889582214306740496300500821679985549160880000635894296003910256028772966670108033121502900322803231204007160655035040043700397039058906220523100551468788186940840403354214252918651005441406875550177307705409430210264230107706203855758105507300315624660661126047410128188801278340690322942082659017068060301360755631870504693560570096339720879073402469539081504028770318060068006485177779856752503249500813084861806040600930008893082824081241454940023274453346639766499708774050520791250049890678214598769991002770607405905972909012000041082886301068057417662048609600037255053377617666072656487450209566003649303006374145186460340061800201635000756040326704339616036705076394447008106466152521004809818412681400110312453080247102077015047039433056600776030606923500427852021466044061402460201168484000740592384130419915055403611006751587009524450040100231144408740696219087072587103748960811295470448119201608860330450139070772290034576277030382470015503146607678527340433591645380476507050702986660206093601040615969862992200010021982338584278000598700081007060083905002514097455052933689283038105002085100005058918155044209707090006341760089065690000461400409742935310300060540129700921966514768867752060003146101880660098440370409030121217901472665721460066000205040938807339710001055739689854162243498401701507802245023677821085972418160708013006300820678488761554683194230209472007541263808308196404020010226758107559790051924870098030677069318364836477007097892324938869409313047511344734581060901032783506757608030591862036899073609278006102335044930000600145054809914006749392036873077661451003420783480750109600602411900928403489071906707445238030233352939287659004187064239105604507930020000600020946209840900158250042430006309982031114098685971310498000081209305318561347242401459860196678259090024721322092080281731070260143997490003404048763071040759052665822161849229431489906805462150486609065102900051140467000483104064676240297323441745371600044090903591814327279500820520934410336676326725020639034082963637135002080637961948806052092711520001064501999028800502253773957000184078691020007879999060472208659840296306806118283066616349509086083041358000066784030037962035843403454082063352100420053701976075679236767047797090860206056385085457714580095550007699515720545783585812130853802194113300022950004803941721590656889136416743097430844139151797978094434889300525905506182939259319891989617690001056024304057390828455832857717032198710050830609943020190050612780700165987373806064922753760503586421508685120660043561310702902020756186844258300000055299457605608069580050920490402184402240009195240999975510431080795176501009238900501369955099609005998573624108671910100303717938024240605701442007081982859051104519000768022594494927808927461790080301002563762209210861714210326605260404020125503113059498053030454970881601832942310763950268110988834893153628684690001821095790395980816912239121863811863530212112054070061050899068949252595085078921407644058577005067408536370368470562798041070050094718210148679034560884996194493805758190459760215840003900416508087990074884010307032029731020859698900145450171099423633084792270072161310146025039446000098767073540160478972428080660892320082001076565949067073797075941679362704154073802094693207951895010252814023000603913968166163407886435208089976913971358026578595342386936903068800903000018002016468805922925333635098004710141857158889080630333079941482001570699544392986988074822000700901015830009009937940230996011699018604978807630749216060110272463757732054083074650438203503901316730974040226112754009415874620706422064750315963075040548310242037042203900031000664008602538282289996218559135053481623991347098331040329795107983719200012367237865008570650104732505811216071678640023199655453887077085349503022575008219102375857258329169019004223750348177309890646589290047588606651097909500237770104920720747866703160674200239740900492033400740420400100571650016840085084826248833017186850307386068995789010052221618012776368209390890994505604005685343639860990499660070483011483113458403066063007080022800814511766009090382395771602117139058371330909925069597302570880596024644660559014185760600002745490813670804607800020247858938463464592696702005166500163605898381409835005406260149670007951999375887262201560855670510032802217810239209453310913704503771952951508502798389604299779170402054720414562040906301500040470934867703831415999039400500986271279590679717020598967775719020509429050069904060414900891160435211282538800802005283434875640070441074220139205821954785250311053755001636686309084232460006080064151800307200919337645346102598642004035991869310090500261330254903278423205642684107894908232801064153660148082056205406451469632439074188000850271926227003532408342809710386130705200724610690289280430555300093241378343108293081075983505026352328200001320309576321025800637850726380980073802392701305981056196030102504078561597509814028163410299061708043053823451285603059812820065104819001770252727075262202259300006702806768267248210200034127160814860710701297657994892505133553408870678089076464804508963710333607398820761046459026690068133902001004218824165675603007497790586494778055353099700749904670005040089795094873946197953540494008848825137156167090339897135661063607877344052842096508541505743722730618010105603322877803605939400906406903700724279408057800758002513904447925883240059973980178592000708009060288874969730202380801718234480785000233609004031387120546549720814602907089951723398874993962071295063810401030899484098790553875405040907082698003154034392097746663221454478206435299029302804992304682606388017108224673202581756307028732076007680905921947900250000189043903558003024455063340839707095680486242734680279304200200130986905904510060978024792600509333070160583771601719791097802809430386865029510566982263931008670179132932309029806000298792013295000332195918785104009588902780159628016941961520027929972687580548870721780807403692033061636800982307095819265330307470619203660589606352047089289920540727153640004157631967229102840373424426901089895047915209942049144930964411850363680732694306953098002703108296017266898678879933666306876848441592012603904474984906456005954700163584205009342058275024000510050900036904502299540403011170734960000377954608072600013908016676457704650260025941809740649831011419016546457360263263006085060862155831727009761985548867300368493317146773002332740080337216780763800204420004986080160192971492289490094780640185716394088367005646062614304149740623122217080582045232108007030545180528024903274516922446056700307157459374305676786261156668496737704308191982807254605650126636077604240334003804065943007507272362910039869719327701084857007498205538102299790152110535845338030007106707763996170332920034465842857249904039949468099063036060046593179183030000175400073579356017074303000262011031500807564491408425897000082442702002602003217858970769410626022032358675799094807491850639269700007806877913010833870412701877585402169146806778740176090013527005679520359436048233490098039752675400995833586026050417625460409276200690065604041132004362404611574638099670151085382284067449097700011225052051074403406275471010023041451068383779156089111080030623340129731878097895050900004894909409139048793003191809570630428002800057743016810105862086420270230900655270061529029083010867035001035473373954931606500740606837579006791407700266256098485620645170539521064232460624008675133956430350144042845408210308982839779902529480061006668049183560450347560564824981710230860942747387346398009072564500689527050304019639999366403011607282987001070171460021943014438708563665047051330587010783506490814387398606462610535259012727338065363027700452936533084084806192953065060408909880464140102133010243303312953073810206982037895782194908372460012408397169804909204408978740870003013505394961264850507569595767706222605830708503902530072825530826503603058893100561759570491293196058610090045056726106263060140547770956528921134090872206130685261403407687819249310960908126286993852283687923806202026941865540868752384973049587117260458403152747006347938968108104708034936696083070871505057393202076982774094701500810408398004009996360004222893271610459800012966705470809540432593656503835923061305079909032001068919589768747388705500830022927338854227360030255039407277473910719128803059107066000165860058700200499085300940720240908012565208162274570112535190760009846207079005627372043974227981900890838200570194073008751089980601495169201691751063000753042858214591523470672203352209972000916538008508709735102665570287130842557767909267748841710868050390060892168415139228090565116847346657919406139700221071030030080986004044029664640027303440008814035928243748208710752800880009304379000082170085377930181129062525685674313685410374688804910508356702637100197491995418695679794253988006660831078605720103040309559635674028230505547593071951438710133021823077190000733435085405735979464099397071226750599030660603946979941598500711802316760597044456600700121898386702529166509240029211006081950612274120179984023347038470098897079884606413271384523244590087970308470130070608009410008370401602616416963770304070899828992520690411114527444350032405120062069704006078355763734329054250657081795906902402196604451015505626805632502383395511180027392679620189077700071981525073723300590776905700026712008020351735080222479510028647691099085968932443251410000343053228976972898610744058931718241065390875071087314052774380009070768732443762770050095700100470404202155623079470909360345210613402922404975301208776320261020844553457015201962646565476809129438539619039040557212154107068060970009654706908330425209268025656427836737352706880006070181070887041766016650704618603285637013592008727001160060953882616378623097779840569779072238690573446460184066752209300062600225187600000902040031594103378407215026270016131005770300626044071008936015944007449708443069447638660014237424398201513715031008398096071501380710480583475064452033209995542682770346358856044144782091051061324870139994953503935055010188600080620486874058036304201504810780810386700289040018077898219094781050130646661003599285596303607567056102381550119650000155690630780373056061400894093066685022400062903982008194841210049483480826000062731344131739060485109905020449015911601745402611137696694905689550221010051178285843340010310603722720808868778844807526517174129837497740000674000238597104685710200018601493048203407087790109008015456942091677279628046543601315312101603988500044540404400618041901749287855071000941106776344760081161030472905120409903083015805035075230400100109687780062053839838713702530820780610130963020164184466065365300057000655089043654402034013209750601839430573732981211110016600076523538387507702727509506701533400507461667881860821149605782970024260788041340583007804628307207735354641404546290429509078048772360505553377690558303912033225018829102089800520834006103040600587845782304840405412017915907602089094840009739799254940516541787453307107502993700667251582462909852393373032830105836048280471601564639402890748260954057189843021140801007740901962802110964033408385780051723246310802864654547295687344700206289362459585100735439670976300072007915084544408706051902702030650130746510821750089482901270106600015014409276160388195402153066436046814907510066339173002400000549764203922449003241260963015520167570800690028205722702552058102090802028508326020065416408580509750409377080989008000739900950695045813968021565385780004004548883193678058480763851602208222113519773045133393729372933103280693309057394201644561483308071090870877400919281906726306406062047989425915806932410996320526056307702766201510993862044030336012709040805178004051873384007757510973057423782728035047409503181139868985790106758179913204835708410757406020100539073000044717009846149703160029669059699801028053960597024030008975045926906993309209073131240470000170924004574665865509065693174627869670544805810478985122042363850030135902089268007810764825465076102328768656016672180550004250410407254469545009306026703250040308762777239924506196618667322896809656440891649010657901092189436685091896459099500196600080938287613696030714027778300517031829821634288916523049010308517650870004843155273846071911468552003946237890619388115109955700399234900131799006422740594390505110013306720404073684444003009482014099043278600048264084037886776808070048595007354623155610057535079152574843609830989009068611301063380026032065900301343854271057550321503019634696000702699401093012660022055257248062201272034150010050910783209670745553070084334985073590427062371072534362065095095283093063070071184843013800560010914290949397060618729624560554421098891826647900968097722708490306068538315940104762200936378072260594567975674502842730190414363079350406788586533000606040500543642710120820751251045541537075458700085088085706867548500094026828899223104118085200060160779003086058470030447934422401106359302600885168320207600416701989003317774807022609701408141927233464171905545012443508090780000065180567560200094659815017609804250386658506700409627054900732003307906973780990636709439783129006993980007032910593207450004652010500084797180376652387036530005081501243857101988008235914170240558337720587418087734419256062871104966896007304688304515210615055284070093007908003256052032300608006200560270972073000506600340948559009214182956712084759404009046226054027924053908555356699150626554603020608911920108020503438071309679050501489901057730549500760042961084424045070393167398845042132986304076106501352168908936339109901418654783591097743151002062493837328805192002098998778900432600189600500743507085938040801093037490557626645423862545170659067919028406351016102817692206440511821290907750670037731309009815327600786275500928900971163063028260669956503500861170661003075145481008040630495105320140078009550107007006437920927473442219873044128190400332040050008508708301353090383683470058095604067645976155298305723724697455665510001705330542581794869009433023440577071680002140406957050060874071091172289136093865323289754705107427093680600348585076211000888931713402871320950713060208302542500482597335702002863006609068709740160587000128322586284506298341134001556395404051535337492833765027750781097029328170504745836499941000833067702598409480503346535827000440878007603035006257975280092200160860060804002020046404896401426370002400300944782800320067307361972492298901363771992957040206347070006094700009254548792049462074109524974660038030039449507986018008716053909735201835830740064291039652500000995060801702027777808017001733409987881839840272255642405418402770064908056862589953716940533608892012473620518004100503601977419407450240688164800029685081885320005043820018574706665090215500892499406233596506200400053503068049462514423353979018985596696202285854080962124022348028206364429072716003607568854171627189180870330846404433547941813377657303183026001591005774160106887800418804303070856710820279308047620243005960500690070593600840816043858620091099907117192219222009747903990451450681810496629208129042290769928806070627462580975091054298046308160925974229038833815086099700882837214950025030109474624350001807482407020752470796666885237207742637027710017334055343176748489722121620504807010708814080791967110003116858600049168702686405005635744723297742806800744445495478688209270896409297844398770083406004629628936408590392468088681041827314725558623585094069157813629060940060759072748394163637932202723042502690194809886050008948004037997649502358302410734015698937710006906516034900375440430855441893849680259229692015176293065090040919795507791203072000060629012188610720420670007640671104383596680220890970090534840590906007803502004616780003980799088242260000321706409738960723369306338008400588937500730312397564444070024857467310675401070081992805556023203920868876825640760002207008289053340600534576422100289221104210573468400059160005000066080708912628240850550070060066657720050066604568467922030080790609324300040576869682832903957090052833070954264020576362608031081102071285350086670701609358590706370789039240454950723407600890200707742510206839926698642271580676791571050628817006468924477808986360497685094840250302850860602220826509581222129795839033510778396318298836390234064307656716462506171653154895521813700412358399066930307053800204040000903319632729240009737351959328886520220858184649947768306103040523530379089360989786180783727831638038103006058601087689190049931744079136072855970621032900130770300086509039600810574080446000498803356495838258889750424080001031070177415044245001007085948487055372180828345108501055068739108544181795806008690745700000454982845607700948404146870230592905255908360160380698085814003739973830904983060021053603040987043022793210600030961010142137189392033020827800609525703078017740604200362345102607384305382538690744907607115888259823749001470116523181707041430300351320450115104633580100387319094210001042305093687350971012397399023724189522150035959597035063092500320648036605207698550352004230305597670048534175410398145614011000037061596893430411310260742139049130704191399022108545603201450625965306736073948357836901219067097882109034963813199543831842400002104365806127993785205806346015077903576603024050382676007403853962000576461372317042109003952486626121070019777856568260950340002991487070431807548839521365017032043274403444304816754947649573905610060801714917277010145360057690879833082254658740241271400679608251030789237770204493301864228492482548085181150302848101056453206983074588859268800100015069236704102726321080686810005119970977875793580418530005094385890266366718008073998671815666955878446089401439335146006654401970000700055595017349102332152860022805413101195037035102394087536091082760566288097809553003635500407468880628031282844005017643439988833612171296665067000510640530192508107011415804899000841798588603200900050298002295557577069010803057319986434904674719455603650916020502482301005029758829046058758650948047250571630841216409601809707547890690671050530603547605108077207720707027144146164004336604084461996985958070862076976766653450009021835911386688126905460075634202801430010153029411012881247930456257002448379407862373000581039311032160293352119228770195350810293408008468067861109800152391515828521310763090393849703969082704080744446138798267740047230000104886095404991043605843676506399173680661266650464904406060900990950874680030419623167797558757628171100446033938301050569787905421119608089353974403109370980916810397132851467325993950056661033017774291873909963010070626560601828431706503562419383520293004606010700659941900630287847838070782403000849063523420064650003372202204900907453100540059861800167508717829057312025906084868989450518278000850287503970730558917075063199940057829610308223359105079960669098579963118288530185888789612801073203675900661006830241066398002295381001242245476245863150926672002262206466230706252605003700764923027753290784165258609799432130281426587000248728020534000044808077186873488830439337538071749835978981658860485814339000689627588409836764084060733740888141469466472129110170708220390160539100540041160011707442604925096402157847790028007582410316017723800009228904006741952109709940765821772916851693503452992800636017140620356832042395395864996625107506984766806769660198040130288366437471884220490792466493855656040745550386603830099200590802577503054750760578452376230584589166572357201804101060195964779689347881220555981002047008369091804924008552426400184683761704987941046527099444104630329630321094410706850941108077521506470812327016002429965140267576867280500202383565077058963085870035980605852971317296208414700626298012056872044364195873588101100750304782711152537591301525499360789104650017803140431917420987615019990580418197903645844065109183981665280803301790686098682608224030912577502106404630241417440079701309192256198956005279575589911960049506095000080754046766364430445735580753488730000218177519702000836535664756703302710706492609709060860223968160059179014234579833313105642492109041892403600201925065459504771240749300307320828180809649763430070400876699144796218565660028599660900921240595265914092508010589828820495678045890833300980423729038432964705667403100029185830274092864583960393811003371637110114414890700868401442031972410983480671241637348728408693649279226317664889636452800049810713504177036048920207039210328098396077370882476180574307499015047356327708102830004890243088274601183165738872259453260565008259807400340080043812697015080544893015003546021160071023003400780401475536828022206056654749040007378762011490359131941957813908172820198923140568369216062044513537090936360286216394093153105058618006859279061953744100803073930083403759982000261150052640823515990019518840391206092807353619009014537309977770848951390207987607205570902505952097240699890861700099306041810996564109955845160075961909540550702241482246568060664929275001508366041002030080034469033342680300021355640716484045098853164025312086002004400021034046288023628112549403507680999309481245053070733007919610695329600082502318053317890704484160100142028390824252098247533170886390010192090408016613736591003107706551632298000379110612205148379713031610010685776164301587208000402555000964570021197410931783062800017736151621780060440421796503463500304051607151433502208610788089671048840364377973350400560097286107894985807095060582977484720302257448998159168174080897508335350781091119178852008005803975525493703908898409084226629492781860478515070602897934765864701080090947697812030202173071053392020492029379109785700390208950040941085773001000940621671989025053000540050360264060524706682497048049466665000063375271023696463022256012381090703109488190940080500028957505949970896090708520043125725618802561417504244221007080310814625870702892118000095097524620004310570860970859404808240464050231043828020520000669354289086307596124760265039659301200904648980157235409809827240194029432450192335800303047010902039038339846809956290309682441797782350051119666007095475005488057401133343950834460403810702780299215807375237479441539474109980706448070771658085090562399714003172954951000304012005996509045499335083755097001083835074327360065200284983002274800609420000507306004002660207496996259004263047422027503801300170936320074030096490010500304466840083578871114055406565204708044748765047082904558001799720850030655800039097507471017003276048837379582930086865297268900708666990080931901709864674071469543912771790313047600781404097755695267879720905105047928770220998172283239821574330414083307697763170740034093516200529747507173250099204285542922127696038211712685689740093800417450831003029154003800740924344001804500907028019240973755227927020513586482574604902856459180480244708154618005058919187054698005013074005073050570406190072627198777095288161149277096518070172101801848003983874360466598340100758062901100176013047650095358993098064810612067578497861474528952249645417922399320560647000344635730304736241030613240409000019109772986428038083550047980082793003090883530616601919287992660343936231450727296644940405001308966728874970164093274366754319871602247479375166010854042743173183057240685308534308920605409912683099437942004376414660645176628060064087790604640868587784818258200520800350490007806433653140739554600640783800452439212978644306056203378178005759907787779112404401301271183953150805489024040000660627108273834922556900903490053095801870974059414657208087880986201562147704270809623717929032688460137063325504732100051914874923194154909738750766497955849762792668048022084237020069524330555786252509984108271705778888085050485110938274359610520901208139810048585760040462522590429112902600760979746830250844201873601801709100595907960800310601894126395860856919930304603894933490829628305260386701580792040393640094942861689040987071186733084389047413691392713906237050309040584794087624001600213572050124589308003120435082890063053046582554707660000024025603915889014532050247460154718489067429672430510069712121010366010140503328960184023950424801033403869190825319765932738408070355026072090030830900030148157835594924075110400489001340796967109928450270418550234947718855404083593576101805568532004025960718510700779683877053117093054264052794555447001879039261048112042009030068997358543821781050601555887008019618427067601154599400300360600564263764039400891054063603047400056007000913795790391365808000420028927417502719586013013901125466704202168122748159710107401060802750988702842020334790166141739706037095144334575804305560096903300860775684869779276718035660847634690207820600629592040940093438902506402112853767888030278265024340035642431971950552801380347831681319970211459930165770570807092822644820908440396097570301968800100006000650357812018030186466109802163444070049680793026076104457684000850835469207908664123019707895870679001263850326959668657773262376858588676447827623106139760341899956009940351229022024224912951355460651531442976192090801205254070327705049055428682380970501360386400920161325005423925899018520401075915800970942000605170000990050047800091279917027606008779300800779428290536119432940606575214491250520035723290806001073523734011004070539260094118664040362000034035214720720385725000644009659925073048024298042910852973166749241719027111470491100255907900530390854026208746750980190770018002237100301027591387874574020805059679488559980076547776504370000800225171499908012041502356700690242650480726190886889310009460974020900859358884800129387670755000428541400060503987990135280631534733581422040920052302059005604091869407803023950519327711744213053602859756914508977031942951329204009139073050430303804839777801009715004367815039552506509000807002178290650343206686820004989479463134634854003340041098709640389803004209727006238408939046097534030937051602650141306555713640031310073926933077897537702014932053300566774513705389970130407750531284327052841226049490200906023094130484442320604420883115706139111953574512137131204051280850070078640725139205025220097099307468674608990439129619096087946029160032216400160387012215271596600620551800383006308467036690023005303410608454300395079204005010348671807509551032745606040669091859333520470116003626002607158411805903155423063490909384924954000855300031209663505021247057679016900519053480363418629011920068000861400202220626394542150683066577499664000010058208837517068787061876288723151608909560583951048044424500597924600634050647950031727070054099052498731800170617013206830071055421406920593692597506067367560885257551040880680422581949316440501074954664649560008070367710004534796230002802750490508705353154659572600778390188828972341272346220604387056388391727984684909542838328090318867704129500855043933283304570176054973457064813009716307407905552600005596580025001408763402670822882101059840667585050164224781926667453322830885037050038305048108003576300900480705323280000408907100904608657013035730807104009070624019589052145819777676700930802702054508200053522022300012178780528468664761520134290891992672242055266407534203834000641035092773420820491034725025731139018011629031681046074399835662680024479648338839893939093901464608172603590072400782374250040949345237900714250900036208360290675309376072010018603508355225031551408749085033550488682363625840951713520928240874189086640334900309801901615013971260093216664975404394060002538815959853098569179080551458004188800740160205311598514589005521003467940480900640017743108277711003091530005909323092966700008235310611637645784089027517176301604983654403822770620745250526578461998661981042908000609566085790882759180752972823959377693604552358463206463008520925040669100654970164653342803536069542012426333110003507109681132060407154022214086304105009015928100646057002005784090261965428183550072058637040944875907789160010863928193069002064070330002132716006931263452201165700337160417101471885000005510240120177739087102990644953985418023450225128052903399577080360572839947930492465793520873899800456060006153041780340049460670587004620601410393708558045611727742320000003615173795132000516398502838424010204868846730365204060577289695270430389139357049019328828796677113237808568049039020138817710271224037880507940100748906406158499567108820607722522580250604685012082828090107474265247890404502426438587212050959340002008809359209159485531555860299000520947534770001908188030408048850697695902007141769687660003290050891904942000249310220149498781311013614561047063113723050990060778538812000008040080091982380841180816441039783708530608259702541259445073653709700327575515974144470986895852633339896680979647956882000298706681700800938325386000160035181015430548050860096021873037965673860034715223310001233574361426560429007390778050106206939007096881309171239210074356489489820646289662492998541836483130203070853016625024308295667941245069288270351409585098903076510880103768001007742200050677170876210946738090760313061352600438614030825506177427097119036417078790008726680875697677102045365907107766305024554144934240047300560464531265809558010215670630740828700386092840228156017508349184843578949006046108506059088200330901304328405163270654386912492656470899069061270005449263030828407176895022806962653033441428041930591591801724576584710758829011042460808288165830908050900378220080361600071962196704111209205250307274192122003554354000725053863424572667823181955532372778027805008079820857053097607969862884189066010899288660510050709366303340470892609056684994218923364308610457470606015406278410002948000008661198916505900550797993105280005581437900438073007075685242180448700208438601700576008559142564544332088400469700008184120511655063068090274377071172208162854313125950850715040565642958863859111880700503129407878604419618829695505585608006910019119897200540941739369033525763630007437110741483730067789578995255467500168120200509030600071842549454612558557810783030091674901400178205520600690698079345503980617690106030574286357664030458208599100068275789000775072035207160270505354003020739399190924750105005548070920028537387650284676709807601754127568057351038074788697247032126931557040260590006785525549920049900677593597658650200008033111090950401202282368405080924090173010609533763054604649070163902610960013370662797177605083800170604742943427700086009115716176400285880202968330544391082975388009278871302019109310404650416098443606734603641440059200005120720808186498831024601970194169234653029098550010341348721424185983040822080032440183382060384107767783610076299706032600077534075800313497794953139100902940028047900890735999092432054604850925905467004130691168131941455598155811162622968560836800832056611460323826292436205043601908815903228009010970030914609844903983009098739869106960055942292736607925820067000787119578062211006777814021060203603833787381061220119846041084804892538395032039539277504466088326076307006300843230784804842560942400744470303465038602052363230375346108088420509607232996700171862592398326310208132009067683410709132093094608948100318570045228700000103642960045009380068485105800848518420564948009282988347719764939726535106607234910725908905468008020897288560836750637966432407604792423904755801833373639179047578002700830809364459208704695499072438378751614140281136848855981883070236309840024892989149707028056189225050427268608649894403220061526903013422558662702202561960903246030600808696277240650210021401280702086881404406920109852404696128605058681773011704909734065723364001370517236606726749040392444805309017498900832000469505880040387201121943465317290159611547768030250082053293213014830502305063091185995439360444686708503309735302801874092674025093809800505803090861608405405009000417110678045868259468958405318107295398626708408024812397855009087250091880783100207788470305381660404352443680547100770749500643050140901405326004994079533909408803198502411777520396249812255678675589697140502181074429959777788851341215770702308242027907824975759309590484023015012410806008436430103503448110950284131482427107192990069095004063406507038076100078693022070642505128760480585289824305171000152880168882149885304537764899446163093000482675436215412420696002656280770460175437946090178675844449708570118437941799766304063795030988055000731025540227608690640420360780313909347798780053679004629999077000153853005137304475452310253091689820487141302030114002500286874623007502391420901092677456400678036815528004463004531409500712658885835066285080084057570220776630832442060331044732093540965831428029008249217080769867610956410000823310001000856620839605004030603241222017180000817257710508539860250770330000610267104762317820047070408080249329377207551047040080008905878002380960004376776024047607902927853332080823460521321704005492797704602316152101698002870084006643769844102611357182616077642160897061677042325151354915424510612090354167200843909363805395208022841547905388096062527230148307397230811876487750809730558030957779028528043068058397482486500908061749022090440009705740524636036119122437800013705305897088407333944485506678228038007308260716064945797999480930400549760410041373350080583571064215442096102524792785856074061660190036503473480663904784102887923032490035847023211570711102508800310500159800378559630511526140504780700117044000176661083967935170205009899454802088036400006007110941740669366349900305127095609300469235588366914512053213300928207770206056616049856070103867513105248724805089830079939806598527015242055190473601540981021398699101509890630653147406700835290570899467068008306690109030858260534722312883316201003770690097645642797831807381826370032370108686682597308057962766162746526985767750795606500539900596348949982340404576063792806777576400654353276580047440390807082096585302949611310172073251479068117400501475792910841500697835020135140240590350029310698109284901102231252098915587644630300903748099036710564472895523678275503720553994073963091072603215478072694884714685880300060090949605593461656570706838038488811400600098600641773951205001587847639076006997377754068711397725116607208660072434042370522547596332205589104048163997067049604476490029959078032030048075600481836484840049607305069556710167280753608901209482064007150169213083219006659954702810282752029071554326348526203800710095245454610663546200701505074607492968830634756015276046039421168108802708560987204020652904136701309274983059608680040709110793963971505187217910076630131990803659549410100787556975012801678192380685070440766012491006696696008848223851705829354336907300946210252600513004046850660099622360336312360001801691475319679107340597585762310085169733591977033057568003638041461209912400774184700598203459770653518018432797703178908016658986834093193710382753528162112232441000509982393632550703673404007830227700009501096203200753938164630905064697320045600407813755170881083900600656107072242218039011004615069078132759007705731880944410923859072967333509348673755700430089560981398630596599569008179386479051074600462250993103271403845279869060948909172285620007700952103510183323729233819297092504394099009515403025469186240003079676107981895908718903341190275390409223034173123509388007870193007806232314286605050775000504730792337288090293027627356837045028704977908407309870670008541548932025005017158858003080500008248278553500004437702853557000224041085351708697180903080778684364740929617725219013402032079313761995706347026290408600303181607101317822043051090303190408025342418800701114392047208933018401707201003080408631320394112068458812064040475985887103216371083708208024903560974324905410689967122541204141900372698722700989676401800006773207268078452414303420702087812610248440694420296406304701344070505025741705085753089314417005058786908003671030852638903867970837630034088802380043580908448282829162980306809072947320263096680628940723262256174606739300869783770672507513605205464175500502000846030248010125436536000567900724040590975942002044605977996565051682336409157070330927008745669208127842678073530009990713078488724654093690040467062167305780207000308365990149846040150400620716380078025564095316067468349798097037191010090553238098746120876833324300033561775052452010156042340717760106850080630396550323202197960570031089034617728931459760770896912600012790250407474684267640650304593397511001005795341533892069670242702619873386195080861323201057187902066951980510386602801029407609138847173000676062671900556235889702724003467581130059009583953086318497187000072004105075028058248022178358000469903056186750437027907600167018652378668200312097489028971834273107026124608530631058000497709026399657890858076583362071208041868805901220201809090600040558209283724291996702092260003904457142271091620555350858010741648494308661209338450546034015163533356620304605105408899965371637913026960707695348453804087091002296404839484395178756102948982339564900210536680078000077054804344431093101990340853897983128144806798860137065700244302700643029606670585660037541911023592879906191350057930620110205809707904059010309522036767687087975084683421955590700644854720080731099066278906001050181246720982007362734554107076521000062019316920000188306000778001375759614070509690505040369401332707125758120164050770201514636410676503203000030002188194240094707925794007103910463707508410735914978122345109026171100240663078053856299657143007603510760755986510031597080555820537500158052786975306540089080909700257601791658180173064584091206310109410116897937180275071105040033116174508684845549980640430076028091606549444647877366463855508266207837632006043746653658401061760350711783823007666074948434690980690036873729313010000179196771717334663073019889554931900201057038407013609710137110702387554725685029168553677540272910451305058598839047900103006015080676166110507811930748403921843165607970966928864994977704374791390486060712070493060644709700000407461302000291802963774097008168370042885828569664032553301290629157264200083122402808695012037170694059444804999028719014955045075883065007900646278030706747975420653722682621211652027570880626526799028880827072157427000249356009410535028008506301636305208203101660060400917397605125458200602197447753979808828587499689205574286335013230208500960920340758158707993389598912055877410534600161057607001022009600882027960209040357492032561879000090090604210610039020001286405565142050688368538079737562922524571900056036800325006037501498406845195227204040690627245458026357103703035442400393852032584105065565304553050495363615051933010196126273920879954300004203780917020025202081303680840434680200077896992278313700785405343403902705070090370000002794970651845706447539797721472047908056900096015038690121069058506836076270769929396910427439596885841594813554575421355928355341847082743096004612072801023428440145290048930011040483369210122007932960155209692165232305091830187420480892400804062069100460480498503067681084900275378400007840290684243408809972000457061602118197313276285767800790358867439176450594520219029355607030212002025404679105170047882170220838037425037045504732795092164901778752930930410837444639682035062580696658607743550728127795738891024079360881902936980830025147553873212209061112468707186400190813693327409130017960076419177560930962427007193978050078350000150674833208592000390026252704272170958160384348680011006864380227957590261935860009042250608000020000918180229060659641140109490087384560788510519638014090060664295276251042938609910200130078040091770514894602380750790090259557214863064079120094800621020589883334300335000760775580192994230368009700005978237740187806997770501940315802581329169180239800023706226686570197457029693154042011187166587502804508600825085873866036469870842500174016640290593029981130809375320487634304040415050077802946261694644939104017284691696356805267902955680008655710516409100488038291900524502003075206056495329256751997082552096540310036515004420496000204852011010038082224764084387999057565106439204154440057575710518987407394723086523072831050807000291924752799701603633021295757505568024538100622260880020987205800090989260286071519671051460414739141508138099001195395061082384753030890682837305589728558202561334059089891005270702186097770201238554854384470596005043260464810829054749844024200109963016853055131001907408954103985004020179091907705868055397110704979004027175853020505552442190454330514280818037630010961050729802679607730420357884768412104477999301608092566686840150863037696651860065029454884074700019193076038675040030374080470604509302965029711005055983704482850053992640732410736404605350208700311430693292388807609386046380071730898054848605027371319990202836008650065940220741981843384029280129190009087565413601051990680551807074062024746586092895722386919801316070800020001026799954590248560828509800884182407505213699399043775824927087593170967928058103627490944607628622587086682002505323087903197488747328081789703011078433249000950263400601327133938012577662820567502145311582408111805804073799902222005630191859037837807505118976713084391949061390050110550295200475409536100924094786180903595960652568745684902800749658388259223493309689409046621699807260861600467807201598705585098871083621980878703331536307044445050340100928048820775084203149198039161650030394136412481772645330811074109093170514080023290300985844008399025427288568919789014740211466925616948227013320185478378001087860080300400537676740854701895523305177865307220004871232450292082000095841905683127920011846757119040302011040035433407431067624090109501394737931100480487080420291950752880120222633734705020272600411608590567009621573550057700806643706520820028910263810586484103075072078104207158972282057678116439010578450250901063321918903350482001877002610502214495351325227112805606824089376197289564933877847669415100303376628991820020944154720780900537320728731278110149058309786289440808745008760055235330959875030648066106340085030212816052002076853868010298439256670800128890101006010023900147962704651950039824388076995031640008181050430240028065667091231837823904434070460552188960436000823904830390043430315936901189938226759670450668062367430310702722475019702794150181557015659081685715971152769050502264879607868777010606666097889207280828000706709500355345264008188127486580504209566699400750830048125138004142801835670001752100962942071118082058448368839450609099067460600220934044725314509280698366344601810093653705260904498820691699720268785723308270899180690069300075200972113626191682567775359067614204716575574869026005127704030743880148798420746608408916330460405926834960630205621288410086060400509768329054503601079066803884735568950762287100503377701708437350340710706403901090326253500652017706002557436101000749209040009368083522146514993002144490736826305180650093023554020100006095100318754010060190480830990095100027005665906795792866033070438790638498969278023724968090142141407647394490440089695098710645301060689009276629166009281778059263068056057369203369019340170907741096217120573783890612761961903897813508051090310020504000058575839568100800133665610096756660123433245604808013237965206660566774464668010698910926552610450406847450758586011213226018885008054320060076007244790986230306001797695624405700021707590982521395053320273789371094273169703507340009042008004449744208038694428683980486606400180061303555403940516531104479070362740708404280021610339270363673706909352489984280271230560103763639290053206686097585261041712588431974081910004648360210300880911493012981308500008176680350100568105401690010054269161014031963678504051130270060778524737713426732288815880083910815002605028620990947070593026843050055002747787726116747094988935476064287912142466858200990075323050420982931402527284485505125050678557040208056401455818076043014401550602540599002505540701986992097606293723793120044056196006988093383503708902815975640719900501633956150581587892063652607501110026394100082600890607085007659821900500010067273229085604156190054674100220222073055353610869938018014279413620521093459640879646094648415820610982000938944321434903342356658902730484175009800532706941200500451322230096020694504501067740964009050304064242439003290019913560460337309822069448879775899002618924701035643471312812701210039238720305836681253393090301245950239513531869110322000218050583698306039016200202734999005773014056024642595760598698110921808007556062300661825675460778365475078003602934383374590596412599450998926851883002998390798830350855228089088028309920001410982105095867690903701533990065608121206393292080412877233808503909243465759446008109890224157382114950512570070090040613932394319043675479050013119420468736443024041233620949278056152860012460430440586707579676247406612469730408881011200084062600009501773085764515079403304222073312710966003329867829001466380910012690001734749240202648742003791028247310013561322662240390113208906007927357878904109885147045085357136415599738088009870703567046560046020115050363804800253900718940737069827054307158235236817747771155452870025563078700030971719920569276349002390202390863045510360600423551171572408508439353829946602054171759901740406331925461283060439664216716778700254058018479053003039006088419120729540106789967024446089353002080791034705476006509054521201908536700456152061452963497505090440201428462860517041011990004551206401937005909510777684016853790051130002406530743100850660362051609804351600358008780700580505096508740009659768000050400524606593500900396488872198640644046202823569075609809102755158550320344004373397539633420923825552461868822070480704044101379746670909330059500972057800880745025776024470461603502500071502049321826966261568932090010304635952148211448323906004276744200978032090390471202424600836863702709806280581064904486954697920220601544034630761656887000134636803090060650098414000242384020077899186674740562180024005297055892005858213371033007735456210466488998098808600181700069059301006881328141024319767650014034564334009670030001670590425344004000727253026402862741806633050178329557800840010804767800649278721148083008103301109485663902239061790107180279052800457747867995850818246390004061848988460973380319560707687086602690000885445351353208002300826770365751631102522920008290909760163607047170587097791680342345015125940301446706762673723235506095080750142966689543420364618820874705021911260646774484249103960993708295912173275054590025282048407243232878960709727510011334140444714889200142069069829669008804252600000522285498014279661793780400383626078862539250990039802049377070159078798222912900741140853800750819948608256565206064687048930490052356024920575414721952328170285669115000982516146137051957942626840534803876145580005308192770327038769980378755500278080230067293210683946700813480497928470006466050110044262604358535035101068794746707300109004999028094988635013759607928648684009405053045788476037443025975000823151089410565572943918096682717908200300247700570191346383285172047522663867996500370855665056668503400459240090180185149305040910080648009685554165030280716012001837530669003860288304864077456007570030284004709601843937491957570259084077400856840042660836822403540070702868024074672446700405436992437496096509292281091035916795029392719772676876430061150278670680440749607057616263005854240062010022090400776010007067360104050402603187902485083570687563130493131613003893200056212333079622096868928472527415032490902708600611137406069704162322558497050903800130091998516060004180182227040997530059277653036183813206899908906422400060075024947600279591068812059361038542080011704902031545397478572682049961201827209048441712147709603228146200090195967249938502370867590048190760068010150786507770079400307843561090808108710355830064016682004113910077762170452639309575508682423525400087005610660460976194400730957782684110054500738000040838507076887125400100611096837763569698455297970164866104420860002903760857100050033698527050994057708400619738444423157474785302125001605850850815866357218345882540493150230838440043030616088565009403930961580858850057008170059454096206030994055077620707008048007198200737192290662300293038076728080778469824922060278906086601271871648605886910209768729882185106068256584013005978009239750836047822450650307278824886853202004607507350470530593126730485575008492260204007002890830707825065028575874467388186907238010083679605035044228442051059671147004151449690741700000600982792340677661067909012426912554807460444550476009895977770908517846077054030361811205002314081549008722108401581770000740940480024008051050875790490184208105200665204194096380606300077153180433544310000750001370757498539409056942508026481701171726093754086601365565906952092085055874790057094278000400598315772446620900339681967487096077735061368314674066529280086033056210880500703670552807017644752602346505519836500250497080290787300080280205481343959255416254996047077601096686095973697723000060852625660937023324187995015095987265750142201062912698040599700500547970635045610063909079007819451090012250003493088569021347104548364705570544902847208240769870396003906784617103133785481916283746006029025056150885428725555000683331699867231065286583430070009057146364460533001050041560162441802640364471988858771077043002457766330780235802309838407903097960509049908056195980010238818491050750533360858707104747740260616381973804505406951542700733250284726766374172879659616156837791606061096706030016112010990008017940067102750709508683888550818201974926919347190704312612900550802988035043051777024712151728000008808037043018690771055709130281350620250660150018191540007409580500172527631060261692920374597426070586949347009523003528022327229225521389188925593212600964057357535077830903439570000023050046475022197006006944011043862186698072058584404700705795601188028184000242870219389497842810866998781168270822108332397990581055100210763841044564676413101652840086750430441384414087709094320269787125829307705923228404000455402643989603090730750300156064969008551015030156320690202958726445078662526600909704270050811505510753500760564662260533956366215663005090422303763048077818298905437800574007240005962300041267618918812050800418839929458220800010090106961102650994014325223328880200012146030404365571005456688020131119328564041808215519025020597900201609490085050130015735598629360795302527032078820799948123160425028615939861088289040935890708919602036767449130306989006751700824918078201873898916265769030084828457900182098650200002855060490230050928144442988033744688206373962033085438552904900959280258569088492094153286830033904091081064051842030400721268698957018970384979835268290828814263489906582708907392251114905008222959129463249435559250438010376699734890459208430059568260511326006451390725580202357005619816760930240275366871004446539048986404807103011840377434773176503392237140780097080555700036500124508395780305038000170840995307751870545836704069400571342559900917528000409228010518086313629009081846269060345655507002804319410675294370350637812090082995505909934842618383022408450079810551580295008941803814556832710014289780152378987803320157001365982556088109896092104411003955701967370544966513402905906460546839962014019560308050628637309626054622130130500808146536105003320312049109414293673809040554403959026935055070450029276507567229313905440229410496286096900539739493235701507509965420000848940071600697708202424604063106964639027302000649672032995049410998689809739022768175936830904626322705702550902040908423843725699038127004215709830160541107659727090318234911605546803960303105412068855419773733206381090865602666023421320520772890067964660490340608869180590809193803000640103600502344799955120866735025204029404020562049955957490529086800555255389007807219607509018000008200907424478992253004300143090733465780902872061510047038080410402480066999130703080005777079706220060700170042449981088610404468467090027392505299937030984594954030067243004387030390187510009090500600590618293075300590591849025608808756773783504654605708301949120268189007699509921582409069997910652069225902709291360709118924208210748261332240400504230103313089206451519000027400766273365384506087859095010781159104680280100787025613440001946747078531003002797009755806070350068172521575370901044090082008991409330081283400520798452260857585590482739307513938292986590226204857064096866219890778825520083219144939484559818010025510008553712983691170403800280269305097338505970820029754186405420985030941393240500270913729909421210200513042708733523733630161100649294254770405830068950448032480022401024542209084958957800178089793807125985148664008806949515010050810213491020301049529009780018685821031707705080209783735983508940299260029270801380250323576005356774900170532395815861915196820565612168229172968811777530800386060505966613662030006208431554590410353353410803190822824974056669001934863030747803557855031400547010019973305888389600112649041500050416609261510549721062461608900087751357256135642455064019218133067650267029806891160523172785770167008641100980519467689052114662003900096092573155105590873957435300250415770013943802009094469083706360180888560725903838822638773278300276002410863627535708634660591017210318558837055620555929246408419218648787021461260370823088004523841852314002079230951063000378270740546378135072802315476380932026702529240331054006097035212401101000345262013818825838077042988608454309322566716770009212707255029063870994710050095951402608599751256908413280109104480610002293030187182420301374171855352007090080309800520066796540109001352937685906801501188477590059649810700978263014050853090504551587762620441090250141651790053468707603825028997013101502738010957238019521486089422034212256036832921146034460830465411362080210428730000176980294918113702905483404334250625973697311304052915608400004113004368830140489038809155282550507730216358959797547152354682028013955006007065038503800207176716007907807628424625103987740633084469247984070360099589479403307604520307393454201213850500024972994109400547738484203957400091800700910350415650086008394130084505007509904700395136040700003248899595738401674043480001002426643910640394235050586293020126264331708705002549016142512307840001989355563086434194554622300207886680201014313837440076075933668620233908095809651766620510886950683069009011086259614016701062310122050345077112675886510106014403720009010600004007720450404360004336166033947980669270306051096503983903857680035530005902406084289800240051812741076164507750473924204971496051980799044570803447300462852008241614887946799075162803057902064660088700814492434439030798703001502210001268046242777963066440700446787682438239982389408351939004606404666605097796747234920763370649746714093930664515097888095054003313466267346075023245093098200007086232882279150034570703650692056930006398277810047094620900510017029001028196080740871200202588183483603350381106715431990260063665322448027026608726965467070819891051101321177348721998827893970106393700024808562918090202948400260350373734520265602859602810980168493407660054035023929203929915819294007151694807838500647590030075006064070704485090177309927000404508347996461247850635375684640874416241825028161889500112180888708695525046761077858288752940758949551401625475570701327064739001009407965940457519327042544606076938765352725001700938757588062718042259007801122410928112408083625051085083237066234057886349504014570028866533809098142916333252020504803565051200030040307109300936065920503367233377387125690045000540082713700149500209200401114835271607000611111033370963162305057824669858415950063210178533072476987487520020086926406906674720701582918095041108224017217303757310192660009522959784051492846719990608867480228113255016517733697643650048004605010040881182379019280700631435636674892830426770542598264308099532167407965720801699036063636914001708201056009500804189511631133409102418075277080407658824538909542090627500240808890526861107338544105970100510078170500702170043843558800487441256007000228009693307071013652603166452041565480420027033001795130594142572008340682478423580399958664900565455990878399768804560659358010709260483496409084392106280266405346017010614811930097282304347015502930000333409775550347750895332574210643566050673395301124486050083246601870739502080906061980077891824657831112505152667339509908060765564807206896692790145870601201698016967068217203888990018450960605985680677726111627883780260257120121529976240145305104104007850420105020817386088720620293081500375440301120970014079487341088720290603871864834091260118622279364552218461340974219036409065406688228400633875903271327301570787927876401196486310632108073580232020540848199646848402767100306802295900117980200710594350364400230923404468927204687154205941726933692890350060890517080870496869710112236300970890087922411541099335606553021652629003261069741607484640800482009840062021009588104060014739509140803520604431166471230201509954604637555700406564765140008038903807663284099010472901400145150329020172843011181100100205172907009207337129080533948041715023110070628013610072073850493105981762155257470724903855838814507090790466843961096543625250304508002002961180547100701127062365298303234813253440879964506773679070035650835749880777059703387010000003041544182218573360894102010087066455340564900530505904685348399560456094540339795356221357591747014270610024000369080709404700835664001700920004913502211381053642448484750040395006189416615640306300190099930055923167157979306167480806671104589918893566005010706992408300045669719843798905472538628500163590978107027619173937716801700985738623082006950048466617896567474001691953984852070969273400605000707190189672376825059366203910044739928093087881128287714505387407150836089169924088833998606786231300502389709102848168599752015400603091931120105039082930031921686870894027637746436017710527640075973321030400550000290600390578072424856230828011058134072307700297934010390198876600804401790015080177357265061262105830007051116967241705509090424720702050503405543771815580002118289888107608311728299000810478573700074267750209008099231668070188200605056293075400570441697005909350709231541424447378672806617605290027028734034309494056902344665394360919802200786060070879802670939870890684221207234087381379498079448906788183947570294096503359612371701884037398085465918612410873624099076907792251161330907603156399511493036002898459448695766902386132039807505990254800453178654078936770758204602051820040055979857671898257709031109459115906829904596332237666339650538980082224362286201960012090020024824700704090402337744003709006600691005533902267089107023800479089503604602538720076497269870085063020428279507550068031476527200398007509602427213790600031567044171203261695933400039741990101907012743870024044094639300070085015457730257546400887763049159305780670236651964028888749716020000568867026422601090802373705545504990241554870834706465907448930096587508270500007840582002030805609969512278136932864584066482508563136810091743989202476439026030098510719533086336160743472726631070050109003420377604084005395697908829796158566510905042646030066566441003304414035080418350845900050830120760386109060400070030095009558658233773287506006640488602399382431821198093258350073678843954420688092035350788387024238897999107495005275906180189833070210834399555000220102335620800180119800053000074075308809000005575913064986284952024400032596600100042058232070799452084827257072896134654400283890890525604910000150613944006840069304083462806036089950428053156079280720700303536049245242085984109440867028651803776020640869509002444470606146587020374789010909301083064000825973002715626067350516941618760520048070553880385180086073532162405070203627375073061032517723287080707001577017100515402215709340292104600089679790842001410411505003938522960465000080799814333241386506104109516150085814057291081129094544349684060040070050000563061485073466460047810099307071663771691240300488392364650054585880968279931686990804615416037078070590001808329540914544084755700802561356604506602236462936656140750710585869376022688953322463044044908197655310864940921107760361770830799339340380461267606961003905307093878007022875020675900902401048388244416970560805407040477508830480475245035883504899055845361443991701554660212560700669476446780457683080797030046307003961020970800768033940700525968906868881000420850206579262360674209156711065017350651209225263320302037987556003020097346671020428676015962636085564500200985284971314419050449184781806052129723037843554690907834060035346418960952134087258004378120577059040700858766022409588735803930189798001909285466646808401900490360802088886980132060001779011820085979993982140570419650802100930708018688806084190839304807501867250190831560721239872792701002389371941440344362862011401185356365463294350902398809145907485049444203465016028200840685750408532443859107430480161725852020667760507370579170002097505600297381470101410376298061079949495731519352017887070450632016660912618038840960002505441706973904057118102966688460110607408800731802984083184476654930816385006012790109168767872587051016865047901014004550030586582172425258739114348569056920550093397589321554662380107479194186582300016375830812295705095971000775803507950863928062006805711864035076985947747300902400071958003265001081018507002616026307941992173380430999064998039479543333534319585042020074460207091051080707055867726867920993690247560283486800697098421709040269617685850784091591939160604756260020660031206083021050109080871236130191476670917197067634860100968091061192808095950089907063107773706909156408120504140060046084648828678126030545096938901314057486382515000902710099848590276099278829462400940068068080110594030709707490046302904366508027004580808845656610018086022800429533097847216077850869386717430951706238304249098199001070793184006085495155700361575034695006366087980762100149975210306076306359890984666011050447726887490063756118305051556019410352972905499281018078540463961920276623087306299700383023741530826183060502266936426693808952707356874716955558974776402000705073483218755544807639403544069016607376380008196930131803955003670135975180288000321040035776605505704426280325365000123200430688901850668422932457187096694090400850308011564407104139206811096390434650005076703383649208096903810638096440620157304128600010676427001591159454170550286735936071011870010621764866604002852588126765494200339336730353562311090995001554761297982248246060906651470611718882754066924548950506108933923873019001607508281165440213802740770061242760003805800192721451342759944014926252931787900420203701400654646407493849190433350401542073507976566768393655704258240196196885609185136339903335498579488763700005649780780618256687200001581948178909550539020693000040888008377499075780905779810299000216361984381220102191155440003399920724062653052253503271403936800076520379300740701907087596926701525222332385082299018877902838921309005350989889040080717471322907340704634087204009057356403265239403560800023043152459787560700300159317409470076011324693270939064987063706120222589794007510770172048160034329638089030737955344202419246089530078729304209588761157700658175561300270323510506571202271700199813040761009183610808340675841040776720610488207106531755985476830125905300377004186354660390715526070935997305394101643461294737337000787153006370107378780513504348654906934374083520060081065065600880320554690577039277994792085175671306833374579518261361160180387514648745072302200934855088450110849415363560577641730107000998800800069351798681997465025004954430450583773914281781619195006560214664017020304819590807008657666077052800030965104093323905610255703090078148240931312841402410919349831647574000459071676304040944650094443590000389446089183504080069384043062067998781744955430128243672350007043064830801943690710400271263581728446806905638904100652002164679001052385899786270070703030102077405907106018099005988143627070675566305063029504850090081053461725903580714678363692407709098079800784622451758739615233043041830756194070948846400295007338007393680020718564051084594303609925200840863400005387223908759058783590378844477879022933084367034232327771665620227942136693642968939183689300206120274933368041421860534659237614099345560000703317017095407372526427353066108702715270667209466900261893060704063800850571600960756057483405471198781261805773002690006706690006735683070296094706007364143787502575412659020790003702292056332390703670215996148058861923120795676307554031755580041972033498468390325513630482796395605173840008045300304036411407795530814507005027830800157600046448720360014097081300709260418679380145602190432079303081508022950075801017364025774135687507770003922942830391974507730689791763434815650750002353077104066402090050048836015930755328797463205378705110526301307451581946740908700091228085854242611761379661314000910177933085030570856750000250898053704166074636026090023664480361088036201926345842939084172074209508514792000835537303799089040003004047816050593177508699736073070109601610789545006492714058652565690355570037072749602827440070885094818821502014029807853018889796175985243621100014210558010886816697704754650810771409989302228360030708061650197634000736600082302907441240090605407002100092498713421067630100006263264020015958659560621104605022302280420760005741014696660100070106923185099009758590202502138006025013455598408055419940428707217379552340662958862077403636208885090447978325123811138071504400930049078316921229493093201162390918031904731123092270035094805870241394503031630207530756730986640673402807400728447997101000236106800113496980339517239643030290165340588637565030743813030310520107068380659641580501815453468270012900712249567416800620210810731192359816100873246192478040033777220022030470265060203803718201095408240500790225288524291404097770666060119406171200227520567594120598710099449057077445503690940978758048009636625335327083765000940610204877304777707826176645609759600600640364400463342730340592453993049326317707778421067265930693003660831329220436102482609590295390511370619383707810020609990150877036376043731780503138501984197387095480529088034230498484014290942700598940800093140541016824025702010068034408100458132051064643750089641625057933453959826106357461650065424900089471819955205077015891281001392903018173686386029927279600805931770662640728501006052668759472453620460073046054176850085001813379420105100036493515405000238090856047558660608001706406910550700102259701308406007020489507022555078455598939570551930547301766947023057560898400182900256035482091539518593002820900000575001009010162057036087423342373404321490550685769315404309740504385832793706092647035055500248055940370482008083961523233783660963387163781425440707020069064000400598509484390844841601468286166427896823825998940702560602876716550644975070480004351054803263456027781245044026200987772008900039700100427086193846052045488935058059094104464108810977608069385270010664983746771801546896420402495554956019074939876429235218736667780435752550446626845004063038420038573728207995200014500580600419801660771192700505410869387006253789519801596018809948834109025507088129701173408039905791379602165540148360600983906220027091105551520595075875330507055790103796601054158447807060592369830744550447626230239100585094814060336907419142656700283501006050400054117793308878563506797697420000106973034409793406962014391139400006203466318468559300300940130452901623050213038082023432300477004657584800092280616765894691025449020803296802282562306501309706054089747206941030906415205840349893707344804565206504810020571003063486750809858547000563130707259680400265104020482431830704338902035290900088806102009286882021621974078109450005060941487982848020177010014182509750503229560040312437435402616209233690028835576421044204809240539868861065461402000189330052711016463076454087609725005693031590794082509189400424100278211505528854909685109932603597205650821000800908808880574612690450956998720663377301759203430058603996904032828748121700470274980072085020956301002792037885121757907675873963050120640000734933888808287360252038817401842242449852588706615887600264570969787016030240000060007805200015531528076363082809365980310204991388808995021383761722983076641879642086497290389501723710995040151006206105289556250282001879977782349657763780006623938086460829774700801855387750059800138213077033908494503011080910068470200140607818040859556087204001140544950096821087667030307003294970516096602850320857275692351894891260463057507667350443808277108358223603577807707005142400440355965649700775868662195880255389803054107633005812024011130439568751719210195380811598086516887158007908361440960598105669010059150380891009999147140784091872023990396338669565573661147530062247762015822908051093657070582269140809008612405063058280059208507973303862476166140965403462062597818014076039103830020817688290270300546998690700150891169735072837700742500800140104950158723713852073045705679605300049587380500047260058785210321884644071648087775499200993808462997754592544300116243315572196544810546590163274195705020801669013160527088027257308793508040167050772620038168002568065032406418422102848080534539007755622789978022365130367637849392749477102889861869400910752600215182780509160500032710406024583410931874261904102323045272076596300810704509986899182385481056678999160801290790838804195909776277460791366994301743006808053240306454420270386014688979507034140101262386722122415864231860033009612722009140429001055400290966007563808988802676708907094095263796058385500109948154609258020232094610536301905518209713300003730600490020664400088668370039204421709080601768044710947063102396141918379988040107037961582601116608001090239007216763179707757694260606708780758820909920388006029136010050203052864765509075010010300019011491522116709085608399905145020307837166489991601307807731268729195018019309370884075551650608845091323708318993008102290402059000148205306051209881214409870443897859066592500734054599430841370229894000475001230293119803751018014052815122030080171052440498407601362100415860402255037091300925704505885746041087004550626250200239808090215175780844053178160009497410101088307004783742681697399479835994310262716690046581012984400910115878519876794297898784043560302160321948292120865046311709155870410905000925748720227303803196326988010691947445445303481006184080605801414880630287089348690897098042478096384397018430688350617536253913493436096500025001607456586068023806058939560399507177571900862079891018074977771137829109300260504058739032230858874375020591607468702400068079919699503209582054047843604955007300500699727689519008610247899478745391177740916272720640712067025990960120072837811045687280130277097933301917041103255790049988807889503128431102068500500328409606400698548540057352017034330695703051860172405078751032564090303705892031940600108105671195089308794759075934875979302479019033817310486807020702140275738222083730946130240595927874165836705274129502832715099034789511499699096335550774892660053481433540444306216200990079781172766379878484600001649077076760461976608285947520021881165000640680796387106258057048498073076603624608270923217510283353978091825075680551600586404654600801664583334053000007559902008065072882891646845782775781201357055507957209000802542410018855660240800373290020072206608900220906544111440205985014000702622047990121425089674267044706003413407990458604669008900200421401722090463476200808250543721587182721102408956060965486039003073650027755409001873016010492289873041021971124180014236277406562038052348025056596170327690290700510567360810000000303911780615015192874022063277989300049513002060066001736807920093900936504741506240189758077100555617040810951559032001016066835000561116024685250800130990200184741500750401602008528000167552078345817399000303850682723675150737070510107150235592021903307250830858552345141708928708655198016090876071785496995080901380300944590600303330200850690040151824886502600967805702372690448100009241103226090940834010740317044083232361089645038600555944205006872066509866778483180700810627342900001641005850304893619258710229076870635209010894209021046071578340059550960810071909049230339037000949522358033224707401576372062360885759518081500520808958940074168050080090993421000145295740944812830905630074057886607905717621690070989010502142007350089999359820330006376100609276473800467735625655051659224111433821072430600315343784820010030614357259706900575008241470757604036892843220320010630021080529485709710074280913657770908753495525508454487902915588104630036700054267504818909549010650249095181295067097741504290612845835299055621659850500019724053510006169917580000031440715610928986909045900006849895427853140100100675296400586240909801697026634507902842913455148245160002503988044057850529786245020320370975014981615706149702771106009000904080023070051071772419700618088222607707164703734109440703502054268180680030388700927537033607860932065609955121078278568394895008013791971409866203920337100910115552790611500380106684003554190260084508007301480632694801971416091023088974000227631508149385032600821907502150090967115891704759628988103930114702908013060421304232647736923243027701087640158571139025730003876303864901481204470567600930908557009070091530399012672036211794544740130100911317038775827478836650035790805883708580120295019036721612900007320137104176889116502361350411058384911776020021823118087560522660809918488011921817367313207240460027316044871001520751511030939212038682681034233006000305909050483207304335109404092358689106857020186974719009766587001000550069477998150956453708500415599509020061226983502667710640773998701561268345911200727121500661500967800367835498012350709604992800050000976664671793790750508606257419385209076500544341680059940718666076671230283907927303360520068564178542805103373350710634874516220154503002590394310192100441230003947397246097306814743454072900250006016568032469681553133695647107796055202386615851072000410876823907447345645105608110861713497908000559797950950961887493036070786909903161617711860691077110130310935278720201810630160044351109301336512564642670418002378617436203310286034756263562606340304800709650506009004000150801250194932690016807820912463022298788006850038271910908476033604043339382961080620300724085498887963838765091007950460489380802020546985735920820990520847030460745362268013903441428725033825802042411036943439683011663693316001557407500770366024052873497401021656758248906698082090107553013140308586377040844067515842721012456800902550654021575028300000407750998839001962080010178110029040938270532801979168286345023676086878718082072002488800711191011030527080423380797878597020324036530009070054805709817602300988779957280037444800880511009311913843532837925482017285869060809029039000204495074712841727167543887206900027694832110808323948803240788029525557707082155603516246070582788019082077834630130600126802800065460474570163305720243044077510920990957007693041008183951605228482193235510120030100317080005930773328620801043130064126131979601907001894281249750992036808702047262182530006350685297501373914014453763171350608020194300850005570215409000670602131654890029800817574009060647190047053038054757300275170708739297652670946508007482826242574060634600060908694006511734807920633580059545004307306304218010060927205748936510739747054905609678055401977802409480080317795400695191446011859310045028736738790073449178455991171651239017042886040206200001303430030038888594706004901746404481027093425510340790719806006073332970680017103659880307689828464692750469555560759151279506120150273138904508811505983069450750073862158879520102053040102822041107600124409706512650479150801223908601680416670200539106762460502133858660661754796195821813024709752783241006699443364015490127683036184204140612903507084410003278570409410029750509694354105308204813942000286085414059002085870005366103847550001237835116006811499821008048680091700205798290337724504030161268530995757820556933405752731995123732040814329840674766003368694420420135000658103090600392595650738327358715089002308019120836301960835059643061614966404141636310430995594204200554994040046269836874554062060708020726007473076055990020478336877881033306190702120596074927564738609016510207808408436358401026079794812197520236397495085846828806471043505983833113700830264146675141224872025081383016000005710008591098304571660014325465354440621062524900510540260083729510802300900004970049072958083233127084017944048027497060897704180602169401743016100219572444067990843507800750200703971103005279247284861708730760116001134804817461965727000198386009570520002956458634020494190974504951717858453048851781150307711780199727067293904700785410635815107572954089431436005050202700185009565066902182430770703786115492400901338654102700374100693201330999616203137578109230271732675087930009032186002474329695337007981879804947038200194354263843074786408426737507502015000857383782039781677024064994500105187646805985502008780034525173847273128010175050352070159055396003322064662080720124550800065019662080390305055650904988706115934252600890002017107905447589600884270476339791390435817883869396909208394426441999402064670655495440230310977082695606507008334386861392099194060887333078012047088790420375404931431971027673231112375919030601217673270870003662840234867993476450009106771082330537200602353007400018094105884210809018499797690588116004639320708090284046680552498802904031042506702270084710501500040273649746222368483831893686090563330916137243037039311393304090137090156440375098933990493709038660561409152204220012790838976657180800764136000317058529500593485056158072839016742483668383165030000572089736070820135406560078040970956324081030831409192676160307541560807556590714609087755938797110899670839992730520741968601713354708350882863837863895880160597260427799332029048626374582822000507740077725800013042540271830272700174516392073205710459834462199005283062336297030990500803709405578755008650062073938221698236015962676880001754293605139316950429378830630061288236060120007599057713010063403956674228702000905668272946532275659603102504050050072551695576594683717825297880509044109886845851637018670507938200074906038098865682069125907558198471993936079026708860792340206728466608913209085889617658002986246020962287490996555726595017590557272003574091598021400768872629785740842910272155725651136070603826246096463787440946146008005092540703501467746020417598218185664580587129908272575507524173013958900374911390840047879296607451325337060092057001291488303628738059003900433325824061002036600710048207646407704875485842116101000626729265892160156253349680901657035427895551107688871472447046130955534844421007289815908450897762400069608488267492694662863306443138070398196923930990710032639438786990417001700454715175655547700502247383569160729485023358304058075332934769359124604413106107932054014344114303869423803597014340036423040438910267160049005487040864282512023108855325107009815186850824493896686033544500480050069601348044187092532894521791003103209708022060276594320790068061625480561654267964029179060106952938458900682208185001000890353379304371970049898800601227323555208012734006900127079479304321000819477324360779869040375985343371003100054125209682435922351968515934605441405663530243025009604014376497431002606259170090080705923641054537808162286286556196908813397400803830825014766091402105077480309658580905309550745150022370704889679000824104626473937390561124460063396493077839496931509042205702019206408800661045658600799667503760234164597443241944035180551063814191846620676600090711930654006429250399034210597157415609700061988356914105308094796575409856407664906243023543873100030858719610720479029375640050018799806352410503673504727862125862022051511730865646620269938545605926283587931770907374983085060025732000010570628868021693101798953794497447227740502791503100405016711940101106816043002030059444100089115592087239419740276617503025380782184054075354882975003894729955706035306080642490375665010035567600057705830039957007731001121247771010076396395747600905889101504013905900337843856978061003931002704306590062052418300001380570803697240030107756423820290671485000875394088795077130802762935664749627810737170336215107456818528265565909677170054066350470003114003937717560204318376620102183168700176560772325592581361790061960102305860080163439339108183446210809008957122072045054454071688096990601995357904525689537109029114240600904150826565330060400005800000009200001095140104039290077436448902916767905223237004003688259905756015004911821648050545074054967837270860587314727879185800642908849204870632110960713797955908551061314950810448208437061905108733750450375362088051028408440864970408913696968390845688910440079588549952779026550380904003870766013091745526217726361130035147036743762052908783053879635890090301730551837003570298252291588005110796007543397062631300109000334744090201600009642307215571367954209003487938563178579027270990871191917582983299810200396315567676678643907366905626192098259380865008338301793280164024004401078077901908951900197967300046008805719095141294089603385447080370862750372972092200593540323145040187094595963052076211600806077029081396680250096746124000031475706578236901564001007606543060835069400502973300013022079480816993000707408913787874897539694809104280802383547321020099099228254529301909397647600877829000495588031594090677782055375074622274450068989858855841352906457040066989180206307196267049673534490825771165848237007499300900978308190007400924943006014138548061349603730478805726654361910446290949607029705600807668426910025474703980911846605508035583572860209100066134661230060913043268585327538417170606770162586606567760657220810135900965125260960006772877564419330280433100942761681572085900317321930337075065048527995480841457896871470881076032621330745987721456310862973050300111004904195100061200795676704472324058255550086571009772880561341990468305054100044889021050137205207292763082608000717009099622304036348700215310256097500715949348381330636137700484493238408771208968091598209092254175903098038923040731783504909295420710506800642078654736031551256285709297180874600840682407430000091388363909091651040000605344103652034739289673306847143800005099056709077222708006096047155501020078098502870411184032236410170116844808439407001448063140284039874759135690183400394673656209308689080400033482040360096512380799287605028436016561669758940535689204401198280240815980669138306347440975615580070799920906948431326122003947000829071297574047806960901020905096835537780012620349474940507727386064496220592850969334694188049762722949440087456373064799271728865430304341945601117052362679087023500517704508037102635802503506236811040089745010085435953409155416430460493072970191648707180867510058893974007026566686144310994835154844000312439031200014704780343350420046437703520340639300075234394020750066263186400223123821235608725493080966680132328328060631613075620730483120902100061878042250038810154557100033257005205000684059407372014206974237719635025401500035316007264809176789340390806005445662840828007674568026036740378200053842604100701937752064901201710010441186103124448501493705679999380020406004807050806300009961704834606056833151107283986250373838400038628938900394390339666900879269501702632030290757641049222523359066456470290959870391873305759775846128950037599161071508741977740399940647280089032688400404010201005420443010030455766900188000934205446580900854953936800957094981620021632430926012055135233427052836746127470888055004659620460623085262012651886670148365040101605370900074547321034107852090619670740841980130742504068140527079156529400230608454719107096306795450888907947577100509740066055930639005050013054077685552685293918085093198146608380706055158095048999950616442590608596002601458787998894932006180042905344073880367048026565971230805737316732512569359598156982924502009050782829262718450210086142477930773174022627656602306197230337898763716319057804000000650053410370132465011395730992042709700052014084459384696702510344800900109922550538060479749080401007824418000920778720020989605956170812396460067009599070523062379329087358010732260605549954780545182904500726901673587059216958302658400501807400067793109510828646158019743150703900475577405000064507269909590900094058038092881210189040136206649954375634025562356084538034146450300709468002204809035907950279040209422392061759852726120177309708200310679670047945079405085118331141390591084020547029771760000501465683026630029372826000096654410528907405751090050711720387917005774887737701410979032724015793013609071066027970320009087002300496092137621750106495593000908420600438056229808067969214889080808244833011076364695001000321790045356980082208108392608081503065078806609645656398208904063055606176085104655102320759210220180490787500187051730099213795602485748070847850082366976907423305600245120810042017700457909206890501321989318320790500338020301904409757407719474995530262820051550346907550119770549933655786104690790094200157064163007010237640850736491080083607481077006755054038135708200186610072256097844907680803002837574768034128405128766096473715309306377841108677872670250668761000638480520570050357264318700325933096679412531250185940592392841404302373461803234094652351003403055002883019925627076468052347001283050370530700022507042508032681947504800811031629520298293859068742134401242295855152052929910087077501357189796080818970942520350769602272137760138139116745284003904043006691719006151660090853307648070700206248959329119600008500608717204591846309696930671009040038798627737910590055052079488708099426287090037456009805333425036520912259010305113992335096097801429496909930829229220064819337663741943034068930608971212608057126097494436238753805460970893760091289184390916117005000951762054401780593403008740044133320340091329950040459408004935090001060419399288138020342079086166603674345710124090401694843783540800600868085008750008915106583076300551673006640239270166704108430195030539630918725211209294588448520158115283444084036104105030379600675014057604150022606823052100693596747482904014219078007418680034704459704081603593130003932772970569697257335001086557408402622341402047450080200810305500994912380964017377004042028619626105450890471374609311680345494278236460847946308118780104342074588509282179000580284004410530738843310673586659770811277390019008405001093408604338273202454346045344260902115970662005991506517124507001780806689026625534982131905202305890109003939116293334800497700060534600734460694627004193615104436290459209621000090614633205321132403085475509984240205604077489777000518569154098716307630200024058922908071421092036880667234470051215589350310325647079687240020736020077730489688096674049662250086010009320910370239700950903044000894579094938497966394270331000690090181691003049539978421030670131104979025430994025001370674192000369063317077307009620649606004878088054677846051169082921149752063946810314116900788108309640030948730548208797564679368599706826081440118797283279017478003573639356507764501218500014177019059954751380409904518000069454281236068725046005120512532335856115626601055460077053415915638013929754207308247705300580191737048483059205077923902240832204068255378930960423000358893672716400543111079478099071936675800608700206521846570153140071780021197970080560259964059627503320743259302590089094608304476650150255602742250219086736254005657491249537550750000676235942443820546570208403271833447400200649395976283202000602008599204889286743421823199405607090400792420585905050000000001089967978420392995852004315554802886839006309759060040093893160030615097953695185286100121408808444133750980361370579038106023999000919193302641200043654602085786681587650070140504410020902490210900030443895299255901904047204678653100646325660749086608099630754090769055464037001009087698850130748000000693050303905004240529745023285068803928019732448370601706334003043078073403101707271967407292503262134783110212648206010890929383414870001645711307383555681001002401637832290498750913772117517072238042970388050070164839861106822220900493010505140344561683008309071688698076762944320077670854495205260401491707347047965915916905408903293893607009012602267024617689428950090707406346977000656040249090690498040844434867040102970251850520000830001590700277204596028700502485443835089487223556880844328200138080858403856625471082893162004499299939135196950807444064053708450048040649109104402054708177454603108370407054647800170645000206538735330356039108303686026806350840350067700487551404331083307137359855290984990741241564004666220076775832430481204617559580769006564442705768009980015028001630700277016080666670500520560900067494410694206430132426605312508912932757995917390336006523152092781365708290760545704186080935670608733801429620160860018754709154009895661472506270980247009009447843690081249016200030615082554041903790610844491787607280309086186638240186005505743056400261229200547959797274248080041027747607965996277825022017000280703834023100344500715206058353913684005686336470056749679617354059660833606575528055976626180550806033049989580391059009960094167010600724202935902455869966004978058921050980345727800830631831272967063007917604547950426983692096190399577951895247045094420047054408322403377803722450587068099221957500860305874684077883151662069945636530029009022033403178484707016017906242171320001783956008943096692483377900915039787112976817648250062612580610124290288580190660071657434101847907020055406087022089180509005284259747175022540037007970244901605430050914092103080530575718923060498101851596237350631085230123405270575139809492380279150500047081250700244690024808567510434419225490039512820085451984096410294330393169006396747155298709525644706040931342848465480699356972035140886440119448300930538417664060068081380721157049230730850931970900952241417802317839003067806800320605003390010137067429504847768511728354152101752550380500086571310080971004008001600040670300485401008031005508471659709770975568064540123822339502075919362383002686593090919537223060204234360416571978053300943222940180515075609305049353266104023900520660990402074923040965007186105302273009078010036204570307280099064330552269073921484906302058507296503883917098659486410488750265057270727895210220275266600853809010916323562130626643101729483050090423500341321702850514806140040902699559139990530850200808300117015948409858460038990598146787611540802926824020084045600920962809375054101184665526809968891943106414453000044031070428278768013037816248686048230711006055880495138107286110676181184480406930070088489029020109438538640531403942925093430252238200518468781131000968390005383422045003318392880485919824500824882066596824792693304000373400240830451706310792142236704637287164473950520139302030469321017390390062198008739708078860910062790760876169987005861490349724379004808558451497366156007378820028274105061903090046534340377429496276030306224949081679202787955254949809290270199561043554912410368653010980300631949550022079876007675947990154888191761166069620201817107518340560295800076106080952653095133320428950421750690452293920306008415910080040044098770215692764610040115957038774092237893701085767403409553192008275061910056791443303500894786280001058938569072970001800368201801033073043070308927381674040066737058400588330769200802672965320738179065202320000803416967074452965609000830966085463211063300056159010145215508379800445067603527750480453021450518317006618700340027213600745878133696120893649466229716507016118737386371419006170099651896430290738912174302775528219357690403249502475880410245833589210910936190192954310995097533001505500328033890461028068715337392010734920000680405660380340000678050264652780966840021060833219092868004208581917859077772515909490150460540318190206340682447393090806470407653070019004950043357609749410692256180366378724006633081504538670091791472009420687840081900434000401970364874630449311228507408799191470689082314645250878103003995456435071904789234385650830617389094070102835747249920775187068700539333434835300230986887039925373004610076446842255500400930807930013496931496372185501304054922096807795952053000507842660097004000910909200210920707641490360047141600642658602163905530237410043003600695820505063693198092509812415161785450030829440556996863218855104706400952157606802247871027780647036407343937008971910579158891054068284037779053241039549887054034260716028000070531015050724704648916248972940270574818102972353905430010105499420400704075965053554903519006287031985306096406949622408810220184008059730660420032003878170405725966248938661780029806305910711004007605874190392083285412830906532882000919004061805230300995070505440045958430897093033242000460921102059470002200757067178213020701850741815726901400707922816041234850001077178489050424220252007781534410697207139349033409307520171904894583400607009060819145433000064984302866600087047686023085083611930039884210120964322414895065060280333900035061990003980628804556476786649084615509470080378408800804301623076288006570056092000720605709148820947874462661888364079625665458900195603674370656520022802073193504174870061871898009501105628540865084396369107640361906030474167660905666870070606663011905317330896483680130000177510107109140257306017134979142911544430714584760305007814063900018274955186538616009092140304835701102807012348100049138503959284404899393952092097458610779096043594429346730325058103100974818927746603138076075230119004704015488708831182163779900971124273334788037003382850976435082436004701751748673926483157550005495204100711958015539532698606509101170268144468521606004530174052183900043707280701408061658035300551746001409051930870480772122910010002007506037243153004086397401900454294346845226409267672918808100092487033805725550254067506929704593707789001901373008994060182605754005956780264538930087607871433520399902094152340200146275157092309701310950655020174677431269901365740041006607304757030292275702343804206920877405993005360680450336299607657284578542346663028913122574460075707290564080706091482270016601493069302033709007260968141049007601330097723060218520062122408121004014480686987031624300418304600015709054245006832588940175266398071001930929006037339066635949351040100009462079837530795319900419253072006688000007898575468040527606603000545814080089069006734792780548629900245640132518086254095760364080916352307376305713600907229749477445990595908787498104400209199049571410078650556452830772661970090058049836665703008466524800196577069606000736221979711303771700083600949057169490058302559850640544818509218844029186102707210099218789134452079120102450272420080949392099899426342238009115129783700085088008454914790890695332383944200692269213116261382804732008613208339087335286009500700304554121661700109983810660106267170592902598498403723913565868003892755012907423040518122070050980686652107006505250019007543028683252551270300799972048037282025187031654008709069016704007279802000431750290829859120133290048097311808403308295806802950219754018098890474200630633609003357864370954675007610304579098480108918590725131666301034130990148277293983554804114059403916959526575283703429760927908277654181608506903870619507904994760367476190787450390300012220001816098090639813660021118489555834370009384084386060543000552620260904838558500335604701503000180000464007758970908454858046963029759625613049952030200900918949867758160506698590666223080694406900423706158718260509550071758066210498539586000360596915850030471409946120194119993593650061767078050092838510063326634091212789085079781651490057287608007705075953252362820060733752441006191667302001778077100550350621218792170542060696568134345922651591510029672377020890170829507070107124089223808418921108194711526880001149576967873235415552085252190600867540705712718617501244452099228109419286200054012090428078750209714005390210590750305251382934069970073320375146760571030243041234593500090300661000642485825046035945873305144738060780199782655621654129907782085218359872200993703800314046250295022197065029090289137000050419912030865303147101540900074710405753374820340387407300890507251764450750708527182742604147447008252694052608490096746039626700696034244070690314103186043500660585099203102144034107543070407403340303649097002273090010854149098011149763193182577362709068610049010885204818376300234009019408080019691183890173664094808072830122900541150696119501085705930702810773195710807072801895804881036261000484100671401799406939698289402086654097379698130096997506002834391320346542202944899813842649198611564566271204908400319649945225553070903364270033170071010500277643963721890732609457072352688023802080401722022078464697810003569273709577165938417815401526072098098448900090018295482829709495011284002234490190366847050003957013141928900075094009432702607034134902749270484390810703901491069333335061670655501125073005005002039067223430839692797871905050013737363080206011436431792495096082244120928673770193236095207030130937006638498390809815483332520353983078017409633008547295593290661706559542693061944170040072294605501208099377772121154108101101665700070486798857436104272278871258819381067103300024987265618455121969337028800328090981800303390470904550324532300408009125720615005121216008041494009487919715089441345769741702700443935926692005001015482086615423280870672362596028077719369559165048190101061256073794877006600860786001209166480972570002507000577934441271760220340170880648351910199010148284210608215442328870100124304600896888975502598676701925307000708017786179286011052418570854010869493680827336655601671700649288032225318266160961423834102970183162673992480865921004316601101077978123210171524652093740490147908001069017709118014406474916753235570703500005656156909400202160086002690451508600742405841577034168432143900279104931800740747310896200493165530005088405501604906407709693551093299856700009090473006178205123508508802945595659245182679133379904201900627630433192042176580901284072062402082445141296304986546039210384895397894704140016758330509840439005022475864846104006500858869380009897583073451051000700604724691283092030089019106084747058800815630721072503721770322902581090718874890113408802184984831273700903387104470248297812579621930569854099601917913072015107941017808508509927673186200823301417166205103340096569559520512010579010520015606136270070865100440371753305200790305508890040601694050008445006900468097080016176002500160807090551050986577136969099722237247050682641938730671309439604083832060530248290094604561279989313506631089009901074640091006693858001877906226005026816158463131402773166778843550009661309000548527040931027569837402969829324760050958900628632832887003402400005377966360004505307459094320601008453680090065502632919030140357234206970101690061425858203112697890340265813971483335877060587500580172760878790250005007051253221810615440265050667764818007000206808059706676001630001892694468715374527205482870939005303004091592566887028810400913800269903015470203036161462700986106744496587036405508043051269490079002907892619270963140611781061387435620803503260476299089403521507894063120250024732626630235671633496071050046047089400403966106560489980790944250031904797007001531520546508174750608813005524080809020415764614504068786540617291635015019097655702164295500811609297955700399451000860979704256581060654557801991842509108411775820650714989620998279703330707064208391930724816006082618518273557695775090350210304437495315795664057358510305923360090255232666786500198072662280356425083605056352021327745362264752254141959282398557007897095005200939050925980230737811377531004309225804707443633050034079630092001716058802598149851007640036009317179175875565101084442090221195857065487005350019937035970756791500440701566494252553117467504350402109210156638620015238361374039500336377138908100028252049628175481251010270606186129103891344006604980569747935001050101806490507030180762087057505682090157010048069039384547035609100069266975106031017002982800043870017624955196978947350331804480287663410398004258036700171311718100929200595323109000219868072975798814014157434025670081744160011628308741910860925231280008267055244237403157467402275542433550310105947435830194032602385273679826305373701100319381500407240230890430089057734720963168020737080627355514250389053601688745110009055709132733105496516894643142830200207369315516809063710001702700824904005283935892050612600070567054648477015552670450074832600096052031305618206393140427485013682103600363086375578985989994372086496107006343820326500989501444043971950446006430957964266308343925024020309011030611415008540422092190060711281054280145804054868900488099007200588071704006875306280497638000344969100930670505950509020930787791044465304409873901097576430670095656063360287009900127671066710600447301645674409035500550254666090609407212011270002250920390503139161300801292943008360443223187309033671380607923418190408515800343010923942795500263259867850061903955599056357365055050070869002070307050347660810684860200890001861273724027907491300300019803370891349908011359768867560934055500777137168440870013876910037035073475661398147247214897901603033910708050909579700088092435088084765680002695375913481970221129170971060009827200857109013670090059882046564900619791904941823153869055780224904060512795984240065165950004902007421090820089424626949281323460400840719457561008158550262008809701202457291486066603912422749819845029074725953790442719900407903077419284225793558040346869763903544270634035909307731160627591060138061023709091719481373751702807499029000237265050187956074150830130071113085735707928197670595358165052340671008089700050640238300302377342167679730600958607802840066390008059700720774367188006290228778507263655092023200928439022000060874000821496868185180408650144589097086289010404949285218700246377004231829764405964704701418635770397826730737539723916000570040089891401567099001565764336026603601006015027190062603030003395290863479993063100380520649766205276055672303017746875800509012920275212860848142960295320324110674022920348029808002701400910043070649400636030386268089860887310387948286009506324828133706030880045166001589547004022695788460080879911290085775403474690266003905607986000502063620639000604213990250371160967363791906008000591796707063006518820559064098041199004107382830193023176726035386038774280704043130170703235342440493054090100590509647036945722007380500740660166005446920509529050067919000206021080151501006609097481657653993752908687024536520831081353820828797087169595842920232469236843984767498030190713901685290004136390764974998555948831760890150300441534088610027670929510055256709903179299888731020019836791581119040553934765625698913000050097807050080052055049605859675040002705006886098009305139910246220048449860681515946054207206107783540013707780675000964561909465867070620275484551930880570007150049401008633819645150693048750733113350800683765118027539050051998036957402879029726506309139183003631010339664992022596607267131907740866087308042952004600081213690920199270912598614044106659213540407349010196004117027350308808709045422651587800003021896998040905029804688063408921965872651046550797080840752806543508646407992740547694917386630974270477509206769566003369069059309100010026509306188024576637455547126797143390090102663061762100200949480412505274348921953014498401009007400578027850985955486693195103681205108908224600784054068217305407437837057348741052544560186929022387382005143062003282293823606205812732204892035413020904641010182393710486000065285056939905818009247398787605000391438227796537058554592167027204043624116786140455077583020615801202509199401106003891507051060042750155730834006179345763906657064065111051603971497297609613074187932214740786966069297910600922029370955646953070756372450097739138190627807030014090533004756896903920276500420380169029569008403480100208008869074713150062684231042448235877336829621055387706243062282019586893062038564937707458689282267594025205607950081885001004258308001175777509492352330627250080190802000070320282105370220938420705426218152102960452094071038707823357091090050870330910010428699002089009495765785252755705091730074008045063901671057021303476020021885347230047790295259406000298958688918790520600584908730190742188305107045711606900033901648290724673642378821413860557510526569606677068405554068279408916478304584232243904250095798617056308740035705480113405538405162468454071855289007902141503400400630000241132994536605320001270104801010094254409100506966598217527016297252754083259007183488820310260007002808689000901020710881769014807979004991409412033142060649885831392752514330140334045144233007267808822317011890093092367565796470808414602170462909297036095761607215802571005041708321871038052181407907005199040724668021460490613100058820961612067880152059120108330105296730749350751780450328700719541299008010004900700459066620995010032860107620543140156882780702845002949533700510011890864521758279574348463015402832050711608562975883860843842842450905060077612605751497206620441933402840760480650229128220003990307054132940268450790892777000934085108919564005392856922915235701799662071081209090969874004004036499320386802086036000947716022012050428020897725136300178855293064916855580262964193690319877584708015041729018009524706500057654582001002000794450580942103080347108410299811686705584036176924839589066423612009303959615994248802189379927738013450350116683120801400954873651017373592763998021090322390005330380087463500050506326630290438091998088303087890934596067318096102041093818007592702510738310188701805070000179544205070990071515203611495098930401461029724805098232670580308646005545006192907165964880645870790971604434301038101903272090044135060960000009660011434419740095000775823518826585063515090783841845288340118900066031892368239061061920005789113549988994063061046590891468000378148584000705788723052706890724033204691627513156091829048405089090001840326226533105162000367045079660082257934870911459309483607500638981921380677867886960123203404251117070060945727240007255215385419790809496701308045888655400079999825720962100000388025236822099207224886256815660690800319536013709070640080918909700424890157693064923020912039624046631756540109009168678519135087314700150213895026530885368440970405362966934073057900730472034174612810581234072990144013293007715080506933030129044080407759866224828709545014009602503483040079721447000795000500930035235703802900182040630367295936800008520418837612970672968009854600949709091017929269001871581565184030800100040909902118525064942807459510780029800620773060506880549806940355481512900942221184545243350074060143060067344940605322904840281230164297995200700020358971075384645660005931507573413761434310841570620256070007547080305758219795186570246160560338040029732182475730630067544722220101401778675922120017059708519507015353170306422709899526034169030051506360040278173099945373210030729959074702608554000786402083041888829782822819317351287512844995212222770902719586644070100040790485310958765073454138147570105290596160974307359936055857273971025442520045881510076382945140004080080315507092890680904300853364006629077670029198108988568541490551966482608907589602519605047022709388084976023404232002058926376907575323048907449963047609900040549210614040829408277400091533209535972175372875320079725018496606339198658309300902074110705993909328674206200520011633000971165400679712490404764568042101005176809690459007860873410281227067187601035406800336182011155491760410174007904095115060209091684191380936805854726328847207290418313110350840438986448416985894750013807580636901010240606761206065001805400061710723744026296980640980501700192978088970923717474040712210106271055706599006086001436143008051506026530729311394222929777118377808273001620008075600090624836233676560580760058610612042433726570949130003825951090967602080650699209496656700275687146053090557545840306243732488974000324306990093263006471835086038007027107740974200439634196021841841362103080508148569808846402196864570769894223535606662205179006092020068033468091388908652160357561136701610541314183054293473044971602760970880285832214026892027429351938600996582988042179478626709616790916590825551019070539521654570990403050930025570359088078002710883901473022379475130609570280411759040007952453178854584491359629309636670730999747669800585675651131600964003673546843004791097407202664410887633670817292240821230887646068014004020262019110283056200907680106038330901797703753980020040153993144056554291401368161725178615285631506850250301001838099143898870973280730392144204728003750818784825675693059909098476920307364047179262998000391180700601373336881420879700031609007006513079016100060061598003100128805702727014134679637549008024525202804110546041094580078600090029920168232063309220176985349605876234479016796680005968445692830635877070778023939595122048115690179708060096899960086370930094907176035757166428819972123516806854900029344287333956790072898900999869004731022760044069603002151064068057134227770420004322425009770391970900102940472649992080859210755079770641901276505410070432050965060004912405002049699941800647184449040903880691294923238246356078005352118005503788202076508775863494500925182200725613989400041580396987000103463679055200975033544080585483338229523000087260400215237748150307588727004402441850912047629489143000051016307833726770891140105666600240902040734035085980001500482960064417487668505335080589623395827884098590005425113077203559907725904098873019474150938100562229311280770830869798002063229061002008226704053800667038649070700358984387295509290492550592090474157904050521332248540063457520490911193732887357687355712007603022770024082002680851011984278404706500541087869407975770379032787037541296880700409691380519089800328522866595216437884204220897058690413892994989105806006018928852237530029856955129005311426059630769125050837501031511700660426608594007068212447620761589356000009909836203251726660480630996010196930203223515043300323108807050002510902121265538741230072715021134830801505911954208235280010005879534828245119765980641360520251429379189803771430753209909736396668590220507970158010001067036455500647369790445718400007287778150244914407502798685454043205600363754107602689477710405300802660400877203012881307030342609010640881020618072847033447090428264933452703700799690804592640501781565725060768059087021654281756533580738973347534019224587000089281277436950234402088051030048368300553206776086030540345301790588312817090604422068400609510748019795310760108890830589794925634029243398007345010568708953764086400100491800103525059896139729117354138153009368005350564614844670041685679230166026470175037185549905039047471112648580807680440474663328937073214237861299058897404530562083806050015547938934275090508335069677920077950346814604012406101700652478987531354937007593833625089070901601970500870027230660021443900905770006605022805996230811904907435203057000380808009974247418402101591471002080913370205200910293205369001708103083920470506980246128089200089786893308000480374500940058000775870730005386514364902088991060810761090287412979905400320715304479916102291672882442927408769089542946304239413525630849395808394920839212376573359670609304301670746246209711421021099305064281004546201316158600353417500378910101303503907609101817398825809605051612194904477001566063310668974040760902092161230209032054474428249008096371489373008592242906427937253489075703385829267820207409209811592533141979077019188443746005998472490040480783250193088867635019075070473911670471084861731144362017230000000958000109264634203290924300663386893935276357702200030050226580885450635035790642492121088200040608067236300925095210983815120000519809136617036607483800556453083809163723203549024923896021266921309035991704790162573006987207409303153835883666617100000949028018802238849873545037564894438507127730003090263515079952210032908000079016397809270029803186060066409520516206495545130200081434009325860791360489990549666030787954687200429907114002749342821680285507021309865015593020057386317200829580505017070009144490720666804402204366058080156407913350750180642955286044601780561053264793050780503204008740057561793489271827094569762960056731490357969947633172893182097055147259901606024880728847204174305807645082978077138039372644122201405009206003032749044020655114422493576478507450383518089211000494010141050977646641061467020369005567410507072084088042520902593104819012215615028905580370189100207608529881000040691093703245600063308004800871545104438404880909438143699416617020894090236000868778296362430620201092106466560960479010010205496336513984815381015340030689946023385201858033027920883301017633577474907842104639070013333710040489733417129907638076906368786440849267179336967000550670921505096800067755693070433290000470005060998949830623291397050202412044621206249775235537211903950666021440930316668979298504287012043311190960079547344050845307086020057906306306707097557910214140573009095376017780609740036681908856801814703010911005710065718078151728030281401330939080230546460576180874074078333760995029816912070387046000050561676044846851280775939454392510037165907726169910792087920820001890592207608890304861934007659075231872740395004663778008039091379188510156707751400000097070002562343879857372463484901942948919000600550562883073904882000600620534230543902049164003202799267000940170502004804102994667410489473165405714930636833080058830109097508406492901042920000040881638230065900380020989480651081881720330779620501068202809478148619586753106130096582162074741589678900003025263907485139809430680222028660166078925483047890700390465022305490860650056396058968493361816801123779937043959690065420760680172010100616809829615841709920680014905868710277579031308090590006063041509163609591826616798603906050071838032302962470645299570750100197425770005310028229070903484030683620605704250601009895668036473007806121940845095395798731031344009700600815150073287990248565796170578523708704189970580168152246007580100740800074946696093610040603963856561809730060701089886508780092635030478891042000198490904903658681806290204290050279893371120148565943018446015660647900629498722249212320921580914297183075367243028706602160665537043994600023003674946067994088954230927299708660036701100202645407710020094975688292501803773140037860650634710530049258044677134384189293105096010003728706442353086210050391365617008784498294048042177480350483602574800156109995399061529418465110730250586541615640990239567931406602097703664601425387421103034399705300435316358860625414067301301770005804790218685440207346456092330360303064134802780780169030454870103601244081059095780630120777021230650093291293929000980116040121368450320167049870019251607990780730877526379554400564244532392007260467706323904041128808603782722164860833931294576779300822365071400080489534302224107105072063028609400104923850038133029211844531183066320416600292460002101403202448280077829600690760543758800237204897001699639889150611338209094237270757040422000756781623621022089598785019300608047750960400863894483179705782900727439200674703613456009021161499521594036544165870506779546008009869348000503990229776672600911780629830007305300097846700864040062000090917835087663360002321227786070111580507571062306370655066084398000270622300686435535330398779072357271434212024008689902701504605905436036227841002567501862447079084985380700803250000184097204806446951780927977170077082060850390033861073006420750666752559900032925771339000738224157223080290089440608805518280409055065034956650524645052800935169503038398985711386213097869454241370909600450486016513446507477002763418505096770461192016717993206393602270073895606901408038904668088992647841292370890430030791870461100919230056731717403540586081198285170488030028762040034500330784471765043058190610843490660473197604601977722030047078200647407730709078902902506441112904296150101457172540165194702037072340404730024370049430104014670027627857484734771672362841976378056094539874206013760723206621850043580805909596030865068975552408448703780987013975248782007915702035276602492005220610789006537805707338794140003882835040773205668707400873650381367075006005322240275335740101939042071004833596006066395203629906900298790649463132370900310069418323861443803539845692635440326466811703829602560228520509072261751406378964638288807780810560805065974229725970800005234204809509069008089297194528169080318590119509099533809802640733602979000631018926188004537399425316581309784290487641930560800907466010880365304308033713803304045807380005605900900043357862294949048431915301752509461100603184641472051004978041173967087046205470830360326922380306030240107869831496609562014358018779548805663308745030613601401865202639788985557530838625340970609818419942652410787577631573043537339960647034005817000171215941011092860496609360722005097050500363202994003058041353273073400909000447100070389702336992089600090416696987170252507190405929518050196155565643318005076713333618620960050408869331873153306655583006093479873740571000400560151579687010220050119760010073741306550000095799093070009549000315128509003370030003699814800400349967036025849787744204640900148774200646807605314505570460700067901054550677723704105397350692208796219080504723433003024737590506190900948880897900347035792170846600889950643027340060810878084056926208281609201337055900040470794648050202053177562080409491134884016451322009077750396700000626215074078139737383555003608970070155030513197846706280039170627993819059693901108720605844175806805030989418237895076907005001599019299977150003542606503490902702102535095372908077080579807056080888676947156548294796741402001975085308923577808022004722970269439012205701600748999792830750543769003758696050127804205266084027981905925754018341070570712462296970436194601054360837011148209220501801406118084000023816806040500085962105088154776022600840607060203006018401790896534917439499389024829990909915440900878290718151950000203164047228502092795332800399584232122126290506179885786079746000800003394638975004050130243099193426995010160800358315477258050302011945050438406007690400570629006101610286066997011200608622170101033016101041078794904652904142541050220005545004007035533702417082875845360428680612740058056063062580696619015080403095935690691069845001800485692657178040097890969938093330075368386964406917218585715951030137508030309258869838310257776002393119061159499501207155707799699028018829040710008070065186480503400547052850022852625432564691027068953518178666251525017667184350357349368830996341484096775656640760004344465104629790403097051437103608218874274622080238003475095737500319648364704635707065039087052988419738715802870640624407995090068702217033893347094025357353919608474623235900070017849750700990002630871327583481079905764017870893708380403502055564645580599506016956529220789432403440790363617301906826769545079695913634767370160078020033007505090492637000881098085203219990936502759506602809374994395073100402786725850630091846281700977592415056037100469029872882668026320621995827571126116796288082095300908700400011107108414978622838159904500268550785000608760608085905830790797008024894057003206542118027005882239581475706200896410407068488808528919294005958040390973013751040508589210901923848460463064952606301544536520006068619901865700008400604460645805357152005055837550430039008306994750324092008650198006000000851304307044757722191827244650350300613829753209298693017361611900748613342473582809372080065051077792890536605401220452584586906394647001960064033070650690017929441602293103008703389914373851870169980696700009380060680072310783912754520470988001062580720482625708130762779360707927710742399838963170140324110870402721730107478000008571008789996438102055710969308851505260870348620454002688089094403037050676581880053116732909195418686806039790963998093031874260951603272490041024787555453383510826260891809704655660215426733823638360506050069906508008199830479994080691288246707120748727009991000158260620129154002586616606752563600999945046730717526611890001605000202037960107717714655540390073042008474098297320016078050138706010012696547036780146750505155231091701018203813382029500687568455771011689911015933900221080488140928743666550899030075970194800323697366090427058077278202749881384745963240096040657125893009400665028008000812748952374200033604076151606710219177457067889367020955497906486760157380198210017669493081827602703926428820405801741177287057180863624942511574670239370700483828076687240808609260898887776844680608029701575005904390306942000017581390308252870119945607818617934032096909135993930047344500107007099048749079086129919590022400334723503160523440020876690846199018322304022976313803075300550087381331909046339696099804400072014827402837853040259829033452866015518382719381006002220702733803056293050740626177662840292000592025250936682009196160333604086893151362209663967800000085600800292044405818580003814985911020635087819219003020385052602070650081589866077279019009201966695334603725000132707064700089655548384926040381340700439495305780719096862797554838734572808480017751285005422688866054109206678310800532610096028560702368707578608198500080300372977551886758602600901422290204861609826557373418795954645202769207466450300042530910099280455600228008047559026903126720357967358296086677398000600549746501700350915048486144630454036977746084600808701270300953908729635570465415008101018110376459040138088616050002905410002330709298018678459300435078705250706038570664983948190092996122079073824891072390561750680520101596171950000769890028507610080600348700426454100390186528279460489757003075467950444770684008501500804147110109764781556006046151112022561650341887476637807344852040331538207415762769230866701228030620948479698304645060768676930272499059005475853942868366625909160860463040380027007744822916045296680179491000099042410746008453542788808540961599849108304050909447707852599505963115628039003198200880314022201408440787080701488557613900464020400950068504470007304238645161077070050296702853480147098050889075000748061514937725040358011065807248060402719509127780786185805269208600850057785790801094430200775502542303055492700700919149010050746753960585059082126057001912600248811062317871640570238878541049721586323580973878030688073204400408196459990000025053070363050002018207039240507093007800201901033472007160002668087031196362304965365766370826930004903411635731070004895900461505710405580007936013030074082481655687730703435903410493262620474016961436436641202194205119258795206062389030067879081080484880994082780584378080840036129965030400600370427071208316715869087131860396881009083072009653537308798803781371208484247034144424861069050049007668905870558149049697567217650717586204937670708434900185492101204719883444140835006806306562410131370038903870267991694023021891237045401672413970271099153749820432155030583877594339772967729234420864400350780100703752200277006900474020293708343050790733089803001419237930696150021133465779125754473905872900073410707180594747208575510830747900800845111004057463871079143802042562702664463791059628402008307366700303090853017580701166709780409050305081472001425909760119409005887060123709139047640676919918057007418000130849683342290899881792000210841436400036575694400009200770492937832764544575059551782324116757090795839850004900707910415308524230398028876095150639475040210098063442908771918670415425780075383602608264294601927530515224874730860397602030675906070825396112038904606696800341253040486180730250108590020200309760040637008461504321101708770199460800892485755213706215320300603390370106001190180793542034594077489308486143432694064040943241567069102510216092013879809623053511781716253931308590410142020007139702682844009372006072974004599559095563897060458056061708710690650190036301105099220093417148092240307030435008406656044646209705800355552859421089307606857851495050649045271065000445118325506430908645609400105908506016501585655530998075933467049781933655192332114081190410310515209985174731400098028430162995577498052085010416030490238200590478860471890404442208288006349170891550137186628276511032806100286808930018407504357997573309077574082253973620049307024804529432092302560870705627992030055529220084040397100002853012373009818109540464254258033971817405567854907029050629863079030667820719950069735542904974430009409770038869615115515055459004527070527598090812500029837008070055507402550010071797530723117871141139540302190006436006703060502203455818236255008736033323347907181055031102920605279343250103834391003684959395077355103053213940041970031070906408073224627060067043050400260073302244878803046501018958951130455951756356006497019935890270503302558077561672200949930035606269207761308668790998094697172009359067408008928878540024695789405036773805908466008020507680891150882485089897210641780063642400751541835079349540709708248006727008384203583846630160920579421030136837336052388318097932401012956980808892004250691424309050097050448807768405640670545852888040091107063810942437040649224752728081471288064395561993495160364642305298880106503005624718521527397216101021800071914260583756670059888021070830066898150698301095457284990627858836664847855903037086504478949370097197125716068628310721267843320440568530606050408609017523051000303400278804186080400328460203822930488708006135558272055499809497485877048080043081008952802603398966944097821981958056262659086302765131660213925924892785342002840471005609835513798431736868256683297854027706013764297060106042998611035755910403738122092964469290039849449204310288044936519706827131547932874602081704361278644781912626014284309115550742435060006720294464174356195050859040414670412865309120170774438788844831375035301456200503729871676412709556362010103319000777040084409832017369306360893606639200030893192000060502551588133055656456639009604077078361364055605638075664264460008000538689188870014105303105588512938626160897170923931875050112230655752497628903565649304300252371066639399695701718625440262750040209784508010462109014005950265256004570238320003980741005029045282052457130008363511208522102901422571703192260001588227085090270064060467970010902708419999053544607406105070550079032185781022942237117504653709211811067522900430850760889688968377623934102294276219407092612706981592470410302370877595631963090812737440100639842634140111575136424706266750227434100734485330074967152470739150049600062168050595787003403040712061909764615000853102931004070795605208391608001472406322745340356417329070008557200907705450808206725537081998970508930010003272767424096682976700866386887903984472400753964808798162842805959746107898319909006350022715575993523817156975275172506176410419375177707084106295717288425312307343257204883700968969901906073161049004334372272065782562895106048008371436009861441387443241075058161063151521205097350549350989741720954698906407450000407065002082971300376298925002006855466180950204442700712337926092207065604302930185990917455875590091282985497080826152060923464020209640069030976937592700800064857077857107709817383461100708058166507534092701700059600443145206030977413995068480803871059452015381750141040190735300025689397633960888813700509595014700001093188508310950071342460760200618003393934284676810894335816000819703494900333692150470070973968504055308633226480283625677485824923907370807910014892352004309607032599034202137790092774019996592675663062396860717539836416032866022226907846060747860773140190700570524521092040760712669358829270376502249506130043300875983990006242020258920655297104745096004739943605000230043012164000063031490351343310978824084337061062087687613045550049694237202233339890504488501522589561355225608200260710230266033120874046306030485092695342041802822294670005154008080468558049042838243040038527580924650808799527701671067464767407929649026411187087087909215868393398504390960169588917023030768841501111081790052024077820878708008850208004135092324020940110884344614826808922152725617916090694759060871039106320404756694180063174831292752454008418073110030253083610001000013860922870887950722920489714801055930305095849009064156666950014709940883558117667502770308512822100252035947804135062047620909609064198566701920386141412079081030899016477055978535371554916670312397203550966048382860585070485791550531863206123453005783085670091000816008020068494004671740137142360072904000120507405770838645002369891930600671246036466095530602200075386100102375330947623004030706104589085719220157040621512889152750636045400900875010098685746781094750105303476950483005451347203030456637403044560898899104370037602679709081510894909670045037854360497564050840160038068255813661090465520012311766100980053505438671055180039016086670497361524601017207847008220006663840110283083087076880081072032306734007979773108570445690538149996625565779019091211791623103346802000637270283895281039874074038083430294332607985898550808754101707307978190860608024030177008304048500403015501788187956220872665074363400478021013877657592721855930391506032000840090388905801446090042907002113090575400201075065031670840114005505002533362810372922009201038003990060527303510536678109960303127058870556540053821058252800253215130001352700500492482270096106206245403696378547279849259637221005056941691700747320039126720974667949103213080808052725625436426413057321405233439724161208216419071701724881551690900089541268411405769688991482813057047724084399932857090635613900808795440788078137706885402407790891500713269067000239956012043034323416368180140940336063086327275441453733407769751740600390240709540165780009907100430308834012301435001066940115067199057488839085054985401452455865007508079606690202077006017643552096207604501002083082503070519010061820580846463889479799237953001288020504645200580980238108502700172133269283415550820622940481330996316479294896575464656570505430609018007960610029402189073170720314910823692477526933861094045340027001362595604618651275009000009054618805420842359945849430306713276083305103352539343160090006319930579627565900807417867398029200058433253451095693802343998903204494544105013632048266007694352610015226830554661600240803700686036803180500590700764180612766063683708002909039005000802829099850052072507908343041310000573150905980055745015070480100312507310791935520006803593900358707930000784060067707790354879364109004154098997984519140482207070000608932008248709453406780613635003323808891636907618580478486564710679497417243813965329893270600441933150130544942681130181206925611054012565031022044587390687563400806690467656309018558404829610610009638575163098010970082347107360790190301985374079045692916206059518629078283820130071629171048750323969048977849970858459250977907500709755809722000900127697383308201534600303670896044700989010183661542317405387509381041206170152063501885224099242698929153807000216760410236045164770222001032232252916840575400770317780890399304302970279833888517233302239582255009505071833861100606832910719051922960192824003502596503527909835284990480923309891558408065948088198550352906912002098797031034019309326089437464089951239908186814009845008914394400499930429566672614738032010080120519430460588443703802633345884195561020920082300924326077480700323729007921198605068453507800600590790579600907443955009003500807504179804629556419696402560025082080614264027633545560829629091118630505399976002525916691110032634072377076595568633223741347899428078246255070460900985060521265608597091536180102687902877005723067563842975250482206707009301835109201342027020467646751056296029307020275702099071435627705072897628373895713763600534088162320979476643809593733909130011080015768485045565948489079836655820369807035014297400478091770406139855805562993978896482320199120383801009647066835083768083790608355887016596392020252019713004014974893791771661374936579570508750017472473840888639433078919475397086067911130337077457373110531426148760905062298900896858790241460820490114037740040000170031796696389135744706008968393006931491070415592500043011051003521863407009108460354943029670806638038987704465560497036320058604895403098965956196515543937322353849986274625150080020218580607572683603237206301343344001858073036544570031003645031415013635110971190324673390867479003477890007470024697024660456019302198049513061857020056170751403254422607003500230055035456450057020765051804624638603141802881541422981009512510550470604202952007976009070905569119800533569889480603571708790649386092302064666623701939369200604186155038702388070770185079686500216180786029505765101710530201038500417625037090200984774450640766517870912819470000802440461871697711157081455739923074809965588190022074209013695275855721998609107241970009994677859911048761610934720300196337869776853415385650420262420832015553800768250892695540953977592823254267907005063771350714484630020585755803820230286838423011583100005237361706910019383402421954400150302685975601397427673229810064150015730760841710680005059396826256794205790995390089490225243990524541000885518067168654287387354784165030393355070479815450610973505003216431442546602705939100430800821090252373137410736523502022061801704880569380800700343428107032846009803000904511609856641068254692410478002394883505133490950506006967100297020554734001945020282404408903314627405556621470888308001088493003800302048551552055850691000740630506497351237052572500098621119195891796968660640206559071005059954997906887867776611680601549103119235687780728010815000028175690820672544900285107315703550734493506692493691059555092334228027380374970779910011020241346320707326138476095206033361999012256157059808636936447103792205758762728620361435589607877191863707876007480286630751755556052979292170408697271678216430986987941506983686157423452309430300996007294000095100804218501310084745531769768750406070554938139508664072025430864075667519579865609793290400500888158736357200971325234651096005401079697020027368008698676543493068582804868911564549271310696405661870606066555774169400042079834220089260730348080316097802050328988500249139198949382908709442595308476378192605702909815399760371219370140148812191252082409733820465085576091079801100493724517466015046433401592808829226688060716003399197851661470210545306605333084000706391099041368706234603699000991002167008920804514959634873295017070756527860186123339592749003001979220430054029499062985008782000326596067333360350075417250813605087218256880003425480470406480840075040540491824072361008605799610108229979407294770834074910904304886257808900425059099911852300410093122059340184260046560683089443436000995448130880600760147743184443021060447256584080990700092070150433687047029567953572006310069057919084698013134011784980000478159410730226700011509952860312017306839429854480706607386150100508216879659800108230197750827375852392756195444343350347898908050059408091008569730907000398743101122910092784890031344869500535842336968901786294418103009469758106739206096756966763005816284401674402280038246924690039421879585171717443062162177072808220920456693375449764722570930008212076302965499069519432708823840031252250602553102143370020921142532375299166990365080369543701079705452897510067905379950795200950689231300767709962000210588163818843050683102383646094087093169270832970814064019504209855003505855054655578602365286681997824010925338320064043298117061954000867259014841619455290820775195603550340770579340632780302756105624042256474157570167919330436731005022543853471896280206807051351601764440014103428639080619674279337334750791195053390060005056470827400200950239254099449158046820498334119137729347070949349317493210952705040584086514720001026796500460910400452096043728013725977347104085013779404182978078242037280040886446034004608151040916690170133304618640291924605207561280255186840485430076311500787607224820087062210218826994905689703235380509306142274640903879094677451321719089701907402992604323100092252326444000215379302624604103076039604175761862005021447054672394202602353475405935436290341007954261691829707508705627206033750865409040119667061910926687509147000406739730970490661000553108011979175700947097986020211186283258104961600650379233048616084324707078926969000002880907518011477085410559630981057394919060167907404985030190758994005903749180725900040002510522003680394798869868990908791786623005677701091500309543079809009804913754295927085890900217951698077850000444600855888590303040033644783500926037195700088924601941859508576790050830096710003731130802150604043605002612640042793569340727608401126510332614086560027303263507847773062204024120183653070058600000098103081596010450402217576100705165916233862306148153004657050551680390059602393040051402770052814780193078090186943268763004100980057808837205121391079881793647484683629979710458010647510504663913720139578550080580796511699083972853006000070312256727860357037145197156909815599086080275399882018889610040430230350806601956170004965602979000588750650651142385952648880760802000000464104843790819003000701142462547269280640872019598624541990734303107634484032087033067890382155647934853709532503898582523633401430020316414170437325909983246000017152700580170395000051680023040709003705886652679844154640170200604018702428727447040300704002000999102200200303351907099229408402967480521484941990950956031100070514476173248845402595294080215045281459031796992727147420273071020408487693729730738259530022250500104500461000392747096453166600665852001766429468257592606308803417327056706507440760430604365004801070970040654460302837637889101050291912010070306248205875608845132245111003507078292634782592505385590902464503043409005106766148948749307010018040965543506557029434224779566038065919132820053031903022290563296087020300680632682139360688020346000091531064817930009328046171081003001751039508504056750401252061794840841986207017869477700847700409790500396016070087053835486705399866957218775725370003824641324532876072099391572254500902174007516956707400029418908491053891212140871700359033074000542600205803280560400793007877615804542143870195820610841270918553390954460011000502084465877422699256490063428098153430982191089008952072402706581616090066020320295278189800521834277909707006200810127800788102071920913821036010430887230010978004797041906882718550004126258907704249200301300081625214134375652370609361561920398350082614835389309678600051000437438105060750202531100328575416194005020605462100926392772164009060040903834090095330086238700657365502805483970704050016926052075204006278419137933340304839877292082958854253894050820948094842418994509016804013708070820050014077087098347097361377111414004960371303148066716906135714431337665576755507971492371779645058210134877455094600740650000697893169194760057200560396243705900408755133028555030770001300702880769363001494933034775814363585162903006829513905190904983019027038748809301010032060825219352415319545763564918372086637103413010432386109063703630429748867328464057080800830168007017937652641722017008316030082085199032411224325438442030565694039840010983420730056331060740030200752621109876002585223400777589614912291398622065724658918579150475917961330194560712057200600003551108000032006005579310117576290400880652650735469910077524807044263713878538803504452043070884103466516065003457504662168097969502648808529056974516504777502778215564071950885270717583744561098743093750803700680997102508309411853664697006805404006460328041062833635268994590227977439295484663609440390085381850100540067890949410204670641321050831910467221065350550929544704804356007472340426643076307505009768250154037647193770770144548697009265900091937781263810539096369452614854934647493601948578775706006856313083942893761650102130512028604063836647605676282750020560801039007988401586090233874508457400245139570431000721242009097426574617540104428233658148530180987070450160819022580390903770329000384264801026220315281093073360343482819198475860750080230606701857070470034507280900900100201594205556730055234050060609909005278680549080340412988826824402948050748504810081343678688118633009200252609470306647384472669083307590763189340008544508402354540770660188074409568716404208222012057946030072065361359080724039405080952060077260656811073889978710852034569503105004195900046890155087075164880902777245428045026046038942914301308500003801072066309091336935601752965078018503770708000432590558254095972053493629608081007644958028464690640026770478770590805718036908690399284126863109448132943481726066654861892930061223803655759826000700000086208791101403990509900781780498014920908101980694301063709749436891089396220981240994530757207101036058800291211900717930175903705699006420408122989852006357801038621833394010236752279046739076023009250106852742227927046330220808974903030489475950899707604074213163031627609401298833439009666142490521402982707003610148719560786057109062252719306616657030711364840393798493093089183844938547701136930174773280153959783692643947591685785080080539108032600426699468408005135109795328070932169092742049656506116075106994819374024351050002005605088416073889384260581914648843647490915266175971320360588397010818073037977070590365806020380300029220902109400585769535042508741105432330492484009528079180203407600994752357791044060445090025932015762003011010000060426489259487224709141907387061978045492153240968580018655005007750344883650621336600849160378342907706239785910288063253286560818104666009198014665157770790771072267020463436363067743066137071601949978003800817100669766106479489846009044180720921721228735422090624208849447402656780974941330080528084110837188606000353801040842123642892072929570055462079988838409409850611199837081188189940590534505030059562020772982032975540003188842633009101105519106076605540624049040691233812900092021815875092395006173870333593000708040867069006540960303674026886590543705434322103074766320488085201019218076880009402051120478913012781970477079701030269316181590240993881237428491680967960922070746209321004752064473000909677590399570827034607751822643622609050593827220143418100996994903154615100306316201247138135561019506094177588265526102264887089607830670206007311304660938000250647510445401060850849467840791082020460314203846041067076633978910908035546980002456791640906051167476452029880516609430668807706577403709544804587002554428093607771069906610609005060044608017095032030016607029080120003648961063478790001815064200767122030811045749808230219860087199307903980395006767299439094359374666187507107092027020017679466489040324546945821070050124042290000505160358504919248452860750970072080779331013763211562992100701324500769087939018076895681080538102984868865495020253720080991514619115422555900687696770101551849919980689207607628213340806116395247709785612449479058134984020884062182130096301969451340437290422898565662149052740803048561894166512447477861667705175876311928600803173810271109765419100000314945060760757120905254204100915002808378924532123431977269296356200260003687500053900744204059762706158931702829318177746110336790757966070253038533880028745785080150054060084913378699081083558879786004398501945005072938044914121085723601608754200025951588062447573631049065180920157090555540920805370250010102568795909167749685900698078258666070529002240510088900885250427902445338324041398659998708471755005026595745808007441916874420072060070007761370820260769066223011596441782860857055610056021913057843332480750046865137890030906096102965430739629215507191922804182270209029192480106761080608693915899287659835290791840509083080357023500740382564160088922978383596269099589512511140401890151329081400945818245909240841366840010033578653031119379809199693879872050550780976031018613659435049256076609548252023975860320107446371776248774007522960450015455036304397606500841148605023440005940459340100468530800934020979570505914200726500936555017120355605065258085010138090000534937943175013309071235845307200753416195575059835855067894591090106636113496097050071880666001027484152048004824352818707668088006912856106782607083019805820408302000282032559731066601366009105004094089601863072712964513000756670308226311086969040535753494035265402059850085122716078004204626967557240115049405570562090067500802048071300500934555095756050113217330106071277790548537104310620104058043034628485000759800158055002306790410619761480890130400307279473591868202992306808503039202843290673804747524563640950840628801345500060056055712000069800570191737200686580690729417937144404119542017553743940141846851773045947090043103106095225280038557950887886665201010305704077565156404057064138889051751800212373056796029649001697419051002513491903084608357423370101769803038790539804945334406311641020648511090174707353098021790008065100300304630001500743044305674341006969006362628323773840940132902293204030431407006776291901138006509683105354990005201876337100807758441889387263744354859883767906526020810000164856536857070330057402529302330008237583408965322090810850900566093510580862940869805261621163406852929601507872098258878240951210818007665494073103185969081305154167216942025700889409004744032803021030303589503605181581713264577063236062787590820312731125600601940015035002039108355536060600976243861680288700068900427637020000981887756689490008016644075854570934667840838063826630887401014471070550270522403301061688506912431623263100104098187435636831314419445870080187049617377443803220176848800476903304504292660085720785210060982672020501609871667004305473100478038784757508100040209703039855148655570010890415976918098060900043445362267202263152375903174880090479540706549503085339581026797004208524670963541844040590313489970520451947817210999260739806269947526602735443092148982670922009696589035705906897260698424078602550900466915389220157380057473675125688882404707569193566021406008460430005840971604766597094427990068347830426208886279460736219230268271674024753030501806933070660809244118971562404410022084306293761018773018349759217541202805006622627077022080246063404367707012054006966154325642606017867018000505949875096370090620463909497701867079190450505316893620110611103938000500587500074482804300109006861802883933855301337500820069033564197700040775720142666479000997595728864182138100870029296900036133934509806189120707980794156300247053040009540037519027350147614432064860845091051087747224883638285094942674024206790096567564298605026044906863403300260274710149916380505511809330450004759903884472607880896762937035706819641537502042076321262448270605686488080892902633515075289890669485172430208800408527301533939804055587721910381037407005494638630763245336470391170790220900977993632075606050268902919405160500838149346993873166884716080231938626360504250088612506796908874860840805163556000070120229108903585939147113743240800709029008737054037126277574970036043632609920470643007638354199106035922004006459530704438000077508009626675819261104198801940390471846040341046992599455000639005009176906796801353019891699710261945163000933456905187320633427866550702280226640776010025096639897903658202984690037755175302709800763342007565007428308440393606186878472909805070649020017857088909221033069914127001479058268814050893930339069149403197805643337708113010006070030765143040039112068990542401990903971026316550703884007458850703006183403767418790070242029046678065581310002755488205004164233634800687550263639800688349806600833812035486574383253502076302927882963863277850818003000394520210465274035083001723261006040683387940754100215309800587747442367513273650661856640833966375262500813350807256932906010915709692012531094329243263511263722408098138250894081014500600789551810244091990584756310570668601206191340090013000156830090028078200049616014280458101303450000595152165339353500073207992929005909700858073332048555207010000800813080644650197138987450026450212819011214084572017318930110499696777920080568134885850382193480608103083561362010583000080414975902020635660055001408110152998068519403621368315205139067837876905602052403269414565306998300102987771772845953090943908574790125000723669147136009020899740463915020400088242938304531900287320069735494343839384002906292300052824136445716400452413710923453208047107500252767300060728307833874695080797528807106060058872891227690920164362202509700784305350760200031932315106353831600879288292097842744787119060005807596051706990797070140403849669009887178463204760240004992976035170083682101147320860836238108860030370787444157460059086265793149970702500212934908440400002919706005500038104364537796890177207899007057157900483818521652050456980402747940375650587115765753567840525061624701634799192001328230629582490660802608818389363097467260200072234937111071074005006426973812013900040525787610992847780427308008608860601009773979409390053402438643617821082776055015480344055460850404008834040408936700309353490208552050725725646840657981838961991594020163970082598060110338679710240032189382209911038760033040005210104927344099490052047948258811836628369563668800290027018723458729901204959595042948401753052251714408456606912508445835398179576001270320166424672675960655310641135902622306561430505553690300780149367717177100363007587360340104559054588805098115130399257859252625620007785252100423237120297078758109589752720781596462636928893859382095625557093893970476067440790398175864623160508227009015642021703499517127330740109790680073004078066197020720812105901290147088301375328600814749805879102032431653769886570036077447823080964352003398882898068737303898501099301272602644485085708315625763439226529684300150710553131017742868510620155578487507070539966557041745129231090921689742005200080085903062950249109628368461703141008091819012660128060763444804829506741707939087035501067086330510279041450400843180506057006493009783009064710607573476415363180571253920048007631676786855997500184420183478303847127003606018570590200200155869610697050200059903746266640589838472130218062094946824775670010450017229540145140060680453506024464946074260414003107350828241039502701619749090206360084055215748903906806530374372955860202118801600589006979749384079588615659270014984800678879928051721343106085834638902997672931250106940442641000936108206002041443814651229930003001877109079428026789705000274020738855214210946060120106309002238418004674018300160003090110034709711506008892020262250404304550069226359735510449800955375754300969031249261537700414001806300083049178970398607391752589074783998500169709693502004695018594000350505721027382693609505252056703016964347898327382389757402003478908194064867798675253006715709604092604642055098578132164192496001024666660854727709356616857965981620251092911495059704844774572582844258499534396408471307943009088885787700740568862809149741009893266490513006007080980080580858105188001606907056731775040524801634590270785827609278003632873509969300060085079109261652709003496130301375882403386041351810410340370329220258730690226962858023052117578564410669243082090149520560964958380019740553197908166260080280779891957400900258310362441023246800334100106189110644080759487590702897007009236400389605099560530707812000900610768781190906989615036541300098921858058093515150792369074112350950360033474759171378696707650554469036194064690884073889099548724706670601200655371560880001271105966500003270848080490860480180307600860573045599905361180025202402212110068740120387959082560025534006270849206340592318900951504900000795151680039792107797551204154679729809510875907640881295095921290084875388470334978709806056094180172290304360264286052354502903407103226080980664378085658806576007401799689509600676213260515036690106300651361656200373762001259809010362866737000508769553045007025520860928221444000379601629050782685301022000999904980066966020709404068350323403267962243308350914730616450790380664623009550224306117060304280771115059047784610284843335545588203750701588044881592036028253201163801489152558062713518683230750916049499006383800470275647071691741060846400295070225480211301832400165506200409075739902060695199021501103058634608773028512223018249610357004068705226617646760379101633508751820107083955830980302027918253030500831300636360630020518745830781690502870643794107705214630175086198490865960788940000517105109085422059997060196386928897785293072796072000357706623075805300506101603501218376165755005007037176246501100020090903775406004928795293910820999503300060270000905079013630207412000626678861649642686508007145770009870529509429494860062662229582728112059399280403009370409094527755090897733542503640570052066304948633350085028450741066851714280770079103134403398751110199082210067059267484088878804336017519139964882710917870690500640980715775384003972988034529309427546682501000402394008209274041275682907229097933933374951750210449990670069510738996738515568133386842610448817043487677098260119872069457693001003052218400080300760968308880574928827876758443303613000340020760370027030924865703600250229090451044385283025605120640710480981061002965786797944870090954795550472040080750870900791701820530901014967077435777390500741682525055722200443270780935160810550847054869570760572606601986007669550833840418061940376958620679332707651504348099540361457065420810401907642492843080704638757527203062009469036648565029101737664464255817510450437818685000004200459080107620076549930966009807080504701007700658711915947492878698415602166729660670907831656502488396574590122015015200849468646120645071410193408944734980003077602711618460107097099055905040317437446711879527972144055309680964535095188985069602380893690550160400110009190000873066033357048014435750808716081065401607540599310550933312514375829071312700080866898368075058050470740697000678068030450702830212383111461480740319522880330265770164040073500090754943285104918208039192469250868904164150640590529916379210545729298800610743237828530677168069428021360121590010309330071969830865460008045002654570929422520020530107180057600682801036580871000485387500134594654987372587439475340069111088134436137700501347140080039780392904843763030279604370295806404470082841216290601075791058340521075342669464384400153647060675890086641460570049437213983904882307084599055553090238588582730375103207324003356089480437415849642384013484638080102021065595510260400212255133097209154060410794005510093830370343752420480860706307490677082407699027466207171170980079057906879876459395736760200271500890300037284067533029608082537667800973844355420803813166044210752207013039124242995404330289090740000791885300304274041507307792082797602182308182030481765019000952420200703670700443020250072297861106902009102809097200302948601711970002160006492886060183922707050068242642388307036991910082934445174920520072058002949104091377704873697081280096018691627649082672457512312839869014947651214709180160493703171654741080655721985360531570915947180578480075877244777970395907032009000999851706821874330096379400909985098474039990060330245416862505784951086610206809600799209964736070340996016033430600562710700603085824496068024456001038080181535720151006774580880250884003409442004643296406581130023690832309203040600390060120400800600792082897717136460905670409290906398149830320782831740016589236901946000036571864854000006098491305564117299401590435880006327499240715646901452799518437875298900188956804139846505608017806230705171286071708628146129650904222824042716551670302794567860940078415927496440040078000941805100966107347208647030169659099626304088587206367725097006030840125906250002960721458978038395060009763609089085828030724223938299685029614755623150303881864569102900000743095008627307004043167744617319066069030470880572421016108354385006590204034406137270800591046630807744620045262089209023301558590664000088690020100404007002841802097719401040003221618080043605605168459077258501549901703182847805383159764529333122605390801105679468829940984680942075602049514408910507965950895550103306040926148009849000587077064980026007003175244719723785153006797083007943607005632059494427472241496350545307239416127467700004405706190002200538622029017880332000242087707437911218266026126575078707060545988100007308009589944294038666024654705976732085010103931839649297950046859948617467792635620002077669169296820208368202091086710103918599400362635468316510874549322000843529482998117760477734097900004385359795603432707221905615806087366388012764004061035251406603082146106107697486032659380980618060776445702610255508096041339557000603904821860407338207613217333800007067638578940308606380367480130437935264750047413525600820032061018330223347085916970341080054418720707350794984066805506067870210009074733261804342590974091806052563945011023868109048515781870590311003184214133077515190855598631703818102080510608230379103668900417069006025734093650881009995750483052835984034014747545309744137717786050413336728210021509339080155349485736516116100768481510900163797504877626201428363296010058349002804000576008001057285500076537381011433215434975526600223206489068559364396022300850248885000605387685093305576100713617889597940061086063866080202084226403865535488214074389866488595029046113420688309801025145106387242307547582790770894820079002059510100500600309041035036661093177840057864990452036105011537040003315740164047270264005284090855765091050569353050864030609078666506967973000547067457473644613541717502030052502405855757196780820701640109575000042028556080875010662308918152850610502035000809705854024028292400488081797130987014330450140849376476492821089046270937883671446273606909846105056002651685908090966909528090002964084243764070007300065621707404070027865667077300036035655006468501322857120677919630348022574099200240097609903063920405986905820821310129280417861719430030905882598680308080506593242785945658078994429948500570600528870170123821214797071400912773128500046080049109222130202099125099259011320000341099921540397336727975824410317659530009760252763800165208020703073022180207749451540160921505860621025455092180004071068290900487215840638376460510460067946113008045107602564000873808330009130432592626004513035086361405507235509700001453901643544317002269381831573200321607490500599157852890854091674628010381731385602615003571503030231030117671603110080871011700740100578020330004004620800541000240790699924609664204580347002087594233252970059312765179280040529402063850028002087878510207383456945078150003415406800985904770025817031501917139557900032430860595778502524782040016271701982238638218102738100722189248031150502345904526671092844727704930300611409121093935889059330171205695010502418200055856177488580007423760499560814816340462089711848903400005921250802463903580920578709308670173280502079808081440670976150184033000018673790070762788094970467092066553540050002803023293064005630293776390432895990078469085163350071042749034030007306996109356098230402070617070544002803195233480845616170603037509000000294806800025932230232411494338884063541501770288347964020525837249020070070182208400093000361703641100560804860050080783600601596919402071976967866277858041645307594434963870830000822423357581168029005244352520117507186070951007024849328383490709820032555030104588207060339544070737913246181743726957021262109956768321800048555660070230192900102418716070928269360615804504616096447500730794850082000409212009720251691415501630047164400403003180810240027590908399419554577086467009612602140500700860965905860757069086449028278712009608383869083522392463080800712100549863032760114857193174079994401424408133905667010372000086788006008039808059019677269958116282958612830120087006716242917543575080797384013270405020740943945986007730560932985026714957330461871423600580800506934000200716557605405009430605409925348037070059460810347793948403630802886893093930101305004359034894707035512709003381802306093951900693956152363099303670967567720110057820705418990343517952176050425347002932300040059897473390934062972929606586555433219305808036357056000903520073700665707610290420293046366965559729225999640114123200737749273098396069209253607174410572790080878577459346618640707067890435123871984501110052976950509099809607792140296092465830205603140702100672522198912076070040643441342822772037890108834045922755743444031514084047207053497464020188471660555506605021924077073888904407918107451804319377477620504452509908144920007608137890270009200033220712710212993929005690060365743837605767100302694340929486285401459074093833161830664784409500142105096925794638609901309438829645710487202403200300822350080088420685080445730571307809417076380005325002037870908797148540352606767720480472793009992100020325463093031114708958512277081742037210290926248406108999714711715382550702160939490926654682340206097521590054140700885458860591485417954799844552875060290052050500392566370605693500064904574044172790565579168062811380783840076299042905990987523090001002781096901500041343916423863010659869120000043314700330862192169478043906800069032928009009007981805150301006420298023306649281082970167934022015043090783962525730410346009780930606176095683009080467011203564065095409251813840704181440029059993000797375903550203006036030829451197155896196624528901870154209405002439570547689537906208425064107055479547708867522583742384004412910608208059448406340826415393431318369428890858396175021010011662356003450970100318660474208598805003410738560722942490985196070105708006774071101140073515646195051580879080355060596126227747942550313009755602948008651901007459170610176940502070054426600378737100240607870708576982207087050694255751265328005570102082780127002000714582098200870579602046221090047106875586070342278683386012619008734351618890518301050853488063568047438152799256014781575376020797194400714666079606094629186385850807206910500118114209539267026223608052923017170079067549000110716686024377264530009040080037747252360898269105050209708848001249802152508290095015460260559910045396750646758242600861897656519090040804014471830003816550000400810078914608065011133724354000409143006847272521954063977207800806176928990100884807641311270000000318321633058094096340401140114872100005332731363018824670330699280175470872038005060721541622620001030880991005055149833631680632228309860175076287286838491706759216939618181070467417808680950907127190044004210116437003678058965204594300119500097955069017446998340801081015404633748938803770890164848507091505003099893905027771000160007480289576032047484180709900014959859924007793013569357503286322027332822869950186304498003622550105152596414729614029837941725087130798145140084641173679259556470001493777564430081386041050190097833270099900161580708080725991993031510141959029486710071296465413892391727302206450309554961300384827438366400988530048815040034972667613602621137275868780760888600400602036045711719629943030327448359964086080033480892839050210016071945030462995778932671803742761030038009030902180212057013685504334389625284616139847808348338098062289170860505490014783300008600048010606030321111795129166330141143544707890011013139867606700349783001549520995593845185241404904838038368408460600490508446008954508603820860000848040033021997870440907821487412246331802718623943956100008858901030298604701783709974330062907465089628975794140635809815910597076262311499379673300493075618761808096400600271001409195828575922965340685004080880055013822650302959222266893004486673476217558528540300900999215551707270660315660357708000876906000886634057769703193135365029470520398628328041875843430000343456695490077340667169476978268372532684210296876251031020052508908172991005692670062074060386022606440173427260000387860620001461704515320306288509730480346456536747520050594035038090955992879521440846018603291735089186003927960079581110921814999061805131704155685611030026893372702757504015849897888705317916233630397120033559636288497691013530497054543952840677070273467889906570757014108491512276204929747880082356027365670107564991700740030106800702547826006092950487660400160550793252110046360918568405927510600826070138233012390052727024383657668734709889769944045122384000294966622686432093500149092202220707205007414609270600984772552295681062298313979264125403972500922120549375417003645023800690744093402767287134358080790496739680011671808449098044180020333573503600620603212208307893558727384960479358800056444506009203360843676000645014020290696245007160039910098507707015367727613730400000333652200078564171562678005901240064670899049602014274078231086926000391853412650740050326806629644086509927087229850515742048020370480969150508600005360020591631266700050200270447949326872085062064603090003260309008085043429671102862105921797412936789679576850783125900637060309023650022020799645907650904348520087100112603674133235716356950353893954578080115570752489078063103654075526947972776752283115049630030400120425339337864803248109005752610361381788272305242195701930995954095996870040601016050010002060999028425489705656206839725520639698261000061208200170135960063085030064387974885684003944703411517415906020081809060504037010492180081188495610690442062095474500260835280408800710001925067076704038010093648474464798044610095690933206155398264992014588010099539300800604783880740166032074937908303090009334604785587679570491247780255443016681004266550015005795104401806470201391023410236702203021025101003095154727076788739478393866013548972609506256067832164336415501581992019206443778750232141750641634057193982303106003125110050373500920844736457070111737536097053538038840200255640481111000573676207144826272650889018216421846405057927607441238390409486974608726921150726860366000207247707246258043190900105984006485180936571809395072932204805690735100850486471986014322491072006361008402682400065615525951097007010420030018658931980626331930780887332196420975231219775931406807172965802005023019990100702097607026710602085910926201605157334960947882404801053504610038934908189260687009777004004053803965831582480807086900000284608105004050354906590900108897769085103760204126044980420360305176839705036647000310169792014604461506030822731690350003942218092903437908498631788039301504322065896640832720290701464031350207000020003265000855305243193320437707382341304745534500027090040794208654606421937508015788709619945229230811796767686830726903400973840998751106232413700083310153060760967038012578826057932095040805994647078845970770738354205396992627178015202150012388465052745073410453959717810983370615908868277997877015374053719113803506000008453490110002601564390648450495000324604519203110206502558305591462060759511963648082160741242437402700878099585066372402151280265995307847071805697027555411162416441681604030570469000338158162161907344020020800949986443362301271009199000538606956065206306900907100466458872071110998355974992392603705507031060000819778207293884371529606834100768005523814434852900392068221253372015877797396106583887595401025095148755013054268003040925117002002252535083287267853058760340850000009508625882116149444524016088606003640643117029052645845080799990000479085103337590087103808975273486653910190005408206294800014496220254008652407793868221064800014609967045476258045401161527561965004094395293000040934753340190405109047098091493456007307067111799790400513592030800391003007830705600032707303443009002014747260056800978019328301260120023042802739800787420727117058513474505371518145704976456080027898820103378509678048013765746910096792761097787063505440567509903896087125078600102131295542024610056470900200358670435483625390516568700315731980780471167079806805391790906277161079813990498876042583420904715917611311371939909057800726000300177901020864070608931837150018696828823932257887625133490696190842169170220331369610620071073741507265490304007103707092006343824948860004419857061848917008838852351674263683574005988326501200009381004035510989563507458730951558821520560606472380194921240690129709260001537558507658680135169020368245762108420325602400960989113284466082890712017108609668077301697970978388000765872148804077870076051721004877276371298430006658150800410706093900627230000048290068498407000433057199510098600726002524329104356800807390009106109437336841739760438711580502855318018310085166297928420500074096896630770804063402007038444284700096665078636020183320475063300008886055847900050072360260960033908413035822040773229806525429710703410426168470310985947107194130691700758990885050536900003000730981565669173523360341622224032306726117058730677049071987978907546394803739490545976108529230690069546582076857953686209561034442650809071128882054190080270251941802900920853808622001532320068867988065590400094103899702195003845417306319771911959982416187612179029038829452746047004577047264896930040471900701707025824030617028241000388499039669590000080208869356838603004230309090775040940835608914848000898179000069701081301581219869383274256022038967820131308398022545024090113917601384206400685563022839202400589517550010016078408410093563535709045102286861609094054945601056440604230383353057870399987910550718030088890028899064268425062060954170610046883190604089030091780378490709903899265197734072533220086981904256507879782190690682013185586085929056499834005624700309008009330797085895393144023704025069604908240524620610203320903003130209208678795940106843004027305976007005774569904556956610090310256280994709500983114022993418570757950409869908481076782087764556304662742417504509609009467800003838052300200009060295546799557943510930360916394489160822761672709004098680170020274886487500834072515420063831000579532870985589058552490812080000494755000693737051889007267347883067206040377029036552201091229178488642190326543008209087080009008186717243002479503541902325836716952804701703956509030402467212000822864203709358420338490247056430080610074354014580960427536738396300010276665242026546682037074149919779544908966006092353957800328228979400100204004169440290321001545607055291804204603849015080909900107178600096048331301018590597890722474970512607364181626404902520737951087928157842167809348139950154727061358467084106578902900040745306967380505085006022033460366304640008027046527084804233875130297535039087258057129317408789009019240674041302032587107025100847055183537102907390306200885270976560235084820874080920163801920370009615505954120811783058644768237737673527096995053988021474046047100147147260414648585005356269096652083315537007900633175527478906845709311616506083806003089550946977528767784320800092860005030583770375010051909800018578890400603263619382589800280920781220807577606400105960696367671959201783401731695429070059740966296622041958192475070933750705036041996452910602003882087293707016016695003770104600039097354478569840533407184193068800053645990495128940780002660659084615768713002096094050070058172943942020477004112998739500040685196240638832280359401905407518033124709719001419749545936297200007043758700625557236650722671070430508228887047003707366380007471894800642230512819674099960346738802087119908818721009526298607923301799694300028966490273653457910060572402905193020636009720135803320796089035188658802970081033817618470307806070040357096601383580859060047017666023029285002794929325050923839166706007115176123508604270564277580351344901734565030642009087340795748205001501040010594654488524096477003198888545005083805700489581595160700000969724226545570084733917868564880002060988661459990885683596380030001609268347210385292807656007134721294070616672613130950359250006140758800467107210895097890510769131102890836119098077370778272201250090756014788018542796027700788999198731705783519051003518070920796570529409522934314524851090054216427944400917601809436981249799595889702013071287625498030200584074438481850811462195026745090063238610220076373613502040350029101760245003828095292895802245221902935048537582731213660800008150657083318930842654407048509796711505203065514097190147077100053967402946829900716725507036900356088832038723063400160088905509070905970645100250551281903210028700174848841422491209584454862000240692282530973939701336197949371890408094379008036107780069870095105922921170
