49145581659729625140934449527168713873774583212914950659978178873359494745274235156940817644982337502441604270973146668245665268047133164728522101691415710759174035334079020530330617121919911843531571906865295716628119601894989364908797504530139102229210732337828169499459786210111694782225505746029178872310706793716813049855409335351951626003191249764126056317106816593576539808422641583122590214242480455415281533161629602243615842036593539496313121307637344704651834963581335834754951447423122445770608817425288211465054198922125338295236572163460297280454557164060687010516565164461370286343710648247027931582178401337774099915562074430711397198410792564363058617161495160160761926215435283377156267377852151117674538905773523195231614951263355104348406270163596631330069173507111537724609923518592686326333331717637041224419361028936900718705076252631194219844786123482849621914036769685902319574740301551650355215370163637253896815830630406238559109001306776741116833132876232086531731476855430799330713956535222723147338618117836728965503414385869161227827490188428378263897967388113229013630654185062884999106667135341012793411367122025811090336331476194130155246279666337345142167171077405342105358615817215582256411127311745338143285807207773390423993569445506646251721483778113282472621033786005115592344023269914182523232365130753973719463099805512093519463492112469273451670501913484231998372313103538096615770141483703167905071634397773494135179847663601904824243196834154944912270945841276020213364011063292314213425724623844135195143336895827668003037146841323247089814160615355613603221352132637640333834307645596104254869054344648545309479150654687299504006933593942868146190496329811301135746953477175760466133598782374848414238117234805161472427102456103741100515303421049142455636494273131318480668711042067149567160505766126792520133262911841253300381710494534291304550140022459316443697336755660202121318900151423627954437590265750575432542318944325566051812504241205222734733766234113952783271547552360621287521165584140500752230947564167111162360030130728921353403343047327682343442706285424363802754183781133144704410874651201009868617929746235130161740563717240213154132022840625003835172245819620769006323201420033321711661749335111655481514238993411696788323156605946122170362542495463227307531316234953518523053972567963545872157351421363540849917882683055237516142594102907181272633820860861582295676504051035716432172123337316937611432074645829704431732013418566467968394610895681322621593435611526820083536897024381976582072530367034641185114222586373030976551864513572341574321706096264121532048153636898917181843010808337899412725733233409035773756425259997943735824671779766427434521569991620485653608066013554660214531348595561398859263391074316404602737448214435224278755202644265150755663842302407001064160490760334234742269322942471445359452485584243132454152556812542704644378521105592029766936682792427837850347243358865320915396122137868147705084161720354155418301232243520878929374354819451755806375203063496137247811227521231534957223000224751201244016280400314750841923550024534694415963726468289027074471941438157443266459094006828046045204735892910481772110247176256305044809193537484070082423525295563324701632545763128485061328411394280218565940606252072431211509073227340590443938412808539569644255546922232326029151110586058052210359022534133548484880539537492218665048651200235242804391253702944265496135385334935186328729626580763362129711522672134310887687320337811437875873276885345464701593982112724500473344318977088507603915980874918570726246712145611514073733736619917144111638955005028569452430005021732786434330597353027071468341204541031774111735559206482810883511630890454364567474482471341464630179557108135228733901419186258195662101813020470119423337706337791275983011755523510022881526223211280344263445130803093044644372510509873919923124243204627330012390772244634228976444584854625343151885834333652651429136076920867136274775791872382416218534449707437826163271841073995949451155605335751333141890556480736372277910203222735115798180981582346176330420228051931057466497127346483837291372614686292659921168661318109856103374991321418183359210059316914084168998444156206401312680875337862160557113653927807162028321785491378162212911161444044425458418868879062158211973951200264674435239120482580524227312998141371260412130924451501202711323385933241880645165701101905864942211543176762194252909149444951685188165217012747653833423802235147765147183087135041931847325131265746930344225181837152158598609211552910166133492010412454712805478220025451059980724568831613253669662141153751090174811282980149519826076762834267912641938342756127461584086580366281167355554915792728300162676441889918414214203069511177005446991255037722621430779411097950755212266654958437864715082236469268516745037222032639622842080385171611666943477008196533326448561067729737340661470822147115412015628591154116780654282444311788163972124265334169461384708106035759037521368562292611132560634135171319659902045377102883021443750803343337722016815703409623822597122240448864672259207690899574060427432043619825344110053942446321941313621011056618944538243592260112090088107067010527647672532660688409365562244911273933034220455211149861333332402546478353583190122471661812058401054319311420541958414129033253463086202520562992239427772339014759539342901744227974274261807581327860359691528686468242337035736541143684141182534742745397428185098947732875623353703227195485113471446401392203518471962667451116753700340946523955669113628171551424739415766546466847276067477317558728199048791342083622295648085413256693428471343023636326390071629542215019609322255493120766123961911274945119789381247620322077115468965403240713146574759887454634048005676174746461672704306251637588331171443207356304490355443427925671014600073723275387767373389868720513823175330614630045250032427732033154356678682318262175626517176181155241227323307593514201522683079141740285726107969646460136845204115207355435962127471866365643307284817881733346316187144521892659754016855921204062803784719110141526851432807826725035965748514900741283972652305893416306497000452056207557270401220855375585048013592279954872288701588838116221660223935316333328239317303709283191440716473857339110021496216567220621089629113227190215406360048664510764617352767918028889901989661579711093339710887762236200401386877857224842716262919122353282828343227997138740800868912140894314664364286921121474958815832321127343136148533889081074348492333772270607193141482061827021349631653389512799207000510226050301075747607810996738506141547090951166798513956365864052343324724284170505321166468394307986243735684429731195455960797413801850168116686541170780633064163980347531422372678917565175282124412455544972220804204228054633829711754240727711939368737619188519709755901420702510326329035244085221715523135883141353287432224416161441687391177380897609919534342306245123936246535850537897417093095251654536256740393836770012261268741141135792338518778333132621150919344131975473184466965726047215745291723362070244335690695577421968109683730725081925872915022332213926641424432725217443213713511318495015260803289002774744830079124123329108234735641040910399509348230115828466597362176443371713347231333066715228836606426224498228475133398397825011028648481589287553314033406241612205297388246177415344959155113021417163215559512123988973743065360457225943635864817275454251992492130793784910070573018769032435146960387249470761677989384142876941374249174984513223523919012919507033886442847282551524836330567853831094015286191411675215979656515500876141007358835390547110756163881621727371652898773800655123646641306331524496726140518824228931110021569885059891775265062812223001107815232715547926495710039573982465319372670021159360156313816088331727443449652414415372543688587142416074481043017171767222326450114953618763358063256272412997500171672114554020599518898350548967818864400268336078404461983250206456132765851274615711845484983825247133028733216912506079181984685073786376382353137908342556738349779160453492448481540587172294109284428111022913667222704831669614459853718274015440714633198129701693206200248201506024327432896617256737224033388022545044949413818588619593792667429998897148328347454276280296468156112000732803673466921431314678880234504427684456128041948523657254793156236325401867363532507437272143327413718553886667031033782786782159862515963455159573337001103504063034208430358540203311889674466325249541286348132719323075055633277251222236051766217284219873906923291109213123368556148193911734795247811816625836470916634562666711412310777121156481745101234773959248202678811384284661218024161499323949077885596306734956143020741076096125171816856307428180001059591123903190240224352659275120261134636191132980443835738149047266702651435162302616838251966542022196505241527785756524092929185425381775625802987144448929290566843202056487464518301819252856797327758138616541991350916243703497752159927274383445225845063990824165446152706170360413455673672379163221369078700990156132483009285457683221518574116373859581262249451051291817674631664004390602187568223045990606611129723743988237005782174233811120261997012390069951053461314124121558129293251006516170851265283291406763413030814680816082232465558655562290029458446683854264346726913065041357418217653980087743753404733049225429255981283256269815971081522974214625357281729261640644323500893841454327338175511615230424878360137635599127062572542732143080517593653658123892444278547174230919697147452732753195517393672195485635319137433238304159233473093524398267212148935357222065239181048851451843751982662974812901723486952227828001790825607326341334155895003208330513362538002142632172571804095728253346132510032028110135086811478341167113396022022943451732640220902912863087778613056446614047322846255255055073783603069162305373850105896694550243084662196388057172931534296129643337911012367227925833554523596135158821893136073419286231581301936333631049800631239305746069428091332407472436626170311002787018338510420789787259025030770445002816896012811210441268631313825743203273454968106057238553858137312471217305515582899415906207534112627013143843249987763978853015326516141496404032927480324639946288419932315267237882448068226333670919181515540611770761573241183429651366726232614948565123078403389731191309861250461392274677103914447464297873814668010310393652436149698189193443323412243400078304785533540090301469922801771939311791057518143143352113426531373487490957220531363137166364948377354421542050437342351933506211548929503741221437316111469517153324211393663002126909496184016415312709333996765001246391423135563441208026921965141419041799986226710981300803479603084345718733210042510456619819424820889213336701441377221093139212533914196102672313863166861075504083949366854603822298541240142973043266487396041150737509912195553132824116252079974652765500242268607666285946842245417192352722907383422191768152452031615944463037810948542678655096104793635167473053423107054774200602204149840032453833635919511275060068712928384387524082566945845191859967413901781172178961006806233721231055871549052201217401503928229444620965942365245733777647204603914996191308101847342238230881853126301940440222706907416642648523600632728815314623212577699150629329818651528645151566404625025114425803622939048211393636889228422168554914836716632700271509201957414032580549189666966401304209743624301409610441322759302350461675251139186928212334925717255313556904112602111853260001333024621740592672028452497212783579020535324305245836046181636605566746068527950355009014733911530510349026824496635665292275062536685776787117648040580574794763400456841133931567311343010277657966008783315127435626470091347199504712412471412049015282071664046755468564683466329649590111642015255232116563703243224321094933160733363892562743272499138060552543320109163474838623755391808079163186311575833737003147623298943313088071001091434251187056742559698983184927948619323915180750641647363824725383218416743121667323446114206836014449614448546643365571782033425222611905142903328907240767526273231451204819424071974185321639067588610954059323360119564218833519856000440925732775049040789219355232116928267104987625411206262040114416133924116250159567110446253269326756516913516272716279464660674137334135305653531879311032102030435074600378413224190338695185507593069397115679159745483297220926241747960862966471263207394124425754288449724611336112613976003620559965680825719906683634067167184468985825122825241618693425342640831734225579018906888112735863923341855581229848141154942064346018423833251215234216230678251154692033247040197357157455124546917105008122727847649764129728431014060353626812883141362716042164466559407628623948553239538615223589528371971760609228865751420641579948064783545233172248360553000672805004697220774647362245340622149203607524506982067482787467275224720731503954349441512808477525213815561930131365236575851914528561439391749924656138136163936710464116842945109374407351388648231116367041752072132205836402512128948461420330868206312556919430059220250716992712044111613081307226244691781631734268138621804466756353134249803526790754190401011287203080709926415167625727443681626125902653669158252732570403415066276944685029631208160673237608174631268209835900265010917962885637534645225293225842100837436778860616016601412694720822812222400103483795546052002328339296252612735201482021568191049670636162393641615855335391427269847101154371193722732255024754872238643934579313841271115523200475813641021761797606977144842405848366721133793912198916860247183054392384019928549922107367332938806369134292625131213213441102642257132828097036450818090722401584683040221796250409711260946099927611536339072661170475798235144952171076475571419127453575435571766249821067052301455732545946236659926130491373165066692109422257550836956992134562790806391265253803621035180648551181431801228641538122161161438227432723919226835414502117518036512301758036860144333662734732636425554872881015991196242091328169356264146575354337603392260774915527207084402661706270844178502832156818603461858126180292138434813159655146360360445319503686033526320736136754293138085141659234471540121053553576231788018671469349673912279813428546216229348186857416613454657341780774839020931307353201526589635161273716541267984172305978692263050538291359911419755174214126735694472111035242075208139341993592317438745417678582130354049142209416431673311339081416386779214647305695651212858741130503102834313920682121844031752945692386322262901785906000203880524023012930941290673614654746454616957243861545112355143654223848168661436265538799158193988486409023251279392678712993183213606355355220470142518001919143612115296841157222319246145664921216768733132615419345151099495735652233639223016122769838323410434357763227938047513928215546883477618462237433007063745110364028746432377693659132857173648101133162462445362886038283970353136069915014954912823173769662155821347344963831767702899628071561565807724783918313232779704514774826449191196230131075502558661453246652162469307280695337021837403637613247393017035366232300625706044072001203139214112459538276870416399656146830950132263422016177140394377012741153219876422950387392412274812213526641617410611468160859673532726613573181252136527412130322715524117356854484613101670991050079934904583820088910531277049244607434204128511448544439104033759309949942198900428583943549278188815742790622341724817545034411354637390940403485939601662122240739174202001412217148080448109854203907119869679127683512045211161381728253934556219440105450764114113514860945134132845342060023947851031723435763126991982119225483309111741488713721421022807479633181626386922990274952994333331400658274467475094501340368191233064200510195364754146170917692147323913349313577502763981622121447152347781715371267259034204117728342456790435354553413207602256510745749049732841109754433093343149795578840248697253101062491693397923153633363404939740786431938643506057111531341853811037982074319625534717411323511977731791281518626163671157136748272103114162052152234318173084796735683913232956844134581050570678880272323246223585417412235157024991140108485353848193278280327327656362525662800323456124740113371966751082018202908281332154042357868489409489190728825914559301110560268054291740665721732323356345456493142301454877143017947225418505287931671777342247991964933463419215931018281756098042646615157680310740459296673635935369313213419111362018098684020373204951172133243572352660362131844622783249455416861061036429540353309184465912397626815977812966125451703618901563083807352754201545481886343526424661307218455403342430432600673153973095357213073480191063020433102073758162011697720938625267048594464763914940833556154609411229851036225761322839927347322025557004489673465415862285147818823141031143217005250746136272965035630415474006403372821235344646618386518303394895312514057769854911125185512173820272401060241636740252372741135491157764491351323502556647851143616785590220155074266365643647453140841959249620411793292232249097028734776753437685583042011227631571118247881512504770234171035961575475022965826491384841122441101422139281227219541691851416410191417336141920127195727005169907040463935817693322281012041182653322452180352555223217877619325354749146467450850608577201062784113695256361223226348405361055170748896358734490374902345440533926563164734698324644179639374120374733817740315925634310635573325477123321051583655346002114231322461592273671424239571771512722905386711939312350590132115238508356292861729409098942512209436976073728069321551246735173112410052917451696633653281397383611234738893652669056868337511673047725953662283912432333842329744037992372792214133155930894676314416432939842219187221763031732114236345026436262717996486443203176191062793025536408028274707246942994201909603752775462534227208347793276916782680033613020222022051291063513136175162922476656500017140944526290477401642896416561859170282989391924736928349427367953637274111758153145281412418864792340421441508351072519292555350392415193636742415136014431115294549764711344634017214143366474798581350835422644374652524847402513356481316402765223211127392459330931522070759882554394424851461894565392145618592831788155229625183792216778418908123341402370912219560471709916895062394215471055215337944666213551332581058966571655437266500030264546408719165281983666233054817602127616497924787681189261210182781567429350757549553225002903047861094185015338482178987223842068732057436353511015617381388213446537958340471314114615122323708694985094261754040142819357524430065300122866855216253820162194690640123313198246210183458263350308305920081510006725936700327884614914400542886207867392927660406965842593852321097621939576405993760461217660046763240923405351734753646944291685290275522040122543913913728246631775544695721114554955387344370127814625536408517252859482449321260291259182469121626132232240982338037551524239818691748497810475585730872429213704823529575131845124842062942136053126904622750419203319240340995517392412398185309284523921822501616328296148593813145414661314565445622362462428833591301962680721740210491250774382693218880734113271834302158777183663177044381947701653810373204405291335133553341208201515492538263748059845499552034422282427642592202865575423822470447138337076831841809141473250036866866921585341340463513331056254344337748859382255191433271627180988620562132248155333991527032035307793277419122747341370047260347604729834143079953139709811613438243423427254730697537303831712081641423813059645237775907657966541781868420350126885110693689250607995742695445236673773114915352383851920051736855265778642905326008114902715361435612215723117379244942400950187525112265982183820200182172721593853222899525631390312218089411583338214424889504128626665687750819324499247371044024133182382216817883618141050182157148613537223722263296542233112292479764219840465572424423878510312138247617397247735707128126716645225342133521246046558227002743813942359283595850410278730406420470452696617643504598193870413822778811724446902672155099868671922125423382186113810470146924568345752148128541030451080502342438598650519455746099121231160036851928482999366333074594894131156688151510118397573475372372460534720315833228508913682128182015026181766382381194199133062194635240725534500451714401162713211665075142445110675667110699359861974713563223271289309142829446326330637241312713347511136213838235733929868347736936526945939425454146643585211042634434635305662342333554871921852797085255450419735818516038349633322376242626520137736853064672874111357637258017449649366793640395538782656682818292186034878830872221483922132593314451957864790411843680554299112431922703327481716155222362552427968595846969382904439946785271206044183700207012277634213119203224164418349077271737906180064421133942831712644354120242143662134319115605788147864014594020311069256228576564641867573953120745471147257612007791981366361142366972248175322304524369279029365716217769666885093031871277881285623109933122759441465194573042119192488596723454528146581909410509573924861981549632562252923504418545013170008712761039932659352727612357577372133721624684999591950524377273959576145329416160964666614176248514321239646264710072348161403421635568341715501518040030594510926783758663230403794218273729278851194300422711586382679183594525365250123253788150593601927540848022651309421122176325427295639631178507896961993551923455624306216189622445152370588553183182084396479324967823668598743316203453064021466429773737568724706584894903135693632211114379006984298139812611212915155262252238940951232809463345471505043560316512514422425628206802485644142111795848041439649361668253217389390548828835380833998233220503066498469316160329296155174261021672410763340848174023384619017523063866781367000774340411631144341093408541464021662794016130024202957781448237248059296469263452011750061926232570444148164303641611912065305342950478907787744785247581733942493642694394371062943574262245261913192001313233198215941552250572202204095272557416477072793303334357574715666608932536171766524313288739411089302832052175304923624945129868859448698124269173795274142072750092852642040322703405225342622362245352374089241409421916511925376620096848297754528041404120731850724552776450730859307131049289356868449845425214190940021763838839671704401166630538650750938496378135061221713730864537284609497252492144639924561748202794857840250211914548135525791931299349658466966662461340007922973101310444498211942583116464325318532120141641257212728625704319898421005223121712068452433738245285036330952265626066261050474325181660146858274663211683487264951295750882942929172378392165788191022123492223355321543353091649780120268256886673072624257391041463563093693791713182343819263331512589927260199722113842996944972002228274533739962251545813215116452809793936208672964346615045774670485605284864948334515510512104956436726752558116706048376661261531510525092808149596789931341108917567775234118296454174015445877303239517153519393252203311681123574525651759223502746528976784585778076323627465273940526494597744683052743238592247637432582882784780322319267041939894261329221567192241751943089603003106482136743303163532299553556031254985450645635325353821519571061921089737654704152581316428116108055779839532374438796133502080671703161208407651558749996165342266134281611296388331740137856621011436218418002042844992828412760445307518084501261325594716841305464955421439662219245759555501402815731132493772094252104248577996276842473127479762331733648534543283890479566505941242441232445237265708530320314069313414317944677508899972636018925993316380765127601592828371630378529934389628939621184342351878207590995968252280143102876071193540712588911221534375028990112307164570269455206752429161358852123971193374029244313365147746571015717831114560045195701834253352658210205151664825982203362092283657624512400664361311021240531467644601277192240045407763112360220639260654326436712326476995271622630694339169439133178130465876276427276832193898502542312595573400403343952969272826222366567108746153601733137715333107389971376154243726137280907346132014632001137113676231915579336486623340277986789024882445283028036916079113136211719435832481802296260623265522112366360492294141061530234606412161241439733618190710748947661542378261231101016106111173769211579096326762500967053604163613312991590292782358986612502385261750265371502132485603891103144196752046095767152845032002835706441381080232262251149431574362303577794255612786069364286613980936684814323111247088465413348120232286635166626264880614719341691040411622004010058968301403224881531756346948150263239369773225640135187820437023342708022012523450320910737418186867351051014775545120293216545205061783699923532253122521230986820111422138114438753796236627566614960843661684163021692919927057213446083658112292231619032298723322144135424426478736161882142624599256154456724111272825852607778136564167419060015863932845162220781319855112540633161041201647345524392252354878221506906430510372758468679265021727356534301601892782166121338527113176128445847424888326117113265513994422866477708719002640673254513982114664469133332462029774585222970662130767544239598131011672589254831491846457962224447233065398157531418516704567257928881069954862375206897166197957217247769003421491063133546723128415311368931606131032131949022201943172927527166105213090021526259340562056084083142285350333221287375774891717783591553049512149286874798193491018241896342383427011173101231919770215846368293925628496191677991320437265551732832819811003389581281621633168641610367228475223355520224855422796040568443322521901032749393322530747228097586272500008114011180153006165631810411225412068539151065137713380120662161729792208731894358249822215087202288163421931886332712784374075314280117249142412471146963581174124261125875396364584644562162876326274012023424749163571538015638944765055461539748349124471226131042010245488332981533590139318756060050193610811709881508422254400110350226516225941480351812153032750263475346804145101273197310429127319516913121549394786279663078604231813128742062435316137419356425592481819492564971922613213640200179819550483699184069908641043219931299394235176568116478073281475738319864839111431315156268166603096544122952225203016592264996650254474360695495322630115846214511309998656180801808280724818496201322243378454326011349077534257477512432227330531543049318477614730589277326396172258440147536281418070807213154854251341722470026563042081755298313821462736884730233870283236239070931282914527584548930255288816103041080114274122113214189355269166793968042084674813478034657340677180254464247230732835295375387034306249805012791791611334994310377627743334110165985097860257819416260070915449582123574231173646232962112823534034415788501501365686101336166820320253910362726131990563633178142409331351145624488400916302063955136516883339334341537523288682557263303437992044530196214711241133937203658694693398383088496673347435274612536818523009785027516042445150596775102711626877263931729478826817234060307413120981969893169094249603242981408901114264782075475637075964378644677715870422564790109412345256123355759866341331795206563126252579243049227197054233408767960220634069618378246645255770785905294690518715085865337525712736534988708524457006267443249691633851624010329045346615904866165241954284731168284452148349159125118441443772091116151122646582522318516621083209244414579968513855546539598519286314671414258532353716756252483582281073896601569104561772666638540484123542640059742264344169957106855721124855315419337322149639236155882420229187818163421013146744543111687632763308757920680973978531313573757845490917017217548613334980545571731457246969172071598895330660156581028799221577034687203925134351567904362860575052308141013657321367405347133534642337239774139833585412793725722691967152683224800732830862903680976513549329532235361473503748610228581031462264183811073265239671838711186322540871405683071465421510574527479320823740956642343770188888260623381283394133244185884225124380122993131813435278260585292412407617043518773410427715605565187994948553531216242604246166980452121853596021737911501142068450548550578099866984461116804104166531362412809811654513166532710223050915258835075322808066011296127690848507788996727215438905503600891979138221463201133762404844628432145423131177119512974855711032196183638222560273802412299578944519572554702364586721201784926359930107326551499264969199541135321246265419574430598434218318042201427382486820103910282923351202435687769876618424303552073342262314142318123084452683345097546455843614078808034601440426403588147956217701941162895499867364963112007005512168372253831963285414206995155389966755631501800119763832245077344842385885359827359728072412714162655660460892110936224769374634233499870679889101623950935225078661416448392821225337342506152150231411248132520081558859221079061850538002717833153282766726296247570341969575384276321222109957577362532972171531741921417306499966571111448155294294142037266404014679362225475547413581116919634102744223745206954494361957281186280007231643322522704841317202139181852490553760827397446249114512176343932683161410211102332713114156705027704488828630177048250471771128913425291911969738901402580403115572211575174634442101761074724351610641465375231816372553932643853711673395203118573274423237917492520387666139582538149602922049805426582952738789002028631433544447621057293367016661211867953805204237862368356661400434342752741510010635816572715510213032342022007056750118562808148008281437121409365425812692526383049086319633107652593921922258094044234303288522143452494760720295438442671021319740141207774730078728388618708326533221314535675275781328626173045687007564655342521617314212170554180039250406485175273814067361215270577243732712699769172112028541861985737107647047467916135725044318177068108803054376313365118707907618192851974337083636208610430114841488883982655417615522459038404460772594644360723882112663282373075771722994572449147241289854095762026852740430438657113704363422947649130645485340714625351631036543821126062707463415024338145807549663006636596165675409230533901909630331851158761339724217152829303606787825835370371356040735249510201347326520558184901677714401488422756166741312037359743387231678291221210901138327875081135182442925210010803655053571325604145252481164980283214210944137615789736663324339217378400253254429321324285422247097626029412433428147503700532446645213306469212147933107479431643314814081965651086208937456451185991654688007581413823425933471331255722132761476402126070171711917002270737897463137438381710508970275671370473566007975512621311093207367177654413175414014011014620433293322426181190330138004736145168098312025684616246483356396674169267607362193718484142374095552064812635114151430322187109372955573249657932238833424117351397009188212378542059716000008963098699601033515547542104184002126103121683267948932832424836849073131149338339570496277357514273610161811650472321222899919720803314169776477243516266876235530586537728305411451511720913281361249651633780837620410869966747386444646752732913182571040971764561107142734930545679823405111492965862514183645584404964815475705045676971101344012234069415733459570834161922283534357120150265951926038538037915437172489023090414321376304459245213493305500961447010910906332021619823621423522384231226327855755598943242664004333081870124966920267148428298131520669541595240605685976284565268313022752483201897600821094220867822118546503114105402227120135773705220376290351209817641019689635547182213586587680648839130615355420243274349387327916299183528230150768251822132957517659143795834415934277071411006153403338112869082226848424576785583075023048834162159543867184099411131452932526447018448433623819646357834449084637414180424358074685761727319712932232917695891014454275525357021525471212615742624873042824200516310839105298228057906823689051247739299796004411084460111316740621428261126772334953354496768226101762141966441891413838929876086867626519184574542343321872263998869690260017316414195878598316372607434917286513046389410341947641343252046511248682404492413606774930691718438247308455469128729668086122233598213213921758644251500122210507738015412620947321987156940855148194242424132542413898032753445297263463194999211369892418351212184224624106513594470616583202155547233318114943060799822400621742131541096311272310460696287348833433834215459123633635382404315585810081648019933195467037751815802821583521281682643136297052878867024072358254363789133614990002030162551116203190825460830818710131663045381516219346929368887144118231464458493304174447064153042268761889622231662410687253756865060043161505915315288454524045789245956122644811837647840754610293252544688861150618247438731020897066890328134872987325744420232700367542025123343463675733222081432730491563496235993249014251762118217312373830406731100024132318621392663651935123967162610231623240015841113041969118563967535201791782282479326818193230055718941339445594604416648673801842076729095140984166150294481452811148274165114542312487372690948186133436654963192418432075155164147968130518458922407039086085183739685367331564671492004133819647277351193838602843264223983686309497343318630484826511119666256158643723335957092642622295773568312233324584125268031370983335599273269697090340892161088605227772473633669348133410113215005575504022212915057881112324359421781494936317590304834021280817889264639722241588085885669786821143436881979335050152706235628975805613765597411264886512384544165674129075700136431640184006872398394945417722715916614431272183224547226204604212810451811406500519982945473649195351171434786226042372365715994412300924314259644422138059576238154483803741731130543773170276185365230767002029005304486634732394284041142426184881622562447559016490384459201319969501361431816531347249721115593259303440268764157061817100597034393653002541523203514757315472379526999763545827197722012157321122021239522495624078620318854420133737941436447920504540155520525143907712049172561311681446625962241875793030283401605884731321410614670879300614787154576392461101291556002480494207117504357111123150244183533635654504541155597128333976044490911805098642093959593446579313066233384922335631421245025752745232786307532226184421470279371780143121592851383321210471770196337335943792248863505038457120211462242801859364851720244806958731183560241721290293811106212152165547423520658557457145530600691059389211290288204519013481251700464022842705717757424612174483594740533834323400050189038818404167342653433554273061294344639591534517713826571394788274140217107335512735331117306813053447923540752812033242211027893371753163498213216259139743779493092016391906413625993297149363642184641926055106194681197621533633220264476600631441432210942324730859220393442240018492443960854683883574622689108714458553421330529054746197955107641141412682270833492285771163914649191179744027503778955045411352130385681552314157497785178104291334626236145611780344260167381701055774079597511226831246512347498254764434341535440211413600348701206372142683643131909530637235178508392900441500361473372594095814651733596445478922425714217438706626257365575925641788415625103370405611270611490412812645036903258102239358714153752462144742937841565559951298253564606720836910916303293212494170080742712202719041434751238850509009527905032175319513517377779728130251257597022551907316631530574367011135285981673428490779862818569691151257110560364830888863693064822620196995753417434459612061777691290378221769271930323057101107228693934032527429091863324483451674284711990432430698579711181048652948281006594055359312511701980707811493029578174187446408736623438102285777277162541695032787732555269671331091260303131226372495294872518601326241633455814039440402423309639035051517578964916221094072124157345557132704885023925261950726391116503130742214717546311051833597522055222319532632489657813439186972366143471629711252234483218924441905554688339887919405729110238368225450582486193824438876217001904608514435422100411611332331827158231444257948462702779400024011156161706753834614722671225736705198715826236412745019975214610001155628575221358001765805921792375057615722213756224244442223207814215001126108551836793444739074313074692783396912922741225272786730583372262453346137559703620111543584241292715299620574095815169242734178333541836627931032781783483362891200673907762976471073845302808326362877170181076482500335705404743228862329693310007293086474137662146111454596817623461474984834487298405909229803617684092677931240414142916106434168477419862752906216360130515421736350463167562721805739475502042870222224156612692387030204122854772139067451514709726900310231143113104339161432030430200290058406990135273206332252628491941623153419014479510978712001275836162254271245945814516392472507300958353230316736266337152990471084663970782037449192136437018982152073162632674264334965439257741623699177405574174681230195029503793043079137205325345568314266006421168792062421819135421544585842084411103601417933924096705482439652179498623697423824702171855538201031812603486295825507065580556214551841681052651520227243410685226673636042927467417411432158333437385272811234461271479830568233781151639376921916820794502692227066899437443107242946182950822594538250074023516907514343920143513268110966228512356186762420342008451165135625964034408451617772938533863613016161393821513231332732380610658344391212915248510512991240839101771272749176433172872235263822362473358527174853010985412536346537025139733752473582601753926049290833505588239327364417301720010331946981265935115663168684642838921094329156492304663648747431525837719056123336414410221977167121257140315988742545211822375554030322272300521321835308370914519999526790116911137501835648515041206014132155268919324593743458364981281020229861798378213790379743742027719495308188962723492705319352495132721970131404466295556931414434402468682360715093453517472196401257319860403862019420778268501159272523421021961572131005625347660215317825187728143033324731432255456451019700138723166154572233193865507017092058294168835472152005341282741427039773466541932574727354926350373121607347404011385671021118378957037823861612902607067552780398067243114280424514251927320223251725447220111773451532544337740764828493919429242341211011344806608517197555679115206181525322330324157686830249001906543427265960845651895016173848206271361153373772369613163782042999342011475540341716189767934568925129236222682551095713115295242931422500435723516569812919714049035805456129062822695713252246141471416043521225468250172604855224323517120136492090979399301138612629231698174569555030912041112543075928818710733782425799941740608591181161024696259106523181187212174549854760311911232389154282346737549658232197321454307783830436325633724344634372710188201324413765277220321962951931303647331561351273175301725236414437174961287736269103194055914047945126621937345019725167605574731315802518094877546313027761263344412617011403645757219499732330179633181187330274480477302794815755268046715364839374577201918546316729202338196351463740162406213278435827238399284881335314024754144603640245015713892139227977982183846086951165442756684201858710702714553251740153207080217300931316320021530142112590600441725661226214393857211552579662538193420731031421736965925066666390401453394257789639689113375797254275931364296210350241365516885011761121444426445293972713506857306803814938278251029254847921059271164114876231109436853208147497445759563542626685552462457323181406873883227656134569569374175609072818001191444192520600032721483280614647701843192577475571808444332312385656563561546324561773138750369566004626121091427185918822146216122322131965013931616761808747565945844481857906579132645722155559361388676042608398613348673253832524348669943761790418521518527009921341200556789912808161703375283002548630288032008332659736230143412500028311716034543667673187257699342238756941356712313742436042420078473872334367533620114177110283322134539156033199416835788331423511157336581123169516843117020165809106210580012352843717026611786213852222471599323255168332567550344604913511376070212363175381162114000635920452451722106880606456526117766220561531426436049126711419862742697496182041379634772666321269495849621717298343932780701341602064615432668910762014044939244128676200303387691153622458636327611421453323532539589837432362044184259339214117472535334614665042585456257192337112143660823794242003322406823385132511867132432148103279344591115240309808477186142634540181710603361153634632221318102573622941427239530026141534543760689196645840469121652715674628320122157331640824830451994344374931065844143179301233434645072942285311575346241443632078390559583032060305415274814451475390533305652919842691439242935333010542275121995378437629356424305478068003623010028041942961505755615662403160136104147323074765911903248663443113479388430746621914159352142983324608109028247968134594951222322031590001060820217703276306644982982321528738588130129542761255321931471726040114397104539987073439239516333285605209922970652030615144178366250769618448446738025082952381671852045352146112004021788913047733795213491102245846097277131108475989106951615479275824882642402290255012179605971509055572329184178591766423122194161469620241759146328256108284131027741786012511815501416669144808046577515458050216446894748258059279425245054527025093253952438808041728000953312164211125816794162553281275658428323020231633279081572033210612301815343906190515481411504473202315193381612616309925760365211318311462209716043415189343773218851291811754276500965004245400355447539357514561518799610805550426938081423681220497855951051208718748135866251333220331953158881966713931959744385551914982404214326932720596986898214699639755195202322272302476069282407573823576286870985790451236672022225335513060871242426558503569717588258674504510562578963235242561310367369919117110121176634467284613228254425399588408670335588433953153612684395371687394343289353313118738044626484580560762630324115406113962068666261502196134354804545368910028621755502882202042860825214526464014784159701311557099742176016267327490978494382777156216537829364123254628748521866839389475465831651158348782623227939403775722324089864982111813008811328285171300334775185050923698511649143111752362604225655086393366526322550288351331697025864987724004583621092167140226062114534034322908480184166133995979413487321725214743341010491453145851202300262258616712351424671112134114662871763349218412542474227327054353719573677344284538857843835171683569693335161900156411433452419746451371837559197120927234592158355443369791759125463687015620110371842485663909629611668456660043969644388286717807322445125392112562104144449955021264846985118344201263900841634981856252341513021892915990735170918821230804315428250943421862166246691355510303954966544884541042478362363618114864592070819937599419688201573559101813547269741812208063039371451281869471786918821232553026717694128533754969584920830051941918501920265514164077104301412410341013043502508926651483922383338305767281447053319281455881367282856085393126989223711346178385021395235267302112573443075197751299955850688601954462974013293151678313414533833351924411324362284118460662624580996943675571313059031239481789651431019116317029187667475505361658630246504208621025191613045231010837540722661966206165222909794042931038984771341100867051936235195023137735532286975861444522758627495417428778252505221091597354353308236281115208360180403482177640968420408324097174982192429990273415535447441608173340598974586479127475640231516193817638801887320787642467416022726323958224242132264709622406069266053363837259590755765600944312750343382488229728232004062599753032455704299222079161523986024172053041030512615595634061734731539924013874779494784227333655153839121546825213698303284269073542655236837831321210155845232967627156720292266705547130727357009214111976084199315241589571284104240842715416529482226068656268277426063553207213494337789486972499435356624674626322535316611842140837347541812064545360155818426078952643576283545818292511832526015883873274950211116811161645901521158307103123802024908113173619005139179125277561425841853248119303470207231223635372552029105648017615824332084612963034701200220000477702040359092810162383471822445374073356230915864721260927898001030027798770456780853745151127911496025646298583975043459384345636334231542294718661434012536337448624319315284710416244938993383127726952672263733093681521429381292846622440560611386410942831440709167905664265261252297883714883522737767313575306722879796541934063578939715550457706604206092090941018225923251177611417155003042753512134374216495419042538033298435850714127921733038719761356946539113789014975480123949452325539724218318344424255158841620516793114364412074422864919750502396142384921082915870865984302864841613335273078414785409368051562529386567143244854362028610013533383117283415803330146404563839765894894720259003787181055225321837475206806296064702236108382745194605326970135145361873011601424365631530728953573356737326780157765374227479572890819329719044616076263403378310274702181393323424558355860068584931527357751249988248150522204956137012330551111773464033879722242050054644862138504829822831284501232337886094179975035367929273565586172833123206916330182036917641656627849958866649214271805135025160363432013832405817468874357321298030656609721432126651964003703452111447999322295273443160297086547144564138862822336312431413462114872116371164899321379899404298923325113461345166363021802008045828120529356962104208440630764232346693917113032934280187421353460566425452656416032485299179971311492228605953582357981800712316877463267922051141556651454425940553202386764182081844720337048860534643807512772477816016122169886378866691936844892833130884272254101752331211825605577928565541548384773536424715531346412682604734134712159392203224895516118980332522851226207709341563335451771274052294911138991159360182751680692135445232143419187130163031620536816976720252394355821380326131193933573123934786736831063841684061141351904147581873053361253147216665310056202235753489584744165787875432543565664528738215024541714825321475696233460690511353969197639312517311101633594542754479958311614673185010513335935446983411527766795682351692754839513236112728211797979505544994074160214405231919455268439794801570296572425746408012630277375901862667264108815421981652773175732483146190431171364865142253856753329054675567245682794679153885233613748720794592512303339534329739833778213345929470770484990063220546713442442849537883977385141531131749123720861719598143519277073679997288315233652816234197085251795866914501111053643140226270973130684919613258145939676266044940138624049264504652022565615267401280919481156357572251811237252471029417006533817487573230382801290255607985046374027678145401625103031160405779048405444291459406435574610221795336332266832173473571954953069490504311777126007428793228307147276131530424682612122738146141416595108730448129002141647512665345340630340835089558062216421792491731023751098787746631078363464061713321860542424909345202313747715956705562640780094348094803790915603727524417312259674832602746601571886616932215325342578303393131813829663272703477097494782130993354494975014005667620169714788166534853520345632151617205031334950032586852114562134470461986285993620900107518216153222935282794816074331694721713127393189169595172075847706724264313232475491860344707799502659164749662556742379464740503559670154161082898670237055788068982835532109734206254892278318162685636665870531776320156281817668228497167772801535318883533912245677170412953180495154313213364666318129582934578251484550144163314053855519302469556706257462663168748372390337714911757242172610525094223101002356243909955293692166838831835319399501551198967331165811939068809277665344441265488652643172384442330507092460326350110942939308468923991533572054595628129674790128701138270243213222571221078236718150320517814139413930493387556726729462315472540021661456252655333338992191364080063654139393513274112277690375628320123970978931330532644791118216472079337416190212154431014872679652036055431124971813841212208109949669676030041131200418172692572538828436351612947001278128151344626712220049982085225643820263708817748515384689563532167228847753240110494407238612224354377691383119434483900643313734782992286278485402266322938814143057435525445364713156016863261331252314275903104175251503719312687081947041593049451276454758916703797033914578818686289772012461277404540733411835032256825456408014746016170622649443718545538172229449270838882323872294169290894294590167136665180031660581681159054411532018875832194266354158055762066818421458147154128218415087832616558191241987823035341426611972115218335446896383447828341930246748224917929614393009124468632621377948276690818338901621182832164350373079103438454906482234870823413392495838961061334793636628822227436734814862732917132399069609774569496929116140117265835499856958051575513936544325624818335657445464234041090547433351377043670928832586332135039030245952604836610274021941918357446507231566057109350288059880544233840776115345773433151342850952940511574622445554852603492195342845671033586533946093214523141179386643639487413107956365173401333451305307229576501941389827923254020672098377254314123038838112891435291072243875355338089946224266621292472191023897506347058024381665702367411333926531129407932539754283277682430431335921840171773464816034503726292715126925694421918444158554153534831355865461125368068881054602322791242066499129721215612782326570249363590646131560401212656132196979536094996369174764779839446212043739386044396935323485873558370311121122124092667338599550661795615354612735892366457920292757746226041591067181231205013995728332125239863616270734311467232504402142635796627126514811721513717319603322138133613743318191955665323801493460615506667154656053454093883365217054401323927853122573349439480647113225245033084824435714391539974312591467194970430528520912663749725779201452478563402104301454025088314862976485529782394302524934637984417336692306553452126235664433042910271132931517669853564129826244573042797402171177611525341245314245782760131002976322061153452133534699387046024460143355156353932201092752172879345154861790142672600145553202743416618280530103983062972845334123289216792428176193810836101132058063880206612224139003897255544101062885936566712190654691031478441368041162825506493802359071354057350559064102177296181212635189110192406133724155552147912804732070534422245620267023578553558082541521630966530290843184862848741771055253129744848279184454715307104255197070212228931136122893375435516973505742847698503756369505873859486843576591317172722879275982447535805371621069712415128180305769699684215251133243552652488757403633263253151813285326320293757447173724322319529944425713716006136103383137920524818945762358651281431069134825465663912496176257200120682139906855245422052982467660521071348718097902256532770497656555555773215134960189520604335153634059717047081415904121116652876513544570591786652205690739147565250815833013683854167441426406587147181217534974756306787138033120013074899174798597064104216346522341436965612205918902231544892675724141349590088798395104183903289707378417372314968438789219461313463315519861121584458810143078885027914860155826159568461228770841295328876204234223225135209154559138744209133384732047109707071107404607160792615025331165629451711402900221476435196363252581807354828444213053898632504104442761515331616590940070223752725128614109024944522013553430633120164247745432768228541232246362722856822932512270114251491074385738793151862296558865574317989042417162720198871183572415211148425095702763635233578576241153313812695881857708266947705825811426831491501635828665839179077956207727292007428313822302504850520798719861072385819563336260728285008622846094472645506523225218093361613147095384570227169459284982504219608509433227177729722943030634263318241101055867725435278011933883101162731989525801506837218679915043284602636811836312226236466637599673567770224193274063127055872511896175325351747973502711136443350323632437735322363043410091334695607661743636460282536394861452567932109005352023071122602234569101122130237150100032365009533959725691024884243283214285016054353641460634276074525488099215420946232236631452457634678133792966279204482284442916206236954326986279359350874510722688255582718564239515355729294906179714373782387330505398872226170270051399668671392948881487926475196692111975262961076204655113303069010471319051294132929159427325423659981793929344522331528792318684429697418144288289213307205208114956337361825986942783138192173950036077861138376352271613373458658624035458248712541285783754476711960274397147136103845937064318133070061293391066252251403524517416322663943952017046111132133241365490478941236791091066671948425557819411722637953143031831975496950718150432652984234110848522295586929637524542712376012510427435359744166141213992434249524716428552340439211141645589530559830065284398432853094011939678087364818480031439690831823012332709721109925691484743073210860435464232605121313122732271672227364170312913298832412463297803811118389841223882023262402874297199391234342562554164115684013123043793950527288609411248435978272841232622343690440122533530366164135594533234573737583000458679252154773709816349300928972221415278063606010626385731755020725001897352630731521138475852992994801424343517623038122521216274228098864720842613261094665019643159327742448372953843739097049170585800360974510638981032604500321982194224305684690380661024332448343035040772712947619562314564194847232442003606198272786843356212517751139554064264592585835571536152606580394831453281278416318221503258326837083971820102271484473335215334320419718066656162735949754277005226342143250533519903704511222078515112137424317874168977500962793516500627065224026419008543031522121073463863707669371371227840394308809062826389306871213739773262789403564305346575966347647651954260324322815846283253934760755158481914954740920270570046138805740745312456752956653650459217344123557148509089556107536589722416246074908171221091327503409123135704583804171598721735380358731208119463103225605294957606476238926531741740713609322731276322124211805100366402335163240159231211431866775222264804271199489545333556218000539324039639089344588527634679290984873318046930518692477027750737141324055228653205577308911344006841424225111005205667283382282931170090722551364116811553503524905328246788703911246092920055565218221423338933538484715934715989029113204848946938575135788669535117534039686942296661221111143045747286353253420291167511539985234372216751227090511465341168526292270097181169319503638312927351280481112241029303728946220123337885033307881363256172919073487364122001666492130424784225785180127850393113126011387184272749700029424682388545140523420275416161193320234772664504810064717409505131211895463225051563972401909055423427404940187373302575625803525469847310775478219644454949801712157885260558564637343903722189702427305414104294428573713391091325333918530141049350369180227872077966996135671981864155088043654721719544548244505552232481463119924317025888337805310753613322120248312195201786717497832331061410917849807441949890119251649945271540307659735104720136413229014673222434019028488746251789240252951614656277431582076629553814621620324314686716589529219521219557065492886213807678453750153661612807021261350867854336451601080177208319897411831055122456140229876456427436184239382872115225360308019499149167964981012266587408372384116879386850462079156020140313721843637791794554001222283820329744628250104046329335265771718418412714316293868344262805831111341239689102364128604069833505467182154180201963149138607384516501129452082209364827771046925156909481215393364210711595719616178527946870683461410739237573647937502657411122275535623836524613233431592914622032311550961035145121327344406196981312084397785306995261800417113482960735039351414425551792572834108128651178481123692407185998907359479758183267812797163163292721035083545271546936620397421193746556121210960515702117463282629342974611536473444502115348102430418331315103116142700260938415127313960294455124300513984832371309162113244304164535544884361952163952521604049020365366329583401522934399675368617214853786661242724428301414049356423756181739524737669617727404404135567333031431954756324816874862415578016755235366495267321492557035502223010347516125192619133392193747632622320389135063875300644823801259250673293132563224311193253512349246181312112642754404394813133272790957661120617964393775165734695127972106728264316394731221121133210005305540325994906764202729489400624123011124868514573451907341167719525323640806684032333413702737031025507493143234128544041736169352120121908999022458185267344397601303516127615241426977351634136700205015312798555298576823927849089095581315041274801439422151318119031443223503198304255844961472782113654041353211699684113510524047511844744557513793921018515406770954680126256983523311762551354153309857326220224913784769519337614521404613354397236208617304602157351716650380402552936269350901129381907169960672785176106412129901573176578876799436143166817563942138360698464367846912722465519875851655803171526363812823346252150329542246627691802729301913576832245849814505114216496799224496133223163562387560338795617939299001430603308503740356372969124662531128397225947964222185564079992467602742239026842673352064427284124812752185096606483578607045717517808090147746234421782878187111326340787805313747328217344624118645949813490429242229089227009208714323360621439822556628359961244304199621173794272157277296468773756883793862365918013431400023746602568282783516786060553415298175132171285524954576955308262506632861772660835122517544367082059844725874977023103145018924305253018259926701590994514529460767663382010042542331768450895444827157752791019442506645035624979149497369304397841829212484072552457620505237254793713525471727910193514156794966233291470617394098165130226723140263127106550484982327826315246194167723040796711893749022391081627171868394301331385276154082129532627179599626864394419387323075210214277065759043830264661187726159063701751806227384306495082480286038842277269522395225856344571346335005349992213113968212367362750823359112914503035371042123951614953824115113809473733152361431385355737056212303678500421046690076605827127482304756730769118634221201783580624052971558400425697727113426308677183978475764025348487810670702393439721570411457861384994368258542053196267944452956600420554373145226273207308058961411218440458863831029137602825060691305317453361466942858718474475723615054944086935918449111202133068159832582895536624824450810015413011633512862569125454237412530831445149620591748101796095891354472204796751841436140510032848101128337265107310453361382233783086256828801525868820612770562255512448245555554786084635787223993373969163050153134804057543532980627250475979681464194012080725789622636713306156283152153962501022660819518202276455038336847102381446241249923610873261903145021694841893014488264733221617406425639986026737124151333466273768183055854006088115975053421395081367914672502394965622244627247808341663624218318310952603129818312025424020232974908530371412873762841725701637011117750245305005644001496221633549484551611710386738420513305854282964430598616076446765634322746555645083740658209455255552485516475908814785354277134135168315534330960223169261083469415300060696706792186195122183463582379737021214762366732541366489312787391551530621939459351465771130563370499905093707873680001601638993174723112326533121197019668799134150282095143363192851222930710824359343206163476102725238267612066696761341323251806343487859853735178144310230524705853850432369223612781268252853801574683604926478241364193175104420242312744914260151401309607716491054537173345711099031971722321305532249015405201735799767831226251537011242701319134149769327635024366241103472973351841001281842666884794501242247156372123145166908095007436453735011355996638183442704723229637191438703059232296055782854452332207911795040357105040891036215522479236951821132457640465731654513184051340502034210258670325567302556576188937052630612611248402864415242343746415569424242736550367104823801536395594636162237016188561254336100293054238368375702324745871080077660165940655318081058315562788058401864719382164917752273152752632426542667172162080035346443312637044160070099517103005701342665070830441142231957223259450207730951235856305861522576230626433813612122457332563217416316481367361466363563817112247023950424315478110188256239295934040410369290358950425453007215466737129928915333316692469132064577542270413388725111170147323078506754020111761216719786603928401168021438134932687242167281018031520904253133865855734123511650013539434043484789510342120792274725166183924030644144212306523110007635437720442206891437143275947321613022552800631632995090707324123538411346529609656228686714614000106039011302381846630781063409762920363661665172612467964008054227729075226414225496590427275376535624937450947047741631883373226427478110617187771770157168461431464111432484259763951761991535074964464432026431706800579264103371057514582596937158164112015913626714640545957870653895472604662143437535169201406969543175822531541363247156313698703339120781180873423414153495944622450908753301812317727932357648846303424974131480188034643476141746838776090338305632233074294042592984257152423645702115271825653567640172181003456069224830399321067322763024714023253718274367510716805471123343045042827393099256997134343661561740116567548292500518877710607028524848881649840017747651386060583170143794282261085666303026624215109478756173649403920759305249657061792736974097703991162230926682741348787135727142263692417954407740164702963220751127117885103541562128101115133036143317529170216904371080452912445053561649206533298483395192307604058865251968997423718286052310231913698851079117529919007726262471175068156268678970477283026744623831526494676991949394391027934641927252543281673790216275041213571829305793058251969911661771941513910991413948244296511494953250182292955293456571098492953233415122781612985811611902853745040032577534272213568342814468859877950370561468994820147801526056041301180219892926287676783776008328410562428622090428884069952544331018897983853636110288742534700590343872322439564044457857632958201600062635257613584015112311582342770173027230570631276214628877371605768419344571181522192827390373198128684517564446933368244709326481610256853740414142429029268494173093511197111245205033745518527646492701218279417640161227742915999198251802476451850231301915932232195144254870771557313802353462370840343768783686371260189139637732826443743277824697374147338263452151701701230323938482762881115404159147225829478102322228519414625359115726554219378392531577429170302505721719585444624544492156385761925312183289656193375856408461173886486782236589591053425858114312745296520627988133334569353036643440559473968580456992210585898489255935561597996145359156169115612808323002696629826579197679089397646961293218768101017487061311754100004866178361560553199448633528565257190058564321372614258520246675614627790954577152624459691291326670182364159281939405465241880547073907337301364057123943511942348315174241236157209099512926325985624221064333757137158555206327563711636138140724634049376699150601160841811133663191733469248451153176112556188138050002819036095149741135457243199826043664942231331444407752933022385687683394376126284696941070014700181886715654062602237096703209926890573312160239347073107282203413965029434038627417676442552113215142421830546132549724795654748485402251385334482875112832346021260989754260785731549484800862236412514766453604645400842474917666898134938282702726878016812300644321823294900105132465163347443123704267129221161845381692800301675136391194421501612094805014788288400323317715085800045833420659129110419041051404973541582049176743824109710304236130023626492392137666851728211890271329635273665184434722614711485821694016717505358211453676497966071868114922032296537474263262760165131823775948149911202705748275215264695143975511332139654680866537245015402156924436961048325064438066110968497005136142101658201160132704342219053925811571726147960472481347058548235823906201333329313159942856448152270068420216547611218900257932936473660341191156353396871349274626237218218791315538024069517612540392017511041460653355714788173472461853011317298406213231812253528734629466099920431129310132025477093021347134001131304611526184361435491801082123255066890380762635124317614161093555359895328387102531179982089958651086720124822082535237117698584322772652165089734540574583753825011613612393263059548712262316421677151356911664249641272762947808613341564371678185570451707721239390670846087635375104417485312004260704125231289135237344355470027586392331377832011536434726522268511114433183597241321613620490625248483244417509404668887129841053261747324790345122259839526863323515885115556161186579412179410137673079642098397233473216961332134503224742919360126382135111974306518955011437786844875641826457124453222589585672382088541049716232612102164951830509363661882645312678628563441634931046427043248794962268319311541419656253834523233680482163987834912224124844901304719517207856081785237633421535847843336152530213582220158250722587969938782050151681470452648452064011243726425921006043558608785749305230333764202359647213232236881166579208957320441123849875156903745934784438151240921743596652851738262345215521412727620021904970139596902102649988524825432248755286459482522861269375415541512611036630685233073089639563714804658871158131103803822611744728243214913529851111353281111787227246963015488077114137667824531933836173571763591062244534200027555641192693065261706714883807181831822295449411135106135348716917340615023223702111262743633328250025474232212597944434744380215487288550612149413053826083206432978972617733172453050968482982554494512128872163874195205131469765137715267396643819163280435052297322511315835177115876249320036922720313434967712296355993801074273754050448091328164451341219022716007245932113567495182011323444260747643170544856347870995322915300050124951112352152412730954106616170734407192437904631313763545535007606014648308286166681899932830325672225801256472975469023373379136075316781531797386471478666144173494922001816960589530376542450535359747448653283298181718146314594237723511232065157308636421244492141563346169032462002619704042065687437100313145431711513452210333889111347900924693262074042983023293552552028490599385665347769175452398090745136113242352232806832625210948943108152366360044735825749254056719171274251127832859722213045835432266347144120085565243461167552352148115304921065652614128272711335717411659579101723348212025200994457107567718156653692214959635839976112337122247465812224494020492249113898494580262132957851913423094319634520265696882859779090179529760346436481985249403235289866647017603934958277975132752131874331387113417337246188451732634242674505310823061912235025278758332311709236573577686814541350935075902261601269564193832324324444356300533321425400655107259345871000345756641792014797111591101474828264119753008574438358470663158652080663892153162616342503649634041931978445174512898274611413074151138554213732852190314394802647374324576313791710076615305116229995126043917361256664538701540330290837973582286421935109577873875453422942904312324630339067464311547895153979881763536624054652180731363228924171384716454206873558191073216888544156270104347704501449862645721406532907447320078992124396165141260224763625204181417476283034184295748632625535350150723369483093586714639415139532462591908359700377109512282761510113394648499265100667328697570104822248465203981560267043034305999822904411543343131997611586245765740512709330103207554204191459445421234736114032585810778419016548133257402155771066746626806877886471400762182953627658626322890854118022139979221253302584602206710398216380671893793996906377315176888324931520722624173609265228123328755517726002135825140731800241140777949429258392424263545716110173308023992656684591982015716801374281064867553947713246164723881700501022613992930315914531842157211390016391648550261831709180396337611162728152182075559495872160850937525266634468312930216780984217970724218412247615405411176565789173935097247216028936471312046855717514277163179547007902315737296551721278463460341454252615164400192394573575330146426432719151485410654606122879038538250542300143718304293251810646362781136168876829303192220443405091579378124264730096834970335170914119027543129706714093331414390524115469720463312354441153565366219232354776117146232331058506012166432494491225804118609364118455756180387780915900821673672084352909842878360151510736922838317754994335314983031701885569911249835273093329389128096022991662661411738372605520734351217812245525019534793444255050460186710738183003715133984364754952888945200933609523571474291116303791655223626400336382128617159214558795725261263626885917197393636348126179114874412185428421260893229789265754973595289960146611634343124316819359761227894893205022397686707196381027122636718751441647614352129517552392650802245963805331527719800412640347860859333294631222122062297664856346105757724008100092104319503460247533610438390902943584373601032516896149331881383713017149065541243145526336511782423086007616008403585353286237726349321143698312578711411625874186046184711144855210023607448420922587916654092604940014927226243210550246191675424289603229658281266122376644975046807539470934059928163357933137564232324116663424405320371993107450649692413096838652849036349951197717673646398570154660590350122376383319627367833531014150050054074255248674189113705202076364557864330661109681005913469111837362202197734915174419330626324320036489636668247378193384580141180195422207561253197114277860613128420911521537877436444738580796480106258234240808235349235249739580846769135363014640318658306323428370181226245137832712174348475841763069235881519410967387116955357661277821157025291753407831455491924401505300824497331232923871772637786715311332552299785413548553728634566767997201624081088117542251398466837393887402478241242339874269081402937390466032572622602034041228794117193697309327593314616764047461650229025376814304675941324528730348394438967809065739301451021349431211370359276151322671298340147576868302139346583671508209621015309383714612795691127039952127105308389916173170417656697488365176719012099549130211423144884251876041962267032618615176376007754215266902923337744253166660132264114252326554962715574550225444385904234068798391488905628144672909887823791221122053740188301637392025227235561180239615550118420850485044991624418650394622993317322367432429001052191518482640342706746185138227043365230916857554123130220134239678651521790525350342430824273643152442246951719847178470582640624823463414301529381652176435535834442943903245053433013281829744560329240241440003936828352269578651496016947843215196235277822483773014342255071222556083777821400426240677704019033186614020896065840372442037894360602888181921733116123531224501404044570928650373135016713047107972224956466947216284570110946207680522041208042279760497661530227403640603259720316361485486459264098854111059755070958481812635266646410449550994700430769345283480163076335531531657213776106144605993911820622672335967361321657302768228087450189093018667061410254443149928191125731106306365949968508416342004574297550820281017660092383142015281155433572727484777609294722212596105388250141196854551638610735482363094618254608609750409716763205344777641026051215534622891021637192118452121837032135218821272114653783204087118353169197060602854517154099650137167098123067281624641912577726135993891072210912915099681102937120802013069231190631945455702126450141271142022048221354401799920212174296627202614431029354254569128108930011353064864753564102068309438631426931155210834345198403566404883616287690141550453673827390428284051098399567028646181538108740367237604071651322346234228371051682410408300783132974154636923085248968751394671074336539321358454727121966470274654362280047135856174863493624727286816249493216893605071547354449393027513322715373593265589241518907731319528442233615971848828619535719084595479068682166521864727032957103244442026394870242605712060097383183371093185772585772362478351253424252311405482655715108845191413382061791335206445575011189466084275790927574974062638732610308162564221351875672314262382206691702109205572784316982860066601844576053158590629257363325360229656491839655203132421241756062128364010827913001326151394440741734990641716946956050216314907032360264754558620585669985216553565829719321878144819779227642126556517563492018902947231564255353306944084650317451017098861042129874352201416480466176727280452192250488014779130652024744293181221958022338655845571623735051407235700859986287075576511312573523234737950332613023806088352375709841142703014194876235708143875411602950611520518397070797004276168584113734796755133796711326342949139128220882754277414528179003181979762053745390016765785353753762383894796356732922440219966540458346622099369050096934840658350620501221521547245385912331485805209533159068934605892070842113080625123061733611048753269250893192172702419465442253615444667210163746705321674174250032563457310953640592756118656308316024576201618629435661387422537314829144116410071313611285237300926181182425290702138702218826160257952429204131549119357802107342203182019900778503037576672938157761220633992888223576776178335406502364103415321727010795207631175171584331122587222068925241223012426084369874514942926102134100123571412310830402361372333867543202956301396374335018219025797382660942009613022836279200752088442248351427126025260775265508910288216118476522336559908057707998239199216453293054562733511472981771532938083312591259428908364844613278285311065645313329905936324041944443836910119347007649326222253011714191543471976506348188890346565727558781387334034364053572781109398721683625925533627143674399833323099452339575738633246137322865737560904135320671275140928949818424126001664522425915051587207151562757865212863312472950801499438972116022071753114314104749443991626599735677940102224873199439908593300164020599280313864256145582651728312585731565431451524513903091388485305307260023501839437394113897802665741597725207018188291790102959641455213216194680649712492292146043795896350605064488639413626545231354059125213216732234932349413635544272741025098995684679928215110979226680624251945278957473782361224287432640484178611224957729314283449741396044642112632221695343630185957927527225078716022154949217500021755532832235515501518123938292031778359120199443181946265967387384536813076705340525418231157467092116925263966426625117210843525311313394275215293434122774501611722038657605849221284638316431477295932820061103273231021045253011814502123222858642418335779234577967132450787535977270030854326236530005381468843364306572331201508807470086101677535184562862213244739127561864487566811881548007982012418114531167137441256344903484121932646292974140175352525157443462682553231306271238026431761222657409502591164640268154013933144061593548722623254217522524062337367415562515901630615238444205818387242652942599940241081815507148038083712698482811707028676403066851116855806211431695847571522765370955992600771177772128276644922465036734535638864014653942233946997263872611114725844705250276548729138015300421055203425751855460312999337725440051170168106213056842311221694368265650365112453231779741117953988200840358899342322725371146134816885165715865957454793786286200750636334330938328643867350835257557222304513374614601918722926369269722973213747112402093307634544213431620714023664065230798492194845626094474974524795169640747140002510283053496913947881493868813015080217213642123046471675711524011325357770607894417113128016992495626313412228569551156243327331541172849394496070184343585242669925523324256317860844846092920421222759124836766288955748673314443761746562726312501389050985386501248944030194922355312929744273300989734475229277031254131011448928951936979703830087713434985683569219043331261471799519323843532380149219771474010929976747063185160636306022674253399514381240452745492655639876119435027113233100527066212296117431078587113713105145257055176335497193031057483365185784923901605594022082896630646216572784510044833672660700405211002317250701252623221856042752214633114067188767053464746022914726027472620647497483554421418424285319008712180522513235418904241842302526275338722601486771801762609316871313693656683211926015535518691839153274488124274980737976603391535514311643174891774698007942377178657761598719007837146434121866450156291194813924555731249185084836556331313215552972784311524309823421525515357385402331474086353804536750225491077359392132236767263348558328558881546644391321465413244169188357423723409196515342524682600378759296814638529653922395833513647253192965043679635995592628231753414549734735659126214998396056165169865371732410226659821005523108559659038132892352304945243018151434067325773694195363194563893836375166583225643125761524235295936886406766901959496788695768155354363406958893630471771093433319477515362727644914675341180116821565260559407349267522376266067761317987132044164852382901549952161250587329030880055474335698553171023077226912321159254423124569613252686503763152486718841409543873057541041216210262591979015407337011224212391414900589744292677656304194490422323107826342208620487634887365944705769398827819432121626942861180558132385002051601235295612840301263661109190213031650088829522256650147827715258563055042646051625245913652675453082017210131113152444595654503069277603578874373343330816650192462121108690466121369478976172504378947818641910155832453382645556372951646923371110331156572748873337191438920751128910144257581475229620423953901583007245574164690145070905634352710216413262965187066024126257325372089784526845518223213337894816822473415203037763520003708322781566132368412831850210812850327300320894276074168575348586537457272591752433649760920847724303574869965432022348324144312957203883114262831006427771431545498223173203388851471666662891155114193533914933552411943427509041732730954495681196254119732325042697949085000751429683333455051212313458795670727835486109337838156729140223058104847131504165696069415321913155202384334602187240786648040404850919446945012995040021282036249234715254509550269724441202491308787584212163214283689713596004203134485547900317001708657925430775264516286144552462171123059324021691892820314134301221746270569488021901329563914133118732121613866278075667649398307342101219182985865761224203145478265215776461012388310424412032179035164436598513445912513118235814997234579610831667604508109335181590237715786735365796317259583502295926197803012215675367090397424257105122312615116022244720295991451451708741560258866156351306225377401383064481564459732078431661692568355700261257250137480742036023438114579072623805923344802829927121311514998341716595150737312962991121151729737974627947743848157914636543251284344356217987116151244434519150361631375306579116191474975439590958240671526221889016822740023311715214902181351154401665642344612874104714490138494855089102251327142008196845279860345776331145073688582435322668320627305325384908211363383141379331422532526492162141227669416232331725075529854982001469137416002915312560187939714421614928554867511496112987325410277922245962486325691260165836976340441219240774180063019644248053613426455603566436245337179249814165101918625234544302050066078269440999324138571741329541696066239340236672225652663940440814663419045516169441054036181511128635193801346021752269919648881174413802112963519411037228411373652455226226193379761809450632107315053677453102353991333566745114266310362302074042128536742254411280505012156510523010186623468105150270918026663923481378112741271598433847354262391665750175421232239556021923929821019367318543155261116318693183450984148606670415441874158541693116041105226212558634825840224112135341492605408146440283960603286549440153015099101834024333211715314161931234040723573069075351244080589131935833765222113628136109171488124129500252521215336529193972725489211264031570236415133724281415494235672565137607326060286583285710542387078005672278766817001889000209419268769183306413968012224231081158252289223831027157732821477671175622932835401820425233472881037137362568465546337877140121077593732833794305981411547623550636657141245036086696171368832802498509121155018775151120556381265098040896004549145861280441257587419820534414114467148236812529434667249112042161198713013768278343080692556337962608512060662849513564512354191863353425543233655532051074575820776830194204227846152209436658516241443004125761667934211047796531392178029444143951015233320831861170471797186227048088135669364632268186243319253939935935825896393275276164132478726573862643655579006939137422737062679894792271282091621018224232383713572196305404134859347034312136278157172287530699219802111188792233386517245267258239626521570152622363536291042039852111150160063328724505544513866510624918119941161139757084924957197298217368545269750588371522957153324776133025463733232233097587721062634960707465145776034703704703041011335600856496092051368129626331221124624521000310264889194843378572226043982114310441236382810677823841926150102019053096594084299631602622054020622635981472969021095316437653302989722598865476895154531116811602634435045986422421815485828258321066544164358182705766611921347900978290529408487665019634754121632364204697055537315113713146698045344741427763549743263593044626050029793122522033569820271612912587677563099422351019493053313671375544511964521213375146354412553637193711456266534906342111326488608511273130197072254527545713822327735576612456824903262471806108403056542442134682628873549438562940475265238155844712345583028203110274770619166216051732641519472718248718123265740683385328574798256647387642648940222483788661071416306632444440540161694568950011752725291404223481071487133392307891843954331750725021858256623241215759385533676562581841551760784965144602647014370176019832003212451121003625190699978016484782341364229207811361857262446414772793941450177940052909157252056565244333205263301355241919077110355699743334116362525906333218540773926544372667773535221605143922511357272016633910465213268365042655539404408763844620843906386225714236253502573412672887895499407894738126401382661442111981102022427813536628048491584972547140492986543418664737351632232513803580649554304373344503012654078960786154060562289342041392282622633564225312139194233124011022248347544613413271447308387110504072413226935264254533811493259089715885523100831024796544536604787861709770525436236422400021795741476306464312424120836088423117845542288815218523132771923792645411344981500357295517054274139814465704184231238659928776031820124685960522038289117093233156292172644515592316760487180829824573198963038800480121401064255963385410620514931476421654319500592196261323063350447224504695733623290264648752865247733313313935744163621630216657753863766562322030831623722962963888040143843159132413145815031778502775652810934254193348112411932090416951412675095857589041219684972011599106744654982449980386661483742564630506316029515096727260782114877504302952489587221741280442407590063264070914352265733938418904360553537663104362385702152415375545852001217542222492791110319134966690357757687143157712805277087127025950551123525494506794645255021220197400196397106149067272109703014600720301155186379679322345993756492666065718553079295031620453811051601137044109327727311744615127362112016461012115304303773624492939018206989011261714950153526422159204048973680188011274822684866113114697146508229858714535524054531961547215454638610600728641831843751128715847762692364591319733443676720594072690107754886542256008433473328705921509629514147416602526563565948220459505035520462602885507001180433358827641556236458134202135210331707806654985142320614666046752255053284013338762636275572572275131978594332626644285701161846750271131629896960255227632365508270675164423403724143200781307866441899671793834639617112762711241715624149665110212116105016201813806900490401011226564674233650329928543158612923054116425501124771965890511980616854588151156414411132012351927366383533621793435641228150903491543533207440634821448086483821325791252376734202871916056410521578481138794487844695343123626955826757649815169967569811522238523922055919415087191211764151856635780114315729117718044655403777637561472356057326372137522271051755010447249738043355521387672972398312573605582980223736202764647973278930233018491293426314123670227776538496116614055541835472021126160777443677681038762177768235030160951047051429503360024810115759348429245371951206633410909053950791534535883162926422759614444232517574611621565952950613480136911530168602497721546035964924123250091579093272673123103813066238763029972226565243759531770628822300213539410406214422714142382805711019341036259115801156993913713943641973630670322526354641941631484773365121461479662718113200245452842154070352360000515006783115498166147951503420790042541728163865092033253797801015933211161962528271261412851414059603112745674498018560186017443458164052207152658221443561820839123924229310372210220383533354360974380994144600409216422341362157583973388961450711760090933514105552134551284679467145012235860810662180467372937831242783012415717673123133986745483758811312056613100987010189254203237489644008734349100136201052451321812932226162362234703321957919440173834317632653627768292744840875121125399581171287330510457921309900150911451411602316687054619056303657361905315063500245343102198811509612324123186851099032405714366526952113162340677336647109842548221461037122968245313915239520175612880623849284353352210202853706718323640231063641766046248731505029989556036549123476055984614272162731215653815580592854105382538981341306526981419813819115418125386075513153135791266043549030827221370066351752246393120479729125359563723097717726175232623424785532766542614827912871421772574117936022411726435075459166360719617222612113401695397142502619248099656323042424349135551897684393431437390417357630362684819246899516104416110937135314527770376520026033939971871956013386745263511164925373073653105458153690531286041932914767170505251417502554112485380822220111043313766756492428650502626055228159656534296533018193832503942484108417464165347791644826938495473334797408752804735912563155146701106721714322434425492421454817564613302120152664007916341467019761290704724780161223306646309406314091063384811435153445656062112233445639525147300816141323781421229696652111257228421714601413652222167000251249731514051572351202041457666130207343541990008135120176625864173224218600424525634721464858019044487791360896223124895334610367414546605029154130793709085637855644101081914155859225943832013222227506306601426745323749876181022523835539670193374538682444862401584856966527399131558749470155047123483303476366035044262916623325276051461776542871926530403108398324819974223521426214601506703440673234332773384683220090551960046015439822152004793526120745095915576954225475254139640035719467403667322185924784153992762813205338330203778841192499681263762582432562213421602583724963985531160289112105239433733902102674876361241629960363378025222886681789300301178985165491536486615616234614215622047329316329436059435502195105217337296632634171888339411115157266482048712285073394072893856727418079179512988763203333136571133820555278072344647423354315418294535982217793449899112288565633657370783844368019153538244470131348564246771070373132197722375021756105673620107164032541651461375048562672267564656836433346038325132743824373828044164737984526225521513062444332605973124981051814228377169245660982401627552658131614031109717906523020358149353244901889359792133627268136447819105661356514611617940545163040855522908647789557746122251393711907274691091854186325863576700119111612316010503861273641710151463261245289634655605523537735292532355407570497230686291771225384260607743894429382955563386933933102855542377595451242415194583538733651653353774958219519719893040954631351237383593683928615577944162639931653262332277484357125156836336785659176682255113291697041304620996669559927004922041365430127285745152335577340322212006946542796296946491327143132670343932559123653712005565256356237311343497843075837453221851246439341533724322596227155698848914154359371563205520399912876474153266954221933129163683512722111394136005150691695420279358644060692527056134345821335314448434021126203772430613993454542651626363022902831413140504384644178446209139926221156622026136104017470220561144100152201331983921583048442111382051689278014218485573057795654925139069621014568545322623251015154450892668236608606391881109617350309662698663410415923155882021375128254139962759541825315392204363744017326973183938131216404527561595080915197410340884048247507831510368581400249215952211775113152435304875526344187516659115462583128435215984462091499464313619852533521229937340613342334732645627626860304382578455103713422643403019864026113814953397177452068515666467257919378134358450763323975024628665132739174705524205336966426417921536486801674241111158937582518123684321271182444351430513521209418566746241840897603281536447580048947381505164468004484675311551220121793963978339252878711198073770916431927844423413182630393395632192765343117670290173042813336188161794541524856483625077024707715406159351220218038491145922223912984032116133211552122662454059920178007633101441171835237102865315371491149230116053276040483172843216191745811655449324129715832997122452413234304121206418684847634043135212693146946403640895127468641108164794214846926159548873672012529113686013335932401501385474280113654064576053442513561178930684745504937091360231356386216232114077222852233511681678548176552083034307359499293422507145399702486881352297648773344847480731459678695721740914493437132212551244700400971579512876420264312269177908131810856603114967766423449194377008254936551384666595205281214335352546011048958241050232383197123003737596050725096154230120434103400852596190474136612359001759519938496344750153825710326524731266200472258630480448250672217036499703462993660010910563202690485552397179116862031421871402005879359194143592304704116936026228821637664419123091021539012223101369717134077127891467405978555631626592445141321060247393854775415954550825570869156436693224827184931315332596962595058158147816605927584668062070182421618895725666440624157392186235308091254433615871254254297181533022948722719829374096811768806613007334719789012492272318220693706304601831144565831953473775605367521946406456731791644940462866677446012547716123801911734244862176741434886616320659406199807804103964318501392849509292646603113953172147156155616816536820697368325391373467185059309045937058353081434411855902524854194153116447092151714556614955588827595323147176972644560155779517713131144510740478435240222101241588652961939837971310451764880333675396422460052430455323599723661643316980238383007412841554114402781699201334548542592672753664354390437303712588684133215080335162713454609166209232640728683105581348661163564053763801560241973414915204193362018251135065163924590195371707823468504215281612113554724400669965130741313798206400134652951182725127010613870482741166490760099670260185851768358619425131922470052384440282284911396657270853974473869327305950189554376059098713025255271176499289817146754960433977997062244742117415678518779873351712165326392371878874301281417351848171444979788421938504065521591356162157131611063907551511736637611641354373650345527110531650068801680212839495177001043135918405357506511762961874482880316095463487523279905866231526554127360620701139381769563710841517834320203846544120184408106231299971397947620168104992452028126414142972522516843594835357113233870415128728491875288025403360363735748814865415168337833496872174235723335952090545436623478156327770405906502080373403663334734282005681306940569654202474889943335173792976042736193333178034837947724645400491429948738142708255062121813618420157741463324132046005051334606137550715385456698375353469520701138183280300025155860093653323072215191371242589705744612339214735904787709314291385920434342048361810452353232728569119371510241637211342434422616343654746672814934161230047020924934386041066313678521167755924300292189313469923085675552129013112099281176797551213452948116450282241818599081339429417224750629238228455320850260416953396793099722244285931585603727116083774126059565183387750138821364843957838596262957953313323516325389752667835487821254558348432911758199912300486218160408719598231526194406735240801651954218900231827502818824632594444412126470802950273332240118844660853810548599333212269553272518133289883420971476874416231323313125081670077666458092744125335404722216817648491504487616702201967213046022881773225180722906451199171957430122518103297626687592944310255355841310842114332714344700235816512676373252516413016584191944523866153276491252114146261037916792941136422822477613168720251313024254500015245776796523540871086451794990602736026348727244399472525222356037071149128594320399641341445865311356510229648160767625029682242961003126410743364231961304488599431001632331301251921535458783312206745062547518297771408563151566201312076750277891732387911941541569687263638409641940283204371164559178196352503898312382116964406452347542727494541351312497487174928679217424125414037224496273872302529450869062654141018386157533135022351633519372854108118902032705872091181353356920145754080843560061682665134446323034287112725942314712655311318278802533677526350215276436531536032522591104047862125004432159500283662114561112531530558383043853360004269138204488810140212653745060155106979093650729272470500745135481448345655569241988735024626208808295405535583272154304427120925171497525911839044449711921714301293568567022353860222261556275742613063787433828042091768964498379889411102840451345088449982702493922221976810925521848800162721648178620467787453064110842807312312063920157464051764641299575618385577176136324096530174712594056035227383884093046956030718227637740709265637083181223886143929308508156871517891774766025866521794104085489909517734092951128707712715771950611369560799248392282521317220365901000481475701740562431045908966224670380867835569424443867449864634055632092529443956662154541310351255271696091404417629042145226689261076120314305831019351112963112112431125013187413358571856468398774335577941050145582360783539204638644828214163407479669977486264351034265427135849041436743967742567775367296623637430052759442531812533436273861538171700774104273481107680556111874455497189543519642041502731022870933179101428865206322351057357149535803941942148670930691184167240126865342436482431818282712473633971060911747723513210071703625511354602514751045987309956849170567113335292950930824976363121095630046409595421463668563511060523959423058066292145992148242512217504404545792136685645176670402113280626005145038492542325732399432417377444316530351170123586353724521657533935349072206865925286934265202320709352243892408622913852026820102403644360522423047825416194772168237997148561288268435323725410300757214416341741188216614495316035254411672558185159325846620515672355561294639728757043294219453178211353080913167127557203287402271281563625578140316114521000851832738452163575941453902893519054503778443470138574705052983052345221546268075143346033221204082244791077103019319703127362620282271239142381195107141917814815360354914647394283234953763571290503820215488403103007379156461852468304119561740779680477001986033342391271249360109248391744312895349161701043635120415050684600195322178147041607951144089235143125462386460780213649286327162317669072919141437172632052800431561176100738794881450641827877545625123758622347634564705728350515706660225563838297280294322351940064275210655723755490686013017281571413121278068774008131842242550821697143606522441996721222287757497117025535149522163212344317253001418602205349930055943315046356512529041541787057220480821082267313469329458954043672744221480366833217004122150198610274013645213323780220470920463435082299405513326233804108505333707378181302308830997895519691665596126527125643341246961624895555954015330636432188912620955819227156862289028317564188216718034247468696234239433428972727113533034699321513912319457771002940191859199848120395255111178866433241624222080624039852880682838232824120168422237337837225760063215382182467825437575073533926621227915435726559166241336241592163434475226403001475455086592756215113255221612458801298175417046426327548393727191305184193095472106887013805411338619484600148265633676957176102621152458992830558506826831283624074815221915686552723760148956653156479966735269123411481784052477534232730104575221735687479260136502958377022325439685874294353431739936515663875878499514056813547015382414396463552220769212152988551003803524987034466214445346729681045692505055415681264123645752272310775760131127434345444260413612529169219730611567001243481892830978683562820943725592745127051689236837388507661071110285417335318154132328647656388002326133710653322110563457228586402030879854014500856511729690151241230814781925463524561811508552131911113553310493718045421405092352564056819321488262520024950003148301036590431634998753223194971135939477184703465177375422272319059259609436541659041610373216365652996761986858472769257241833698668333863554707317448021261095517871063900311522103598513076277329273223745054914072161072568027853095654812757983938192037474235665425381115348420386805912387756730908140314439242117721218491008212315912079174393387014016148008055311963513203379634587219384468292808223530133674581101130763223340335617564225931351533292214541659097337686990179791541594022301440403851912849858284611131637600296452566085641528216193231894603566387505252375220420022593162271120104649347516528332762997173651503536563494752281143156301151776012526373313443655752210404116439770377504515729934340221065081351832972344824927503410162246541495551255371649225542395413755525896944206946829148491241294060930568787273320960722452337465271752289154273725840316365283029033393218612719832236617255765262674525910577298286875204680077658268077715262020874106495966157973263311715904624739428721386861115254538351423972933567483412421152048343379255059232497556922528910137145279692458203263948511483981062429142921479372565124422912320259219893903914557183267166402500330002119611485763629551998055843077119099110421612407415901126141143387667338482377338307284252702204430423300936462637077721168425409921235778101987553401143533425510702172196138218535112581203315216997068057421894921170988244281358103913803265703169166053239893387033412230212747003038835251160295764934809422707331209923318168805828097717297262671806055454168134033131991388352592921975281280139177686638445111715840717222062267423256181443275011752126025233138048423632336742151530224113352966324115620713356905177725532942433731897562484235812743176423020503637739404624134145348153399849931637121391372920441501697804234892775254243694715641002930950124704916029226663371761568140381144286414412903710451151658727604400054817186565569264561565123329813653614020238579656848551233305062163414225694991798104713899012915225911189215136513206243039778055432174136219925516989903609243241611895423052055061568161341236142802551683674385510422133294052222126221110403409780774142975667348714780019118245930129033232367778378201808094127641189539919493470257217712945406849845572279397831177019305169095522378710508153762264426746223343283350558831064499533913723902241006166159439700546973162841374009116760569122079541133706651837225644256555220803598116757825135146221413529482360613113313349542342412241463097991630343000814310557174710013415135480435848504510493361677340137100836223221262344910560363426790431911372203822811210449076044230686468170339404644414864191237545449573471841354791181697331914534436243149742033898275592847980926769692461225238266474353165661711729413371958306634633507672781250501795397223397055248268313046556730221221739909339239977265674230286220480114018138580245122713619132091315013023447063662419856817334092362223366883402346599308811890304807548271765442052743420942556823714433153583018451344965516442554522715120354611039153307266436621224584626912196418425398057354421291618238134070258166455706306197110971662653050922783001361626383311216068663422250761303102111121949126781821508133203652721185557544129550631972645570161047649013494075392722446104762157452359868911451296031126623180683929730182699224362288575492093391825022882352012238438925213658182171537372909013836204318345562535261484143605196588352652171387162472201764750107813390322352316111837247782689482200184360906359103097284823873321655453184272917014650628092944100044167329850611104922272040138451705066424666315322190640948237912927161685476344113296185209167250297548112495263256656802965473737633525759048388491374258049533442821422917093981831685963296600412537228285075471475547228224404493675955472652997796615623342963725732755831513950665634462544373145753052942618936829093562447888027920642435226235543350620848416616508204644480093062161768411330171055047270961755918242412574358412214351210882327515320665862846611524062940509240500757355091230836370995325771875366285417713102905106619531734897892440443132017072457337492543001525061214135193548749415604948115463384356337204325940600346527165597184610908829771220230731950393431372572110480207212455896063231151773414816096011261665864259232497456237082480169469531311201339402488296424462611788910327355634559084225771087211521207232281341954343355343970307295141079340930711631470304586120282062088013049855365463434591350306902131865775005827637511071354044177713125145364135323453522344485435307443672653087842170780613900471904481506332147636425375121465845064738231022207901477864849564344681482153422101903224508249289434309681636584217131233976194147413281634649942162193396218026974201722111713458225076746707113199474182304381138373454506210352326333338167365487585021163225358104190433341104443279185215761344681381389495376406253519719827927363679166984551428451449697177875569441510962016638322311849306209787433103283079417720264493125923689213068738045965302230211401327474317082423203058816837541043884164183452128614105920276159133214484654107131207501338744367410622280126429666153422341455847071095468115192050899696781321069797625371122353344999356033092211831986223915351232304249623960675564607622131952236763354626317440633831055213562248922414393213882883482847544471235651944576523995025320407644197314927002470288855124176477967409463657413386480691615576688414929914794595842545350663127558750976337897171321145531571571327211479074474190233846077702320188999916922135891469186621634394212723890600004801905310719882670232885615893419165739689340731009665451211460254510237244001610043817495496565170471862211181577348236442230268416117184025331270911166192303636232100597019367139021013278081331850905424611436618418495226793287589217028111260641242895110164527760164725196097585552531554518127013710824846564326123407114226926756571816232438423034342212539052105851016987572902539041277890709951286996488248367515059412133197312143612456793323244835114692797414605306851687795146420163696342236012521011572969040178525730084513845535166592295466332091956208473225712510162343424477882554624300920869982630092643093284928217696751251631699386330534364030260887252229372246013191280210132953544901111584313651123031209724881837933214563211817246526618101051865308340117312880683158656239747161513018230900374334077486711740271932582508303267724033716397224243214224034481942175836792543517830188100198402657325020705058783257139691052289414463438063427634868398621413603325912512588270234718957113442498602521429717353020171021596272958731428136277014590453232384333983743657456168341429643277169085862934984461799747606172219026536949642485359361511097666834726052020644567102533252192543166876542900978207623015046636544271757468145339072461354268724988192886705958767381211011233605264423605812921514261607404463586025591385601839009356901659234673862933078928675745926740414606141347419679111614326489458920374067344513908972789529308013728820021810214401998212379952467741218868216860551701723511971557178513001892999167314571474955116650598538406290784214084116531305073058818641555514814628323790195712742010044559558962206491964296241452127560666306361175522835756254162775586724664098958341353116823652512172017782177872953344486414892820220346814225961803152112735759151556908119892336172853825269395095769791069368523219178846249131540780851264932423022235565117185771811086123875795994461382486259609717593744462711923102251128962337213478762940977637035495173010968073810785252784883294771157780475984574412502091077390073155729619451931146123962661546499310101028223164677819665296733520511324630517733798315175021111116073461244296874111121114892930240971693172644549475503906612743098323560939509526604602142761078984712305916220011346292416535610547829119761613232550144228956716182782298129196275054030211582787277452475413731491545984204261815440739400793016642644110867840111914338598429274193781430151014427699644318276223357762485865043326396895052956838710501182412360242091214224270262067088297042078157902653643501324293431151201923862819615042541160704846719816122814548107259214169527121113889626355972450024362111636631979792189545742215064304637208912132744621433425504773745218214699755400406941268390879375034503396821572227146112037813710494260869631996039150047587634185694057510830197705726780016121396560256544102455342204000527654711113394347282134199431121250046268301724211161021154692531442671658683813588008227833231133738863221658115281942766135123697196183121202054319582836263905814339393457376165650317190256317113715880401611432685534176243722132114760350091337314276257131792203773384156724497434661153265638835412317497947923677633515878333323489263209707659021705231060461751053392622150704479937391071232234246264253433355178027930283346257673875221703528802623347791715589624867666910155741734801031441907635050378772730351071232319216209856961511901614923164337379626260809775788059191526479556170305260406287266408838851740528039982442113581100415630016466733604623651481389343707160075417437425318208322001004063035717342086338443465113100212612005424297798899605027262120727466465048122004976668257202003823647171626134490697160119109254614463213299949057534554091628445170469233389625490619619854412825343296039687765898054211980246220956711573547662408170534624461109122836593901543306123751615751322005892946335354147200029813213833309114428818843342312631283131623211324511344024982308095163187922812631530399614619391904116134519452494262238062377614803225313881043392706501170824468164933124050473632315441061180922316356711983235050501929057751864783462746587517136002364140149151552499697725941087414411791683847257221593045105296404185742644752122321313607149406697038115201623144643441710186388425730030177451250076137731343193560765343830112566363509405184161653182921342211851993641600314197135489732661269276745241343664215431154803421347525618241393944322691131846106883334224163172533770153304260296716612713515410237213387735334724415828328311637625248757326560775730843322596944064632339752910466217774602400011396030553305031104743148089223391517519713596335874236801512936441303446014801992743173329461738579161249919671420334324221242423734850165805995938731705512804056038574371353664181171319105741244400335407644598633636732111464574192503184768678655062661176622056195729670926021248324951454419010167050233205561481481171331051723671663144501224043222654296099933479298367459404067155352211613697000870923052948440191239859728109371870090516330512842312120870307933324442667607937708475881412626028256750005215754305342736002101010136237087962649041839686457881466465476806875154468421930124727742160142030517692696282613033004550840018272899346430922176563126804565676338429901226242406243212487625276625732934142427592401628332407527477009709849267982368148715820659385119266196337031922740123326636495425791516922612568911534323496352746503720379091666448146244411912150526097107572352843752312451019597857853168523836871437683522308549240486004882538256422184839112396408581512931366536229432657192344308715802302637763431253719537408106901565494851071159934447101420223334067468635441133127663371221482358033419716532163510865240322034114401847339619396378938316655529249550146463415885530885022490753112922251302523026103362353406330433021149590057056628273713311747092986145890244044536245868007317162638405830901076617532463056748562746518717657806134255241637109174402341267529920522538033149171417957887634757145942896013352234752515951861032258035367118611327465865067200107250470397668344264105491811590316264542226373510719770517734024348119852641772030524664561781881153630550417365681155974370722317872286892660403585201511368173628861029431272430524958913405248322499000571113535404455992120567646340502933543862604280716985217141562388766563541750630112334369853333354764362478236909117220886132580454615532954455183651343323340589155983566379458110058358608830461913764218411861196592451931244212400790419763484163432198212063472912146234122571399257135309240760660449761812642546460417552541260530913829205024178234522696319246322230172140716006493732204823395925114443752081103539757656920161141351316520758234132467588423400635192925625898883411614364592571254628927423671112712313579067300118722039263733582467255557540114575359345073000718914136352182266840440881374240844931045564433030242398563552384313395027356944182027343071118119524202362760049647676044816543362109820115703495363554194056760090204431736969740063899693672421338689821825629767551874221415837220228136958561654031385521762242240760524176188820105629334552538361975213330812657671434053516234465972088239233080850660918418578353447521783847180917875728362160824675022141564769650710239926564634308069071852620342533272139524936298475025018715280171425637141115230308839423813263443574455955598475323256764749774890223711532854335118926465690032692036735014811388906698056115683556223481126086804118483404086827195067131362570387651046549944702102124663670621455691111121407138611813845529333226140161902034151780104407316693622211306585061412623224500869195849881694247641662579423439301940709227111285980087093720627164095873033707499466820146429731213709330544781015181971302102753868307214532565088105261050052151050596462706155726246245235593165753211243328145574161167730591665081435056358012200521645561361776144547355280240428547878960717143314323943427325525221652237445251942495372331243986154426221662110189374628456108011946803129163406796708423640114802203363183819511492344384779841652410479200440856582019146308714484203544358965092602366357115860006233294397355403222610512567654086337075800886452362504738675831410666840698843277574043459215856928855054075553234135485856464466685647169214549737983826521555025840040167469147691285749391525639603985129916910324012495963903112341237713094189646214456034971688039231414202045078114153854690315480571976130202458552405653754423278481058857571721258144733174530424021394842280200352626041051833372061087553437304222130132466261565763117541385594813112413021715676281385837161531254929615152048852376320022118533819373373267688643260362015871354120241004016266095107277562519517899170023155027241432413824338079421309661181192647410336401582224439966113181208127269547340971336254182523222239294118751122721464036400124668276167142027235633773659422654765631159005601576068234243412246538079074753774100796636441067580515120147615070351162155841952223357230447387414421960422480426859490018701153662665363133434348344597392126119219224380273599431509233027115621443467949024096048682016535649149801711744545537230267077054182166657735018301305287092151411419810389310915473719620202343459188834153123208731151527158808269908372582759968012417612046153521147042814669144152282134980301188977414131981883589815081549067091983416341978043446048671207884559478296122314560743223904818122687454635472615282046637343238210852803479041940462200142221605160990585359808744253106443700334726722986285334291958131035530612740790527433203399349404696123022329852123107507345897606403622936198355217351325712619434704758413721853217781531967221787375595374218888711932696432308919063140703991277135454131504831471712253137055142220256388158556465780032156251303089260138738164436412238377909200564557091635100356380242282356589368140227403507582243770252213293283626136568237786268098815128648310217967561746457365939991063303441711055026139222942482652895693892652902573981519195661799497617704613366068367364284118326941209225326858826216692546415144237505211053987181135033190144936436485440041798152568425284162538839035805156526267334117612704142439166104939724918309543625586377504071800234762805315712602289312958371660354514499898315157145665425120178574632111661551537774436540229155249974798846475287495507130731291368764806314720419516114221939453039422599126685507234965025162021313501210485147996414947080983633925979106851357073485346113110854608888774541234341023313732788925941867348709427121563738329026161696775826112851466986219176612852832286955813890483453373583967985616343384403379284485026623934503527303554518586554650975314439252226051918506134361024483042821029912111771472923364116516433453858744310115617221340427612948444421534337428717401076058785633253358165290712726362453569332103551549860713573628749967613452994263256618689596404562486228713014326484397727257417094432810436156484812237366586955174611115171641408116305154227340106210762513167644684581127849248548627511726714914311371209019218870114025791493070933940165863761164380288198267753090653834667444342131213544887808553333299032174158656552288665054225376614659124351492306040790437044747537716051534594541947225134091240733600916966250331542952992026403201214513658186679326002467181876514082343123340025682221192584178498144652935026295474376469104661320085909901561165127160420364229226300338651227211535625121533041570551418197123150298999016752988302637203101999032511105303512041502693544289033041236045128749536231736245165603350750767078725534220304216257381651514150837634245222752283538561162475255981238314529897046054693336193829635459541378767961248267874684740116293363198571128535138068760059983191043405473110591993539415421459172323385623513685517287119047545371146411602289551529342410358177634655041431430221399073520881722891615302612872602858252157463219175164389997529061163572653163212811780833046390008567134572864505656722744117937658015944274093563740257321814418616818336165587421029751991999411292215695440294738399828950635173454228297041225419945819056432237619212833282336276348569587913403117115933525840310014491682685573442779843345049065313726156934132521463666083339079112134078360802260459328028444690708085568402211675775169962617994156207088112814144584969887545635283445621590356393364254212859208842177673543293785165227160347423222912619955931804819619256630356646318514520329973224326748707460216484190181973762572210334401409984894439617645882544740615643730662253465400162483241815793157321024426044200594403328518135814570925462338516301280372221762805267756016014195214620335021760270736123346076734381170409008006545660600424240784221439228377221328320136583543619288493913901477039667679011630859410243457317708009522010088425051643268281401911965596215093719163002821481295394737122589838853222384769422895111055000325723253994561597833916863271816801471841430845628671816501099308981504236646653434247619129825250412276674283208901736587766611657116139891014415354547527895977239169351798425270268739022368570667171782728717654286966181152922129719248626262477910302735086285101235098527225435578369334774404549243120508057654298757921916621628414862948158662523795426270974182830135322219023467357283051398114702446669532171900986134664433754632160512132145492564072251457459521433232333089178869783352721029415659662574575535350255033716500357862909333131410078112142383290825735044323909107853840445357202147230923063392448823298705218196058246707142450684741343462155296132170347527914485023154202983426023916219630262071190801152423442338097414501858191547333833183546434650150423458414325470128878167340966880721522898213041274018693530477812755859774452415528707276682658417700294003414123286242082141283818779026445116340869286518018706562373302505712851492721224190811252333241449386512269211561924265519796156268447124430324010804803416163147646923678067608657311601011643332315075342440395437715707395961921397122684125976769680353120518783328725404851393652952480990536509324474750204269257384054894633025071551619660392490860113191238647522665549405251157534280160088014431279296577345656068207534888994193812662121282005167565247966165968467183451373113143825542606709429011116911687811335057632592257203579102458625645128323094461374835271720674050437212361009105235002804395271368214214622270761506215654221112573668943854804138748600114396345805921941127148116271056477672222123376847643824033111806114899323522391703302923483584416609474669136899022008060439302752809414310125082764653852450235512020413349419253305329979721031578376167241046398421415166254589844114133931671000512811905036171072042561237121711383933695387486988508660291512956649306116737171739422943122538678000862379914586842074184670513241401724223515401134654216901842956811657787833493631018186515419400468883059648704359143371432388124533740642233153113668694266008468945288428114976770517231263782859224096331353056291100696844016282477140826701665444926248226911139141635956323530175452228013642318532014612559810873758714297514331963828398131925182642799316821372128723497766949735167222140713502303408931758676918247941031564822337710356511089621525125544306096393112427008457108111020252786981337302705414316407040031991634283389893059565850855136116149912218119083184893214461344021070336251787777544341873413515627115699833032120810072262365535158002512495934845967231347069724517343542237400019254385448226747623246144191625557909123694793285422275322144329296739703322430902543692617605229037241685336842581614453611416996427639129973514157254216069621233363312443341100168446420572129600478261280076222272326448558126311874215090500451683564810696760146131768713247969616450814202336420617219163417413047603943506816234071794930082068507791334537507648404233171629641140002679823272154265712798829338331516248381995589283889075413585390531235827227033912341711153036599153656521108213177216918556451661530646663526017621801277423496665691049134318651499475637173372445602480586112871235424031336519685173273613264139110534140614075973541765809342708106034742552165829906576736541566381862025412529226039300402321221227550938249213261344980322042094048144293895369129232719884015054138861558133291780241990895742813052355491418949388006638975608334511116774370208251466401371806129324770493771533150267438813383823465044509325895318491799514446026035992327196519671255636244221735240824411373541849921152027851171717781155125734086355101420974670452488914823875157220635352413924202972712828172656602920221090706908345563719390265221933673615306558151516114081031899351702711574621955600239532121468250842427294462630342687092153199594387805744756231142110980156333441464052746273900713692734431326312296689217079345654220928930712507303872776330115235390865257158847941696038944459840505906476899470376300413277254071736022861355139025265647576316122142070462183307114718023407212115296889253233827465466628435244977276612819748956372428983971183957569155392199134966555202129221292520125871661573001451082546163326041661934320575267700220592632949001105603416840261270862370315458114342296825252402130013481285028672209369029009038779346369432129815760550253722269670156251443605336521109554760758261642601656742507522371634310309476163345945614806584672795936502872024767712660171132563821727137789564821031512965317672429020444002505482209297201799449022095180007391395638123647685734564240438752621130164746525168285625112350231208515321786308091543919700280951546072118244835332346285733420763777251006208844280929162133887250114411015268540367345936293045461135166369949565771539529927634331941424130979467821432038035788313153343395485602646605252113090024945645334640398128502555288795514832003221285464340391757683605877632120632335435312311112065044827171201151934824407510644032117548966850828380112626596284246392382608799985520162240765662571221473351965468337411110338339268726388480368924810454937206261421426517137158199832846354914501938285183023652053216111763338815048201413956058163243781119959182322522225726369377881453407061288604055735442630635470502619751313863311901241490352572712608311354327325112122589751397816692940613195109384050621481073511322348134653816456611344513128398612213813954724129142131320759561215222276177384841218084299026271186155344318331345934854963426017940334502736179671423020498421259180041327394492214834029964861610539487181921637285145853149427632091792589763212780982304033854431210910889435052413228306594105675163891442594790192554527247932588931507140731282083221396011246375509040049928714775167233203463055191853803152379605607402148274272665552830231371232748041071894280011856632167623260931046750349211457472011175924237057803789068404471153134127358036911042337359223822173149394697737313880126134112814570287679631692223210619165302027645019211263426151304372237837972871083482153038751589902041670831568543884993112004404619209677799181871097157222179062533341172419539342526726070277616216762064472758136108496224246810630735422391710577879244602345258182906364873711020135477065523663169515241938133475606471325311494868740108146795491359321013960625790928628340772483009255640757140721151855238233967115666418555348852495417499851216944729587837859143097871292398811273926982143650034361154317282282821404014568163592214707322209389261213340638955418502012421953229644574542972011789495514478549491669014254507191185939417118035521575353220414422883588161835307714661360103019333301612808203860218425586572259292191015849614424621574213284875091353425156462979819208985260652790256329457148317809576343934527113725239288022991568685139217655580955227355835314502842411222186102816369445742360263587340362502091118208162286338031033111377600267246314642321868087327636314864583844693150744566326222782733272688994575043208222053527650297252196945052268886670329898248340605167912088146060611121294529971592334426159558291395270275403575991146958312100021211425941517724246161115013685205396320238141309533387917545436830931702142834518200761186127248102101046311618485676354262137600443492429854158877136924042048520186661962567736113502344955714388955122107234793643244837236217860348023654971249387300342284955451410000740496813762901277317097783841179010977772315104021562616681184844531273088307035835870114201142735433337293842528134455890140168611629123326935669390901152931256475399941560444771843332436294303092715343453670401441759204688257624565986976193508676798122396011826532171332150708511051415552021601504496474312045065188210114433432521222793708709722537601511423791313553346346330365573032821496160277984822532336867961113245369843610812639036383723411731040906413555021291614143674140888081253423952164288261838333285236245940907025557135688439378791762812253285071772792634941576255132323035168216134711203947809539884616202200479823081932874945025309806846926366419778895730068186231082418981857022561803817220455686088944311175410510645842386210292331259255140199748324105143804216563128233020375232783916105514969336763343807202244647537119791043648586651255774313392454743316235569941127293434775455113029436914975985232818899311668228091652540135715154114720827883422121224003659006125637583626365549203844333050313434415904411211493635948125132803145493260115887196849541416280584583134758266098651252403092439463872181896153820794114123577921126430664132634339759153896601275217512501403161315556014291422491603146970254753788882654261123172138285315409137383912420942343131751152629350374957243233556411157631914213952836326003513817555120020764163339382193645248332181632995922021197041648711201645095611936531459422721515355774520124625027364300263965692475350125550842658024066738806765433345465445813634117682142837546222372400774509286919900932701396094272880750766274630429839949735992382250423504083773911846696461231725523713311508252376218203159147618111353740206075141570722125993420373472003274720478399464443994288365402872936456625030312812838631049612238003411651899987088548112438123641354113377252260941507690332712271429591560370581097299068081838905621191722549712836954015817172917335287385579350332391350590250654436028317116351785529436352633519871665326211923474261751857153130683173886242635514376501627461112684414824015663315614347134041862310832623737544541477784534977796693587402569313621691535633155548043118727235503497184319923050684471137217268022135625846516252334768615126577607812531478941111712688411092884300934266548951038822914110393849904312172527770705908104488661060923584381361215966625188395103650691343406428811740234218353720514918439986060443803557067143193924823039581751844562076471159227181413331932256164651594162386945352736682159832533056601625348304764927385048837081630684122132022153215637513251324890617307944276140112930121782648516464935020183046049509604163186241109219570200700193380110577125223516047413866155049167991386193402473511956157872302027648659578159966183165795219316029892355521018392356024119237145535220380111152154717803876563468540854010643118221105835564263501125632276144566804118590088232580111202451154356065736746200779694094171105698363081454433058632486449564676458370125646473877192719542297909793202308016597103418555323088587149631933413710207331435216637282457324855421503441136516473136026205419352612432334736850318283112868627025029614667216947346119484677111842608323786371906747631424273426363281147211541486688998522521853510210459120359415586221544240544174525271770821158345739233154396261431141181425874063123200117818215474097124833225075194285329653133812215030326178039322868946944389249831743544626573181416861537980324979296580491341345542862898450368395202396331081914495384111321727231102461089115896374402838762316123935077213956612475211292328599671375036272315761774504467358274224722587848122095181914468121531256511357669625207643394248009732951577330209112301220955622665821840303923257585787380591473032049850144414121296341635261592053773298621203805115665048397927460444103356787978209451542041984357277531755434117661164292976921684191025044863448012202506011521601117069273036748080300596073633463464362991062962351983639025321881873607262244893385438055140532101882510535614241980504524207512913247607446963842521130431228243227471753422749616280267223923246453234243663679023410543210882147308490458085625615656577001693666247223272794824609034795335710911670731823953915635881432820284995377324848200637902229596017061830473211821178750695139445878008234923322114851031967972432618203484955716628511537785595130525298982812342655871083461698284366611259146249133811943712528127792820181842958819282097804116837278875831023279106141414653854297879550186030237213021181079231374366685233831618589221262099863325146173724651097071538263191064381577304811056684660992923274556142747075524035192787210455543760770078905044036163912198016225731682899058766417532129312011070909053955948064434171050918880483813542852934596125641498286581611872459280196751475138452273419284756791731598610036184126016352762313444253362410631552452328615275641651210449320744134587424381958504433913925458130007754044972441341111043110851084110481016629239942310703407506501354631159155552225380114383324036122547561417235541206361472407694704013562209237524753021093299086441448123503040004546201481927003255597303715725839012148948387414440708374726486114133463028172588474706117472112783314226461980349424130634599963121347863928545621844747167649574010201302972416577891416331663082944715734612598271501231798412556729106169242181473093405605341102999975651749603411112355900717371807841037170669126361246101091453072727721782574184544082891617923342374021551530986094242196141274167172635796749873733076263427533006317801860517673264634381463662414879564746559132119521953635538135838520048109858813202947564918846529914283856046243871320667433083004317559418148039540333396072224119447024506851352750502365422779576266107743746197179420612149379287342014226310324641037260317031521133908460405653834429275318013295176993297810502366686945730143803144963858890280725435051520157063104541357641687439173009420584224334017659580829858514921308617433613700040227622034267633899811819415727418784075123289183211432471709549149294640033002472986437742631015404316346553542124903683769629436138711273405240555512406504396454872401010779380916742140295266545019906647057654557872068358591428486928766558842953133430367393033194625232807777805235405456809513680094058873966570674363641056336916356178209071832536141520053446261594756835112291448623383258101522962503444001957253215227195334335557573804441152234358631144348447683671631610279709148215338581546755024778709447224695109435751189381494467224441624436551882935082537744018113418131873510437816609766153107617778359499724682381347788892233030202170464284553489241467599740532262563234166405515249135814669957915081016742527337804573349586251521831831421765293394864746071152176053160515937791190020309420364798711531763267171036582174068950784202593417011487562270064811280490724756240674422226635210291429029084469917655388551237183772433680049252990368609322154470333161941816931864871001803614235689693794904611265923887520602956136000517174201307395750614996113632238535441512356402967227570110076232731241372098023252802604612697819040310790913842345906673646204747505791195867218032875147126110424981512282229126902137420619204252258616144919466095208286740453193566761571140457825039452698687025361743477595392670464602000369229915817646062602716522682855954420171053140405045163900092219680207563191408826266749614685211823572851657322396781366702018622234465526524614122513403788775183445114923821542189105838844421544539019897942229152279535156510754218118823355809519830636414552211715635287977203539107952119915066311349300804000274626314991323211842480173791230835499665826969240264324733773604493334147060332382457732854274330661571410461499352363667859562953842384550669248502244716134276678491606724311448301752520648542951646133842434585937573894206422621762128734332521705991984207395004922648824912695286441071212347006219862204121517491512247910276883924313780596174366033267784422324663335553043435022853373033001017380611831760010133548175583524465942071301842232206531252023204251143362337493146393410029372847956015511209452647375704762666074765319032744406029240152921082933109187536603916541420264712122013670123345601937040136533813047109933056393134021485228068414326547309836259416676255419131114461199663277239331837417495691626275269632502116405332818510807304920659379747239611015184291056181581583176420492088046743351655759282509543845596706352626441160138032589850209700733788485400465120315698607173290587551112862962552122724956133943605919351724169430005698706820967865370167914302623934655376479150693147594923538295746928926794462252102342112046289119624943649900621404086563622998820294763381383270526295135201457471745379598906287716915310120634938742338504998182607173409325511876711593293910339238367372623543751182331104617722436534703791085205963747891825581552389546046847032168715109168844186957510593211524086448441520310183558413347066701266182313706019276383771053809478230240611544567792961423517239235375560066819051084712317036989474701679567241511407235693321918213571429384923377153029333261806406579800310481153461681579321137582446366336002046186234148551624231281203828293840881660402296160349023210449012281622514071367399177228538155362485752604764764364284587443906547417137442919222027042168201328802950794795704012497421180298132035703556438056677407111617125043120491410487074826108720832471777795493118122680912755482661090034550440875927964201418340875059973200169143074396362111523414413327041535642568233134105344630234627502359245223262460876642491018259496828385683770644076074145250228230062453648822177427457306273565940516138357448199110420788406633417759670271708441211557213351628429354264643812460801808128942770145321140940675834378088438587202591281603615432869665520923992032976865120630713144048200488920070699342147367131917362489493960354771857725451334374611337366535344460772170211209922630777992592051423651914330022512721433713831622060874895462271447817388143169760326775795953005311789813045473531552752715305590043711303218975492634062197306110743659844046977053564163173148679415989911622311498520230581131223001855404040560903312422678356211212164731689056361811223561211603016386161262465169113112771951786722747093316775127962882473202873622844311453769101525245239601871345244024824235605844732150000184960124401128021697413640482213919206500334285792290462731200934810083546930722832609445961687645310277656041392342485104813282853234915141208154332558147863041772327158356864517330646907274435861459472583025363059761479114660450111291948618358426346737034525763472537951043630920599421200622392151262236196612868217026800388243716177815195243216465771246301434456470851484295384834152071919316807920973521641146407225349349226632175162761564813678216523545311350319215176492361710650719644477528239335411067238754343152314321166055646220137505323957056225123156869091131562227112155251578368644401329782914511032656027742428830115936133644262448300727965115147601040448116886317076467171137201531294375111024343340812567992905977583122865610232694354859892608681529131149670055422043243125262673665365206571944384651426708118445914138505281702308783320148966622181923293266527353246143224852645704805388734138927157879293725353270495447717312548619885381904291835511644372911766904489336571109015952228682837100176164028162981459793956851433394693390710817883192663970047431088643426672077125831361091367837176518418757851595465064326259843184062069619635484378230465434735491634919925388683527141652174905639381631290116793853148345743151837534690134535564820315713910356522403641283432459031120291254093621433100441474129269017450085641222341284013207571705348962320459079324446034045691182358224153397120319518908111529430106014984008430226835992977216265696627536251996150345934148052374001326081272392376580230171454029434641350618131886972528102280671532316413041128127192505509340258099411405442523514518079884651702460458775911703732623705201182092063231710154117522608275473663135334944932933440675567144035945323077663806510821971145954089501442534621292513014943571467923920121361700239223933436038841934564827764403257637100569776570081556673415161587723426266254797136013803356601845034731354814482224279839449213400792640474358391019622282725100720383612317274756637849196351457421258246265814444278500499399301252091451547408043511309499937374300157805596577204924432424635459669977305567044128544331957042253723301307174353641976421205217329567237512030441111362326439444894319028640894422433503112425616610531745833838116287607872728233233635450483499165918095200713152731487109123604827100150988832536263311292494160110182802233642505144974140913546434519484823085535734172521641003768831628801274084847244162108462443946702816122129471530312256417359199266426113312118742441092724533006363272389250511513716367023109542461023384233392933331864774833320133174780217560468162332152460770982537344910268256753174217556840962001045229127625567246206804194512537746572134085617465985122834321448551708632109148265316157123654538020258961459172061171150728797338541254158339334682075613232122233684231477622100126339681282980376243666153047571349706822023536255193312533732622413939618337542742242207309180785580316125906463307929588354164875785518646505174753625226869128518037451958522121022122793332258614052953181743013803079160307879040324153325731404421111262611494599744464433326181820577189147442934929639201808987111642921242879653135038946504270239395172182910741581865510201679254822065062422017012764279899581027161299484381336669901607272280533329903951113324780550334085403937268502413611123938316039730564031253887006624072590392097597553524208592027086935077462811472333611103788000112462483467229185334839496112262927030551181833065110474294968173228625663173203350642449395440284144790344784134412455888763644365505351758849631152273000311779123342113316629437802020004189988157182566524260726049471313613533911476913497221010116311241378410735819830721733512789378026045812209925619543632431326593103477338122838648021503273133212021326558064505783171973446151750747328184824872884519934012749471129375315550478229964815529955829634143080607179752281384122377105004045152442694161428267774759377202986638198670092351940724821818137425125192225307592110830753112422310776694627911543558511152942518317834738709796401373966984650882118305846722239073127841826240065826702678916811061210782818895609712732467502919511323660221814440720713030925277982315109103165940317403348493629104318829483130365714293068060745913715000688009070583791631493323049899165525144516207763967511117364837637640050173242855676405234222245606144461427021543431885823722742634956222802551923546672292756473491231052363227252236861640835282375266026169161641565605526823116055932798873842165031278813331661789940969391937723916646186219113002263073884592603009230146404687489421133395224694024311449514344027898607497064431314886510154023557418720609511752220246251953168042024070313385586821974688977189113371375568334915031444335573083695058562838078946340241446286769277354601483483871910853389939475566375225557276461446432002651125301424333831759157194907666595833381992791847803116128372911911682133114240165023985773500744042366706713477529919782679499117018890533664123734256898860436974676355916562930357241860149746925743153780209230452045014776006264053434058135335353375140455030993455681079794086258656534590615486102160517256801800325124189984429527015855662377781286180454233243557011280251214886303677402892124652048835231182371468241881112156920376224735098015361622776136054043912213322270551415787462472101312271152517117649547142786654849581523461602238149441622130999873655905042022103005173274203429345306156115691125258510239411303835696711140425518221253596540744432267542760082635629029260327961729656319964190706502364733872559902938569600052863893625321318062520803116324987397070604132003539245482522986468259664923159723587287138639967591716504969454305924632132949310823407293509086939983483983332794933333486218992371582975154827047734027274995211015379950115449157822680103233707537543022041127549806573086069588694744743193650325811268805711779834486611743820124212315248628429286115572041521726369112114712572378608228640303420942877092595855322025352212558235398297816696521200540545424471541710772563847961663442714214693571224992897795530237356357548257144698393627383453251073144097718807997283582729469228431767052011171780902333653277522982952513253433450851101123584839662535485181735418774003945432019993587131193237106664619424311808917764425815841631791296531418560055546952394331193439916935058127646175620680074171527152331537114147774220159913163921367398494522021420901141559519521283252133364102150654979450017601750246639415183700423109412213706713744351711364222961631215298230124065794196773650456243017006712274875014411923162517788218117685481134370454835464367060971517864598112452501928797268803333000593196739429375229701218297263801799119279201315120748031413052016857803574865229482554312925773406687322425041150417518323323071662129749304111512911652526759480420077565272237519992706405503278822819010657913138060655050624436046644138686654613326103394504480413019815645597076308677280714331222117662571306350749655404224470343919345055374741779536436672448517914252743158676609933937531936111581172939913487255986025433388914839151911831933619520337322144414115522741452205714855545496120145157421373677012993303237601802919118261925579592613925226301577672290374641120115890632208945749572173107161412863138414139081452528804443311263218565722321916661448243492035724217382246419079402029361253543886379303528338103770066379421069586953954138220704150567073944731802418608075772489518443674538557847904093643874186751854116944436178217997832341811372280017280714623370635564222086003470208485781621831816533875204717374240747102415181525356976110613123409853305021214599834520954605455871221847445819218724327232153632124898829814309369223833591602288543309297140482460641575303703733251683904548952531676145891812349198555936234313343613915633977859145614666139582964554602484122282589143899453783112874207512811228345350369353532922428854557629924917905082210066476276772772180183272608104424645717184436510982614981694046951324950334206385182264195321700671456819161743216042980063152653382630594501310663629146722144257451170303526549208714848894520438802213350596656262371645146163493525473037111109116550292129651658904726653683512784256476252925935697747301694239545514977157261321760575817179555423384399554323082658375337463722203129313716031170839801624529001397059270496543201293608981689145082497493749567070344559232600213437150365543325640812930241183648158400244316314308052223417464404497456843754452715644111437701454111483371234455227235908482872804264532213213391130529193132698632830513127353271242791145120469368210586516614921028026187134245926020641796154165010525228149822968228135003105987481214625001004423397751325758576642699711215744658385260741517749650311244948904742996141124063393806030523293179185231548579894636521271815692579324771811517097632949093027446654221551623722578364032700933119562221201426001517489478255795687228074616543344881747673133447762063002265281239202824935361030908976108940214321311567094146254421437531173572487935746762426123150176910188046987650835717017564028443707786384824244010108711229129215753349339493719451912876341805709213017905224016584235342761084894068195253252134174115756084538241733609704124125443782141572414328390335356432810577537205307463636239353676442702703399649611939655395136006358648068535625406180410669483246617048212268890605740656825374575341871012741054057203333226595353861861316126607128158103771648737326192141322141123681752172475448153073556307134039241134272315730070298248029717352481363268554523124412561901459341264805657138033757903319298108038285278252363174135529501712280666429501824012167001855214732344385247024931193820028118880001403748022217182237686733329073118401861017212831332100457475116730822623274617317502802458211270452221357212009406872602231701630720400162715251052791827761410966153634625227209922541523878725353908503873371754624223661751624531321132569392231274991545175311630489213308470018329194130095929436312159573435305912250182197510822143291234425382501436842807689412648727051261342133153878371689123883633513432115760550713151544957006013269802393187966918942881045520458987142608627563476274565561921295491174545619220474046811704152783103427181868933630462825446179711221283300536385641441602802230846699596031419161414902484297745243947663356885348214111957527927285247240147300614728495170824443342612707573621040008161753263512197481334652196711069744226137977214412275246321966402714302531344726525951892138061284430510095662541530507706331988619520936281480254322039651950211403372020043717025223113437150126422336547174515375444039402691406134154555231321413233051738125505626129992636951890612248412003536851872253861452119575005382413055784777055222128366240709888010567145632118491741915456710415416501475078429469481512918518101065049328450316386591223758425920351680557140542026521729022103661474569465465352187439557126505012762637300278107001234047273520553054375231073563217094691729655740447284190779384639452971142381265146455160717034754832323996152362740193420221140956933686663255668838111076883239813579124100922513165403088371534501861483676959314994606578456213615114620511997000000466789878758047114839487117368925192368910272201026404797432034732248036069275015652341469444180126228804256572436424201908940623087507490313615614057288939475147435066653611322380552177796246505431456486319128503969142253623602276156076620791838905812683189125546300582808154327765442363705692331294762383255615963961342994968084297111051455141704363599319901115492534131732505326372963603427403241137075110895055725349064525403925496162579383829527695413326227339772355666179360152276311248621500472694224483869215438013491370400286128343265065215406603331223465201018291177019722298240227981153619542298113211566216101826460457123021105245910153750011074711821042571723515102960154764406042786397844157422553121511071027101079452311491070174680634497204537420469619552792445974452212239523445547183824254473635290137044448634553331932714131263850542078012309327282568170696345121110238265762267609095666021474702487592231114936976156836165081314954360170802828534810610006146535441515140990907764245006453835016591732625871212253754623913846432041308939432993082593421642102268643512133347268453118130738764003737074607341820172129756317187087522147269439577912279055361304081758378659391244791078147511359123128580973040228225631434591606817418946251327985231434572699457289504921351272433712648246397513128794111238360786720369625493382115266604149405112602088474233334194414100959933481132450840020579986711782160050792464833815106344351856329516241035464341083348402172647341057784031954135838475217614204292038518160107762271859068843773657116226840272667538557654738867363304641085714123097528233762121133526257768123787049223610508736355517025596926228102369532973969204108131214252681164073468495558737157750255276908921954190156012027610110791563916932338624357413181711310104101098227192153110311565735846256519791693633212221103376971337514720194831920175208735413983419186785188461230383136243861194355369519277845711183039162970036828000544544176684936228614898036321871641270572389020269557487307903504164940233349352820229400046460177471644401641580945263116111360239153922577545493793934829303163713515976684018734187326113252272607145483311601666062253228570285412762913240347489483588735907374961338542751328897020751128121335508270124452300437367731817383799833925628099436403945912216591248349709162529052007395612231901923229007693929460352348831975857219439001147806606213919107243700736313149321206425209311152466219241283339812668931851686153107390117650866225724503360651116713582250251658202331325523291751377681054814434132351632917132720308471111427150413927412312355664999761514662804840326410350542917385407287183516538324451254581160199327290003158434083518521359134522925734946314331532215354653480916269558438290222274486310705457643289712724119315686500614663253116973101039841068631741136348252626506376232917295551502304852349212503726384230732844861102877704332262279372063478652645779229315521145532418985858320643931706748140072482095266841481947513692121835186510892102140226791760577329702618331587201676117853356375780332755082320030580927280188419007272187038486941331380501078433323402199038519073528553846365860483120476547697253457591161028897267113706064254639287278930142121664949752551141441567208628933657969483762952965454382365322507541914056733141912028011876417282213017285873386903216532316166303634844254487783116720240646759117720521161654875068771391864901758904084716514375733770762070858275949349520343211271242656788037518635306114454225176580104297482224417162740115612719842490902927020687514904513781724054669852220145223400261786115182148457350782193103202156360436095632441108611304327605747927965424221121573383613254166750673365597645934620256115233860430257413871714708525501935193217165929506105651239037371206313492862832657172784125792453408555674696711562749269742645871949373604909474227844658959286561389944989546808489861246136471841712753463512335097994932091412125748760133281537616523331314782273620132515270719315281844361180272173582461164679700299716774607737284393449396945904095053333532026231795348937254441402614095215691671376037008050386529282523481186914813355138312425598438434234634030026454229380514710603927041891823066704881301978602399986161515352381449447317265712042249624495394551129435616635336913041887404860096511654761458798713474198875157128776756711875546879202931206455218539843786153558572712073582386730225034181024520155928665471530889116921732465462144940463030237325431076342421427920856988067142204251541484043323455302563326845544649190643409005021316292836516530810214550621588073751785826713875756474131139429197470693169315278378616317042341771387619094006963375055742374027522402471603399401286115684691028614762337006777261257911356462762336130440764460751611252772255280924794613602396993572727234097558549273286328971840619309075559179916449277518431691993376204473218319841312988164279813551388601587377584636187180554311155847572220057332844230773150792577473314542740791896711349549780717323353287317021639372788198842663820506748067230903540211422998437391559462005261287989364503294162346601029418145149344396305513227134792462097331373162316239023800046237568136996001461977207324456731981614877134093468945341205926423162012123957461701373414441074242191723655547663721419913643830522768440916258310381912921104059868161243261813558334742765206056329918952030208096042877660533235548937348630276112519566912721449805119281856141315915178044058260092332919934021284843673253334357110217550319613215537422719172317025230093904001230173416412125410741499327771496537587389235130376426245783042788921192610341266970325523920204673473928109733083022742697213852467024218363299083351053824354536352580811332866062105827814573020229121226593488212307178671932162455652336189134142806225305440564555767361198336519328195322414131120915113091842414198574774075261333654263424028333113457136602463097946049342235653532000354415637935128255119513678775295733253146905144943797139258192082220829355579687603160125905867012650187802018761364511653426190943845820644719449327722791410112330661021692617721131154530461184694622335642267400340343542532082867323923581523993476202125775288189597030910263831770880381851851461032933601257859189158028862113428107731045850143790854024017222444218744203267768851504212520509865204265258097138514852081415763333001908594912872498466368594626918592214484491433204511254452792193755744732061254320434662337763759564837241108933389660521679205263883094350544915230820060509238554641804166757403498018701624524570023440317701365008964071277243583235270350221152462918964405357140715550131166173023778692162992171357775710855519137251521673601504334324265443403845177718569340313186761110282362668728424347658023964026705057814094972116064559891573186226066204179824122068347626935392093101219882263734173386652491027362101101646297766223673665284160913422696592188202429157720246853998864376136643306461007361242540595101140205560655249336617408727201750431441806009023501243594166414908219205725001587367972201330512456093188225109831124336370480165925849357579210669835043613967355289506676809363403115051331374525323077193495135548370960098169539756053531486864702227525258026161329535745811756790267656581493831318932374773838631264497250601216499953769811807507313033739584212424432129384375522194290752768424337222878726384306441554910371686137886354876231516488632318807036333955329377194383182482426722011366451685306756104454658228253517632434960420211331676822911237036443323615215918748028972569063586189664586411098458739277182551852965231678422975624198325034454263202367378219125225923379714784358664448179275570627513391463407031427625140057971959559643425850592383510128214916470388678971559053341451836087270724736292360281672103270850649144004248255933491221882221383378011559306670347946241852369256811466162135573188015472835082028862338988806708942307548425495078728635144420321707398564537105407601720211552013902363373417002816241231072713634528302101354819693450499273216251921165967275279147374178588711899414293662246132023151161092330161411895172659849263438299367238429841153822801468731050645651182033500757851375298399812154827630656710935458213795819869151673157254537580581177099101283518812783001709570359502055768804271157611533461096478982016920853942880086065739566886061852313387426502733225186450702739151122151291642291832236169423667723943738190979361628177776013873417116363356783128640628386245916552027449325056103042132289162090158392088710040089783870817343623906381916591742612349803385646973628645211692261020741431498185183374450459304442515602448190082237260208465285722802941074221376414714636314437162377027210230222304348043228269521084398083399317391987264701153653817609991709968320285752620953943940406630601321488347505747916102013365723008921563796765439369657126027342890997604707642148114713633006900064440926021362946530342473684667207068136197898798536752782816322591506216001506571444938355743432010367023079151966591148588045744912193783203331521852028898039266946712431468362489224270251819470681571663204499366244397941936272262234216686180735238062928153421797930032606383752232558204643025525147808092377352563313975325116951103158003070569362280614325048653523936340303285035036208838103938530900204534455360320682727141114771188202336625378857208641703032542003431716701037973856157411011216062313415176904682475060174820437315262572013119135600024020570172205574169982521833701640201963933792542135115336192761135462357254052280211541714948005182372792100613154361254604758812181335523783074521686026509425463954294810893009658134342411168399914240927072567764521354041135375880280622056162110293635728825739313034972459463140344736394918483817318335381649294931957834128293181674967330664419064053105221043767928513642277252237068917664297263391170848423323661052401722264222471030262564350324395743354113659230163457377533387678204830693410611743606540467015792701672253951200762929237523012166553612078254221813328725671281811668225103915130448001034643011023122411500406753203550349112904526150562842072907565237681470895174991393670661429863432266546540285182757920532281937920158245498315556542423644179355763411344134921225483138932447178696512344543266860549303232049453846918657980056098364235501956097683322243148712777303299367615564263241803765021189637107161843019297380372020501417312627676948119270045251278239223084955582321558105088150760162400729672675387862899926072612181519312027466915457496135003542025500211113590458839213605910353101735015980338220818280118337211161516115896697723522821565321243311151739485075908469923213265555197367138660245711547246348697935386682516302898336544439390116761205782245037452055161128663257926486052481909649161294121295831383210274402359284388872536508380148656820219024936775110391311084102266029029690669393011383749738372100105074317148703934084084559003243376850730085155340550051967427410614348195531524503044611888620411379453314610546506152291586238247130273395227530739093651734748207404642976841475179706650530266691234957420976501224381534731438027816602156244147573936428179443526519620156322120820101279392431425477165981044835829651113935352004781221412078132383412516695984242044011501924753895011104769578029880215193252312856341492068959328232182211038633504677454553569816950504146321212163363753550154054005852099133485410738745006090305334016080724211522662149135562621082600131502061740127951776351092323223612614821641938503312553881337330132951082372711073329692809576206951801994327542261116134105691243112309244550712278754518515452859748175682842292408027526137204497371145934957163413588548298935883034214390087079740140061029170201075627422069714622022253603158732797154540111111772463163241817829140866946320203140403722150813482610018538335003532613885141638868065575764287027527776170272218866268907174821013788140830404385043620770214162253197522536127313310806941376716040932127951538591111380214132258017685936447153969237451949481766093978415051673343330425595947228267441469192301209051125834673986908764574635951133211734164016110895750774126691475138018322184301202211119088232252020792644024744730292326979934629943412520819351602130617366332603133317395242408385572890450662642051064353206944971866224161805054163767225111781294227361463965844026107211221670262848073245193129013831997280540201491802732026281620256111793687210634326832495060523026825129158757307457756907914247452460258267423871466027268511422890134439643558394751691116516476361343032837814495449124329202550724568839141473226048714632214655443462752631833481020490007756328686342653991143966101715502168326301550274645682079449435200561319936872515322372536821494556883854734396883157496278401643227314640641000001488444964743896418227054515191448356543013178525083518120392592582344068464393223537124019177410976770161481448409212525537952805907318017515041921375367235695272127715073215307381594071493141820345763505584280300110448681010175952271540805929657688786014346148666595050553714001624745124223600503463140558611382476610551480522043431885903563420564335215953222161534702782169501213029442526712729811234113944583719770237312428597542010878428519528154207045937816933189652726163604951151461873343486384076771754212600667166275653207037433353887165072487426352103694752595134663416745677048752244715394312122400931654148747388505553921665421123965218282783305149033826534183740418515805351957651529831092013758734163564000164801636157822521877317480995321381654283866735553556839304008801451605188385893335770997235944820715207101026616364413143518167944140161303264391119465014187813282795139246461223919140066401140605065767593032269407337402381934367976474171285005734142419492203357083567475646374236191327022904021178401167141151100968509379773743306175192814018864036336836477076567223601465487393655230431942269148507009869242488453395238090512682432381902073848334124957403148154511122054155890111876900643401001734296452614102026303630198127846720885390718247537941034001665941376110386568310541555258976952703891511336939433170611502586405961387451557719030379882383662147165029810418991587305113660522582114359946669151141483527555389283240873306122456192242314644479466666332724008203827635340207223993128623445560739788378361725112753281899222379918833042772241578230884518004428102764722209375070340736379344920074331474055292228484406050570985701423516446549590502660974264481356436474944697352173108010336876641626532917150126522025254722564342552613205241223451208022641909948397675118302124188269566148812276876353752521185021219248065699501629187381396942661562331503159164898739738138681118639031015327621105338846841254805819526498384041346072186492147111717669555836651343213862521332681251585918878926021213939538716105310865214355689254157921474302984848891737766364695273882427586041873253757801864255225465171041927535790983462555464103255954574835022135605549351614361115733789289557334172331741485424141164058971942315511323011405926390520730070148375111219919685261647257523348756690210662030283021118635863785763195367745603031725459624823957572662760498614463457407204509439064220147363720410686991112127012763983378274102062712467731442195599681112917484320703364332881209673614176650016470510655516163568258685842302633587808101212751080311960611566294213265114501617931170732067981520052959253921742634700452105333466097485052151146481199632812914376535302911397179206154190571534201029328136456376310639198208014982984637678143464045117210127251706268214949221533326288629320522640300843129056674432936619884643824420229138429687438846300867203120320949315865011888432814537205848461590411154083533111633241530574538666568511858094077617715971571152954147675621077937779514288262332932650453563124688425909580211353248217370817342538631125135003386098669270377318187216840257835398781934134869102817868412257316235509892730594217200907195541927218781222346666105161545229483707718301213948317941587216913153957152121301124334443415807935563927459253638094231752170232932942082152104712338377672535330313337733155361327614010419484328115493046240294067300591838792117162113750539145255256806255662213205593574340992111576114441544412642114928208573974748330753188261271923938246387609335817643660363552090175731344852371122452945308305593846310887315272511141325717471560910256253077153939143720325166554634362546733390614282005578570404538998505406969551708261134363433962220817123614189265061142931618621302347696004081118522608122638693661333048571410701445391551767221464479242103107306421341312134271491344764123567005127642256330915419973201552043437415207046492446265506151177304284350096553389523202236026793762307346568309378223555457633732195254872373336803226048522872761447581327571841065447613410114412854796053806341086602336629559846790145102224211137314159847497781527472147356264443660844222447191314783319137112316754161121274325306426653609970136127676313735372565785338137496538182581147439728121037156295554466721014489883883053422535738942796255224146508155745452269130147465937582803422163274259613511247264633254195003765407053464858499735041284591518357668072052197446183954381355892811010815816812711390257655184499816560636085456517697226582661541250639037084542826761612173345009503573862808515692959465146856261111947443256137412624067132201461652112359772461545510312122014711974311711010168821194554842746647897634457532972282582961174962848000625470915282928735611107133861305363529644542574636842518416854308441075813637664141037492874541761430556329269501533558452729530202912451277289525858234151608002462749788953135616751213731517067698074743131128224038525073401104522245272094246249320712194197001205862614337566083167219242433250044632470281830526706834211270610410697816505510091781253411062023157615950471301873272444063186192858456512900912493153132282579105565329250712198401039599442207546489424210425077601647596053996624190995392084687523941233456023287474712417718112536416309812208885649401233746064381052704208087642037584862257038230417428303319435464652374412920854380150218319433232191444229620170396075460000549495043527141914314407278216881051987185339227482211672469471820266533338568008345498630324453955557223431630237817769112201333326140012094116321842317065650771663573192110063221632245522048538043349894047994187116321917641532917981276542645074005405822964299099970121274563917519456433875610261008823361385222581977466516502083315346828182013590862042453295351642443149444466180478203124233696066510437551653126322573826463976235161806622846925366173242361321227484424085349121052844702693840462792272660010818550287341254615634301714218807488681954919724474422210755222871654853185312918370333823827311646417656258261071533974095951557640834731318226921606314352730620312950460083044880720148912511124125310813988243380811710029070290956565561529141003228705555324651982004126471298854082834937742226482220609611159570065099104983392868846537110424932924211619521454337600172145587614931024013104795790303328522312446426715418747114130222237009343958742514254042160060286135902564131926111278954747433330316506741544444062143116423146160525098377623337440439721090367166855191936118228197891976203843232310636898011153233437023166604793551731445924199675113423482091343864035142976279363681887208730646561117087315971103547065333025968633437120213722953621255946013136849509596476307217691859250167451231033076054095132450763483281369815884620554034811887811078689629073403917621221144149742260898363696956145522425861527122935139990518114399870233183924174557330370019826243032874035145506242784319004111162161426022111623542830788277739131618656154849865160013654067608498711975082105613762143200448183010034046587425449925826416465295222353521337513635371422519901213051571385594560146210342215174863195068421251232269829284870397325336330478715176399164918712154336292685867533442838232227594137514294401058643982543059619306320823404113628243015487081899796821524449640353811004095821322205075887116666162546502818392929868038310519542435244182114443154783681115567021651610640304341446325550246499542071378773753652989054781541647488434594015231663156713206382533615335717911234692051421307562195284401548145412814181021546146492222400245463636030254798660468054679592115706351820414020160708596217981861586777819730812568641327682572112096167122095636431493191438192534342231926116012070539203821233613351924531481313866301992454482086763657721542936370255183176529311227118585552581372882614707747201252022055027630177445112930136098359814051195134548143503757472260582336437434692222579637375314127910294930254575568603526491636457457624709293074212865160716446031037046635710837264043279070274756021223839062280526395432467630467330182903194932466135371759236215192778954717205225442164637141282011443115944928861843424667023767572396463205006407481684131494743854816357889452821300464626148312450267655244224734061717325389351236050224790532156435753853931414535303568282950027398838254851601263995871041154850167127117178384065965495440588933510820127174445515115743507913611088358738598211907199978574224001102115719553520175599243079201542406419924655107190822698249204229780792871225567537442640304210836189513015056323927485355823352682141927583083865786129523865857786183531527671424448248318524969104513629111931864041217855918459853231506977237852565097294661672933181191841072859124357205287652834715323286115773413018286671199184304016431752350314634797557154038714524155497640512306561613356175447434396054140760427677748384134123271782637962514616994392900450807447462981054206633787736244742620355391064280212604810991074121945732831431971833645614242894447001167581462533424368452591931842902619187778919001404865175934981197892614756213747981348923245835225056937115565512140202203934783001735450190323233101003132151745958266644656709831960981198235531222203333907431511936913810965451510102817798908716606733291881515510261183228276327345533382542415544132410977920417719234959615404752190641374611976740465753335383596103042901633121062911180228806333209300131463386452318447162638122177456112155664604559215923713711756034425051771720155045512910019214547529102917398248994495415466129945894301198713932894518728006415705395706053593642159704739214340145586599055406018516194812230517156993479553270216360945623600116745954029802666856227205136385213927414404236787623017661610571297951745500554785817305753084530443844731393911284023979355310857797932192924322749153836307211272772666363822132526810341213705430999518291968028121660341593841696130204930553755735584149611028545985533057930033469090740384094573323419528381362654443060287468864365451274969030324111110216476442532945922412769153464353145404145376712214140231226664462284682239205920230534325398225326625082614749495817668816659801252113261752289781887307121723937411576247561900154727203263183193125543229043215373250261600285152248124502361743817108666231113093239976357924735211633327213151964546250266413410334531911751801432466894866221382016121671545829239385827073781326954904872819411830728311225158148716185638462516582521419019059469321831158493489025001653606522325711650056224357161900469515830743198739151219242853627585987424879361765605864726885482598623340298674288141099245488213005444169430210421401273341581424851389956547372861087114392742135165821412878218142843010420742501458486854117593551887248633621705901134735951166106505900621303831531532644406534615234981842543065492773701357616055403602118331976363556545365143181247524780976790467754797435170100684710101409909618325683740991823560065897244375737217675495459933782065347454165655725086386365495076825136215783474099797847263058636315424941606411148971549950091254321283990441616685248451461351232781902084137237710514013292262213473335584236434195052088551709759882331558381830818242111087641517319139361854181134242445403240393736101241399971141483230451412950423278488618325948622143386986368103347351075300422341450934346037817334095564614792661117727464496055854854942369023630750926391351691377695401137538830259183718653631157708728853231722836560632332702802955471436561130724682139165614121753019859905613500570901650557571419415123099181562481931186086634642261454247482814285253567202254066748165210234337841351348136320581066733084397471223004317829036253149026813689791020402432250826504321132229764358002926340235836145534862226265616874302114570121835853141579706720347185202185116339395951168451174002223761798101128649786027152445416783146134458290171604774291522553812591492423821763243437162652162581034532191102351119471015668282859427815566258621619653624169801322220824904653237059342198802170876884445895822918467914482731796119378718450940500339926476052420313966153193332897713278946400237972686289319512329851144318363142073840649034786408022727368323603211360532532329083221597353381031634291612759088811853000946267457181851742405644029630666840331672918421254248674325750690979531812573731891572137872615646320321624668347264700621879493244814335724962249380245116721650556597025542274985148354715444222568303440678940277501800752224846707272267050043222213402214260566452582116540726184130860454330173946254340249066550947057458237342661453702664372573545203702169252263435818073466041605449194538608402612215729927726458032424693261073796915242385614431722797463360343318001510105523202011486910150901113410571442368060351887205767032087342964801116122230195758549329358772443734314009143229710623892731743953516816747997125156964715631130441593567145380323138709785115991113690655753125680643523016062329783066291331925963369894437299143421457345193321510784342196296208740922081217267252000164169155160291976196005689597922115095361574412697100400644654722514231298462722648049327188742031760717287805356434355333252351253045422651410222728711733370803191201324462884191034350026046867703435504932230403751965546517254337209428867526485311789555776733462785953645439240562195502354910184365529114424460430220191572202136190494007873536202560813135675245102123327338386754156832100173911879630455221178294524111435150504699305378675734717402107522741068113582480779482439328196062332047534886478496645599627990332361903931414650366446744913437672348604547911055547339153338444707855149311250954114992933669367044225672392417794168155522123241162831023838161544560598131550774637832198525120304272624418299332312540887026506089055085266225781321311935433228392509765614582863826170397512326520556493828015809007546556757133186211748461512689503797072462519144695001389779983969233536391078004011445927507772336251436993120129010981152066890581431342415023748445341514384334635560221293337374595635136476913702055712754822203384338189328915365606412732942888685372957260204744327241291115601220275181862908504425663153801919342138476421130155440513150205187678062392081398066089937146916569347458030569157295058270483593581734471673353688193063017383716239821430045372008364996927030121175359715904763650951253482953122389115645712242546903248527858343966706008532981429634877026705322518557514504491873031140212531491516202756272502395494307883542031075344144713481206371324484316276189203233617745165314641503234010594060693856125232833711059518352516193669453862954361523636201309266145054312797312811025490127051441062929218354979431835139101216372916485047380102381816931860115155400523135828209783397701854385632694891387359446033493323874122215174564913581351541875133110721298746821626863848088336568889206904111547417607549103825965370428458205957147536614184444490340812381723705800660847614723765154096713931872092643226756662553240597513504864302892441724177345762521538497466428322377274937154404138146274433118842138404829871892621303768544294680140780425579470094127315212608016671283937384983749502338711198047189733016724019589043046035670664529555282322287389713963426332141416074433362302031832776242597210602803448242356155652926152063162793140403846082033134790458312110990333338242210597671049816682915006675984961310311951096434211966168715563412297912705150903283788920820208516830086494128718322733794891402068233367957106818075980354350532906744784521106321306466740255772352006591849380589154901502810465231310291461064915021351984533735114114286434209791188168532265831932683284613915441277373674392509902584932945651411775328028515353451522042211158473386004919292528468474506337659913054532314149353841255510434538024926180517164501297814683334060243746608038111486153379522601524353689532751337164411753242028081247168202232734302002713127339244790510296250773577402247546201139806227068170968582720712072470243543930343254435844737223018141219466846112293673200628100181478422269180327576816223463374314079775508842718771814295361598718907968634762459209945156541079219437433533672234234675615528549133369091570620131114191431395364622184472113511159815302526462431564528362513774692474423922775564781244111742171220236482231122114909132850892217878503574554894351387482006881644025962372431576439348951451955823123429144971395957252180122834522219212523878430216535912164442411681027091672850962563424929657737201154052217271275062274211702703347001500752759492131375792553904011370042213422421437370967300361442946573461652316922175333276494518519372337591166276888245999376220273411512041634076637100176748322963921260481123708675575203288708007821675549821142660356383306941503568369080643061275846791143312295770733576467282236332655717150178557451109147009324421056202114531433205908291531844202722788373162119506064689292513002085281793177391556443756308350441430704776165983600760230455205563755915190805537104438822481783416864952724389822928328191527791880246205671342160885596753494660810035914012632900549557453623390171712021122594303509151739261511430499514695041334905245113331454006771153339997965945455278291006645324693283516542305460161200225678149323520062669331781742200202816802154125037924685540782570998451174530646185797206864826505601209223863502200384419396345826051266353103062180373456714189795667219741784852812461821529381945334688362850354122370811147521936281873080558153582236532535710642924575221450225343099284081219278217816755622140413860153108284956730751701731354735622520310304574291231547076331137029391438512813005092945055468033224374875111331789160422278200890735764469490982519285922130773440167204748542680896614123949775762452814083835626617758083800942325353373330028744262685973191394372912758393673920166131458343611517181610642031163413887877364324432382802084621181829733562084609428379164422192502473929902100881309315011284126505387841699005231631069713557254577050806472783320074827461249841661340652380755194156826052402653219112101112612122710218451110066679972252178158686531426302621401341228935695884109626869700454453370545528214556569621143723393713319715081699142576028267429277246324510508060023791672408714218856706008268113033632631718284910421357453990515434631237314200952213765916924028066228813942735269154181019202189058300373071114226601166763292103570571418550722802859331114062738240174303919702653175954103925424287781401425852210134017014211281250876251363531831113125806324302108202010343276221904090539806030546979661117151474238701183716364044379214319375958889245211971650540994136251490989973519230512853864757139311676341724321331222854106781424420367045825229826845822568150508082201033355989152324745274325173610734247905104564752225873428455746281139090314505487172112497647446534506387106951316168683158443621354297288237365322468324816906608138416446657352051050832231271281254934958729014724649730244225836295050622011609532135466720664128118145216011205471078199522145446587158278476423821159546573438945176345226546350063532339110357333447458072636976254512990767922734935063591056774218847752746394835162626628020405556065473943886410584193783030292904436229362441145237024473218947844368173363504255800811021992424589242200812209142387003162439941485059171377844963210107925187277439926168121577391106015442410565526487130710032395272518944112012731951298448715103620288125739801768662254764443976692303295693955137012831539566597411981941267614476735298876400749360419780591367857219715163573391234592324322678523638439813166874791267358311376154662033387256128009460549705276520772938148658412380748122129994129241414986902460165336872092046884481827728235323270300219745053152137171538320967447022728854241336754910044035529421138437230470463921350474040130078215130474125454576147183253820441028768715962928685906621312798499311214041941825011793682398562484933227885126127345340732696284379070769217356410751721019965642222011530417012788858901198460849231335046607501352896718934946167563730058248937484417244327729285342202781948806663784459894866293293306512787919280266059452743436669598522414953642039301890733830182513237425052433115262472372454173752319880464445644396479049701121163234119830538025313473650135208213949081781512890129560346755139612705030124866395198198955575360422291651655581338525199815331741218832266101049438720435921033235803599254536224191783293516316041535835064485224832756760678613566510280519958666205015852557221052646862314018362461081458337342998526081589134549425253702470843246212449691215527031156621109354675511005911149520550797147391998806928222454114133132544088522862171523253632251783553136192413730604210721279266813230865861135284117355083998344181504303329069791365800937274554179473303120122953154695312099111494520314410629820208660406451647361023508438269805657315133326265456209960744439475189644312302461957242495338226156797305851652524445910355637045610671128571544229020122120503657380371154465068642669672684026025248901153236277257798924373260115601352824018921827710525267452732947721130631661624281451850001281458699388326725478765256901126181214273006054822250647661312147719159546472347864856853491605893618090315640214844116161638233721779979456276702954442498224813441034260046084211994871452573346131792718856512843451515994152419601122980430749939802215251942864222704568079178858194538843706625206343110057470138279523575194055271635742442179459419705458106667729590157258131513731220321506602923298073033244745465738025446260662249653507520210646016622267704240228902487591258133052688217633152464266417992461832144540490149129821245135453542889938382491194796274423489650341063902482285840643262853374354495638122720158346501572026074543170859043006202913414261234370152004916672690129081470258251275318457354311893735502311103293435715362859135456483216808010256826461599288960453214608905082714118264310129042499946436302431681250336836467421593282432578510226585955591243523207894891021104339556343966277054644965378275180544162655501331107256635547188384032405330274488908601309767671155772787950957281457695020830754226142241409944477625637219817041743417442135781111295262235091933231424690662609430552693582213801018814413557512427229464712032955564640545415675451441186811606231443005321065625957784097411516119014942616240270623259783639153091897152081715150061049954432006735410242395667146761866878788874117186485634015395725247370035322393379211241497594065038186078843576055268167201402562859084381200796917392138169161419021669583668079168033183824369400676432578726442701504597115552424198731450510124625692905234917382125520211113080142401485555970956132383187228161193607316126423262214548202826431118210719917858021920641111511544651895481003458192172385956163216353189564095231608017078304370628795824276558216052877626261511105845459545787795280192412166700206926694433473116539753331341809306954714323423243851414666385308880676570861511048686841236285914321712152562916312615972392131012378949058534128152207731570839374019462429212478703055989580732770272207377962172156440117393383113740912261033317673742274955358415310829236512933472030315361346067583943915076484912471694148830377966357312210179758520744383310123321476769316942034362264911781731284269100725753224176513031082958938485524790705427866734979999988906042328425786561791678133570437559259685734961133234543556414494692716643301065323429511554483388186915136871340586421556117158251045019689785069631267339715027145542170453367116711509827373219215356305393233336246132001299181122172822491006298543867751429646110033262538241741512671356414502937852562066421370541867120555056811172832492007621547125893296853551231330328176012192682101181666542844969441376231106848422149881067134855338155640729481231415038523143518417215300666390357126602163246153213750855173016175125764522359728949934436956170756303654445006114040874992058572038090243582254670919946124753763251213575904100528076306881262118625292170976059104376121511353623188915055252949680641775258371644222629201900302403437744443107032064078257333111587807351173820473936090135183098467542394356238239745607303136822990834741471412639933549288093398385135221240835412400769162720460920454164187490256133615792866196193309100222870075364351528922070845114403540926930162660165120153156479754211747477353330163650135414176670812481424162933410369799455248934912042664454325868312211722260439316961655114389451279948614317360262972351558588911305233677414015248655551234244241382472051611924133131563022091893316488383469415684800316752299140405322342544763263454374133226284733200715976386535777990154933426132648690520744414979358406146826321704288903173356740238293607424665592175504259643616332911690022259632675930076396223517633161852535197346536159314444132881066221169159323185611720688115869086525214891331630309164165388524810155136176648960510528000417196446868513469930973287370607581946920158358825274700583942794261110729967418376437633208083793425217126976990126830352892556417252411554584759610392438778240174309559683569235220002264255084653376640994470985818819198035703276447623931348732723170311799143814057155647301237140410442455625611272695532162173124211831181119428027052819449181236218212587971137133621469713741921553501146620614567346712763603835109675994468065232274531119318191311482940332304688596198987453227013748690541301638247339398158417351362218662351272378030178916149663392142653223367322113513352168270536269503723612139743396225914365239731818188379336517120076357126631833444332070456172111303489055955825230422236779534804751517815620831846692423092624527297560322112122327484130192748922170906156414626844893222952029496485969555543330634503333301070615702564430183021305911178203206533812393672427330524497611772307594024105833617115254493512332523573612322194015084664395451176170031334581413538276727196460184923138213323624162851333551200850273320393412437878924936061337381001170289214195383265005064703671162410656661300984433411528004201035866952572337133565361183155234910679898944189241692085244021236937061622023890937864119211876725387553884726951086744474626629126786848651465108711857296660358395803163057215754805057335856717147480376320025377288668831013561491425833633011821156351463252993230123774874933911229100145861147447648124508384913346716076715328821061138876942213447333153904052131545856340706960221835396525434649010928251248367383565567720325241675330475431835434078187573977551394420057119608424496658243268823868646595250622535516338901703595200241329004302873230174359212002358615338790722323535219819287155578150512861313033342878526252420944597668324935662229295125971331013076538781995384262750801071533695264199675391422842861574395394727430972331818317670677762191551715249669250713938402814151259361353946276925137165290424357603777204757049813456307531192088133781957646217522489111228314335603708718841262428809129732327092230073003550439145463953863600736171918817260924178688072174883530714026630244933612251075594110143664430832681847044432168334441019617105634795619780327372980637533764242415187407124189853129511784126442441537455149876705261185677299128434593307207499776721561129231391067052672632741524328750652173925135040928473738951283071308441201120890475330446353088961304526776552590711353433259648959290739131456127305301243251294370417325442762968145933291679341303607595104721512807925912246208015969455133828460721093181394412214559633500521053366113762244029042685866721344125559120415524684652390198048807321187309474262591271796322515328825343924823116433415179303144869472707322040941345205434411442258337291499661102663120627123831816461713130823915244468955310293843095192314445261730662335351565156157218584217785317410781307047388467442969490991134790471137750140914463648834248525840985082889971449801933161304628184151200814315177375046625472662461043329953714160326835576644890422002460423852539660033277855283776364123350904888153597319342849915599144763342593493767787619918438589096226862513116155398106130647310338350083354289753763221311254736436800511149140060650711253170816357616043246886741254013333582141953363879600794268302012240228446961413978055087324974410736268253442124293340136975171336636567161347122853273744123538452273118251346004670502351464718372574362446044210841741523403732154134289350200831923721495739105333565323665679183924375030658575348133322121139607730582717222395228557239474599484661363192484466507083365913430088331755300922555435733885074767015965247535351614182232439636965693039349672763870148922177691241945422010991769441858988504053011795441512356025339142814072444587145068921209323335291141591212716323312286454369834001130047472910436180867569593954394921741214421133150961924141572980155221723267183115862190204585128974843914516675278702381740895508758068086448345111913640615688461481091064073213981987083153191991613698104494749747882868221884102189376822816504882065221909355123953225463911994071307820121378986328836995053602524890577648563371299812519853371801057440930697014121774512034653734148735153455222962093178491197914153210216274275850424862386633830419284927927790161572778419780419487276151844353537113876661872545642972465541351241184228766098265938307241682816746442226225022507341812572204346132244281128485826623270375426378730017874089668453933165625940033615668529382513033232406205777651137029360375656622340182670378232477228719531143577393322809217273729026584346449408031233274264823366800793550582337631164523387003322840550000342375321297149857545864148468584011718746263139072697762726494032665059538418184196451613201672923117755496542535373260552340492068909303307521331911600331013125538956475280284721872544248052158728119441006372684641227633811494293827178057897231858314846643462016356552114137128879235854664117165561095846820914437675421245958360184108286243553028522739321195412299095350445736118337619752434671271750731110884935229211742357710911161753797010048984458736734801515992973257157593102028839870565593281911311736722071452391228791421264346447015636561823035352379241950131493524081900211611253658570832602090120665361801243951143692960588669252094106374704336516432461110089168719025676455000568945354897314154263375724242931938217111103089039414393772122154347722064133676093526767206708848441516241263573915941119539913121105229416258393062658377782127104084451722739659635434001480715706230547381041467400045693241024678037631732007955483258069854181802873791149501415112919289431316614592229191884666054065870466933926143551070176832444371482551501962731141453460345438477311948545406305577230344450143485432177900201342742456138654924925688540080290884903599002850044522630192452289175622468626005908925848908528602408609911179189855785645492592137207062816514632986320351201625647344590516237662175003423233174340366082130991596472629126582799310323510419484582843152934426547225203964022052323561821286956102232142130343429466312331206335946105531409806214117303602236206395825848344666173002443231223454063322431609593855152451607631071184820508026546345752336829019024730693482276827569001579177062514165942826383790833520424205320834400936696343641530782282113465831213374620201594583926654747082776711891137221857411582174791958953837939302406873477512762120912045412147643567343026584113210833665463554673421915541781316037670992533256062313719181501018202978440452829028821436821247295365451399132478859020980872968401031421543403116766716265755405742411911459729832846440238323381412147726510257210181412669044763279726662367551022207612530751188466440797922427740273140375054208704407405364562930599701247303422863512217573231622760298871560960183812671351971461221205517248152140586157193200373649558353117753704222233787516202538424055355474996324812406521240381214182762597357431588766303190934741003554705028685811618002915167045226404353808024257221113428793280902810826665812195066753477061313405743608844034525928981329723290746791056914219315539410280754803985298367019787313835578123076290852965745021156816232343312982141011428412199156605265817491778276289809584048423920416743688395202277159313660950537863867650269681653231325501536601285061173652023567417015302160864535319813501141974003652408163468693755255216735462096049010746534432607487003631242120101820994615655272196239222141041293023032874599701090666070482353269282691664054042704560613757558393043191324337914110524376644108722937231727210143348690544064363446574724329550466461871695524344282428464163745515715034752268060054293212613723391452543219752584801873621716788526346796217136386722049245232728106467471425777313032632010751649365018385496833391170654938515541232622724024355181272905030345313995217934615302527825105725001328142434216542728223476631225447548312305395136413712864864211422316165535161201760862311831626653711296947217817998157836460232522815491633412622906230089266362921675067954093472444923240876442444802259517421226916625392408073663632221182425662297651169146033562151267337090655221214560344617018756553805123455744450040153217723334094920743791143464873429293284868251401236831476341328217329357973574420503242566885841564699167916366161432408748331814132351573943819257223512727929042883821673514351408032130323637219231882734255736366664316254708353364208639141501621515188567853136777683230231722458565664714289861963109746548136696581325149692308981287445731276347166111042717539653991018520999558465553139643514703758518210125211415139198128234780651902546453602123551754413746700507713022285867871196619373069590935751149177914367234950336894241162557613134334883014915367159535228623091617522390728521407946423351770270486126531727020195316620681148970129313751020112464170885275575528922664222081662008010331638768165955975445223124121215146454222270205473677946129381208125040283442696878977206188202917133621544728023949914761264680008553892339123194611781703652613635514259074355805622710359558468831521173842365034301444738492240351611032605628433513651453411321152736650272123388651315732269207150399194085338766231270337813033579484151812397026626044938714202950176623568824462496193974138325593845735424884402776605204283297315407510068650273441720928391424013325642535551011640295046033284918182136187302798385469711243172029454521213046563013791145354294588388271420640112148295152295466230261863655485801897163690543334340446710378200234212047442369178049542316364632010551111531100301902187344991079325339281566251581870773172332658679095698635059287664807417508886149495133029620137855014455287820310675616627339738052597009343044479683438834262813419346824839893572354958734619838414123785326796145957662781745674504474414184442634230599855180358117400394083539352719547011814154031482644793636133167092266539118773315647944751702934685447733037261699893041317064739865126139851687884643607410110135711942168703313910621526040424014367398329879682163751486745814973696937066254017155427956218458750397642110131045341247215433179134273431630236707902162620462781839012152881708299132981815221322320958959624246026426102670428465228415571081321503896644837118335185500061080117481762808643339136391531423110773351827665345286463151243319662584951442683029587943823985943025675723449324740487508945565411321317723333851039651027371732823464241309269183611027137034314603072158407126326936611873057659669038419746470691063123869535913883895963455654811005175886610494309831423186370589235555416714293182860384676986448114645744147104349813638089108972236062118125302900515497329868652104761161300777863610513320545179057802456103442186707615123873909881339862723228126571001748334909576550141437797424642169027791758330725041114190680817480626598149234201263377629813278635252095865377776328671711636844119932395744130457801416909001780427565265097258015521522617370021861540711244694569141515454044157202811172539343902612543434176274825056005754911941580695757826423863685701175372571523156897240512442377097113506898411679780121245611211832668321225983295502230094929502604201114335299435653380698882566837312101792257934500625144302178126254856550622155534112912652829222392246498230413937721964929983037128486809421882228432705613793804635211136427885003537262531043141751715551444236311484072073429231709261602754403971516997995651102721882432013184346910397383341138022851022151208782697206196511490387699477337671429567965930338531092359585383631558788330113581572690212002021035311232442221458625587958578957264012736924389153213659554633125283419341393724435464689763505321199445690266850272394231341176873471640582618121137693042698811042549041044413713930281331865139043261689529459576023233384621383406596909305275054732020733334784873313314003115482064829134948419017294266734350791634524112590932815155057814653651716007928447858862174275583390330427509493214458963180433766327237635916161726118190394562034970390205296606205935815126123474671962007651326738476962633311353031217979525932334149999509986159481341438115599071610522718642918122008836015956634864456014277731224122732898470917482238146531610732174500074185049604998071512311117003833797623193823018758528973348549521703184134156124621116235994652457738529598116730745473125369870246491124266004619938345079247861345416153947211977465102995478681630050136596128800093010405219050638950247016711600040506722706535173262421261067511970815422218093949624585495173351268132984251401943233733601103621060143125922655477630474797144669323752939577778123875095510862734632676641157152170154766043310312972113913532423359146764440231064161383238231592142696346348373907320224712213493434778227347761930210916574121543083493411763371833683264702524217364405631314844385621718126123261527355771613767801247106752117295535624364381132394027193526179231253831465024958005013500379112061734273649447813842055478370437600923772036051722670478488394519016122328170418733595414277974905743823736410135070236540211666639113063638085525169148440635439502268616206929810352918093021323763514479152243402825723187820536261500304444723672872854639599268248015578669122063829831211611130122566033917001696811211406548460802327998528716540639368898181074346014246313293581900341821852131422887304432799333555089850626493250977278037266751751425339247444051239573402035596641800080648056443016336599083481910371339160217311551534560236923351569349390480313624114092414594539287343536901107203679097704051676799126976179952972402487177929625435613603803174119405563045173403913582695915861114110556221505610716721254573420171629230767302582151895468195441434727114476622585850876441263151517223320223126266264592113256932008390124098061622624180314146824888878613077471801135338284051317309150633432154113093886248227010330099580577176750048641411272788763512881383308426109348717160702522273824421506526981013580922702226402382235271680642450426961293459626126185112573315793216636930118595664128103585582058079429695555433801130807479961740819946116004743741832542383421468533114389113452009435481825988659930781964369127288435241007028239326377633630790692545465231186993456502207124785910270892515226113729213426514051280179994003711075833557729348044361145980659333322054879812174635800305864308446182184345292252137217311645821706209741622639486961685321247402283755051218193906121378553236075219200924158841427033973806202526999230701150153867334562753399345579774431714820289651195302239336921982368442262277764181373288473643749178126280018345263827051050762585325063416516104270675122552575246932426112753249426743729511453415111497901056871522033370002136491449979230818733934253593218524400223989213750612750326391831618131152744085736742729532990363712510426438790033044800728101925298662363381142713162526223222977216472469760239414608532984331346021284544238933833998381420111476314042283901552062068831119892116266225046207586272801907831016653042741602653237571601235332403412050413028100753424290900622085346729524831812389511038553257864060139733280443823112599401226381126794699126384570839829683681471057944699231785428124258074605360659763062496846783265872443553809304116712736459883476811935073139301292531064953221645215335022345060575500527403745020126233408892347831145106134627290441683721419325968884483722066878231436633222502141530500273092472794205851533311224228003366151617795747143907325324812540311493020777347728259195042728624870857226934258593298964963275396938971193859396981072013135304452572260836801381724087867346597615386291122232094278824067096007862114711619143724464031384962230249434997566045449714429531437074415013357074932344104505733645113194311152016198413090511947875135242560631991565785921629225116085808711918019102037522108256406348184448266741101802414726498123655620703170547989215310424921315369909645290185464517448629314900119718979530340630253371424328065116147311452325410892725348172490822720964245942475695416257606222415193823814205812519268131434472115355465914882341419675794118694560628635801633928063283632801351211350842794578927437614482126606347218108264907312004733123363006060827644250376132932162493821213733562630371509977746513892462611534152188400616045011237907508852315252714176004359201922206117235563240906173887343872115401152021569617537417363834566203930027550401325938943662712831525487674310912644111960761930533532510487432957596127315364503654652395713654040679385699958702285634675413754667540152620812175695730690116265770163954214609533281171122001829646650466460605842376869612925145419787488252653821610231329168886452124774227057634892740542829059903575244911211196835131456862346560432918062000121532522073429122627111670253140933308532213479931195104323194914756
45945579641910152881035161433986226276215053141084091521032636572386623251596135837112184446923632682342363261005622622530442821920101836261501024462627179310823424703431903618379412119921181354464568651014865641109956318945914136091331722572161698845795452191251645411830691822232314223748430060384924208799094314328137908242408423489152403126010722820272034692841192677534339257368464504974358324838640253615729506028070074267165251103227541800791062453373036206443274746010455375795129262630518055221531193744821397612106038735824161301762506825630805776553442586526088995592639525614919123023290414721952145298829647162523990194235255420006102912397908594522342013049201235629359026143464690200980886436356832022635342851033703708135315703865348865112262408374313208777623926580208452398355071556338022423626578252077916667100432981763191390322923521124515570064385061338159479002461831311154660280062144130858535841939047273637744233589473693540331954399653723377329231208524867127372169622225438909316373531252433271933031588962150862502422054114266969583141508612184633943260122054594101574369416496023220000883402633654630046268621987884685611902524138130711855231821043322755866213534984101658945072524282264404251263733799364212566067100449313308152172211362252333806551716324657027542418071552409981214852487400196168186923304769225116911510846175768801998852406831010225358081937394527961722608591171400303860334816527297943374627426898326281873237363123549745123651405514959025627902765139731285586693002902877777897605707386263771760353653104113931458953077921575809929151508491053417284567918228148459334222541811301166221220555562303484180219409835314801932331621513706204823813010740242399964554635920821343213874270150615212311115962105275478134583746441673382645192527644751413259323010927357191027312491154932559039820181443621118522102740867307754999398313417936509136440130175781196923475851044445866272112091425454454695333557094259215676432732564272814655158571654364708382671344215543181133677913551748458416459331450043495955977241746572858240149629908082561125506360556591251757658004305680440161316515714186842392621252349819072201728836054451676639360124193859593986608076139322375174348644781403230038483798523033223000025362324690323000769601517429205691478964304130481828591330510706752502140774123443521457972127801136654438642537022925258261059212422008423403354523237739167525999280957821503711431818159374154375652893503410112493605904354100290529937661335412303442637395010315763449402622697522629911814052206228094238917306653046832472092728503736249333856613407194769473339795901605089425929857241964193908203786192752111550273170747620954130504215810319166944536123710593335076160830101388344506302967466514357482370562004248621110746118735197440825553356372926521802714472211824752454427868123725798922345391392077515333450767698220214431624402255350012516458453226412384364321309895334480334121821124427131829492727121948834021514473861143208392974839564652537691277587766425539622905737456096533194695637848424177319212213811119575311765248216927849845958314564194446119676947476846233654846244514799945920335137311742152820247261702121659392794364902144674728545541712651444956228444960100710997984214808763985909311415946152024604371109116917672285151373822927045298328837552558326332672702170474491225212623130323263173470995060242280046551504472765482293120300371411881818721885829266421206492816777164815602352714416144854451726533013132935984198578473175598542113478678197562231223723266522435343161127387215519216166214686941691446175633122651330572294233231283082614066011324687271955352145647278635055674935509212023356073413545996736295705695329639125751615016014587175121274319108642835293272911225045245419615358993364611162023711196848314123997214326733229320405690413184133026897351476135770618923385043565676140515256516114955032993023243134199140322411493363371478403022056444722032027450016469439248132174917433353676631134107122852746925210522548273401551450396623264612529321621073067740373021523452287968143200224040438821150791496146645712828133574031713269371972829324211433102802762611665597157444591312102088011137343861205756330165229701823731738841884140508840434023081894620105806164542248345443422351176222705878637382689291396552881944064952671507641314733747182257725005252027100143832418454526145310948605487362199666529115141352059259637977715969216525090348019995114165974496244243510711123870543168125676843803458242640057487196635951901874126218010163558520658578041232013334283929110558352142461407150149862261009021208369124175426130459506391420038731264443666838334258214250017641139168129229290754713848210810064339171568146309231427918585913135722834434064392242038614420508828840086458947474221185146594097325009273412911239216932032295766834084225770240334527564644262544364402092238021234101510326218799303161530892511499383455001412959333669174021216823575455182503915730841634933317215495371360033542038554345914692146818626151926093726330655383077234875821368009241800962230971030139167952145010571874913381293571587823470075361277128037150051004800190930861508937470934658949340125264226057742327563932550005530856384528349001321016541956182760708335466312130434298726996867270471812605085837543166711451543420217213819222029150817372553949581422803125672502864926666915121399286043503454433878791834126514556009045563022836730893522642578850178011514577866721823263069656439715717224359265762201425492161334115966798226557314842280538414474605715152248121950329203546318516263566422439477372624149075931193344451607201101531222460534275417261201764410097691165810511813493018235137621260264005017731859716264321566855796534357345519155616593350901848168589597752991511843955668300954842150123634072639554601225567555638279502709511218549929300230263412795645552582024335292145637257705644091735920232973473501615975474866625863155013217528630543461202992847704323982434927445364886135160486080898272497794105254724204051051751009975184115357702030065127971989181745421413805563711437663221311199416216201203193237585996867092221331398516553214732813654121176112241484060718136020198788467698794250595677384603641829475865135726422911497348437951995791540463255953357334774167053233785048672760450307807581117725152182984999513785503163068621487386282799495194329630433463602593946282001588031117020800431336711672968202335810478392782917221862566743334031382240552284711350112831852262648007629811194820634520079029694385471096382743401463661595627681712371514272057720552917913623536762314170777097129427200053759882821983102032553433150017349521239421092136284392897092634136613737676861786902164758600531685409164356553247850269887615011153693139237021652457110438520437925814315561338037227392302404409716323761595834007804142846882932417212783241846048225871738163410801339371252638461313526514744962717364366125119234121182544743747485574574614018159933321030270032596062651231825423830274256763135339576391003444904956283466267338191239042061859805190621400336317547372299268601731733697694178232253333482656888893437922825575466002033537031460110760874618854225003673725527500359574623338542774297213059422204553006090731776462046568121842832671282742903051328594708450752338684221611504417632267739766708312546625242402950489224732501213735444147381227862130355387596612525785374674803573558882221064712097962121233839609761720182042977950052115956710713653553155974175923915010616086545049000222315744526931341178572754919313834439336966160625757414505115176344112142982451089746361563969154518213723375376823774418286143511999823911394325790837741375069803226641720957102553244211818417486242499226212375698059780152889281767335804183165301323692077961624130719156186231445917706186823591186877391862611610349622005158544322904001277959749890281294310263377653211467226334327654411245168682912166041816338278143034305942022011336308694444505651519467323422946201979232254812843461843060246497720733030453690646424598323868220903835305320945621097274731876882048834008080161718493155427626826287647737005773596152560802289439556942016060693528795491305050218008047833731395269416312290242355889995663595646902153741296944896462848546925301227680493058309376376632248690230450068719401301416102486229078213367762160235833329778335552989985208736427230178731715122257844238189271624531266188221420733206552622041045244647173057866321821183296252247122233914903387422325751203592912536730512232714580876230075691662956559295341192236044124160328624488365881677693534432803548209851953027133277258135099132338671332987647405964705285216321841259799475221027273211531231348507450353813338217023535463244041254767201180403322346347784973301743966991958055664462043801769268073813462028193532379211811733270414683797756159704148571880789036762283519562116643254300866931233697343262291606357132835164468065403144106908314321486507528818303226124883027131099607621238543733627513642613570775141041151992582242878694363650148020475205616441001176924927633655202620364240531342718726611335637343297132934148055832921146792693776017590841402077808811502822608640127348736514345402195225570558591706399221042206935602431242101356356602856262728530743820039348342296508141188952528092775211552741691204924373933127531607205613824424869244224263127697720259395337514472402041746416860654206184702138322160013457119313437723125067942987500614028370150130884026986068236286231726728379749239136002511213454714631532605594295174577931032026041560118038101264177732042443195640200887238006930332594778161352833543918445913492762403856222021764668512815457491020726877284512293978001275151003831436382629754228047281902122133088292212088143453261642205855752414664170034275967127820954328360543457907624125163975258716351877481552642596462820152032460112347913682120062639148961779196014137315221446712602246263033193904135248632650496153328753925136990013351443636103454900613942221303911823981817213408752608071151166239529514811552577447770093579813201406970041609055666148226720667130949358148583618553660443635348728294316975989642376313491724764239735562992500098180799162349190044214324165236135847712063210578545909727256192974334221141085851423420813387766861723467013037023894904524704924103675371172512504340923284160257333836381300991107088253061168815565539386339137032668088571158701055448394501223514171128328212818564432227329715064297996575262311771280172252877501952458273221811030232063676077167549361632322525689419054127191390322069495418443342966083651337613544323631403113689269043863323066002122616660325949660067740574750193750074023348634577594285000514081535775253033598979112814827392494900490613563221918224414686475531753364873469017567846058210121473019115567252215175316359300146689602177652447000643435251862576027268329773996378819913080600245627914537933237204045927026674453424042608166721765502662730621294065656578260933416330227181570581930026128122129366516397971880780367844483809738282032612522129024876628969433158121742021594441391722240076915929692071467665492525335075398293820043765145716375059488201649915317541111184345372111244130311350945596556768298612429676630547123519332227166919823892096121641449630282041056034754212222051175967285303885636292624067852727008249951741163659384260239161267621166093232372075516351185862070857952611332439900355650139316283953883282260674611499389766352185662557132175190124132460371488581707152565408339650442500544657195828391076054674991317676371497202714403736880524723332635295381355251113093701181121356739492179926505343112631372246412166611571449153586294542104533928227533101372121487914251600325373136369237391912278313324234801708046432323315297172964009045326514532523253915467062203743974529188450172590611687103952371517606344633399256690629637247097817079102444154541243337453631350412218515080752812334511205091326109932064944343236212037257887561252029342346724299607226232313231604241788124059784422253432297322312551022497361347052458345764522841623538015323801183161970689083218796221306113268125112431071553989331187344893094220182220825622528469432624322653563047031732115166753523933890321817267156532814384925557492389355621912749153760253234656642608327990273503676875168133895769610092461368751022431994123191203554397640476191935152063744942534643062700738264287516121482184354510363383431734765938353053549931080580180211575245026608316823773150383613068425018654586314740304216523720174554253149101142639221906517839513422703429321328242127496024491068535021285193013092407358033452922834572685707025868381346574760367301255062415680530429890275142356334252416277012123817023025955972226804550098561424810340744606011051308143783615858041306214062991904828373113940852182102557082549157102298428860211251863897930526613155474025431370440976527601127735927142091872175919458219344358193613411452138790426458548127821983151359105750938705019156151673908490483116082628663333123802387425574945641611137251002305149813719129855725563585004772411518361201311165159872438816478329024834498651011466383258214529661815170626319438827490123565081852121536226729729921525479001240320689746031438158456566826969218822033089521243924821500338285080253621281261196756230034719509409543755515351772188901353075664424434285456416563981758070235421456193175368404417268871748433318190187447571340961562365587162606424360276941762055005913350233351296128373491495597917237801296598281905853204763350298221586414221386066647727885041918021934400138112717315825281629643218857692915001626228126552575824628641826652561797308243245867886333686977778372401323103833267693632047172954203146149294230410815306356711520070060071914043542112127493922770625919697086849139461551715551500020349981816349088212514964322251759641891035340900933006490272836310620494684770960050152412332181691040211369734519344115231033115064900158004061974321052019619723845540367292450233849255154077921938114992514444154193464337918490139039668322835756414558923719977681565157340774244375884875674279425318420983617643628137316226451960401237227925109313860919440136614834886480351163294600227225185323321922575194032535824921228161823753310068192849609484807574051150421088920031632687537423945451823032846043806111988849404145614329086484527034186401381728543266897065460197341451324019552105233246273765342752323506262358464287222830373391434477123327369873493408704152104233080101809721362758321425142881100206329486724590734072243618930201781681252272628407946615461528178462059537181677926666323362271753713994426562942538221111706076424550362954143131147054401722332541144129108199615221265535303001033769651379942321216774175845115354438671456441765662992448147296156304714913175213491995412411553147282726712344893131785239507732745804051141443894311264933664992642172335088434153054307475920163313714432984396717071178680530341272745141255052011731551516631110195263138338188231411676937347315145025947253268402426468948234340451148275111049353017172579366383620458930904096359077373334070305531781713235004148215096207262668427525599175267484619728010086153217284115613002170706807377014341484462211193631392425405634680123672542346383107071553635352001151726445975830192441461986653562734161651515022434193801636169685937323954625132306224455276922604721712516488874155237424112088588984353342223726577876271437810782439582697179665352961812548230274187348311016556320066087112254913005624331988864722866692352549237424051896126924320192817878109161927356650121852467521201587623311583920365952700414775084056614110886232267750260245894994188873518003431198036818102994521331530461532365649453127781459325442855672800659288740387312747165640070783848932287032231169296275532901617126243882597672809289368317311235644793629476319414745373813625157016468203690278534222620751213273541488368086492419306945240992881391460953317360706681611451641137488909653554062296321338337612443156441970363283111663442257901683394601584295230460262219219255167216764161005282536725319647134031119713159067626061641342059453027527072017582855725245625354231919517411898431924328378986351021218319719582783434389246244962206052989277538148634262530180334663419279868443004682329950486252226522580864871290291088914702430009352967221431161716222251941785243520205441024683913986231956113205011140388732272119707635246331134621350390999721285816388474969437731776318322815342570686613423133161558355395112854322142710557374302035735524959861318433367637556022561924768403983947413194893020692637051213596312024522736404430682148311881804243015803628677964865537482429380934633668307960602611164539923604133052260712520244112386511795017073781658191362135424415961436662827165217204994574235328676691843514522676611273332167724902600227696369759947485697617507292827002307068111773702002403003626040162215162586197341230299933433446695040163672628784045258561121688584167722980219436146926157040304156453561520003565260544393913202225484300610336720382162680514101188392507385243278474903226917729240595119751371215818593374637575502216816738568497689276622261066374701568825307109749431316509451732078611129469353518441466900817268696943433021596736840212354542181845059503420721621898772633435452147635114758612113804538792683650617883820515309209274469113577761118243811132241010310191861134133293458671698985123818914584554687750749482832231220415606360724279818684442355332275156763114154312887641666294283544533318313339456915406977153511635040487385415312542406330128186289425011284113195049085598417136045236106763158534751343891324715166902917567128516476568219221238711164740070668356249732381713921742719119143060518754806828121170716272741929443764055891690978907181007871443420415703313079771763006352346010140653301231691674051148067163643733155678676446165058106491172525476226993415286974111167833109889076246328386833751015071339811774564184454330008147255764616649375736232864164096014011073117215043589184646723042335101438423207201966498815925718541271116125648045934460084540759431480620503615796217596821249428811110211463364060220681551644910751599251337410476915161237214760423564480639432098804321647305381866421036481214122548681117325925095294260950845926343616393535458271238439783318072863777031240006720608181185999182998255022075952802157224132274586659541710269512310218917806222212560164719416801337081082983469256674185584033539044193100421554814624525206651155723313248528027446043198534653063249904516544542761894199415124507632230199961094903021322328181636560527611447873068356067276151090392863279071873291251287328143451296901286032364179039565570286742363223073363339637362701003713635751014424965378361674655342722882454910367745532137734517031806708200164117216962683379842659735460490662535925354978255753225476245474393607188924811243745400197638127999308250636492362281543365164397036752340243867621151091916669234462011802301841232373921498435063877025852330420486839132310356655233201542377126450540402520444120331087487051107726467622871244941678804918220012857731476233351240582939536421218246464712032163490430769723205765241628643203580155949432981510628158438105363404493241425610886377666818372380139813120585192561642184585535354437518347079717374798137819781968287642359162603001731339343806623326631731093925206421002671022129359589103396555516364155915746756171094677125147612617601439635571485382631257551198180274586112477121877972534019665290031325152973023134677502224175311585758333705886710862251325654015549430406217802856570873562645363316083562931536107871571075959667717635802603336336471484331262711437172250532569359650020669482176365256257637358279286641490821234302135043244125048543455529215920412421529131302367414230971470191795165453737753026108092110614611449624263602393148855800333418499161942170277067514035119254764920534126173575976557081212587356788569464315666961785368234432248073470012882808124332154380383610711486423076807922048885261127366932919523151451693000095244112214218406236812511301311221214692663633018487747202330890603143567394911093403154155646376313263555512849425268086451700413531139357731126598519424621452352425223003916007694274320079237230398493255451153429047371560317693583047304464076112697149932272539644333850537034471412434151293352411878028334215249062106731743143946106404278913827452850491373410630388700438460383485156852021483704938019004383213313526828794818880647423070960322465013547196292125216888445331210247928428338737401709302164567266165838280210357262614394314507429325106743247954905051012365040040313103372383823552579253452134624274858486646471959438964172001636587288791704455547580375412473971570445300728893180082479831142621135225880883162321861624151543207365393572321430241100077717765652665216659196129208407506218224216204641966476516661385926042390410297383823878430194472212904163840673413450823410844350066826931775988221852386541890046844962651128067377191912886059526148363958355923853814650336456215893967312654745961142912964170714423321696508125522237810526831856302435942204098937242925241744330705655608500572120881004685122240643613416544148712046523145832310913930030404865921385951839662386262631962854289788141182057071852637161953043778171492924052607829917167139912645314533022424713451795915119335186105728059140733882370576050431033916238602486316839485486468471609272927722441501418071541729205797042532723516010367213201345470152016037723669782253264214573984224803388411240325742829603857426581517498154832241841849762125955804513153714570299951463001208600756086174478040017014084633417225446547269148306785375724401167232488532595515313131567348970132369512376202010410173648257478498814780394186801466029565736185429206853771263742605160216732758132828600363588094570744393689088111853928493127329563559410731100817792695777124077113712047711505279383848602541775047500113731339474879143590015762863225962749441973874603243038832084339341215897956657931081256006779315344185976413593073618215347245349713131415644520222538213838369399358303632245538066260744567258962040069066183662429847048517137173146465814034336507868907024818587274864911922754673657727899291014793518484523839200224629479497724223216328151333333435607481261398401742569276230715276476020081230181632435642321836503476936324854913554517961023237295852141073791160658755913240094227040169134721410813152503251402150635600524210343015211041199014232623107371470622451125504856179169156315901163919268193974157530129052171732820714829133197441736457134341642547408657161082549338335105248121114506203087764462893071830620452635034321646229099951644977739955409288855426898185269629168217705869433725941472955018602088804487808008933348909172352483474379053911397543935746233445511412053302366485503322693279518181389206154281112822145304607172717154505116204626364456848217409260811332581052733261632207657528517377323927997125649791726779561101288541008548897927131065934282339831015622908730265222591522203589890014792898026504992413292028814054432166020606332357495366614426273313155734323953328240041269414372417036191250640967612829062517182583959494114831962064040493836484826084577841964186893755203144148225602410954550653030024306413282183242747037971046411466343967111021208453578555553143171828470190822958164671221725707630276548689717822337017832558412209291290767890415442574426093357224572622554282280324094059725028223216522423864621572304934334955378417132017842231540529333448752415482408961003125457724550403362602621672012114004487559524481675091198231903253863326234899713890545624155005224245215742168658651321390854170463395693118329872713217363648317126546032133138240373522247269374937040540806491032402993062814565824513623541190209718935919699214093173281572293621700691192625880419192943306757972771304633360114311348166333652428744130071522966142346618827897116929943935238628122215418021022109428702586454331603624948230423687495724025702335331701190681753734998069233328744893034879580513326717442239414952213715417046516911026002373282885407718490915759014463334318312284720715821947775930061141385397103726344033578117141411018304623030170234323019755224137623123754537605117015497501727326403752304134330791354746123390004486492216492032973763005232323526521253962729710752673112477664422811444839012521349294283761030163211964798124266950913224008965274143281574086863867762833046361035185762630118820899530260572264293306358179147131689178172155944251711916750848923044772920731323411916517348268291017438133252381068509717842711611391718414649627814534157073680603600126025213392524515640343112887005473148265717922732630711854318395327467094362044589524316033424202109094327149655999653042634036052989162598845432433415111156272357461667537845999414272342395270850028563263610118904403721721324234359334589176172876139041216917087042649062066435921672486931970245924677816100355165746955317945117866868586703012153851456559216234101284211331361253080054036326277971407011139983087082143542881307045997661421367845525981496673515123138276826113521417381554125242426244114457421608320943393642415509331864935378321291104295533736225921283142644855478454691152352292094612475384202630586717011612551420613274215628914254736453911823678275913088071244851090144031305715212291392230659460443583585017824958030356671643041225445777117307465142562105403908383038771197193660694252116575262845724607282768402491341532723890804833049286991349915554311131666533210544582608719330563392300202279128070244349548863150454894270901144753336835287901484544440537131414501935548721557735408793512334469123366471202417126900022064944166428426665179318241578340655470673142079652062680817002487918618263289381563261256276448298688477366426329366456741834320475682520987721776056602635852538534425606480939317201516950228041712749564631555422236179821642321640441029602745910836020244643948357625851036514609240699236995751752642042901524001831549764001468447175502875526892433933917251184852917938835885147456105704611510434515773934412032441470677050824589511115154564231510569470133554715785669361796566254457321022479505068682238979931824444268763821502258245924992605565394785154579659285754802360120550577208766133342777521282686651200105988400102114729496227462465950673284018241652508215285254102309200617545446861112184399098371285128328381826283111767662555046271681174322241086229914012834212101811265499768745038072863595598486352158842500014818042112017450214462012584688759981415871138668141443912739100523356047504858990861439415394509706963864345531377532359709169763930111173482418511223520563736554189267363622632909652784763724815748111626176243919745125810167125802084150420467039147224800923371295125773004213408456540063277654723295205872114576180324624534785132195156057195511420784169480913006925863004171443702431222368054851017238306379185556448389622480707623384203115213727778131614840990143551915844535866864204325020418888274085623358152385126984567722483979448136904736285812049644476721951530658345553676620496074369226105241426426404755550313357512124019237637551093926540777737361839316116101447106216612329721913137931269725189763186127955268153517954664656539872784668240988648147471132227782801914317554736016126301248912240398457015911052290736065538678772751724022450710594127575031319919626423543285726111830750734945744137866778465865180182833431563793012048320513340492032843115444325687127085399150694514731448534342373128516101141343593307030141425443224450485350975669160023596495241820516224790516450731411170942603324463038719444933617154120145242791329905721364653152541427255264400332278468732686575285057142264991702621258416422211390489601519356241331452218584516444417733504664349174354659637975392033493572453504678194852188507874422297841386497914303164803322403916460937913896824111319789519332564914152116873761197618359431924449552875005438565482117451603302925522716714822663412850152024457416565334148425232476869901648382742895154277453405072429332361953425607267798311663265847400976299137177341590418024776564313681816127507547048169332411931037696314289347577534411132399803771523111696351212635482298595860721718017169040663595227721012231472518707602630109319628619744622933018507996311222909420508096284844604424626091261673352331919102031447017774563335874346447461911140442927400441400257220359413613524404338005729625291612886468580631008238400514623448691020870994727131525137245547979304484259152403140174973767121125116229109321717815542738947241481231319279244521251822292097814240300363700446272322528406153643700852259078324458284777882048891948133140466648684130680825341410049389243721846340239577242636661162445495673718217230354212321177246685780401640124481105623303926054135632693891763423644719724472321525146325172282225311128270504221250297946794269318104691233136194517443394531446718647169016725606831104615422043320464493196910361232564134996748712045338215521283990643189917485314362417973174862328936965117011732420209426171931024785911286942646614067145661576094247842613889731858230617441228375820941217256484222826942728134271702751598437549513721583784488064042448757067432806858765073892214411130538958601111874183957872391422179675335702073085576719823164062437359609254898124612738493524816820608869487028138221260829845841830026715322113276445764448888187723661165592787299831747693373807134699922295923270169031956006520396103157265108256940922699508505820917478325629625326219559342414223375499734842023126541738411957416237942498344706922362826676764333507960544441121616021501448178650194773412940361580101868756063468642038051523043492352592413121114437582147324664921563254367336751479701522231726293491893013930255323354346847144132542879343333166510721113962414471603980122470318962944547063176140094986662245721802865516672630527600435651108393858227228790334364729372305642342129831678585560424780294481372913673373673442644276883401665617320246705710822489694804036138721638865807434117013258921380155484945569138121572032551963463050151285192039102992961293852614150223634313473032114644639420766844471307100903161227718527013583418874360881639679321582300133333772830437900732934339518704203170933869710231612412981154460477343830627095663033063335305115422764245174542745724926282988632132515682112362814232129630713777588794329640463694047249498120434911235675237691854193232874320555762125605343951314763581119703673188541125082243273468223688214901054634456617221362259591118812287450312443155512233113668082813092163392234527481383861342620431700418792201005922931102272057166314698524142342755341632243114337953617084821868167610850597033468479842513701591797141941632634567462350652902134419920200113154200827130334406312418847264617066460628473086048110334526871953132342712437105663003542278106529837020712835748521657102040071993184632706762424372404524121592795305668489328311132962727410773362366843132541306220065626418751726332511020930572161166213742506212521944157054248979315943307737113800327645541017442137010167571733443613933290726731115903532305091025168193402926429465207796513207964956734497440132077177655834140231873940671459437354452721193714783438476280137878442890111383857684192153718133594134223146467594463720341074588133239752128519930848105233271698794138024289423351491233603847518334314034040040283848331150402230187575879415917005896726332241595295125415010270411506909005498774911038331560117136991485860255791176059240017099447152043111522938420874889739779622485660463881032752299108463383492189674823260313388537585293357822673148043614144748708896628423257486213675522167052003902820095458416450371525830751343406737668204313155192251142005657242723985216232255890598432915978223333449532715946821073101962500754454411395421523711982550246491901643782152830223336013519697502555393033439024972015468359314523065431501153329191268676633101279191112583851616595219326825972802250138908186103919421425819308760411967027676357537240233313844151655664822798894320664284343301700213456853320513635774036535124223814922329097016358294336672074896534598270434812777112287270430099503370719372411174818819539531747351400603683133514400701553346721589429096214455269592118921124223188172850756470462256768103043392140006339036693541813725221403620262722106744404367700527653851249623906957242503944926304817312933151325391041831431832641701381138984530420851796947101336879138859144683099841483474391031032051254143236618521767179353288552118431726411812231500946112386641288124452162645962136314085416204284212287242083501502585045211300113549388621420235304026023182616291416210246916881782461988332241524676175413185115059610636404012443996294147310210148230472416964313803185134052228581766610296803321001644053580453884797905285134169964695964637860917471890146751644226971441468694657806603961445953935958398260260328453324569223845956544639032718140168154826536352334110812053228031017628323004346250925897063310284083020155261978553102610212681876543914732356529969346760641754626413147446304771211443444499534551310006863366193220671222787593116054574706225316731337680347230004516142815459153316865024248466646135612707009383720111423524030784169401044163925719154655500495571525373756267044411215940075733649192311972199709784111635559592261646438632312972773432722119969643771835755889042609571054689222970661744112928332331935205279407685873158213442210600177330095787112126116081613706367112522234588934433343312472329333152005428280118311131093432392810835694872724752122310890557467958918433319921231183228616427001666811469090160284521122285015440903115485340729837121303183083086186770934829102029282620320042721821272441200172497672660041047825852193755178139068431233302347616403991600401595135955333352870609060699454321422762152292308914126356368758506265503854712401087686653722393448430022125121451265648523163526313442125635251497688636122138781446778422331022761336411227255394971622326214501703105077531948921922681314670087116602821414621990125002338011050038419102640693788061475622546233366050859082507047854284063742313042934268463700946616915356528319375876203765374630557110323321274604267092602335875778345858503972232349604158611462323921573562089170555532117531366892255313298540323522950003178244210328249323512344215028121479618129266199925584906434707523885102422797696805795296502748925787845622706057194300792067711703144107804334125232013102538917928577351124866246440690025672339541942375905194834613641252304145621029312735351861306561909654544759519901613500632900105572337174162953833285427364689218231169870561256652065990773761323505807188383538425134772501584349361513231578459659994698856899701720560902302828309246666658193352253483115003282405054586446277580645314801732653835217387145501716399703690130849176612673702591714600304255947693911576115170791953298111503171558257268638046446123908668261986102596312708071516070086205067798197626322117611917211819328440184901981412126511518251077527655521492320566341274058625078251021417317348941602154156368416127582078362806196111956419659133127366213906922369465884315774867267234202045016340964921956003596731022066438773439765094547630543111308242726607277164564187041162160702662867375947317460431084921110731534111515451313666754277495813561318164359812822146417260961861365162870025098495125540394227501024442774635813517589678505077614210541417044382996640534685776764395824930721230410623012104337090746744100325928501319204017342318145353022764555449054351422791483556552900185696876880353870919718282337281965768282502209531121273842718299672496551703431272074739755499087248043642478532241301488361593029020471068211536015341291448513299849751248511245217543488141804107156313561213455648962719715521003220306032962571930533380412081817678293220241356087231833626123819837250311510395128938020052816603304742237731475379019393268606320538566012355363381063111916424138337735065194687123869214885039651719030297978834720124406233528396008323576314186654216363180693210504915481334140000819304735408348708151910601624435183509028311494993579908056035913512676357743493351812663480278472541356233171914077340256239338807752864135192010065113485322040210083445341486388438564155538554911267121710622322099329293272548127369151426578313042309171947532508108526161556406644859384255234600338008655061238113664243671627024391115614674418754101132779156541903056038915734631895263663357480841361263796610894994678357420022627041661324199403400724703182165154164735226185624063218360533831741061100854012106307890015509220158420130248585015954176148222407831427422319413743104873171294345724237019651541091753341231576923922908669225371891224441035611083640732816624227393337055398591004273392113614526154123485195490873691853111147180166009664814192084764342632091247808014493743976486627542655617043022376104361939492981134553053493458051723301445548405435347513512836180602013195742573690765267021443779009500742802659932933830763954156323594151085619111173190222911550417862073945891025860450293378601047226314114576766022187420573442108122944666439017122501113964596842702908215913253265726231412216739239151390413685503848510591989173735034940931620090555548292736601645353935218917681136868605776494155840689248455183476664710233131110358980612293152443251018737555711211075047424548653274563985527243828130934316906409148882257524015771807764044611412692548512641695653465722293841268721647230590265221256377024083554077309484412212944780473552922068084308929188244562267524375453610525734112429535132895395822352957024393510114099549144575572346006172226138283013468500382996576514035896005337121119479643242404357022141899696429231445410136755417923533115127249193887349438408530337785048115063263264532480921988873000824213149823290809247107397471431705452408331949528934018350115198731436884164269041414110723806535914339232969803047838213885174290421173058113578700488904110012315378477202693263477913629978716855452428942531119595378690096551595753361395548172926354584232992730011811652201923723379081108900215586031704203068176286584421792177127548850632891515510282997977686631114323333689321826572121310396307326168621708099387461937693298695263751222597214824580219977199739849411364651119548141128342188050689922366639154617009421252918353834204302846906447462065092430102851253528923115284328323353746136260168156135312322083259639758392502285495524348582655314158911556817305108003783545327321023866562119705014889981328476779173210225648237626768451662662363222305240051341455869971245223162490072404040542227526674717444601052363249160903993810683444076862313174584806561771229728447724325343466022928994834664395522538488264481380065531193330778171228196682984645001026003682249413487620368171087256949367206143836435436204292442861452222683817429883540649604292155713546343254678816926551391669096441449272532496336540939047956561266840101516703908121374468059359123108325512166500120924541814681272615457212276198148997710245001108352459041973211551949641319951444024123301032144728309296858653175347712782773026859006783748063215059030824249351170699076822199181810420792602225084092865626539103577981945113175975160703151261702013889753123273471793558384986286229248588591972628100372828921659728206023377191582456582353095603010155302369595113683181180711518389320730498922879202113263569617416013490136955654783806251455538290000978722192358431602521738587668244226804427528902461474848160857683719536362169081787074457714274519429774274414584715662030428444134228755517135364529648172135585044311672654553375835231321283226634301640504117755734366666553624104128195324014834383064402038661597255964263291060105521411015060077150817925489409116361558716881462688625391013357452204525737293254011400806517442750805283531333419368381202652800621278407420810238371215426541334186987529590621326375605257223400737343453773430785883135040010360310160416322610961277164832486569660145107049376647212372928703224615053097423303244777021541975222721247456601047262262716172572542420063137217692636091568023352084598757328867551837044622824923364823531927009241344369615352286576344119412975051429029023721326950869341003759342013627912954514946112150741745226297955152941736186944561453076801181075722857480561729022422903639424854098821945510208242425593861143301382499922896247685669200675104812457047300725330761454721429647712232388938711543695149551649282727844453668172100279618187259335114830332202508410354243310218460001003816423481119205991849367204530175667234746207449451562119725324187743670056182424840795118893744473541434752495911452947366547226193162736903410624739278943520653732491483967464113503217127108382209237211877495300425240650678859341248195540787936539554491537070108511602205205654522828882434453376124643521448836411168842591134850846265516136471294215009530905941325335472788683979721100623266306134533365384882140437596374472360469231160912756210633427507352912716140424136868463540011777059701538323645231192202406431867144474751429535767815928183461142213694312246091154981031933077072372174394460197517741294463165465115095127185504364934317127196674119174651524334125734082801342462831316952144815074872101468032787091116210700045157318231001613512049802507224417269059722646939870210978574541137531766404576890394698188028458515485846821243079234062959921312235925306293425016423807553841946811352437555279907596293898239814093722967469334031100049721601635135874458856847311914114125312438743426760426931643542311078814737541316808311753754723103015934456312019212494114798184010615861563130084252957324063276957702041698651052691425821965402958261744856182970151838050786971134945642358521891501487497789822453794726025861641386459881764083049588620199530510394690805228416694610063242732151532794520411104933444217636313291210580230407444981738258444424714452050551595449542761165225470328372123267914764152044046651532273514544007240061845956046938137024101014281213704853390012395834184329313103244110899457260331489704710835037524229029373122796108523902018125248353401042616735350901203864031219915421211031819332579389436703077864957049765138643552872193883282417333426331865256274541512095413260318205017212597223424325114951733700657993985341535669226402516344012692249356026817993129831517926615450933261992295542012244587281892830518187796433553705251251293458438913810070863856500470220403407921940715938849630357862652706560354880411095345550328914419225438413140383233101348730151413276281260287746184870479663820715855067901570231943211745249185464085910701630584842323481754779372457233123436996107793988225807636946184515970075183327621033977005020526311703138795210614976606185542234527077808631416268321205439078461525484103338910662287551905177482873795333913135555751162242256825099493309351715915199011822254424799245749199250200612384455712113178615607741518148925247022462999890937014119436111892459341043383116950120220733345196185189172522377400306139247094887331861435582745709886485138144081156807714017576498511584245021251267813991788657157161759116223468805034197715113844004128437947299934509340599235315678890961102648351715027450377296453140239244335342060229565729230521212142268765555931322805988865173348475379176259166149233154662824325433403642686662548094917508402057047125196636721247220287190443669304555949766705253142392997728106791633847115578541842213635712488616420302043370242806403673956286124956411082432463335221157361435429674047540248255542783921915127425504095957948240114200149327287184371332852373335559442449440212563842158431011378274521911663440288068924865737871051907930575122125061019125035148031561993154713222344381014233055782311453405489940216908514048346501241361257317324619092327929687817722211127379791542711230187917606817721562563663343041475503273012316540430692454576593810273048298822267347364352594020154758452656758811415098179564740234347138378151227644424179014655960641123812889764173294508310336504203711271852929841440724018106146226473416414105410299128769270178273216271013029623102225909601939563111586320258256730622246246732063657329389812074337842955553348855213191563539311550620135365422790600905349216579223695855124315393069246554137110032210648667454548575826622880007100612463651302825080872534654182632856283533561758821182644135261984239076643273319945242143393148498911311264813383499410189127355053478274364910333151636837456617480210240910635873583874141635451415794119403419144425711307603290710390055771127516477038720346741318199632652903150318637645644538145493625684703844120712281726104154957516782022227011617116917918863188641762082561983098227961625756114854854137105772310616614350362696496531174618388632455135158124620623844028734262504223188671969209164105169333441523474177260417260833132131153637736191122336666663272619324478415537281814245103236330171385359553921535704906909526631145030849537412514414443657355485836616091579599834550802271112353084422877067225290341033124172899011961315513937080317081590263654444790644002840366286134000915645273054084839330219657612251122419121685236145089295025174026734836831672754240932960937451658475311152206543791359512044757633546624844031643475633246218255217136541856141118576542981277531891050303836353123848509625874894792421905650668857999345769830115957292127541811072678721930023631283530927616170680071973592721811822521878529995852705069502548058294632409034733102326156021752143096324134265928672137895236112026970234707649924748214242450667988222216633466222851122415606174741021330224814097297474297125383915673393238261781109017442626695161341794918867281674627525172086601645743019702945244001870664486413062064350951922256522746703732423848100335533767444332041871754808304394642441205834034433101586321221631662856366324135479647730931394580749269040486514515125340669542243266257293663125652620518411983445347242351158443682306886121706120239102872338147584555012192396291236845843550959808542708602845163314491113312723939915299211112142464134892966945621252962118937109791208494914213107171187201032516494238674652652394531333404091319326387363192327373345677538454476406354851308526803155454339110777528299995472268441728300016225136450458212020904801630961826961864855163846565630073927106199482143146003235443110083110519084029419317427665196182592139937765714533988456086960220416927138433140830344390885648752345630436424630712638655254425099565362299784362276752251527403822683413482030754840654592582721899474316447830629057518382437844593866415176412384699222334614398832813303180498832227771786462111291421615216347402194575180125120340306145512298193076360364907269132804132534416736172451294151445601933078614662916229934733102761970243227796295463563564218201421317683463193362982245418271816616431681430252032787833071321330626057087939164183958621751020127035861313170969261367522109199271447490831637300210083415430647844275515381889118021362328415824246144835279413532366942416841583170203441553274530884450244094347471814980793147102161101114258114540078112829175971630321355774312802849123249519484693225322035391351402862031286949233003334952503657618651094222130490628214244774852102037505221143250051578316679473208733408708184964273838548539985327441432161763650654576510360252340251448421489112425662460588155820352665462587217401720273131902013541076522977136931313468527448321139502563626154376029613114551560415884912245009052363372376633996589345317398231539530498374091681185052467486614961280141167049393423510666054749249251115712006031870619234686021744575051059466001225238615020462010316424157425683331533510656710006355992512114352806374563110016293215669301231560912756591260210004835306203017846094868904066129145365845790258511515417353257162824193416337419814818198511327573632182401123910258239255454045019706142747815456525324974213362903748901011070586833213190315292597491497804439253663105770371536641596316433596840053121531752955269052977705021142013673238531242822057361139361725608261050066333758434431075012203594622244281881415847207634186171804780408489454902609559285901223374301833334540612755421451226331612964660313914594572153524059330300687460899553137731954121190426661412067247059757571824078678421064251824189410111821957345606623932354311343701811322962328944470384026652126806545525749305960507100513358810509413361769207933531018352041628601692686622175447329714832152119936478680747669345578914921256126990752940028330372072959165390463028957526232032351024262263142829381159389302364513410196995386891665624295261921589916420543359833134069244569838508098124224711096733601330921824682599417295771259403122911404288434778072049902927144008660723371741023824343176822012435506868502259598080437123211152946614860519810811621183397512377984512232311040723189327312295322276168457318435511562690760903694649188044605132390928109278564827262922674138490030306284811254231372841019912406522592451725699568482228243202439574923002317444382816642501223871821685113128461582815255022741954616283382486954661631512468121560277836533852342506082081344905951765381372201234022562313091988091272612249090292677391993725427853516815725775386111413116012939766997853422120681358362294968370141615714460276132510315135993853595714744668161116848022570944527743392287115242264030775410918079474702737453459032110213276077860569344631471134151874571075491043696343843473011428443187210223346830104222832765237272905168235058042872076366234456258294697791408231636826425193312915185487086501499741781414697945113119032919442483185733220436807531711574766750574351129644326335787364241911113615819917838125308177941924181194668527588705194853888161952075228349128232683016113350223964036596832821833928401712413838249635282116827019406093546185675085413877071095832612675641214247114232101628731645802398422706542912611381252745131321160441060749423242813409646862024582405301543116013630634565191671253716086352393936583371775315231457549695126157777603413302209786122899473526316073606724540120405343554242174219638108270160815744087678114061135322775252319544564832036202364201450354158881249023183841474218431425374816771829151332366083607642088544341155153754631403126725199415599227943027011724072511472393091473464717627289374565382070396087593040895157639328516665442361044831818515499716128925128656554701772009733115772753611268482023566514416854308673747028885733033866016098408135971433241735313773974726220453307637421713436452661725785154176300678412933771648908547045575443483763089639116643014742093498533255163700264997240296927216415053821494003510537026143005137546115164514237331852914662763203263013323868522590115550163752137476451893254229773643008031533820344448738627051342467835150573695392550635750234276166786510933656081091474081393844491715552655342372839256245411625526090383749573536241749674126659373692469018947807148200231216918657970024424120932623290318309126707419982749039924976116505844443030465344062708237338626355236640671457944877492238215590741458556465135719416730388905481989284247206216125524166287437350431343141185645714382214224034162203372021877141658709916951311227202663974971626712650214641875381119232432206726328102815134197253131643731472026030438937162693769013502389468617460391601871261268916323454114125291476972104196206449204894118747333422523474004263924813237546815405802339911622397203952744659495147889226095640466589894613716524971895986834627012161571080141425201332305022940770895340373469818750861814181127565501204405342621631779311211844625126024212148622404428996013714210410281722941796419223980507856960263981012151108136005024202337109170236864871435824133762746360163233826170231153164438416624852871212226792625031732917202706121641620568254234309880354581464525764006204842261766253518902173183966677300543835290254255490844694375860483940975162245010750537717439748833251670622365377567436361306814673069007828833815544016510244201954244386576140436730022263292504779712140909637111788912294312307202304873101781266957210196107015858996835167894285264681249909172451172145550233233148593970118495682444278508365713049321341049473610169143771833255109861474264312034313223779875520402244444979901778539415998921715145250412352174674473121238170017673363015780048999539433504646537009117314399847365915548168841872561431032365616308561164101537557770503162508333528631682307230953840640835253114330071658282702084287463166626237330617065371217527678228776615271427350393246148597192340737743173981994248648333268995716607540421712852165951622636971479646692116952573530113662496581106314049629716702911210423941825655124491654069566963299338513305422222501528825248062513776662683133810343456386583328424430435793232031783874397205056231644812398413717545730125873129338686701226228508138529162182875013805925130647098933125111317725331852708731510706577172006173201243360410306880756886172281113076564600011611931811720731304565652415241707164921314964217611908426049943530439849624208742406424820342121044062366429148432637361244353966856408451281517155043944393741009938817719584319184513513204854634302594046183460398698961163737309095156642803415242315914976613681293755248175822214315231013054272905506447088623219911826714091131313396066287692557435612635421368433808083663643315545543752234651506324313263220370541371363379202617242516149703192910540204835959550206056257393011341422924134326024357117783269471536670463829053551517560061772323209931737631171591635411241190453710251436115094748062164215110303833167224046820841073594824943111791404120491763512095360725047826644056904263143527417202914065505142726525866226993535510851941127910388140499936117819134735697101190160232052300463301659133654872118488007464908494121116141167382050576544186283185872015933033920087739103443561967958781908162644928726171813240029561790507136038453003947386068572227526675342722422611603041758657902835237735186330891522776381803139748055226434266714323708352747073306891144298075231731164111550953413218476762456164702191663178984741763202046123231318760243686637473323008691190234420248353740196516925703047948439567101424846548661955494257972636813163826112413136085294564369665673221643551456076881228837449137243307127329083157026492191097102070574212842270630670710690905790054524471371223936255341285467154272251327177370255731914330046346136849832567932073430065248354331143442063641052413858499250641011967696061220167284754730171649003604181567396120972745517282339004086319127232087642801532996418352314082193413331100708420761641399204612724723423660743101793181262032712811249588647740033683124891655698450331668641632239222787060372450546599527479235314723277677954728582406223229201273119305944780501375580197188265185203071653229874794132636012251053025029136597053837853653566325056448224010622598614446078445406516867424662001560451234161105140683597395211703402591855222420745528501920644023243406188986877916554611651613639740938519064915805513541104831979161225659921434608439102718240745397188167135658722458382857661216908010041045573223937193711620739116091994617586427994244118739581211884114346647248222287283928756526000230069499064412123062356280429631393635916375887112301299136903391284442918406372392774114466397114773641655602336001313765357122310846423341261797235637054366206107643925943025732625435422056153301311292673681526084916632252383712904435400268549458987504221712881212510165102445242108106941012366312340317312562103040413556144646961168249955421489305699941876173381730490994536515671534063279429069141358813502015676051856363014725046143410573566279974607001975365818330782781120365561326315205031499341525076427033693216791279442775892337793161190268527741120932516814627172276129221466037488411189435372713342074158595022543096770511590244545044646935418323131255361825830527134293555222709119610014811046958114731113721500765858101014429243738834887901173783231733306155313693782207678571632178717451911331845432808391522185251717841722111297242206398012471710518124488461331204654271315354828890805755922942415528474060477049887426567338949332344090117665716438649218514981333010222861221404244196343872526441003651144596988135595334092564671434650089986188074155163149463944725163191512105099623718765202894948330260681712616969374956646583642709803429340338367702935629959037128925082063605420321681525270317510820297449510214364689417664492662118690761359281184542182383882146103484453236297574580517459695789164116910776361577443348121516560089663795020805952685514584126077020931280615435693240465506401002046972154916175376686134112183595797558174381630262452825255728959318081962069576021415384221123516383329902893252595781412432737478318186343182174250203304408966534060141530622774145505762766786653763313735889321545614516333646488265111335545238481201007006759765226343324483657529941884151301472747127893355508692604187946772904321439514723346116243950855217363128383130525154205827784042566135785796520675533174734888301015174352534929203238566420159492238101151133027620142412848786157337593959533032205005206088415928244301517914749133093016170126852606613402523453922191165524523537353944204044902611702421164452164130961900965899274528233176673087202125047158452013474902496490133426076222934666903247891400124886692243933446461382424094610074216381381763026753839053085077251047221455502798743231585692038324238101579495584674351482105293078613654410423712198239914258843525547548154926209710110139208301625403348340271524231500110510544362367115216951870429512109133614163220611451539330417813928581246832023255297845666254730622289297320356937563290354160284141997792014210665673827603541467921160762112192031206928276367251307318112431320766028539972371261047105894614145231101533265267373342148331353217042124203269555810566394526551481963382865820367793932825244375026803392673672720434580305571482189533771975050174206726367650927919817692216101423141249173944318491201876590703389631812676759922413611132331106210508431085858366517514058093024152909223920214231538575908857778816234136574125261831550244518255625104828502504423524420445023116520235696605942935548187760348894228101101912531222247317717695664401568845646094206321682242231371364110666835385031054932820922346159237427207676583225630494162142447282322634307083996551808110935679369064012078382932043594287869632572250229661135862456649844005949483853310687913028035718324173928121507792619528720555617456424272007110284266616259023433212864841717234750450175783246905273920945858199493570608791203916522394830652402714475625837220360123796473725730118446512540045243765950034320142896187865689038922001014916156995573177075747728217576242250327118687733911150682911275172482061919114794401534351284357861731246024115043739458610684702483294262821331021523305374585840423394425298164401278535409259001223664700229357940392335416558070473216544237165351474513412949166162831719648133161981970698164930310395042650678323711092342423625383083933753423875078630471761557141881825327024773080035605282234405018415493193431200250860260673498015090559007352830442055702772621827000249554641566239466590995107573412892390541769124841139942647126090212568259936064542254596632322009440224416871121321021814121422073544809323940021168229263723325011148636611437919082259379463226691703114508607074504368320703534535824525462464280292939623848711085589547555022165164318154137081811533247211131523954663213638612872229476982607246726985232604219925114856609021648672132332441776414158435085772494527327372870395689575987125052483745140739305872190409614455211304315585396365133869317804613363144092511203218521366463386356010288072147090225074236665671461232501145446726641550070314128246290641635438624432534191899265362133923740331325536167719747668048023231313118939646204011074117172111602690601343588782228044287807533524397327715554069358471876011337339249277620617084302090284010784978432907456135183683804231700930330910254149834304861336912121577059283643651768488935090130677742442468694439251624887228621763510346120871146925684212976895967045658767737095555941880627060930256043041280368795114897473778865028706841233638045028271992369855442235643238330224324388544012963860850112663061123341929833876465069738775896953010138421459442971453272238086546255365627108204981348599061458953730794651493872975233570632364581188213471848660237144601737824516973921706213745256245108652759688219728600744683518362384448851943146208177423469924776206096225973217434527884252387674232475460333241065272918092488701527736575557564433450510443767544543210264887274176376397814738042914651049725178080015149273740672020612057126312225479871053333912917944404422211941627721263624363046147646803154688617323242904597429969611355053162752239187598757897353996517340330888727108257041776841656803715041327157401124457734368121661831000483551630457152214415428733053485687345153428083905959446405537597122740841807912162229421179082056884316381075163842761066171369134718541528412413248427575161124893498761084738615179441746926314163114266771699822904258831562257468343623959073389736737101233253305057097456266300366113206106589746837391436236004919717940466454706550315745790161442380243224709546722184475080482905343673361315416115253281847027778691249370444882520365482398844951415733722014279829731292308183736405404326427662174952702921374043827825211681312212318702475236122529001202153362147436880933470373370624342322228330111260630928878154200300141332011942535273246628986172097519610669362547941882017913600517915288513995877447489054743119326014617057242461720771561654911206551725935579055136833973785061289790324145229224368565943604112576051464323532373291382668755401024707611588206918492173762484168282136314923162541925872623115216032710722628619365170922814624445312327136911993543344680905510780618676707751215985655010570240532744453873116349320734173707720742511776226342403300482216762003439331492889648659171802115577859023361310527927518621344684143598814331322274049115990636124864427792156050600460801435316721405902717054834309342222298651201360331025752003684033572257846336037906739982103105040457236422141682176976834782251911763862320964257423411837518341664287300467673917199473658145877022203470351933851892007150207254510673457328962279741134820175642091323049292670250240366164150565393100841633706881044166093800351808414911062380750164193481420537901042134444132213868666079179054061892505408801185651806663325707374739010685045655324258815387493713487128555351769867121028906766424137550441148232057810107831885479843398568044844839210184344954629317202386686717490741355164204122096831152355673981246967237023010321651074361663797136307292017602158911283153609263413342353312816391282184616731239818452841318249631698276203039236118276852325911541218755763731557442174483323837156612216505612325259153514653382949130081721101414900489771613353642770351432361469618399342031628156240653377934202522214290223419293164082164193153300002905039239541486182655305443198647111607323097357926418392272222127356632913162486955761779187119594559114104106514521908415506711913057271625617770271399505335020955151145681678911434023030346447076168499412632942544243942515137029034118205162915825169722329677712686265372511115429554222154933614102587561117077626126541723617606930125046512543512817575261621843104239501796967732633930512450480104998372599279536238781580781662035202770330429463822032199342505796245972546179655700662440560324640600041311688261181852609742335695340300026415016273545911689478425915536011029210500644099122167834566176459645950125086339058255491540358654173411890522164174420301614722283113847101141890956774288573871739020505871708901519303960117993174215703357276964728752823988545012269009373176874532015273834543609036215601332358701164965459343167003302387807512783280421341129738048262111114283322996398311894214347184406422533405463450803699907807394182581656315423643917245532966312664541843300338634573034020252052174656712914602934049278061989642822973809213339055023273734203186405323331005132498957698792453192906122913583164112302683507623238974375197793961045421643287246110701931569971954125815278679311622918504646004354882794895421121432173186163132286771318618842385444662528395102434081128210781957143440169655333539672286294612741634150242294116375465371722122568506347534393529266931359381105042304324437618131923271084566754713441765237334209942866221120163910187100284718819682768304337225549213171216258983143864864245146111114317061538935241841981031593994060287683491845049828133632515937132231536344432268828154233128662724181393899118710346940165405549849127930459242372447236115333134060516811768819452071693416601826134342601821305691420426313882471200104992561318397597734694209525662682244899579102049792561092644527111121723510019250073139053774653215068751736579838175989151630738943914779883571430133154673516227278583248901919546722115260604473378304112705052854624314926812516670103823701431976020428412500371422515626057138879396464200741949752319841768980221313649195620205747380371377122360458793609323121110358403678317603430171830472624136272814693935800319605208324812330561614829632182458755143045454341523879176608983288572811010723465970428503257882727856153492522489602461554324633262016389311938741816967314676459014497164346616821703921224728134320351912702648344433731178314455842234107342807648900768335774242505836763611122283467073142734630985061115404982353547050623318395538935172229489472728723663567151670415218275170938673164010273744846680677051491434193579516833754121736111188468726384116194345250550515444619122343977383162616327851535536703520272954053113112321871123745012811017197355143443733263482462186956367402322027108349399569142331680153376772516129913215871113423936787455113533547935256315891819555825130133951236173445765804525177753412186271981270700108351461470770225340461103733521128276063570527524256095267761666414866522001531843386101456224250245707684077018316871633716082099004484935728903228740624147982315152681832375116459803611885407497218057808471813246425459792831845522623346181892228928286115861799360853974702293251029460403254018808790181976172056485524821911005463944263311835692411556298510011401953127174468531838191801824546852011934827092246547091159685184264399459441244967248233702247191646263325628923137585924230363135319131249162073445616371111248946655117192027037042949579208902963751722296946359842104032273346653818928236666542211402012026153352213022450082638732311109655664995996360920773344478869693797461847469294345568126783039616432754708540122010857199183228232291816546116641777436620854221763691566002934216528983572808369058847341613920557724145657575444263944150456421501156739379912362619539788436632511732996828253368954633931118339661620596808574464042049053933219964572615759771608883646380044506218632360816256800018443284519502721380212347815715675186035864485541552313143954285370101437496738841738556324024851856234170137723248833122191277266324235956744166965620231573765211993347556941574686129644344486101138393735209526201024073246719577055704119130851143312652450303766657971224306506141180350065666272213739526750286166717470043051143216082066700735406386303116898427325389070441140131015145414717875923224507313711405072481820137861381871826338035573844572601425249368253270143175758846668586776471022778650122261051101232193226528349822115675040458341435613027236722162444408227581185218747983841765802647553151615361466709621279746322871101797056901124553732626407943151411337268747428771327162632739633677081703886488116832211797901950129555446217938815884600896454621785438719111392813144715983164180914868791632741131275359512665517667515528597677023013433613223346178052927838105406771342554659130213669691969249572018215197411474132584176619721322281880305752693734798121316800866536629964895660168123029894578231263008412516503492145305885719642993634627953613866965624814319780754664988351664142612206516480467765740415638913046770359513896162316203991323406212181488810003681286422864663742472096017336741924977180111176855293757326249391129122133345349435631266386880401869908254467478024275285728093291322510792336523858536835466624549480134261222923589832413048245549153461864233172786454611881717148004005053890871361618331414286920191608543832291161110436476185405030641512061254315890371993552263166770255489826333004138846320410708401170899723550680112220309709607356612045914577485739159883311781903005941398817786392250405111085228214492362111793006294145926276220426612442818603001357524634481003537121776064542643364147139768463323526782627750469392462031754582979221760312535706853897456244536755531252231105823031231330866044555253413916178832112312548045330835961576817006103435763947369254390579154582412622847126857172746468696955474592622241081164246207243554116160091302170158665377511600875444238973165932739825971450441546461298355754648145517357119559179417691555236227381720514058691525801454170333532702578161259101007784186954649226141630274329132203621194668473921723113560161234214453599203068172081848385575473016378378523371098851372755511515780720003783004129351157361726212653266153793393054513893473267166718751630920229206406496300166118624348048710006804266397503345626642915277331453976352642764123882162945879147714063032044043425183686373413712572881919235698119432506825817811520741515723702705666050198601645577713120721542241531206446427323315446747670573248926495514458551495398527073247707214715660727975623462097183578958760286220175111168848707161648195242423561443356212291418849690491552859413929862703195412250336996463491202560767313726396855550545418323858282554071836211951992819297168322142914863714401119046427697101967282294184720771197001126184157816047856804875806158143359782198656152460216773382513885330346821267411953423444234323166088577263681663128108781837459409929555723055923434305243276535142384959350690514975165248191382725112816361400439112529916899416640373634126721362033032219260473083951430157452455320096281444333646139233476372821328340156131883171756703502428251923168769014689756928653952421163631105316536602431565191882119803220928138042227012470109071371812023654361112281609489272363668201532211610720740421559137877679285471199130983330689738738751784341161274735658363218236920331279098439313685810153111449423048252384572217171013640549965993144343142201424026272539852673422114430403287411291423431950010673441232002428024509751426461840610141132916173647102531555749721321100592053531572266158202397832451232216928917101483734311687883472712943128361631631194630404253640251919372695331146900138231698287987200619814962044510142208036404560140212247587771734403178476891532895690722200988881406062730016896701782301073216422463103318681554734141817819431349347503754026854173322140732941495823434030932162159633167122368306524354246124836485128583240039076763118122046602891116662371612322484144861547193104181879785976790288417656860517204177200284925570443351911679110625572101285480631297677034037210149628683975503707112416313252296804614700173916910164061253426107562816835351435656482207786717320699768254346718413623096291083532634021303750120536239620271723404821324624359555612622643951062400075101043491491653765336325090192632710221401208613159248703901264628015222037585865352838758466424524170399574060341253920737888955603294271065136177702216316327214074021217994162098824458727962472409202623122050366036397035152549631680716622400145003633223064914102113821198602458472080467153393749385759644522502510162715216739926293633152223056265047383679500580113222632141720914620014834675230529081647532154830222774519289146334385422070046432603132312211234823475482103537281003417931851227174122350334636151112401613122835304542359953567193634087213356750095955447291293177317151001048776129450721640857616651517948585574022672311788736095063157403181816564240221540703381392847344210054152918082818835517137454443189355665058216146362356867841943170327855401944960250148131901805913723265448597810323905097136028226880944966127151151224292930382672009305153325812600638828589744735162472632821310037886839201000101143638051523563417182940399626335710143151486054240201656441404074042924929427011236434554578081943317863589335327251609973906216450617130379223514462682728739911398413323697644813883369250726696597969297667123425369763585160521259256721733230076863794318283607004026863315644805312713663730646519185740693014861606524210882419357622663382567594117256255743795655859501145577781522178771351844250421492565691692840531942362534663241252925003590723398367245434662490316916513316947021972575231424249949670432632054013527130472348176538966312282677868604622282594483495908473991414004162435010319370947778021653375503757659132140304512260381328951501423221669077022684034480247611849517357122641485014951354500211161342962106618110632320624224161086559619428150403329053119308322167147446789796433868749765132352052112100024564551345485831666125465283471561351284444450517414557868843612326324257783129611382541411836545236725455023427441247101016325273576523770544222472337910419674159836413734442817768452159462352354413592538712861812523786123588705673762126950043245183213644611448030013567937279854621220279001831734073927032324580350319040003716822131105637235867250926294295663437761478182686218125821514232620185929531342786462039352860304547250236711095894641131073259190113443332254368478280342220495069940505423276785328812174609685269448202634579383011351491787069170634984885720973026139032223748385017313997277667114163197288959611747020353595711144526814274243122774581757502181661747792201185439028445433684276399658272660260333993628318647335149763343663811823009558210851118219100924142157178223151382560531095803552477828280014222272882271233332712477049497102810467124180810517623934043398535318542019282482141611785005630478263746312127561501975008525570524995758084034766141961482527266104696254107506293466885004295373624331961240725949225431514632292448114022660257022657832251280956235939225731401151312690821024236162142917851013762539530679937407041132348680218815128277271862702686330482092318251396600329688414264346101344254142205166543233084681242232210634117511707896127446000120093128450121853053043520325373314431745724575304188521102066565654472193813096408716766909665260275307690419530581202372725754942769327124460930119490381985694386778679371422610595371047303245635230382223752265500070121984015278042246679493219352119174201574619056891770769948677628107397814272514816565106741867536121202653007171146565049172685030029702142391305863686039204513122642264096234968182384093263322514379282010317245011073991214112996511131233632105615054190431501320141423964721604501415372289997571023367836120313161377702512411376434011604179019144292581525125452836281391630722320235469004982071884046212553196506235412532466807321371202583193212453582583132362884075955165683480474195361268791584596342073468324264012658972190047423968042004213665413166612744251104911553546450616823023047690932119191268167475633597210435788685662985395411452008960333182061324912082684924650725880579931517693119669206567447730590825173255521360634811976992773335351918859103601908156714064437944642667259734261537163682890061110816396329781912365981795733200577448206223564149517262196746893531884230813018552474599163077555107413532093827132513062658561260319352448242307641473569313011520680255407418264111145317037946016402909148781655337361315425722020655423555275414743173100618651703722007191400263060577165092688123823158202302098804281488432823203594104542790549685265508586642619194001498236839712061824221781206861726010451133955005544273451613243820448815284785394451839511682143043593579811796680227354503732843053348369224722133197783607426382843815641068941455123212644230139542337023873236612313344637852775814671373225203894145042662100013812394528622556777127983813281340001620552151687741800492248031338011433035225111907063977521616092146467856364320033752295590815202513801102473578632636227594942377240150943211504258903847543134502640267999312330243165116103798435283285860573313029603911379486101091010517203457060821137034943335732357022373560016506833005266315897431194477445510171138265154234082614448255316277295723407364144884199234158045803754550115606325703390773143638915196320622157174387242121624451568786339285212459096031511046109371273026093420781806374381206866639529408220627169207969059804393176226141123672224223979441533047125757610481627353642064516732161621340165433971854431142643496244393027632126948250181264128944230271512701147513321730523311151458289515978028612248166884448426408784949235119385379521517583430878653389129242700563701262695322112233614602252516405166296522250127410315314580666585720771621354829136486873656695769166548581222543323004513369290349427083251695137331927790204163025012342762749116524284831319026122994502580882224462929408077313749016650099312599080231795206181507678732804442618277151280525903862255082043385749267428929427351632225309031209047338651724618636033152345545943733513905048637578476010073030492358497112616521065671782612654141136911751115476294300571648126402440122955702287461387146073602133616492536942023433207933815968023642747666351123314940776845662810997905631632223546994374398941631587847447436930145104741695812833921548103462136011403315740214541207272130842512051166674474585225542473214293345546151684791251242900664517394051806360679726001537761325295937143205845402530013154527324840512402434726406132247032310714111767913813238612966052956214627501462148310610376154306104172080969581428723460846533372030373886328497320353274995263631067211981528318571579641109136865671222939790157618546099876125755637459616019719817183955274065572434619722111347035245326565159751537719124187201180402862113524877451346145138921096101322086979893275305718061523904056152943338872604650321020526980594897232897847616860726967166751531462936875014581266381274336151601197359306365365920419114824731632030617459670831380514097705991618455427543420485134527027983741624225959163543313072082251532145189543921906880304246047949372633344111946251902902174350748349222556864684913130530951852015516610620140043072670771014144192695627794762192134584856111655619431857636836157269453241288911402389215421836711425120538575222233501406357858270126672462637832761417577983652246242148173189501495903219894571223465494011386727806251130500422207198655926169467172160315093103591630568867266245517218912545629240762051515064955973256630108738440832425902540809430187130614390665421473250846373571494127827931915201246361789223455807016012223352849090270311291537190561147918110427209253904780688388336327559203752174108380823209373352167886815214256200438822422404185189285936251575747489724625656210803258140326101140458587423213942156952192932857882330422582298301014615077766444781463534138424138420709733644962771472021231234876733741481210723145691392352712443639070810973545471402713210102223981374072823602531255187333080520255144705167400191141215731204423731527492762983900211993625344973819221572711955483610113712525855219834406096657221340415640212752649701764632098415947918525336313622465337703821047288605460839876613879333476812382421080252993170965228211835988112864700239703891494061338142119722834901165123457045956964552095356566882326744613793123694252846471171858618418624598921774065991014072517059999230171788069182886293700643255855108423585207591324232382681198012395556940295042041568536970652861304246807048409021348025523350303524171404361365031334473191170440116106020364853162042318847441233024223127479790037551048046758600863560758016350633901061674253475071456001546582668832511641033096253293573781201426235144532748626740765236357131130455611363466323597175962342934072718130246935562042300891232191055330481475565151210822510097321329343154375217743008154126355016459229243180143087201378456970229513457905310134153285951011196468724823514223158064409531833221487737405671177524183700670280509038932276921230333126576678307311267441080782745368737534868568055639173512404609831545417470014486522775531569173903339115593031086043139411786691672231515331253928275842851567969147013227591530722302743654994049405916427018153483302548516245381636311304218665277797551375274742783145954609213220631867229582041794614531427220820905168111216441293375238473169731637221556416717631495521220907164513180674994241974391892552226288523157969464781770517437345421097475942936871995736284466614176652536503710584121981298597322219428273858810057112230292925118419230620490530006624543022028373708589042340279487268564132097154631407636421628209506123109451239514973064707576685365603313823734927482609706613558115516320175003064392521591313903000802521707374811507884315980837917262104618534500559152793513623142722179727173031222544006074413431763060381235368761707946206192280964832272193727001622758840439471417443296394837287030607943501185446732101680851785550179365260613494811263548391252538402903607171354094136271892651014831620969736446786502584722284237303537106413160813211814365011915415624821657277757160170411815515227566730986475052374482935301388211751963873016371538423145390852793381312692811516716996345111652299521151753130068866420850523622471416495168453812327716703816724733721679384415504944282532538590162061248865614931945011326495210444243119370295189146170390658926235013703942882731554811053981725280130144686111951805634429765266862122589640332634082305815016165253425333026292535475551624488907340350648559019475189596818188776861063903752437382451116661164935904692260852126902133203461903769911296930030448126187912726118250235238027761202610047952327001324511449334804971424730937628076128331344430200226025053412330334117712143422338491081675772059181829140392310125770450350466417108772202416369482987303251202262802228283353350447382701961481317533214597108462401310827068570912123863002604142399613622132321435382929004154390938054190168717068362127053693575041548828684241291418635244603233555383400236884543293522427509253077463011993809642940584664864148170176351076129125302183467650896382573430189996998754429447554392380674014189039302250281744243263612315562426301543842721255267046785616511484629319873117446368517745042131042318028221811256573536798223514818437918262080170244145578149753254736434294713559907495401670780248365433964448733273865322958271896054639388905587380212171081506276762553715560093673502237550260274809931653212052655001604467902261151047735343798703872011393273556800165575024528735412682564102425141091315411026504869324320076183342870121825122152157721624647156227015446144224679156121320843333804067495336495015428800313241504102863270611144255342459815612572100842306502619226819457469209813666512225323857130567127153517941545621306600723384141921917419611949442493454852400712483327475361088677971356304688115833212541431177633666735213184496415647534872037451507162327615181182121664067157676211258072102315509297028282981626232535969475239607461645427506260920711856761192066102170584033896267323210451588116076305316818050813545249263984891516797512490582331377179809380813198538711943171575855608428078211704303599069123623716438061116962223229159715726593015134416232270911314159266803119006232421773342430541726448330784037801140461368223962374383186223323387472617622122280933434318431179450457681332104252965815265440431684964125475121496332348099012947897666498189000407683223209051415253812961821327537775501258311452185330211162484126268434158392701608671023860831611385020094164806501528248782899087897403311545932156655144266144692092727550017243285795513315113252623434225336583228873900400982120872674686039322431863804998295263755985922059539380588531584704497260677346713403216109911022527727580297962315381298854524024788349745479181280414111892096991304913975347262408564516745950647159973330335597147705924417966935361093255560105084192583210985848046148210584589402696129135310682554381254209431380353463042182690118323235881211268049162002246895419349044343259404287032785750418108526119231771534982063099933337751341214518253970235381651319534310282426112374718373987538629272745531168586837127720352499213177153552551783252011608248883648648323706356174198586350622403703711331421404742546435085429264811359212349254188366693466573253112537308010080110614967414144531409273414386026335806289619592154664903301316201960033111106074457345709727183663848749266841939160690799462514441181433425646612310421501820642117203971505543535732260230188729136937302247846529815863591436129132724326372304137661383956207696356463103902453123661123113181224229856634356385196086951229520915521962201186585104656384923381684030445353611730140498887076125333364041556665514798128813733555124639694726742312714414556421660517438242550580517663387527058126899131097831964733199652115155911688800391515120155234545426803112101791777937208465044355275310853113452414828076400139274367278674942242667933328770367011216994434947851263925511731438165997197841220709732424151475697619400233068155123451707906082361268024562840492463183988511748133464329168408560438462030669245653141170826958678341416733993962994226646611918986321281930706291261210641685801167325665688455629226865021233450961028834451691172947416980801068893334459439473274243317325329815233743978532101319252675339358645210523025616139719271001214793400630813549404369941265520062141430602854754103702785116444829318570017334637082992355196618160324692830820803727632613733645980348344189333829178200809506571285118364582225142755290573710083155799631744659960647742329126610122659238203097173242820418563544524512630955217712228017405937033525870323280556176432143133986976012921541449158832621437807116975021016496052307423064356656558077134936459368263641874948335742979789152368461952760330421780433332608356407125479877710505983721693892444055320499526759593549503493222435430154728273636010920440365553700244311938421946232386812515811818194142444584145976444423422546023660587388879233904787128005447323011779829347029483056136050702189814923191162682745438627489292161751359961362583987421003574427284355481001942208890151254161311150302026012115662674371882161287075902832550082695237224925314570730501127725389380754957340531407208631171522236655764403302364595068371882611274044274462182976998076832423910115074618011425212181134339380883712124077696794771764653148262800431667968217714944549273142611008640512370623729146223551820011294576093849063844855441030231004174913061364263827037614314337474546027415524341886740257311219013853477226133918491324581314425458215456979528849927205702882308601954876453921781040431334603477235414208492112561711282336925433465352243130584121555198122118246119870436344912192472728274439547665617298215128506243218326628932886186506083460941726307850426579419644476691521682710420721074468957664264042908705365360554972015823669936119597021481051955803401508287623616405563232242435248052126100433740208663296512420803145123715261959327653651252222816339269946370755267231372931954313383613153311878212472400643095422274153965969811318821442052440924821460932730780127914926128800991045299571355746364212898515384174074338445132142237332348508117232330108610652523256536354340936621790112744465403585241307785329959349738568136554378236761200229490006957929930957169361397058636269749926714302228909542650683424411233848994314009989267412051748015025705342576451963809542030012233210478616547707207130221324945899325059901601311331148287427037797884497280363312004465720913497344371570313962330156130646512559171146132651877223274828264776933895134204131183373364245495874159133441774666023053461212711905212941111374303898627631689241051400443532745804010711710119403146070530830054112205656475860236338839852728098565391523355741641213825414742245936311428815440376012981205323225681087948522646622030335496526929202071202533735999357934122277211998600241335448065731544426071225414643470753438535424020645585161351175225726781879519551937616646993415055368700291034237731070289251078332025059888711202693133993210627625240743826666312313014164362741161511050697335350441895991707360905369260255040268408040391751076611194602471059236128113921522470252161876852788514890638520416341045135063863950037243160545469128361567644093135112882491719325844701512305829143220512005640528566669147230438702100529458452128526542266610986729231142260971281265944055368348275324904325072261023968608969064913438172323722103075791274623204540462128738107615301069661429863027557889395678659734573773125340957734423731140889844098297010513102511838945460412037542931475011272554749654955204683655012245430165601519446145154212222226171814032675151128095831599128041890265201124527425991771132012143384597027677308957615614493506307404289611139962213207240305769266189053281692561243425543302627795006734343283381453347289271486143303723361884574760841553875639040083764992470328859663447336832818530325153421865668611607352112622221591517576450914776985965101117587282532745024855982025139218958263382421602916821077689220248312472127075172714618947430533428411036140364390404697692173066026889111917479963057214154444504729331712735118135162068482126792126230501251794157149022316652546706822485930910505941635228224379679884500649112303583197213650454995051633711774647255736064420564809635118521845353216213756526250100113846199935560113610743572340336340031171852749779242447131185212498082226222109579814732074570536172061680264152129783032063226611977586558723723226335130566078601042585060750259112366116240892573761082625457043343406473115075642712661506644842540320182388401923285014433106212023090721379943506874007395252944234395495939288601222968301431463540322374032641922373850750145815881965427424287742797611742953751585626852233899251051932743438003838427600735094201803379101831749893077931449124054163860802914335105361475041295467681856614684716007352689571121353527864341657406614753137829010663748441822935501894136004550910116234026527695214090034038209391308495409856215481121546512156509980741356161490323307534855323774897673898500108238213552132098058394918961920070421010703068463761831723514328757220133325666250514318611131503349309063017927769811578255462300006255028123521542084120324441614640153212986535325215560105655717615533269220693413191366281874448452596151142758358888726882672408340484939310210152838996049927229107402439423934717420299570301861714525200831223235213266210334859718832709329668424121753953261330611106441385287406161301612448283922253227466666126716093631902471565318426132964977878761857271377686974012701591053607143746173341732281117112593038354452334998282688771447421211220052944063562425475905923352062702532223705381700200345112602359864634056042224301942405005519082192191940089385233996953893720776611551397017885341818849279953710324429441257194219338184491293776330021993117803713172271292015143216817435200671616305604503427154103120365759272137698092526068068852243553125868286262337823444676151064624124392900195396318130710854362120741685134036653644006606691210190294573930110752015102367592127141444461859571223502530597244987343223878447870063126856091533234054532249464757942269117137541452205489204978965387134672664264805948369420171949853562155712312242615771315713540647466315235123201224244456733108476742403689562314035595231470857036184553403132031926559016527840382117418925144075304042297725194015880888499071421395121232330873523956272228459845177129354676687421871143974942036110519406729391282345207632719471890445389579390165128729950364354671576392139897401802662665039792769852558332013426231423113233475332188266130903956494424316423962082623536153053590231182676627291516034730501393270234141924500130194935206701610126053998665928632024410978071126255120997675742887122204599851165858122591635125444881114296932487431794434971168429097091277409825411316872013816458334446265969349241331189798449504451207968651104674342323535336129933478124413245834363307250125854878444142880628252792671204314713307014651232040204254952383910490900293081597603721258935542177128172989448758148585002205000272210204326124545871364400239304910474582541843042164281301342172766603160966864382121018717656907180527034074885604149526412627364842946341228933714790223511445688222141312714104085005817082653240932936172022851493199668670021072672462776237413100271575159446597403674981692938779246854596325690544242773457480303171472451804446841851225116356722673795962152787420353368381317499210198316000484709112003635508911453192612746875371198475936917856400478606156461328130340952306361110649739901528032076117943627831420600049350151228427921337510026630411317261671746251599310824419728647442433615347232166217382271249473243292400403182644320180918793157573714800321455506774224764368123711036850920115827613184808119236713189012104622052154787955182313326927090674111102141123212538143101545858399423676211499987109168180511366671187611309119431191860160396042785465116548591140251400003824572543681262453236554854582844236529256962591905427973463119533000026709225186181183217932439001101810963414493267878210409526175516026901766134367756268260326703501558783294100256313110943437892350651921419113683738011166231452935469336553229072764497624632242782637418526915625151139717928639157546943418569041201964913254124386398142641958380121837920335864836268177516921714466253121407174902368340695377271563458153377099951241511466320020250358207513642412876451321033675420211233142495601906313662701121242619841153065581373096854185279175286687068256245452981287218296402748048231430614039323016372161578067506211222879927423053600086835739436040923284661957801137801944142056333454477284555607732303314381261128252746288200636543734802309101787505658067038325324332583940543994500798466865693046461092185948248240907918106114068960253229848501344104030040133283032032876214842655435028650687891137185132540753863832146308372062175519957663138875434238999849967291370942362948473252223961975603275031043502112785948197432112708255774934305337282186697595132350647152100555420719616043006132651991125954353517129852913037972145239101035688171876951259962203333414409043121637519842218907236213483261216627262854931135145341839891559791337046332921812022568623575105051422512181082113965973706322589512522534945855258233702278291112243918313900161710215512900492131850585396223937363284501265832656321717991093228267643552368300337743458946552103999848691690941233462271316001376020225212063622122256049308858143182261326384629031426635519318106137223148792813761936910629683493253543597094981133646233711136165821266452340451436071631490771530665254462359155999174884236029388664188281863930333010046431680675624234631433690025483639567983257923724771492241542113016075730445267162427574379131885271465122985773194475330012728430419600901622415521026813311503245330977726762481112549948141666147932472509181245561324168264193826555543147712553711521518110460451492959570076977127147231472521713155632459356320168354350043022152398779259944823569430202467573947695231016376846297235949138362911432099741387264696321428804882865112855142369167133851661448151043214112647485414146862601201710345021500246426497659630641974370843503921145777272496871461608871424614303289065858329923291955451606714612347511653412402565263579681242468050310824276311557302060931898040592703054245622970074207266238612258310159961129835607280700465377934153584204321142862453861599721913264119075538055623505013053325852225307014005519818897254088715340324174369178637642470675250022246963825640017922365613256746167682333896412693183726480387474612514900374439119060662781644622138100937317854616566641169199844332980247227004814185163438843918058067470294100131212315446971880207642218884127838196351111993329267112296084048110025233724610235037214649058571481079422104167489400938727710440333751273260274784212491020410683316213165339484122609356991965419346597547841009470400341091802186722132586250145925322762266199077425633777779465814783338053230238700825661954227048593673518621835022265164648323155211512465447308933131036091223265489790404240729267842300629875016145808745232195350022913914381057933771046432710835701630091523565607430203012934893169941000069466361300415306174054922382610794145694850902640369412135069552268655984044246293821178136942516018087927104762512259207845424727164632688784702346393478139578347484977464197757309672253149560278272896234467674664174891505754250611508637792744603144571402434410927472270116154843140405319358437737337414245521427674313216743213998701080683306336515222536421637004162661257672514053164061582291147691055531142823293132977158413662372407194935913134269283323147929804950946023427250866289778732630140683752611833817764425847230239177101303907160422876438436477525937794623349418836165503171793868530354435325014410616454642834117352202474594022061721452307284319456816313042527263263717230739324670600309462834306100101202938328147671098050355218208185491523115251543094354420347236853153956813411144255708937651829020536211522153698296116633319001611332775471152518325405559037085208522037567054555987283181540442313925363933122902203332327454027397643150945927930384433975592770503652274215424314117655210907121647454393333871335929776441352187634936097397487830711283892573492351268232744112721125061912541498365847268215801576611876430116930844292450034046865022411134711891218720289306774417444651882295594369890105455557940831201820957049525101914183445455310058392525834009802437052906229614432566666556449354120346053540493321164387887599455114272513515066590516738873421632445313213562416659708709070728471652157751562320457893403236318149123286813630858138723355631446243764897262492958638010190111224968288084157388336534628470780587328647154691533106703064456945626298311179268704110184045211259570181792577614135144699342074194154751341515982502581092401217094493030422360613426892761826085618143186454491154823456228341808184450469707232988969772314220754015211516504020153473415266523130812773224007243975538205169016458511549182031155019466965327093180548415815367210504307878486443611827024744335785004144466222290246983220525383421553205102083152694870836576332825737902347604331848534027567718484655659082603610212563272283380463969557932961712146429727261158913505547921567664542253798251550304324688451432219565553353041057000827910286469638712807069141130006562543337900410955489716242683544594671430007996807309676197313401665631860284153743339854211314029740312311791199738774135946418542030036497081336692286350644387899337346444271335104135077132519504660823420916830147947668631101715472209957223830204522397814531505202990443600862973359237037525515646578605249405024071542404573173494238709267110992414117064393022040161022691065999388418379255549386558523412030331429621262449321218396343419597689143637663962384132925193679974681897118382853214366035589114926115610791295185518835634628302946132344241115333022361649492496780393540201256808407875205621964684863222782991863197718414661325836160387241408700010713122254234725183073030320854741605843871567709007431054457385131086614625910303881538286050459998526134382034230818514123434337374504271542421123337068227683972056517357143655053859333743132983384948266616015603245542354585332923056404396672171983152720554550457608031435433871417324024216152327652569256234817205306595100695075102671375003811888047604811733873713103412066111392309341204211343406616606991813032267744538201235759031436644279860239713144756102681420916619773109639319178583804744070434118822792833417691554070322963666285303008083774120116101165076163167380657685038540225528852414267843924426221499176031839757484784573530557228407398974926327345286395431232727069550513912723222331664322711989163511185111739299113892228083631130125537520513139863990266840402650561173231020803042984226281136821723534309225811272313087173662461443931578049334724642954141792853135141195839869142532724141944752200416570125489992151293764654794112544657733756956696921978304693350520901338468433358295799352798397514265974223465666261179488720512741571998564517385945625558118091441216486218708781355138711657657058578713738930440189392406335955428004576412697878515360823435739081360473207256067121179738531261789082251216602084365812151713443604753043843723148982665407752630412849448715414600725644241321791950040273187658001611772823937930611138504739578466746817513692404777939403509455691205652912408610371162346152381482024999292759540402248110609193556937392350357009283006852070994612458213782418736510577567723511281136152453961386072713679985121812840031614499465491852256335598194672931704252838527511472795402144436650156071827468379383545798472331485562553034206144818871951173209248539676072327149924420102304321276081332644829251031613715228694328504604328533691240112054006762309676331925700121262497365737744527432678967656773388038059767422555585770176613600550137301926746735725854436222057106507363006037641320909321516306502846236796032466468725283298196179256310549839815239636726922305703159190788255754906432213911445451826041812366532689154129934040322919051658037120535337625597857341039352111022105335004314653113615091032628813104945500785755354235035414963217211181161901526356412348717547779624342105002201321708700345854513561294333329738442322775697552495120577265233303552319641014145248044156005053424636242428606754837718831766107026409354230289919188276343879745727775188151304481580245155708757485441596321559323001470527644362010751048468742001775620297621959437711405145022377385946953431751144911751909363121739145755198691243323473162290134984770149694113179059463887771517413365900033958274431685154907352318265092180489046115428645898486724348729041939503326337483130074348571225373127168693415481220110407344264937479330200096180993526128315791155332111254394318659340541561795734671959721410602610148212034213554252121851259305011547181772678719712943767354334619234446616121432273674243326621214703077056042874950257742033215619723703654769240232302163170519438929140459234041435631664787544613750235576792953664687259103339205334046528034589443650513131365732522470258730669823926775983032039031536715359510996214127695313093213011462150323413625876984820513802708342716345440162936918764162841042428203781282243495934367213797908646077774627834602105453635727234137312833429222413713443841640246579673768717049070228002255156324597121202602023515422021740811491630133771563402012551112220834220634868035924575682613261372163304761923185626107719735107732198450103532801995172197670680598713560412104384666201343772548468975928222956292343894191720720431877611433791425408073311049511642379610163009908937248733242642401612649620156028911173225043645103525759033796539615079610657295920343275174553655696799247932654021596467862149803392225130218262450229132285335818147194217075158765455066540520665219050224496968813250462214487796072994536803125065603183543190632459196413632201712347200278120118065223161342419380982133179128562205932273436476118513670954011394726132536255512197784220200826088636542670513304126734898287220290837234361717781442477467215780104652071269410151379746133342768839445242757864926159216281114602335722517141376958433628644754720512694882920772332539284274902611461504114374901092978945369837514604119473346267042312031385442274321611922381868512569338090598438028949226215619121520440039136828608980270788034544381187403184432057342322115365195651885087586561021981715782942223014700250871242181248719101912562715873331377796232791946389619207647855164626106371285082436448424414651669263219466764903575925416586690902482449336500358244034077685584979913042687437714468553316529455910317375361462220222007367917467556120820584206527118078803161363950560967557205016884602129252713514752367957955092256924607445547959891211117410108345430329512823574281795516186556709023727228424752815847262747555631729062329771623642014664138223445746796364271277390783977767803656620328656934234112614460516521419811671232741176093877327893981919957324611421673992556376542413060331502088046683664834895749013812126086120820670011167033039928007532450322052851313827477304360023016305066743440701758470437876930453248315111506000037443692110664564711337217011412598029272200341341578302430590465737214766714778324111836852365791660951435127353472072511497644686654177011851152579854308587244926966094532177387437124564736390213826617935009543484070866742019409327484243000124241962755782932583144627230691911606889600350642636060413645458592132421234557967224598944139673413631276629090543256180102943136041526207591502558872113060145110800490213626036232070781550158809241797795530531213494510277152454529638321776354105059268586461030512023652219244609749555882441554396137230532012831100522405581362432981213455755281883746454046621222302147041732512124651187716631191413831017848347034240208911302780229671024052865036267100800276511692182561532264237272452259205736166238272411528577311565229041961112229097344717111421351232214254113197985907354300543663157529238059732440075723836919012133059224518366995725322961724604116542272556861218510902424741970650176274966627443664051220889972332931450935424234367021898484146083251317145610085673561616131701366267774629805243135249018768115243442501156136480953732047078110251573263447279004902521374394194539907694477041123394402170256317336223131359791134254916907412958302495366270702526878572207224611418218516019496208674656348576808982455323320610169281594100051501702897116912315281681290761150761564700347621805637634016095728050527409557311276239874139529354866721543327804321420850167840027425741902144592439882118036325668805829888954180984777290531243139384701380363536222843751625492987448120410059023739101129358874806771513862027384012549615666404323025166405051271800292153702701220681797431623238538409229886372824235114331270372414921140483403371211216491614227316495393626712895712511143543983522721757152552442225436511261618343609871208145541011259355649424957845315144607208362997357937786197157191050362222249012165729112338925310843921956279296926715117854822005125673402650212472789783912613342137302730485189922326576954861388913857075059613093786320431999008716221516933087683681176128665708565670185147033916684376384530403683120344096194360789394433941670358807761372740681600060901909868276462844144662253739153177620405056327506686237022195716503318111201146783660793415500343196274614035263017722226279164466670260551321204147546289136034705118731073730131694711895789363130343725620314634827324201227926261212571015004494299116092356538829136404323748129470635223090333563277730900592274009946105223071618479861523552778223740288222563892342111126583234067082335214351822462073722552027606115183635324266508062027926496535791119507815120063313954768338264366354206311481575255373017637034632700956139730178013258096631709004780087211426658138179344658621917951507943245094505054334305067183209494625763863399910212235272798725652131267277758328456447722096715958416472826464033929931187235155152709347130507405162873236989604375521748332085722734909030122518237407229616541406747286960714273344950503841047844314720026225573011143733330239355348930478487638906622423950679921182817294018821563745624412212741177501921826707591714867141655284517886423457104701943214123126565266419199029715925382976611301647416520552016423779005363571318527744595575970438940015779177797799417540141879814665660018249723143293250493235500888552139169562752471559102192584409834362353219254725343283271442924303432973334128282283184047882143248956274935922212758152345861712783139343649787683401516146237406150649537286265736886188561909113892368824363832590671016595061905763665154663105332152330832424969703217263522661427901546324110095416402161251739517277845149433616032152264433510639956756429772446183413332781845413656653377583982002447703204744976635416081320308311441305310430081044217171430183832849766118521262480992246037824158114038233117752373329221860236355207287350804423041611310715616320638204458419165303989239115757861559297160649397852735428216074881277258765988171263598971524223111047611520239692389133874053934215282714760491042835979361441223036321861130380429298124366513154271100991375579874312287927131079533318312610190852553339013632881270303369267237346463203444324505527834108708533863588624346530472161076866622117537030393595172521511322701717120612831134257841641948416919771497855122939274474974414329153555659441004255730113858362496255456012743110761716579057739031672545433014191256538593929106151257418466353730419527571276559160453095102544425657801130376732580885605138479814285841315713624750193297727860836650227164402124542170445319227439775214262263554237175200720465050916682818224519666841364275246283626057555752718810686629268566380613414301245654505553294452653445921188218272317269526131853168722214595438738654119064914000002750255352167665686053272253952113820125376704611459483399771141719646001263369217523622630224432053372123714693429130801336540410112411002040572955445985672057113260182954518113392016875244422151232812027660739999395712535084232977934358594692371506633920216290140053216526883727684386128724221884511481266493222541442303420395085654343712054622227865390219170400907523111571579332729054305647069246260550899379411172899693310068610630328783431936614710961510363503911067067221125100662625871833238521674477218337644913721643217455643321625060569113122620016109438116415462017334806211753795712525944501140694046873822622661603198591827596719249927092279106143348229309572460786942579301839952481141620076363568601854668026746354168669145498458262936513187062304216193184322526764198112210540727471690518893764721419387256125645150866664145209601250272443355520851159603433206874876181528473873224902013481604067328493266119729053471243521904830508352510980253984711971447966418543727443020558115158630356397360711168909415847945624122333557566378430366022031847002533562675111800141091811472363761928970950575203737327555818421315790443347771136675660405752950675980841911669448182043236000141706234692700830242024090843759814011162160353041124023116215970471498146523754721780114111169521470127144353229719782054123353061095117231841451528141861776920119288009321425733558535281103679082143142717830333428924167923330310003719173455492531450219848911478134823601371030773125715862101268858134348356241941399241070137485551121168564017152734533175331215919968028246451117941482641709670215864258982128652934213750040514422820296054919167941018675224033818633461148424602424361356050270264188241853403654026125749642161429292250321674573966345588654296229860033249813427788111323309768652514719181198749123205053179568733547950354961330227832631029103403116373033995720157747637534966421661365836280574595352472135001497498241222503796068402531412411997558862953683112087971337454970440917817754887496545212563332109069561495006105040711288355086583497612230743319053369352541842511007209943175523067871094540793656023914458674005328730125090240370899330991121336452654481748062183541232112313051177261604231797643319292629602363753520053113268080857266294128215250493350156921566622043818445136326689135474294070312259890517388105571406244732923162472137156591318907275695624329143048723536617183185234086255341243151704355114720434641365163913803530827812073201553915822233733720920414925151301385420330716470133183472315515022586647701802827112367729109222592168212376967682148775511515483795553384539716022345713554135540725355874866329541037199010742516077995164051122705228024709511583930408063490039323655823376717349932641710435636282411324311187863870583101133829324165319469525381003248942311445659166762477231436427431953466125734658806436618133403182743611391010538931532150109650905807639331575971770830539793140716942132241714189457884681231750112701173142060564161663835513169714765292702378484317534172321983741163343855981335234332413156614303374221088235527415584246375261922225705316336761310553832228394383554763016788229838603200011472702733530447783561520075079373227617127495876637936616533378400610503647371250041581617209411625580796732443275343041448847913810025284554450050072299045317414255823452258047604242074981288976123998415169690960091998093477191206597528255929974966377876278747072310132243121297524519035737241734353421252225968070738110021712586066698711133486825165152226216223568336410015183468204745054153921681217570438813625417446352780169172770503231928220955308158478867235261268742181569267304711203698475515119529751174244806973436211664484317922104116808025948045475417022193041504848611130145573842538791087853643141764113497537636370510644262602082038084526655327091493106480218527092894332605109125831660298077333075098710916149269126753924790589412639521051053192145951777050215821350044455363548821527761646516701047382541692487181556432311918023555104444960117119016742737671645590728844123844712805520184164895261344830938174239662961787632277323920731871147014000351236757972375017057622250469135137128092437918090671133307412481336455735022422653426482321147890032163287154112310141392430695194821335826766274876456166153629608849765501348641571719942773221573241751301201617892198254866564342872021236191489113355320421244214214205101183163277165911248140609545612461500602296721561442453438869039413959410558446223181552801845411052603234413707611377627350789631346291663134583763461447821356045198561980411493134130375672978683451761687935614580142918108277013134860207143451615154692844346321581306009092686324626836611185844239752208924869431912688584216412072381632182977114651253145922330620154251214187256026436143071937116011051697013234781167835304433564432407024716499000581664810314909291644753289092514100498310480207502605025023165583762917291346699729059758176148292029253121738163412992179201598014367234021822757041343746733010377610576460174264982631241980093901105442280254214203792548112783313365401611372352915229909604342529849373189666435624988964348844904352084542393874563762724796603277932651426218622665915543282104887058936798332251780593055988733218616533061116642172247584982023391503312198177003243316353813794242723752527743310765335851342858811805245347122156389378819787661026230491616352633994149162313565041371766931809234324937648018168176047816019607493530441441512427591992651410641515821757427316061415833713299656372823497374310641536234548593922271520080253239034812905265114680613694063249353279561234723465999204255672562847351908001985911111204100741813086648151837475327806517804166500502568729847814251663535323115901236538234393500124244774782769242103466671705178052454728944722661139347289586028600056362055852340861704156279174586538562387139168522131024377984717720993440381464235819249720127708998192503528796207048484062303924280622823270224175226751961267707702638098700579481366639656452469404529667458736371266424281077279165828092218422947958451502691839143461381305741235421605583554288194775720659368418802306742470353214313618163180233024435307250515451451278597363692733833525132470176145141657808086301865811257705299599477926412662752729175280414283402513786046865271011844825437341471094260614621006461607776264213322222482367800147200564459334211918010601188131603124100171941973921239498229911162584425218891613749517818421232240036258076113591521893125821301215558265573112810440219252697435621438261799287272267940395424701369437863611385116320108149519278320852130644463301463581571534515472722384341864612386326063285008189174112530045906200827259208415368035906646970852233351808512775014701518376485627585799212996862431474203031430673175117649803162080883226446295121095007066645865517119730172074504724234723268310924804555825229586820226477500781630888747659042310504440092707001163723852321130788252256664101532072888269743414521962684317582328483158631151744902253135595089487600616253644511435100728125231673189269267435184166318157579911077026129736125185438266699732472221454348167188480482124364116659861111210124558647133226000258189226193373082423483732115602154746548171055096131908530332288329830235003740539241934224281313044025134230498977920840251184115273088638225183285627775911511384364837649356293941520355259591907935812438459693573402645146061140448039513786533231402279832550691673081640816988722837368121420553823093012107446214056204220978534265608135857250622330511515421746521721301531483123357622191398450524564319414470337570155443180514938246828281023322811887216755266031523144688471400211457810975808605632210382245628533658454909327546377327284638854004804469780113002500587822406710777810113440244037369609205029272657672603423265231275744417445976258345199911485372444974380579221941658040609301556106246728711110856355524898123641382027545232251734625311582755891993116083112712529413757333128752205390326119994381855924435722611594202118446529885818195634778483211441752480890287078822440508101601366513759823880118212206143110854023439993452633666058437463710624536561529315336592892283213059612828432732033244406606598391859531134311032713341742525229466531623234476362221351305936794000052482247461929903739284221603532810558242330333758726150719412994976151740743543167024952191056630310802899440951112912328415830021635543303645058149996266972739012357760653913031300094670303374208841846511361222573364172641501265315024119783303951282333703623594652718126927218702509193443392234561793345734901937941026200436161159019556124093144093154203482693863841606817236426382362457201614522596956111004597605981277157524519631490236401618221947604969667456805111465564344325331442943201754516201291767560813472687121298624032255923630664731376234548482714915823907262367195857412125562234881185708322506238694117002113615012270240815591101161594834279565304576562156969118199102700646433714124874031580357191341802235665894356113921373164548432213236416779970830405943167532220640412321812997229258717685470310368742451897931306882942636113101385111039033782528561163821004704924137378690909463757264398323968173791304405934352114637041008062152619242827158500433849182876582970640024236357889002496972105082123016934587357400233026731382374312334927944143786910375082249051048148327142268745545316700661095645589871253228934856304863807742922849521299601953818226622273597110246247293468189480376039020826210245681025729461151137251136245118117131642547770412673538319627565653917437510470026413213914088248361480843915845246023604056908111033663436282584415931453099993651523825794364334862703014485407091697416386824617254207936481241221390755116440991313681895293363718871073267519481629498632015672107391017526455749811909324864212028716434192822255552503051238694842621929617237789622451824382209911998409140481491228701117534016482422220149678702255890816289303780842592532651231212524131216506410550287732233216962522453173199277443201477429437121845372946715142547072611445586151226117429711271201062124721249282262853871054765350362335118859394428681630923884446262421827419332427899661184231937434014525809761479487353712289173737176644384687415547200861236137561281412857816204897181406769359315923118442371393991265304922715450210180265418423272520027438976193412403670390497759889463734166224862711521312079250946021566776704518660850070929363313808535243666833061478009737397031115191604660041328406239195203566123897035227831221534467316243884322039176719461841000530747524183045260171052395294639301102852765229606763644430037245664852099963825130095522452043769827702149537302316639477276211843817037725352590176143762175653873414312580844595397335221834243398569235976822005732546117077835303550281291059104804293885240807059007315370595457152449032394809546221339522704637474216461906357610111582205235124155254243309629065944484440664817320350148323570382808488627891901719811859331106283264414423313761941832619255402451201346379221226927178430794330275606643718887803841103253085850755750215644569832623988953267338928193884221286668868138603131156226258923143432538803122324185150311127537821220008377713540445116611371645450411878278211351674125144497910028329533634613659451912441401633453727417774120476864213432152006417197219674501907711717126634095645912683725982425804930940995561036893630516870758534272842277835436403622241191862561019806317251339360396307618091267135832684121163706474045144904321777202161148235473608208429310776741762219151200146681907157312731881616017153975394137330459908340160372205054423353215079751418364526133647215115369304155383222811295165757746511291433087244431519726081166115424544121221248842370449221021674266221313719096253425041737444801119172326691462451221721069046573924755321331820524334050382773730660548535863131523604270742243092782651127154118397354255845374489406567625866365501862298454207381991107436460435539287615426414266834252509454752142861669808243165375833422804106146972026445498993532301452731189254482371824554348315493201124362425739225614236174637857024530358886691403767685437180657364301183649753040666322639582712711901640143044280498761604617156340915621510766162197341104122054260033445087750717827486278144958679733027472531908611164815052651561417619461251948740046098185761519474688234232188461773071510476554158464103412042592911270725175317789436858168312405312094236430732574921521431377206141535939862349542230934893858732893736324822355700301874612521541519777114324995034374003449038247292221171400950270318828989251183314084293865505334288892220260679281476415752117672103218201810321243457056004696053856238229089844378785544397610336602765541119659301359190086082663627292623031143515777429314714958858522230159468177936516312466234533695013646197305771115224313415482520471037279828518767322890840201210675101568549214104179829235721433112122549435383293950328226042404627321561353150904799462420225757451687064538000247736209580535727015034052435071006878877491449033173694491153923128248106628872072423560885828950231038429072866129178122226006686012416748361791313441071135923839686116646327608127610375661164111929321251147213976192212722657612873293236541331287399980513231015429753740315503036917888105653622705179337546562711132953533264869414632621463508988637824709398476602045405226082462154000136261044404312869272038253762601022814244551291720158555570215163164611225512173999665232129907271226823088126836620836902519772772812583034010242413510316993682891450803697411151444571274927689845063966243361123580300304282453101668100224240473808108801152711754317511250119074217157650124767792312962733987378171722146240294776193627513838748838955215053082586389512811723515519156200544345240080071000843346195503649429758723485222757134152872115069663878561333021661123651423035472305172796421225397782513822864511920331439736692240733518903813291721838238976925778126384911461465462481432387225174272291001824241659498444979685027216532311126909433422955317340018713643192164545842556049571979791663494271662219454836480019492441149505706374341948099730229353294335318161210163659951594912425182264293549484600092463277280713564450164312061463017229418186375864512756130811973872454040531279491525013511010402262373617971742642231822759803697974513960035486352649463906065185184445317272850117527736922034033801652085349139567421516332563775511480855326501283124181106412212914291171989685399612115652111356477923036519736712163652605710595190319170364838712144772846238140586020214031693584115761309818128163084405810122545546506463073224214099968094525472429268464252313021840273551136330932992534358414383183688978434466196118491504915448273298296451828674150043532813795761961660057267392844281471493399326308087242524705741188835704802602407122029276468100135492742312121865794266451174726156393547833114544154095191144449296853103915257151858476822445103032514273504353124957510666172568742264317700712405087324004381022830585738724654964794966141318540240380910942383199530236963435258804781661163211120612601322133193130621422421630001143181109796683861034414242104279922465457255108622471763775507646396007041540222436282250474871062943171737309291463482130464224366871528645151543610250030566151938593120697025307236254766849151382628548272442922885540636125090075015301613364309781253363213085226287015282129660405772907500709385121107614530162410247472959763675255175588616145352501271018976158486810888142838868576541160374556353182226138254783609921960630988325973811180115392140552050323819444840377670011752113244703882767419552452662051505423358509230854125449017318258022544720120370336295799977017242959046716452045504681714690673834584120341756563756347473525233914524193136505389128610630326816153782628812472044173139458119330859896959773302653333562547379282300006578889422740625468814919464532949154434016402277443816121341317125112964136410082346130522314278437328828439832003193167098611316527274357133826555213061168021474717869023104302416426374430742258905225336687422087323574716852921445978757356354175012529176260221989837720367785958616401135538182820110284144191214355973294402264330812322632934025455319102272362855662881453446016779718731447253406727253705677029444179368513521112831362031786742217131315223105481222631312273422415412435510403687400212249321259542432569086451003448066440036912144899126004691259141815596006621114048173464622507332526775120784156374310775478618160381238499298933113122947636121112423318201799464891457725330474636336561361345881861499112816690346941116836713623302971115474154144708475022482736342427078544534147114765210580204813479063733422752621835182534145255031276527272017014796316912332409173120628744814134059382515175657017705514391834309823701943080598083454611040732687553942615936071280163301219722646934164747722522624312175641703359101447152964633664012999668679541080454650443724156454571260616532125883973925187375060127558750215269518150234059768078090117559543136331053621220191917432205814167259141521544190512389193124215896532402339903904210114014102224397427406701563269327101462315562126588591223151761090833228712159289754341663097273866523985723818096946382727129442038459656086367689153444718044756445250390634419534244001156211527500987701539903551744324061869022714353468642221766325156631096374612574132334552600171114513151808671405216141208842797780501308312346157111533859556715594350264296390883341988075806190178497919770726236324533841120285371557173177037008422257248932251871405357922181770130635339849065421576324523134260375256837234020598773156448671606212702382026049734650925761992223156536386452696484534313368351579360733844700674011923425325125706273162021287884436337352184921433105412180376405258514658711581261785154691473333849256020366678626962294218768119579031739306113279711645733180669627789477534723129912434182051529480764045348424972805313377477389291989061733839053301635599748489004921592968624701341326469549320116432024413535271505872161115050478732088653350421201997606540417270156234335269258418351152877335855161710059810424702781215443972186751562581826253738164839403133354351579790183715302868672073742515790753229147700659537530116241931469114244363234312408130179616911764725154534478173529581409247172700039974171599760105936375544504103093105136344326252967187213311102780732175114644547935221710727428594476567542299430753467494138407654144157088773386812936363414931554029314962502052165247226453465212115078683317000921543012976004275535450822502878237424101816240919175553151064771303575236328281847973498205636307210607843773401884352166820212344028106638379786108209174950322261916583661187711249503419101277535295412057503200639312357243284624794164284768653219579620432115942198637594305536098958123121972245064419014412071302894916600282614325102432739956732590798144171126843812821402581382718631146134512545115056715781799811510126470613235784549800917330122723602194503646054992488334159082826294808133127500578192217814671070241259332395553863487071007373244099255900631739441459869295856651210999120921346165316700122227593110253027162524352433410813523391195890955884858628422105764225432326201370510456052325223991513001896635853413649279556013782020237569421184551387360624213276959387845018242775359480562244967031632151353647127227871883313261381050014525136699493499605442236541417461272275529324207671901531532645868854727301552210263106547190013140143539011354314015468656421037296181976517782970106591607229933260502821042227862066382589374319849909552631935441825390976430195214226712141180341525434625211613441136913774563802226130541461481410887090532494931103597572420915731215675275210731172762312479024171660930348762528805101493664595140210344000419181998084181883802463447981406730309702703954605151688213372924605252453723722363182650685188630479507331367753965742234138474681967234191153847642970472672677730393067290340018445547280361576951510978838239757774567225335218730090161110130112382197204271040826499183751244554632372310016599090464610760467740794052415173327625522638457147494542326331493962142303373570328628657860610015776182004511756406470140222978817567162033055256250249714862937601532116722222683743124089159662450922950054349622711165657356993346294650753462423941226592559137256302054641219674018574989729473374444679562853430942131006413191149591407184104314512868714130606026100260554605667807395532114540232322781436692052314408433296406625310138293928344364771343125001546213242181665990069219173360588848345841513014643952317503234757693436500580062031362193125150648435207871816433275360119091794695251101497219643031690137305426100745131630153642933630067111563422189612530738855333222872009451376626559183125147899117140910246658023667046472042731193409957970252381063651249327333379477621300842985709328718443017072297312660332560511052208429116183579128123898528117008323363250231786580318104468601084741612965183793322751616885328708040652558844479087711622828455921512641713249456407749422044362914701514745431128024944094187843165292225444403668434367186363144105646935860868328794656924223042448855831701685316207690477200633423954210701938429104663014551531583316732426345489609266514957424452383201796313549228616611182454621336272517327551677441630564700032448133326745348468262133156121559804166179370307772042679012197114589297153823936083833885856317951526964355406401171579148677230623437597589753944543163238372977304967472015209197309182074534234333060136152881950644515212024831272532950694847546018897718212763755066899256800341241091201857064524459354253375805227115423767548192970668462835604711357410310482375146486791841773132928159035257411433425921856032320829619194135517949515851443766401545770785544109170763861221305932330470127023713198992217825914074366496163857532108310626555106072185451511258831286177553309770404098644448461573154805048781168127852239561178063576494714284254841037763320974354701492930611811391287999726144242303774746144629429198205247151360291849632436600157036485611766921208859326522475716606421328227829391003302743302470337344040525413130899343766613241334413274310074765221495158579459155548372965328276118443731180431645481002922376413829218552123592604785677252361696402906541488718563493251757470326092476318276511837317115386064074838123355213815117126335164521417823265328744555898475707384024242060935003135554840115047429289157881524487755702097358260522751697229607629940335703073984532740518842528231145303334515370028254110980069202919615084980401566036154095590822277382684235821095816180154766483292212771676043200635869690818819384060651700171551341023453969369225150941547134140331243089425107134135661463597392390668291489923455003030263958170035930616939930020929773273069609000205378559354411603494816121310244823013020511610434621232690094315491025593335274505312752662600139491996028085563286524231926153300180257053001849205502394265947271033643139208207646754505261192409420393583138116144002572310513962806737072231412568670137451719279275542035185192682009637224691865049702822498923372832733523194653391195214237017842481422256121731100852781624790436338662775220443421691493147266242928768104422930454048707218705334135492205011426255616329942232823252593491981152014451407888726381514711455572369826379564862621298214821037152881526243226910880017986838379556815601101321082279777416435642910927305173461716173516255700163884399947017193787182297338140512723634596590674008990583350188655919926645130350629952729226613678708929324534736548222177829726371619468239459641962173541110065650987248275341150542294400631541835441116258626725393335894877556090367611579467306428962669215689351493337205325372690179368475012624545274929371191412812275581942761789598452343326444821124438172432300601602973324652332325179609263848627194011115299291363900348127489940944725302648658227849650714931405066101856814855420856856120522121784546718391134457508952411003302623311293233519921865034482877549124472687125312532693826521109564876042651215530848282542477694250703765368829191041432329309339901152565017651289389311019107040383515144120173432194632420148128848268465328731730429584114975733745376251704412612493321099981345279953133966453351991036194302660242369586775126489261243224693239111030201291173124163161407048577305180528887586276567394572486705131132498521460615211421034200643221415106043945245296931535221448081490390057943649028322032408250485408645835061021134738631971193921984601371193190012353687561001559422757387543112395703444126616697292298399554054378408852741404556606705126114208854837044941966583318145241034352806351071833036413444858153766204305224341994942847560804278662767381282173380506175951592778634416129277353126576756523836186694507625704323449667151455006279781522076374372355434030468314679480312980291559110795180887710673011156691954454514120536932137127012854103566529135043371452218340313124825631591748191957347436298432764591016496104371452582352932356128923034371831071761476644926728863783314292436041126022877334933495202467092304289422828525511602299231736621135843393070552962738834446439255971815650870861423189338330616876282284539574979734693694913612731285451051444377172365615334661472882629798365704839811832088429594381054428071816992470678093209132564954743230141161579030675186783321059052201772139992341467161546623189984508095913257707659079411763734441441574467318110729508685637199124111117164969313972621398853220860141009050214980975352385915424467853605830635355445083018103603864593287628568053680705421828711215380866844336824773143140561724431924126111455375270211316635173048471127090553413305261283848360377415329651888274128115623078301295649228532894394841432343132772923896882286712067241015656012075617300015193117607620005913606611464704416932675535689912641120533971551113244164245290284793246410531931360370673536841314673751719345110572017117825880950272191602329315809991632234411455126915818920407035582404022695488199140425636588733486544064979589217206505531888959621260709423025420309555639711959154119287748039412359727141551973855858628101874639303215480562591632861376095305716989651382671147183074823791019230960545951724103945172725496763612237518531116421435842051319476907402549448197343491821438402683667987777602127485240369242917624174658071286540340216898007444604221673570048043671152922614236768008205283877012435511884428734019819137567405693653939054487633428126471619023075056328834057261489710416516121215635132165785648170376179052463911392146544133110477643242755340224522507402415335432699381474442678718574485716613108255479275456732614310288231611581692260197135557508991380022234999942214587403531934168271504335993755772111438173561738388310700835502550618531445526581650467482613628733153103134837016126172401320331213291519065832167679129756769380416251412353208131903275867720414061285229268905214468761353013249672556107145371081947604463775574244271151684477092518721187138861694147309910052711699287156819613331387373144937613001984921727718715516963402835127123811473966152540629860346380560444990334374022154470059342135342091256113852361571516647328030395242645810210140183325697350807404210986224031438358062202333993632017230216316435194336976557488575387709426505094399144306253062403175218776443704603128934316160098533290121862744806996861640859855572783970077380434321791155610584567323035710006690640125985744679013754361353341937449082782607435411638091069554087485637942772512171308313634770106163904466261975468024029651003791339793459274560737656626955127433412191923276224782607598036124994455560390428515705568250261225225515854970045345392011331666428101225037968323799022675565461402672811639181317019978631352661243349947745558392096381923838281421913113256182503393479733712791386601262007370174115475520520143644456181373108502096846229544850230433010795163343636436675221352300653125035189866451135974726553378003202326721216584901938850925719644210519090650215457801742035895486315799465351543222141214343678187061464921849645863145200204173514220135703462045576586500942974194920237168032627155217251198596687663481240938156160601728744422095123265500344381635406820438868681436305371193245251311154266631719130355403250508472257106542413644302179123430131379364191367951956067640509693974165750452854778016585044064220289635423554069938751323082925980721469431259526278371355543471100321923451204282579564227370564782592615511661685132821006272737724298787440042224420124248115984286265522537825240026625587309906370208083490565539131150027492540142284971428820031307155826114214163674676655586668413837671202380059407501728343861320907453157320259482852333404768775191497149440446504290799521117779929367063515846723082296356806270310669737822126330067712546229178030912682266222780414163186712860139510847245261621091150761121963908997366447077117159155394977182802422137600917455144645273952716305276001286222487581286812601240163847477906440716666144109389717593311221632415965351533412801513951601722771047979120117125437484825777131431074521269637132458745289380332143174305185807586650143114193199616727751626151721479108469265768179418974702014362440495143372357952832212924151014746470293794412470026134798163731110261723880861608736801141536195346708961206819510681178602225641511736641382744852211632890806475776143253634430393691257504448254774964544135116945596316506222423262012192173891115735417447115143657296960404715175354390140851104562865104000216121356283380095005191132981134320204740497534523867064612768155472389681777523092293815051143304621059212342525116293170136539149672163515809943634006036978392019514091397031290788211830601443931105742251787526823505108353082961794011135173455526618551027109246174201596533077265505330992954834576952861710732402328991745925524228826223210472294304481653210437339560832692292215989211185180084191545317533718423879214276666021277825123510614291553098154124310241221576913119130172118872352943710886634706933470158322524955869015283478764554474114496639889238626271463733163013956710380164949184843068712110605236876110268874795567681494562879523695260952174239583102125740259722698311921302597441313492724455212018525671833148246998374080921490673443270353991013259334510935177132103179271336690956206116902784294574516131164424052752436395048917575354617286018713814723045456388313741042150133217377597821436670124311144061227551263557792121151717402925448221666577554886825299121224655277513116542135161238674621042965160331332812424760268260562174963687631453493920871503704113390803832733022839156321720154614487141172327895314561372010590181118986403235780992248300187232691361004360904913150042515622437981719897221837702703102014153434313325684228568087328937241576260507113371314553026908260602573876032645532801956001411253223625821809141802312229433526042900320361568333621458833704196121411156996287123900905558632497850988016048315964417767439142160831945134931087949938347142377902240564198790133300179245169409202888124581420954753724002547116135421610025989333820879394906531881981165760996153396639140922935243648001575437080639139918151289426651210370355695247635131223967477835502171284825220363691595391704362020102322547846034134011711590280312246711933343324046873964882211122916527187848273178447890310198616051546264146243509012560966572969652074172333336880731219565874222401730871483071812810791504761715864361760052249516158763250637660146425427551657080206389717353072667347242512952607133247061194514818385162851562348490572547355036723475113053595133874109190923418597281638143936505503140431620424640256706887337045619344190211724501004941433124342729416882498417494697255333595563019855181168617619076920807143958961433032827116654522799541110446304962722175220225589231612554774700938010958889182789485341662248361595797153017321376350945554714019705253240627173204102622661227907191170726075522220462822451058382336979836339728398200057871964139627534966976406775071639086523647871232672729667812140244271193059428436507665051192009773291015300070347809376744220538572450113269663663532828508937005950879626927132138016372150411610621587340443564332172981361111044424222923972024116136811721182113261740204888024723819335083019349944056911911717551915275414125011953277894233535269161458872409424821524860335774167243742773195406203026014294652062958781514078351243510323088473585198107236091291826045712126382366720034569693639361401742927227417268871511483535278262103798751953353763863587861703045141912128159774151967547003629114344348255287952211646211893315822532204137174979342005771399581640350070259032062727252045123434000131818161816412596498617083329232456125434241913702513187042342804348877505201205179013850536103726282058565493450186571442514818792622470863467005843500274776421152069617654214021352167882429752001124630761204246106078497930939213343388300470327340998862450234487327335505942586014452166869415638253098016371928716234515714420835629725789422517138466333374187244812331355264818809231199036554429175928039640544389803194120800464327531075691542528761514910309083057779734734775468506095527917572734343534031131131589023013275385753506136156018114453604662389450198474338765234716775185620817178139247411881706994280702864322567417165680387789259168365865130732159506894335049372483919965697674987269884255871386924701700522141821164213524113598766434442204576404329673132100358013281790314228303673108528350349439837065836041154537755636304054836381116838703237060821056312559626582116130102139165051692210560945939347261755516327078132755631012017121957271391152284168380230785303312742946383534251121353516134510318315977532418073016126686087635174112832169751778235101105891757181343458572527824541457237535246331304029782242121435069043241366562053919129423255696168838311261748764972031571316288140071134863225371783083785673491871534313349926602801815156848564711311122240363732992423784387837166713856160638712613656150453019432540855306817129260733691249012736211250171126154393835464037103804423452590417525030510431243221202631289576639411249635005369024488252034120262006883223242222749476554632056251415531260651474819468624158722171252583424551541927754167096944203973860534057099572251406064558275696612306930931594444661595734844176417870370323036176601291102822223323731239120140098244222443326255461869842712021758270421714752407028600215782881437868598122026731933562423127418413837661239702263164738990370205604274248853826202057811243232745230625777653680940303912397838497434059566920204719624319925048243144957676453601870685814367721273445180713105692245470380307353386463065966519906411796016224790225560710803691693973775813169164376892787221338723262393848711918333212815301313681650457551081793486967344352959136768784980411538151983427397534660961748469453369855703396057280278582563124331030464804442256610457392783971723101542602048813414911461070427621554612595231310794545929592809523488285192879082459910234403744491038341722550260903524587201883535111511026222232122272251581733545806132555831417433102094485555380300890425168245101315137103563331438386744537713607772758908530820023663862022885687445822485070606420557360605544384065502205012725059424643432636577160123648021990472381728513295622064246457197291138940937372048957476212231744872956063738826136525847697506493776404054369679522275501050625225174974007091135105167761312806137433225203132742999533969752543925365333124767440663399241282769535713434500349236117875097284534294521310528130868128089001958103831190142474801301766113631045698126342969767811180241517104341623539144431041112650212115194759447375007844283292465831261237757255635776941665092231363011107428341224712491611229158048575622334264053626899175363468872917942938249612231736866504123413317854343080710101755726386731983913228421511846628378305523148212637120412826114332333813325952799021073491704432121502221663706240322613148118448742138782678670980312671466313532373844298768353219281366933377702596220321401956496692058386793107623792094876223470134930836460160446166676520447522273364475074333623882671277942667586914432123413346389739110049070400101943268132902196522131220524558355774615511318516352335236131068203010223102908785194330626544010679990590377612206270501565817634090633295168956914399223305804673021615226051113212221710070270440505938352211024544104511668110253421702487496427402609208491865630696212628215681171607249982595573312661596004963921739726096867807189885017943310148871145843514843393144519043137048894890089057849380128096288249587286141876049554054294364823753203241573417766338199016498211060277704930926121055503611520404640770917318665120443256611884092372326188484634164670962856642277380321166395849286919015538536835433806142929014647448962534732211149130612078963005905131520458880173562852153906117356154749622494552140642193709943125943096149114062715814806032672094438414029478941852611436348191157763393170253110724513430424995049206491790143748424197823132176296559916647965073624787453185858713189151701540222010823335636312998197521421309023379314867186604471642444604359641865479519706063232112133229721275883406082414652874286059118522247168102175718092877394882472226388229727332511717840122121131695664420211687770123814956122930187486773513067380161221585248331907117525167284713524854141767593892935226353026602639320944962904498579251644158621403490792055974564745316508024003932231237311983832244815302215680796871243033934445182031345403889761237927272164792125970124718476309442324135614544411131832878145567193442809420825171648220435036352411037321945845091884262166655806831910872289913729232695861068375317727411268261711435701737816145876935142216265054161301817053839444446514820307785381941202014684002310497150199364721214521608253668691124009055011431760124269825968810086922462719258040472155116276377502061787207319653207221183540573811857095552512059574321249214784797964941822628355631050204061537223738247750690107331884556211169249750645280191502431992652493753665643308395214567640378324948531922431335072658916680758321612422189195535610173145226477253979212025983069038334586559791643731137073213396167045339076264313234124695606752331211537268947393611250376394558921133110776006751452167426705821529680921293466837870822221123368477910745381368370675968643715450163971098402077399304886275641541159934875976041337308894652385101539232791217184236873249699310125851555972673370048817176722526788676571402112682197644346115141114308226792316299714984193615201753717514201571808523425845679520204967640696999467940416856078702356362705678114235652005157192671401559309847256542196252686863170184744557010400597325476188582001917965290429178149121501400364583632777893813383263255523654807122173795636110266132807428721228193131420246122763065326260692039814438582224142778004939314854567927418914111869537511553114982249311396188628461754861348598234600745520118673333691257395621325418210017431929120428118987536362758921630014028986719991572544781384681966389110542325254100043516541139053182531638459848271200392986904773204957521679194885176336691345396039965142868311477092022552958249096146223341937996251739843366065259032715130521521899597409926614095842407842016726036259066593314344315156251201473269484913355281112017609235831035258466103132501176375338619603934460171375796896669050303384573321374280986411426933021352219523243431813256045453491068018798082982640486095276327316026726619139041786404738164264200813513662218874558494640530442619355755642011675171825387185933105025201217085715856380211905304508435370492864254751939933951115136066352075468764053802944081137255448721862717823846417924814332426021770917612622334724043769058114601357664118836426063010038853285959140810538358036516104103511186845727568113993853634160536608100650948751454820237196712366495015456082247428271714195002081954768356662729719714069363296231298305394234991123629315559797839090985552675276384258015231965163248580422183154479328724369703925153461708484617024696537544822531322572223546174142016971236041619376929575133366436136773246809608081499701111138035345651605423734945328505353325565713851733954514024252187791202190139814414455212802218291936586124142249019311368835407061173438727348098120212110141859428310837518724668626542229904353758106135506162410084096568542648356566233701373123351933160388173040253190334128005720154011966677654575536733244035317519363261645737588878633424935349063956479611412228464282267274354725572671222302618006645944702338124170916996313122210915997132181908673125933035183399297671612844485126908657128042770280211826710177402527234563475240348319167418655670705766271316406388504165147053816714502051318363171853759830790825271830097900832221772411186784460320880141222788141725620017959628153103616322139810143453582124451420578273723668268282910183402729635364518300214198311325320302819615110043905163474026312228545284204240313562949615377253561662707254244855211702540742464221987123313540112983866620975691434554360324142229616704102785071363299295576447463110259221011693186022515500834113552865340456114765112461537630473033575890930310267512871809114258563158353501998434701829702159793002434029002483283437700992316973115354775688930794906581402113568602111929077474270934570103932717674772451674098153208127220877946237662911237841145828805171091123537915291453112835110983142553514981811268187313580743175455710105807762017754827282480681600571360674443922622032801389133452341118333033275705762817050153593185494114330931041367191404265573641321021535802283700550789205065755373240219617868532517944778963517163873900173323328784262811978537938638132063210376136052715654643443523101539202654862022014775637903008131047208264686187435220031829776215303441582497786271843478667032131051558617221368561274397437932976654490480162355808174764414885551626320791224944465768671819827473295548414173165099208815108632258724459317604212021205186152080642149372248189198663029901308733363840840367733958945378060723440690729152356060068813645442425461066631018774434686827673216165822161624026423626875109232057448890404310922071133557661193377701256774092122182729554101800455868882352321996283515591747293407758901668292248711036628562893150211174334671224146418413095413761325505039263577016217325906425124672918946719554041672047250521291238382277621443071710636031222983147451037413976629319078920088184991753005114081311434922217126538202449242929213859722459521865805202439547605885170650924813364911639304633527561104947218429513215296053026452258555296268564710726715255496253438892507563370870247192417763337978311433452625002762322442134501022423246011305537623764201893531075108710402043638757072827541625226135817533254036833327837319163813242111234643809930524483306485876257659226073540153055044404310816296502181005906413524916859484008334869454288390239499514110232233804907596732511866684061778456372989732846198735796685483940761885991022945224609523834084161042530732119454625556830613110430404091723582695953668713342157522013514582331095812590529568004136141882114690342534552584247983565804186684105322701577205248710069699025905035336213110895873412736311839191703099366630035731010368190067534560922005173626674773344036257227596211113232511394657211646501803490322267230292179767348700181339726877828484617923471548412224356242116046128237483974075144388982131952379493253867436720262793670292952162149627227961084611289211161240832816449247729349334518294174903764740271747191622750191963388016531272314655305360439058607373499238630683773123954829442039504301954524165038115565861631034875152937145210534264345223260722228261107693813713250717251347919563838453160292813013165629242464149161411133468499647558517678074747365427032624430168446218170591188023162166579252604115012322364912359680206279408212955162058257990632320128741384763870222713821829612747040571271253249481103879637348815156608193171721323608922815239167514990534733685661821238212637696417855844191978935432701613842660551813072254961273345367055828145877643154670812341391791279439121016479333107205190765412231033543426446349334601417112153382116299781682157485964871083779136556433645013128887164159557557766794478369442945283079745135113468346812304489697353848878813254255419127923111586443256326333619184637865122338072237577851401571230642233340715865184133511230371350573957815277640007055615122399395700320379170535300052713343646286380139902653312021138160387511434979448853650854958225066351660637554162677904422572349178505725278917057223365733276057636256461049203975684669248794101856285790374711752653201542558405234154848027830661623911131071535742356117062408520439458233524627500633354835726915277414088602813304185737454704686793019001685022458133504947465971794538565068349448074322068575716210110931576283127212414312320111677512428701317151324461161705222576035036023780309544607433522631262482892454494144494458767812110833110180276703515017202580418555601845556228332251242876410432160723764566460711990755722365122314171301269757849501118603671091790030580153152417522742943437831741762948374441641737742447951416782233536130460650291582614646051039836452283104682106024948314529323770833902811871211454722815451499753237427937569278326973012203793588989640842665000994134426240546433472669753148823387928750742555058275336371433146047399173540308275137160018862674532614911212855493443896702420191897263471931918551813109995024012200761381117398378916717363535128044432532024354794168112186351465463596842200876851153921435246418063914029612231317496848058325787630932182023141341535441599803366764212828600111477337294423704174603059971317929163111769273371317253422072665033121515338820749112212133433104647718929151531362339579159368726294538154134634181289712345978752131863135512831577853412310133204679281215385126221861717164463707239145739080260457280880904788591885624057622355223884691968034142150919140969251853979277707288554611227727147558005182482666247412763510402452347526305506394776314243235216668134462252620067242684821796373532852158615963241738887732510753136944725603179170443769021662134172322665018130438570317111399447263102860059623702793609768912943323412240122345638846701733494134857005146341922823477070341836024003517620416595693990183318440393120364151328866723175855714687211851481017342413694218873320561778253178834251312088791555414280543542361696668968453522897206032207115594169321655153722150612386201899358795542814082211203402597456663513852481581447366304034192221644254443496303147222529861390411753751463833902718034575912471232158132805290299319065253016553837661362822183014617034845461630131399606156137178694097329612312230912290796630242669750286422641891207779916807584031070489126955998327143499223064154525191931240073134006626023856783549176112555641244958843461159371201215492468487165594288575229420715878094253151404608214774853471637770613459076916359321212860129364293556684221693244529084257000663951134505332448544465302273842790123226300214150352566177172322437833688376077397270509668379565565821965446075149080214344295902308546312557295350825317036824922556512430222125288384775431630239565807844524204766505722118481828924687542411291422005435335173031486134547580604732213445756646080243289205013526263365311919232110174909004695317378050075817639018305575226342032888008342674916782713407456961007511403787540533432482845039586034370960267613199116761044279008703448794501667555408664548650813259125611375551074217730733383407246007191988053052487621304864825111557656225131712364157782196493908924148829278979825715985410015241953498853757887376245283854556419969939545647449282270911128154783897308597214444595144413932274762795215387722838835241944314246409961142154828230932003703112185665441421919567276401986179360093791236171412273562687253386125624270345071517159127556515709854928812653347163621947040829695120128230005035645930131365649460011160773432468000718403442439174975637802075227727772552936824666821733187203349225110341332952581717516013549763201941304498946812480614929229718799906145340657573219069648498277922014252393855282515748262914338810511007415689925161792163615103885241265594781239965299299856063712615112170204543854171438631481923541972681804112211857422649402126276020129311759818213008116112435035102392120973157928472224693342358243793789651631501645509239524473502222631103653150180351711318400033343630796354961269683501254956706157046260432257038457880454252925480338337145207168167812701671452288570314738334304886162163881441731148796529759405364529250095108141550059265084444168438228554274221256473514237991503635697252732199482409557070711619139854291962773295445568922243418920934513227931748472335158713409215076133575452393273158132231544070693118132542063010295603440630095886138388771874314236182984124610632643456912147490079751316570216743791552252229498021108327065060090232081683585400311734413909247848889965254711186796507446929452589025592035839129239764353601457821311226750335081484347271344781539904734971317233897960565172117274002791539383537511313698224122460280748983014695119211074947435332117932512758647201407514205766180240641231489943120421748941533646111774832582254958667403729481423935084252528256111536374375512980972054342856062621514353010741579184150862418025415043086371476117059583401665506150903305163498417305134347146340611221354850150384212199503124486617448110212353457522010683940508578486921309207378292565771129147331897452003286641662794350845405966801693783053361112907902295375915871460637676108932222491719823852233076937188913523359120073319024416134205562131524586517892550506333414419733624809251777351061931898364548318293793151302309386623922457650072222077573142110950423324328634203066140829678154240820025330280710400195505592114098305518729197033120865626051857430032748772644245006690804361152602715235395442365704533390255502825125494221704255292321118743848434505734292513530676556566745131948335208989713162645981007537575194116413018414380965427208984908803317288409368011502325583449576274726083680672449865610495554743222716231794588114303518058353652524402371063392884163165149862875001915332050445480019729044173785360060311046231432353006137182932877126956025331972192388195725460830184821564689924009010945110062619610459500732299778714355714969681050055084954657339924646310727024862847573133129624844952609527387062452397344739156008743159194636130808369175730733955487361572892532234661042602973542247486322985771141404214619571223060163155101405622950548486332268553375164992001355043721489599141062018811295351423409616928811631503501357460202241355922445706719528608020022798516002641284917076037912213695797240355144315006622945485307215160118403247101359421174972524169226521221298211994815345980336063479232212224212705343254451124244088872881560745572438833174100525533721437766268794571866542328036226195956034724148789603069249627963595176510450930438433553286568043006966458107624889740542216815837445440304242363285640365182187224422373302472246943662673571801236386118771360615332105089882418543526228733699237212335651027404414996561050465310085441074837821109391221637297579162431492420301532702147616068402211824737202659197109379521626271492765947792047386131980066234595127944435865277292534794011542912223447511932027018305282453831532692063152441662804146973303495080538406111023138540971650490113116860114737542005383374182448616532455828556552654421570438585328519351471425253626628252813266162664048812271308675268661233155239209039405111968261577693216324032578525349055020361939532823078716544343232525452203716903419144502955056246330438707103241116853737335454434007249633478244100414580725718821858045366567371745772996610952711465392746127476167351164516138611466800247306020932739693662401206174206212510991124568583582117831935309648251565615320359752191826401681063305544094333093832788798886541566182804175534012651141351885829257117540178005423757691091551223436425199787176372431749789445567381126775884776530739093403514709705212391748647729431830650563312105202273193419561607050953921183538624196724134261046176036409767852801756033857473861412361664732374433702582303037199759058523232148153678974515054639551251526757639615302328518282726756923457259347370745139773353694144413708094432852402421251452122473114509158207803128726526101442460287304714471732338155446475227453214925459312416196324332405624672032814547718225608321193070464110316931241580553533417479827611468113674407894973430831369095530186678377911353545862153464450525271488633245016451500066911172577359253915327612191872690391781503127317656688531016336132490334541443326237682326623438200332162157649032638175213971197358991253724277053361040332926786419911771650153500529152537931434735747844241073209002291312102879001788999447074124757522678050190356874718435741130641036211136452514320348405842440191483169058415826120389550649630517902473944332868513514984700047835769578621669293644641998886285986510401180044550735173703004996921492123644292160526161619471419772332298738363442583613201125270578398044138922219509626713840410284134363914044478102812418463048301400733816161011588496674751251098536120274120175943240360348783822052652721870747372932144211444436821650439648547690668925625237535291695353431188905456716364251112275623463126223115258731933262727112624244832124325698863273122159717275359151361419535522544973221206711131419445915409417322351092253454121730948524253641170155351964649523121387849265151293491541660607814992326029156111830855241405476955974482122516446601152282015604940833560729255910513918725791947433403111921524423100737370430523027133452323235821107013626742182545587100172345545234803833413363622554027637603116454042272343535208988603051971715338904276621244928812591841757582791113280065292101725391404403737163435913505594502402427028556108521012616256682411696203484241638751212751974337200113177413133792012474923024121843972302819970494997375744147825562440160217119658081072728303107751150937003527096900970941490926892159664393232484226937073215771680411168033631124246034837261026795931711469728505054472585646356773731032171698462314960924655688773956292925338018745354016496725157027705451372441265660274166120800084158563334574986315214658713001283825291046771984519599528545091611461165724041708372277100223582028103554563118549982762141629562588027292324501774367611850442603209112887143071113024519825581440901675437554764054559621356388263340669198842053150238565682355331084751154326413250532652593444464292035481651743337070275312991184029438016093284522692498244011109243254830688072637111171262322136532354802543234076134079744117453423119619878612943745228579934558051707913961416259550363152734415082572130720636224170361419712093338850549619576602934641372430813466555522416152552210892232101427711750209804569230880361026301181233468125555172932748880275016714892827941523753862013793452292224616421541752564574313580290903582208263391655191100492101467343839007874028147124150099431540343461379782214439515661910327503027123706844207632483767131210989908120643193111371126880063219733812125328696623172899721800673979579375772355899328883516314484114368159627145942642834776777922213490368213436988606294068903541436778372393968527488484335366738175463945053150057904504612942410471653131617838511996910455866637647483812260268113315946316179127217502423789911596056475887947754258352112031016034423227374649533746072462009987814103030442286653030123674700761041101343134772145513966195595732765423834652200992457064085327662051416342173206387921747428474102362613645105985884588818546340541114087564643928744720084513403124615370530029793212564621533609040706006331817442794564852563095836624813858389728044870446310782460723663779694845783718884131035625075676324220296606132973371445327795300428144309696027951666487729214654170193801358080919711243136186631417157278640883187786544223772353362948853829191208030261172045378956203215924861118543332039223143136123392307292353054745346750511056909621127121341181546818545853315456155134448447941251764818949049195280027632697023554771443801734509218464377256679154454225314878295553535163132856226248642134230688632134563786423629226235384801429102591827881570240435328630233537623814532677210462138107719170807514668449382593980508431664449841422849202135584585223199404540679982146819251258961128425478924446026732162924348408356188465191096568985545950982342913517498510178091750446830139879622731841103533330705219582145303887149444705194683114233260826193571996253220454511162424321315795335244142112352772502303873148667825236160940156254356043235442885374364945657834542265920699218038234562443440717192802310236383714865311213371864720088632281946058232150409572311083008316251721027671022216869639247665444742027520075757204184632798619821494450434235214235144101411874253072248327029565244096158484165631584623053905402168206220074621772209588423617893283199631515917825500258628826305126561405369420074063431067182322844149871058039576502294776640324035376425565830402674423603117594771176600474184173504995876511289217187455448422536642545789534904437486472086183625445284702408444132834298143323823881230132158348035462666119801723491415116572987760462166176236783355075250243757441071771155515390405344432051119907258412712236773293881145216385074224575137440382283038508526585241246542649528476214502829912903494425712289188016939136345060651686901255116449132023651063606817599417111007353154105515193819012313201768265512477624374840967436241504943765034490223204688653025018365357109921355853877106836674111979088271249362717304072762146850212318180895755661302020112922814856193899707193467043955253791134332325041577671793797175317765014089807574379669431913347355040447836831651166010167651372074713713754125420051170174692145636056151268302085003306037343105114334848110481004442253474424785595325916399071154343505033053035164407699049730093754131640333441704893986984191770868642798817865471464433210677001173028434000383112412830051475024325401846124974073192954115434028419221654369526592565786521375191083500238006000621139381362126690225229124616262301654112514665254966837325818285341644373246412250504463252386712148764894421791036037364874439033346031251220622141362454419080897337765244882602799653007367091379421427552233045882930842740121236810577375965067717554197036133534281211316224864114674191956101436054297333355147218848733053467215159262437147788247872567245909411114604879734825552535338215600647212213101077516261304510799321113312133320572181725212394397741677512234673532126141955862039599201203654801665020634240856275425525075815864468892866629724430814027478818263061829395569114747773975821392211102103421112813579837423789291621249912272858327442351114740936139179052591543933347043247331953835437775712531812741151666418251305842594303202475217428923713046390879326772646458146445754731353340446139652318156517622215183677958234199318192186080603240316292681000566024100140132391679561320111323923373335481506629559299109310530274802156323884144864973114075211218912485553749029170485078264912201837790730187251225448686126789335405216770019252391977458712706120205605150612753912622341386148372402180759489235555610101845396146974152212743884015079457132801265908518587242595032574140192316346815766162416122696956314051837673497031453304064454513657396766306811176552232220205901385115142040613125230270110747827461810825811793571325070213642550890261721797411137169571620036054027165409505116932563662915333733409665210861326219357244634253313916380232305910148714714223306104067040805945544024884043219174666027454917256420518724770126724995743246533054466107224516966373212405526348340004627217931749976985948470958291235216770131182211209857955923257662130270749641459973806112177352214261564434252136904646357614627025896561524162254642087162513812632694299236825611280463040056254465295325794332420317337345113623018862918006037269926279345134617360463116914592853321213517127230129775803187983091364195902436243762218224854534772504520182795253931483322252590981220317759228149025552634754524882178085002329165400251790437827444813651112815751596795710940271433683803774517314072463089729936360366770680833092613472952233720074286027790065361396735184403603217760311743978923157455353924500900214541990615684993485309800142968431292967569115139325882156100979132708536397256237952494361341613859457164684161992133542315848296103869283943840235703683226124390604815459304522236845234496631951125377231648151323294024684027590826335341017277083870815083832141555361240558874909570114679034331881882213113600601291046152373972150261998672686014147614854303114135304969271124313220155302079117356651803971537206055534444591687279711570217632746005528658222890100065927123705821488331710284210800354232157421222054164341536217371153768892180269846731480134346484101028387556818411210880868845452963179426032258195877685424109847216550855033839520318158334442933210312357282021212250384601519541396353321860207493939315058550277118838859959201276661733716538653020284568373803505561555260656548404645952554554814842444473385131046997306510505360620911009351863878262535416167315671817859364694469415310051237653008275411738813309075666492668679639850812447770638394361941455691976612869149598567255773520361419959192834543409914975645098014273279445246455667652214413523049911560897205316618223222157593014391102985513173394665433663503255555107704826136374954067827201232338205323173412773324925669532276673072113653825632711014105511775313774290156764704744776209292296585259386913130440644835237513993841902223025044764738532179813092233195202777595239019648325212439603141534008185993292197651643751487313216533635576410659844232299208368992808664416540628204433559081953214296435436252837815746291542090824654161635211154622036286111313096125811005363332546547985630875092411717917772503398605916508001211873412318843111243535449073071357702294189503476714290140545532834399625433244481270506385839532926194391137721331252340123525482016139496918668281424142022903641621501054233832660460306222677824189672758657826052371330000660126669354333189765419254527729506591225881635946024393121064308630064282383668479377636631086257161117521315121877555237169577953251162274998084429385312956191721767697444423969312724244113339451451379183756671874560599242115095232784522392139164449224237291944595181113834220543093723264512590417587006234604290859187083523020994477557179607831491876188387041811740939161176771189614164118348001526347714904256362764788482515384121180130817174923314375210209027785453285196138561204369746533073745647494330402200421668156331700644572465712954808321833043130324246694451314618001168434624027971842932235445431250422097590518328503900402364527421603481664718397255657220104617329815327573047321790324238122980668383374552722071748540073643810522251260062342820153345367004237341594125309757546401312470128766314042252501828441225226482095643014102611556671173734816437861502025318303509508604835799427457084951517056304302194238311605544623118463777063224243313316440257609506718316449230651159817941021601503867223137246651602610246831391834384081570062161071472613483778128946136878200511239932550212244403086114386383853563272173402935923325485257962220263410151693249163216101860521300777606669046741814823109031401258595137627831374412232270302242151312642531110707076987206018497501377225222624041391858193312152484566454198520387718787231871782939846209185804919556213175192424708904306584236596524436231738411855306334767977758310411212254944722527071674134271481336221952231529096081170119362044282426582320821302654630235716922726826159423820267576461153060818477338510001911370893335121213503783841128546511543314218779731177103371231156321988556291597371175230759812587418034372845192914315185347216744042966106353305170656003252495079075477606823299316532512221268194304231126103788279003817541696153942300511827703197740926107423811829189360270421532004256247677322202252991960017013253999310480128654007262131152515383554668373374379730353735394580051629327820189214592124228699585633946053071984195537633043705735066892266721617119774138143307182694195568735835333714955051620164966359510302646512545757348132968089451067175677619717851623529147050318387223557734116766862483482576360643085427529226528702255361424318715238981979331513134771698190803414171337259560831199256758386608357400793373363645737262073411323118539344548146112584517162849419124804122938451717813497417533621451450636735534278363526985956358014262588919462816272919722520568213892450433180366304283928930184032961956333094525153960086989320255860251421074930066110520913673153416860261444584824058667731561434149706535009379470110426211225685928681264622581046128234221731001319533614176071392489327467427287939280169097447377876341767290103715936357234156114633750231099104046273123135522884101449128028043232207684726134602033747641533055108272082167121668874960742833388589399952714614559035526198720303392864815912343737643487426047234895599379547032251168921265311444532203627964124185443475539233684737325654462248408608105722137428105452160225827014221623012785076562269395438715912446178659664824265763144803447489372302428409591722974093203034251101922238754023311118384031130809162731106212100104028674233016424633812294459511343946098352452214663448973246624016581601534771888619272758553270314524597580921901996815144398422664392123586255202883052769163776233395249104899218049397185537760080440157420150548844121123614923050510460112383752216015315043581295420136949145914228574128283665880465122048190783172927109923248071858463696100674951847490529219347410563143031756327419442491231736776088135151551108708670426506446421250308995279712147275162100396579318440316622227701804583131482184407112325129370435012637825329423314252754452181834383171252052558198616332102735232778443252232646619814112321457603122317250700248283229778659471053513101009326358118348997392768114800222493053894175563773044334252486471480502555251911435711820258625413215471364556645621990918134293340371648943314358518508781533368126232801363022830714624170144953733814801724033772776636461314020121135431139011350325141706819888319103959814229344528125337215760333168183625237100225033473472381546915232038451056923395721155233824827908608627162824316336099141848342757329440674868206646892577171432796486133623192105469940379261117813353381101618673962404587000499868023370452888625377154525104219934761460575493856349133352754345177564892802025627296143632420707980876404024329595497690797958378097647283080613196453927417798862898314866376677349241157681100175142831352169896096537650565405166238926111917276004682666242918017910594281406582562537436612522424825965375622553781258190701820066699180382351124183849715527189485455348115217873693641045026155335123682437162830838859008669088924916829501094425462274704247325536609738080254116890256564592155398765430667430927677697145463941342038133153045112491879183275795208642190716648246075574545434735298121897436824226728196110771290568894127249694355054811343527629118619243613799334130210725739817358458105323619618957028451803016148692392870609223358371079788771212984720200010383554170772155216323568901807618978577745091846434251116423900498205051194992106816762214339244112121570915024333723690898519168141230262302443698543440180849253387249825245552734585031156081112370862514660453301903227265859513819145025130180852581040225636811141706449173147051264224543262295554996048372738327632941980104957154122921220633567181931911513118115274667173232310253166622806156222352348418301122825181309930269223184226246556218569231011256605573325375478934284364192676165859679671816326394701796124866591167617236963366392627910322925221577575659158686024680111505379135949772280988964606458014000026426234146836152271952773571129132825336756798119662088220988422717332332600615538112714287657153198622385397729222444315615192440974314042832175600619305351922931118450183215588159959610883460345413190592968176060013512732329410261126532525576477630977394574401631347744264585240548686424796443974212828652351145703381904337618441758341506624253115976814591731216013087649114364651907750023213192212524684892792590126831951772905632271940136236212240018571846659156774478028929571514044537083551626564974931899762817464227137813100657132314890241096136062602142436526098511591746342059272907018807110168635066643614263871223649352433886220762026569544186247184084435238076484805552981318171493494413226362059721472488538911350021058863556060352442773806133825784280845395681619756181335359980431664217577799913412092824320401856118694546912447694136406890648175236235403237713622127275283612172486218237955751122506515701174350221358117926879924101132171886330144821202064061725276527105184543653822011182985873702963684979871055692632586614088354572452541101695359223598121823675666572541243288911575796021711348242105224112264434969537201091014702258843130917344511226771360740112814097446182842273042143695230648547933453512731908345275762675582884054674536127823068618218726102805771724655744994431992085550975455119362728831773586099125316789962461412098177969925634481117076134484121510074115474369771888807256241789307714511633217912966172406655651313041295287043321446628527685775944124751412198210878403538639002259856093479541511424012453645671821902221535760663844313116618364564004825420654771415101464315451283682800974201447554543049685366713939379006107866758077276884791323615615641253671153414136321449820462139662160236258513132524223394456167634213784366388414441627231841325129460307813187035158280132527111172782755612238651029943328705427192155308012082604398454899710560924653264154131218369293056918655012830655606498032909275851161267804298158437211182567419696791954621349105434467322253279218279222137866198564704995600098928929667361081196155958218212531565332031635661605562064352330083556977934624246230415123284355704353038551819652620431651222303341402913000947494273849158092699438711736264236203645311156660625454360237421144889758994180849355368531395511113704425436401119452257433818172998623900403466251941275406761054597471021099657710824194512382591448308381554117815755205817266463446115322173978144664376127443934523321364933756423295684538576665744760071323711718104429831743521392588536989116424372603993507259594546185575724405762122097136304324300422831553592136213684396971326747183501220353501624568595714744111412169737795278823499245424440113607521478129284905095630492084004832986168132355880189516018042319513799150261252202773512691238835561914305790628316829333323151653483133336789079355839965618670716234480465937300216357683621764010193611818113007487131593314733421651112315046295256780165505312418438701215388611013184301565624345850320106657414331657590783295475143756099163223890094261428371020010353104419832481613980329224253902054915525591875547486440547853248134331026830651820623499763611283652329160655684011447811230425812278915922062134720715743679231488435926181806204391702817833994096345449817381901914770825965646160464133926329040484593795843437726733176621555362496472133673640326851465106875313906448515261920403963914312772632783463524011051638783236423603611877839331070816567149528187285361495245529046050527647781541953529783711546960616432397539825735452011000833452393252092384441150473349254452311455518899590244339660074314457476214069120621705264194835170643232776718645236515174219174518200527512114109814323127488388228240134798317018215331878021341311285988736880009428226314183143483749480592838260305949939627611612146530791604491115703376360506344256152340557637183350006462097660466116224962635344739232917961075121405269118802652043601083173608769661317200555752209651027391241180957604590135062113252553840977075960565729977011737113462610457926356322440264490010011357958183301912249338832166414423230170339246121935463163193356115132185166555409286532062342427712434644101124629124181446922722147500462611387243328222310205561764858107554722174158669219531220084618693316114244791144410700692879276287187983942409237252180598199425756518126946677479141165465144145487541334739915766571555542935421118618262127452345201103602228574746711114276387512169913711188185431959723378824011478228743643744257417924285389545853516903906159891992924728051717233893488996360128811220737736992842130215561441282993031563076632103595251569904439494571117383512661222095604003476045671983344417842643915175991062934653021633746334638727124954593800841449850277922514542334539227466010518128354766330508163402692592817166373862935926082617988016247078110632221943918642505375442467316655161962207393830842111095146161339290430155053214607258655724984168012653495111731269643173522438914576231617822708243410841201170747278384382736851797334101094180409043365916441955085404243481426859462147634711214431813187194305164727874645016383440031243751176090437621760678256074616281033542791394725566420655518831223352241734639738218499177512815442512626360424454584795696227522718118461142477527685710104556218014434908259095493336828492371776655425232414065794461773424372685297091311679120858942012373783042609281212020639742491942852715333259065714763232292331460581541327062295711315034433134489272850618828073582163483352221849258504202714103745296152338568019982844710624959349179130974247072188123108130120095224332515326441634460331864147580784564723944299241565901179033723731027604424783386156748483329083268620289988000143260660672794680621212337433585024191473275730775538563518698052116378449080862266050611260458227474862755769302794646507533549651018075004893023272286942350263988261605243316312006147143711505841729871364431658544362342114890226549557866737673118581232328180199570924223171139509103273934430146795753185336528960489024483242541216370121391184410004077832501779091521213588728009515765542404400312515881428806115311744334750620371652362025145932034341638518169801272971342016133751895630748722584747502801004448446064271897886694854126755172283292329674803453841993723980117416526677405152819428136615654032924550327059938316120545593164251184295319325804184274290448787877793742985474917265078942811613405293211000815858315911844110905451413716576466019910785944431678415219799882297052855145080717438283676566383725928403114790925227501891420605981174626402487374315742805175682384892421845306491610130300982610144505976538767440310118144097518297228731358772628843218490034216647535075639200137675272835841446317026950442087441296014734197479986897951130244479019065455118915614670074238063116327737988915863914853072789031976609063406247755036645526431515771535535000165239441958323112313636910199842254934930615637031744492356092104319663303700812654617153304836831574323137494582247333704249971238531438081209776274695301629210887735247869463272742021615294767072224169681128634831138120807551209647492811138215744650294334872543854273454291254151456268237154532106943210668332956634434114539338812033162205881503332419172616114052819442771712343704411381941374741129994512397658089970237227437764248015801629452572338608378571423799063922537809177947756917661119024103531916332339422141430719214645093121537213531218465815205949148439807425246610802013577224919513010300380392934468282336382313931319742091761331357073054590215865449759659164324269953394373886452490327305347680126307782571613111202317188340560274465070198485760199401890265533982740489381790712826245224423618590676153912394552630011103730183331321424931247526395388862466076306440123118284866202378233019252531663389326670965121152275804114425483648025410746830307345303497916801346582913025685614535492622760512202814124713261252516294754253652745306618120929819643143221467776284641255328034457367657088617332646129131726688522400239134104663734322164694883934545709411647552899242050919968173543472718038880849535536230717303147062845160804099357833690502671349495055015456236890930330054857371044371318674475671016046973079455097524566259363850942452244128654304530490295796366396668542961673402201670931952708423311045484850172746105166661715528830603242141718182358616042664679625479519022452546281801713338331522494965044106611358124977766632621225676113500314746222536379226141624304453652538566862128642169362692023929628626731595118326115329960016854692762101675851577258415515401104436209560849634371598238159156252927732923346705191495306640047392636570386990348135573597342544257441247671032254624371116904057694218451153481727161189351366626651257227348112460962591131314363259756930449516153177016689613239553142830422374005781855347665093179951271649053168536825724113184445272219336740480995221751298487261704213382532435056381559045157022413883304679459233492056018689705619670115481694343530845450821049207513586235627120535464777182335456749354262117491123611420762835221500553520950369168065566271738288602230652577003944204440849610623049450505492865677769463332579503790772551281553870096801558441141418506243102454747219710114258255743653070794942115907383763003861172615115128875571722034667562600317762781815095112205253552217989189801321211800298707781054450598652715227560158423356115345001961894753674511469228418388214681722315139185019946932638079489269671931408032506181845892164027621069835159412033833604684003615802151441703424351805254586192179748246620256205486352971913222262734946968495410379689363047936342015017353446569308396011391400130203265061710061650621198648653213718715101040104974926715141182416337334080893672313632564965606034558274530262423078203043421126579758943527024272757129255226923246825121133420547664140988612209913259046727254802236232129670429471079611463172071346547960432289200590429814734353302212826139100223071156427505565056331725060141067361065863724512034264745826571237235368503321383325423485978351729283021109722678632373251250911443668111733473864944492337581305236936872510694092121822981655790322167359567074187612594736343466467513242284151231203681903511354231062725372244325763217859037545425543138591991813971774313454293057121088966069420230635232471225084221893143165338132128024109178855940132892025413952273430303183392362901148470739033047458415164560784553958717154473537743634842628649800619609325216651816452122827067730788329088801816851500193071743952201470233950203414746624609488226281380020565856116732943035905137201585752695569421111524311391811566417560844315716737127410804648652324382740931178815729611300205172990047750830429333061348211153354912601525322374429048245517731782503527884788520210523716806076275152066878151203401004989130704554615476631187221723031168148167202355232250391877256329214004218675317195700136893819053313410472482274906880624021645590355236456310397228244432624581067015553904173943460650276655346121892118303515861227630478132454412678626274214276044232385303823669291896744476494083200168044669573163534442603804273193024359236558158182368339135466700184234024796341740963510628266415169979121512473191913964605800128053981997614759303156285564373671768680116401290048962473934325728567042186301549579523173696789668043276033702869366289308661265624051749530682836145446044487559766223659279731568691425732186512804057969027716066451988040637086457515111810965636138461484147884267171381318346391083932820668025453115301289703218281686425130354704699198263291415051203216215195727762936711214620113141114628231887343411384646411150510426186057801724530652553133475343460308268713009801818324869866070336603169154744104815179610237055113843547563700340253252143354637707669828804554943728506461506200883054024421068926937191072447765227573180310956323291661012256189593031633142476664767941726372132572146384699166550060918817184870267053117028482587033676716316327110453553127924371205992411152832944764209056520235801728452532035206171815578964523759412633727914520479867276480116542467721015463947095913461615543315917359306368498512897132748470421962302312551779614232257360647399420206492199444137112681262969338174580814344292666685181400782148022507774175128167252252149351728991132360976042101174135532432188721470202288852529045730178671609857366614093290206356191246446029701399840486336613415244433449367134100113546008951513192330134585272209594668955934424165914399527379745533663316245657806313951764562146255493743083082117412453028658893910450412145903552192636646125945307180183388051248441607384903515185272656211184807267921552312652154175484424128603643303733449355630166371166773163051905634127303538204453233080336494339822326167254710636648303518321305986637179915002334585793294705234474635492749206319119257495120879639871836713090402832656113551336382513523873431626233852711403600884841438291892444903414418010045041169996342572133790504138726154296535368562511257505737324287254146488315322914960701129414174062340935989791521906129910084715013803151822930402243954658122300231600467424544841870712419715604340373161986359167616961901777073664938970624482301282050499264650035791412965941772113327086381507434928899221392338398080731126364151772946240622046433885757227140416538566824255310124126374328021477441279683571763352430735711375568141623375200406448568999116209634962610204273046277353972410446763737720586664167796155464682187338687665379722264187993315596885237477796162375042623838484811382683238711330420643130025785640821520196477749226721649171141351176611629858570012553165639308263255332169322143176331120449748247420203714760488606197355221357654227644563248682963124375530706815387534618173149203733801534738449246855231015502174156300410992591752116930185617636201256951481344382846156210347313330129547274812631784575339161532317200436360443036534029221877440215068551971121324434938533191322058471236107934964641763686757041590604281264410889252645514844615162836304735305727708354746673453892041676796301513128403173712253155662232306778779286641355220361721373047841148059671315152288833344191429411873984728269436280936281011041042498359184242245457139924486165501339249574108550731619650066227366088332223415880674315546798327481152995321685874211355623056109077909735650429534635135320702601537142346376755208285192842940415254394989264538683132188696038177722110469378680671131562418396384258866130378446729269217660822254812204682692244386321042821639778861049146615410053357170239830924115685720326617422011176814821703350100867512192053784417548162761275065215654695052319486174321021918800535911226307255362166565571810933701192111296731752016221547822863207466207285920117059686441167424451673564034415287387948264202634857628050231163642385948790945522202424564099745276766721611940284002212854516618313806543823172072273848613112022794041584035695580205276222674666817323384640628071432513551254482711663349777234323759882577654963612811272711163813080268728934294607933178651019463522136948131495087255621772263566208682942800739815106407736441220404097010722482463578547153759631776276153260668351220500742770842467130221856424494690178301257010731811436759510841129170334023104241129762211542626123402361613445153740251775011893263230956625801276578312764923811070231553961066026470812462775428222552602476167183497441124736241052731689059202311152461476526354033495431285626069090638500162076168583584257813890696185362211130101009290202600410461942978734317081666635256128129137276829510204403845453963017142542371136902228239122996146163599039870351530320271695343073180230123915043611572970314105543383365201130115404655246413924881033094141892711848489338873669842883102420662123715319340255199236396638954430997257199352358252115705779720789050112119352880051663514200300642134527485229377184417664812864710228776512358309509299492501292449940323253575749440443644220494579626005350216143665476101315147267121467875101387559372138062647004422679227241162518049511743381526000053829456344621327334912278616536388121406364970564684339332712440361965471768125009050502134944897121292022090410239914835159922104691269697974323120001234933996403809126603543311142482717564300890839547351822871067464437288855681131245000374232053150158746732132417289437789101170803299621793128323532065887138433272660316246541962330799732660720123449975673021676302644283300791663383208914759916343226673516060525109223637466540142404348613085272733671435157094352821754157156528112089454217778229420324832363431094314710976515957911530291653201248869372311245224635378334460393141773216712024576185323695125028967855270065173677421835291722148021119342118556584164222812816063118586431211188724435324263071704173715744418709952070398185402795175511682483391164274114233099329206331072441323017196881852155843249958852326648211454970367405360761586594032324142584569329822811063274058301172781112007636325390913672104584573529311868314319098337626504383738858926611763210002448225382037133003011183227379927616794319252620543217728272886959210448151123318858807188515623578101722036676305165069630508612742424584242416991547936440418319832228776334762860267122046633623682933251154603240196122435426128534156131714150331785366162615441842466761741152496584230018715270549331137551790404089488052897966414192848767228894663276050622641221130441412421713251033176834011358614714283050683864963236059712525222225591130917574128116680516452080343370110165453200503505456599071294354631181196548504333782110126943356532157218560271481517846481146343322614392625460044330434418519013248402016075042050292885245078972486285127737376323373699427111377557776457153770175112560009020531222969084229679055021400969586252468056950411223978950665559621034421338172876047502186540303770342450075222814294086224060120011702443631484557483331289577584662332475003746740559287442956244545476740208506132658378142511359339037727874771130268204412767485111001480634028139064674921140535139142593113435324777111203133811151813494130431741361149453934245229969586220064455802204578644233452341383197801677830478552210207514338867636858741121434271053752478422505314488484362473215302334081623321367333941255231181005131415114323164450846822461344153989431133236168768233141819164586209034139236322194004927966313393536452388614558684326273471113962334436739524240808417416516349237713247425735726322957441239373202366412378378679456239529234033672933166341150241600115555510796284940716313406964836723702134442772431417950430724968236346023457162062628025432238351143134328113852578139546694219394021186022688681074414791873895211855467218334472154442519059213350380746171313553700135675760110711711242881112743341132236119252303634230510203590754363928787377808529326565277822103151161021422661704515947302985171662780449779812504344164990700738691511111131145683909532497521329592115870616553685207375892412059057353141856539138240962343146584009413471605806050221460802267515068731627163940536827966574414734017542201143413013805978634151171796410807233186406373049483180352469638655417586453407278643402541823167643855222477122302693052047210944282990157717426140852351895175494495396331513484835038836594021463903110378701939154879497402293254481417180491350168230392729935342032885626655843193410466225257683952807824483825661586867733828228633330507612219133407949421385821335662142781270113202409768425055866605646750442332518166225316713320383599073917419272224948552341248832015387134700116632684874666332948238788197636062292403155921527770136640226720944439123752523184138886561453127943328514674270884104441435451122161591525435612230130295151636725370183226126167079619944395256125244167004322439545824120637337470839243205193440001229716715381808035703877620331632510827108209479503632825895000304505343619312719838013495182767921926112535452858890010911478039151122210531940148201188339851723333411299003743695731135320351712906783124751190796895261186163290819156163591148451165162701407553550792779804673012671413832250153661249138111466116196465125808276292792542817220514212701035220624864317063928319683681818624122960232662597733201419667711236862330822387703482769385820240049125585394733181624881779332197458245532726872984241806874156754547607810976702057961139315065236075973311560120509490235715394533821282624749777789001861452770229072451950956310268124387724768184044895196514509219407615223670921442761436605418821052298257672677122137717790810270959403052125564660045435954766177572011258465181781722635271119658748592160601111010373630223183417843459322293064350953475497444568369391764564776425247227106859255451177586435817231375172279497249358801417753212245490370852217092788200449053528944209380250319109241252304418337726251451449282522961771816983999910302910712744200604520421236271650897231723171226540289135972420741303406133346380424852621451165546604226208887342810184726072107762048944352525772269290421336087684542235023387268109042561827973538905484100213301334296494136407392087119277661741591604362027013871210413151374740814674651388220215948761295013144834075217714331246535620509040702156241412901634826574660041058870224897528635321373423011793302106415705145152895203063543188760512781254383135066326114160919001119832954507681500022570922124965613123073524324344376414127921305531995281297709244160242332735190763614504601161837334484811495767499971425390754438442563245881558419365864256636268451707442183163233652711375886139079295325400114710874036461321251173992210311645437046548526231136351101782452141564085477211105746810745237389625177162024884034310205820395307231214430992702830489575721514737579680107064414485303174238316212384240447131045627130176728881412714885521171024482426932602662830292606695657923327813111554030143165848100437223007114279436236148440679101390257429012504124596173912094373521418163402421112780431298992966322112477880486472233609008236193757115950610217078131100143562448230334164073983438284296061107447394266574395564817310471955019138370136450196521464145115872674542301353442705713335962316688330100198321451422595457033361257123238922165352402881445552336026186190201712396188901674123443530369048483123511611604074281378221454157413380153411722201658382036843596425298268712281542097325616659428605244169253087983967605022318481237568882036610711686897482667943077431733769630011560815648806295291
84090060300740788031070600060045030050099636454909041180000705345645118097761360993052001090905979295783078441089768290786008090067335001099034126053042990170008560037400033248709020240830003197006140558889060468738075020730904490000029337003290700065005184529070805900280377043353009006074045707303093180000790008044040058008818859840003020130101071594408080000957009260010968055880006087096848649080021708020010030190600676400870003230810080206004294860000370000005009600602890109540080700063731490001240900270010609077160226758040400606009088089001002966908090650686666005009204780075290400377000052979070076880008058509208990000708230861828509000717600068885400630200707405780010052468800873678047043703219083249300970857706326894467929654029604070560779678447900830008782090087419090122065005074830709859050900070605058982620804900790001008037009883756600789809072184710099000027507500007057980755713556781409990067210110800990530159310003000878980063300960499029535065430400009204904900009080868709657087597887655905180470207170096590467036569500036030800069009800603902207067090442607430598009060581085005009999060779906743849670099000800407602348955504224941900488090700750090909380705052506900050330139099480096508775950000000551719243908646096709576166780708859080067273100002860309015040004349405007707106400679000240600155760800079190721083846080270805407315808044580499800752439307001203710080905384939300585005058000000110370699060185009786009307200787240740058894601349003079540172700080008206700958014066069091000020431009007907966507090000040509462090223863809047009075669007309020988789270460885090778067859466907270585090600806051920499789559589002090537437555017748063060003507060064700090390588408006004789008878932089050835444080430080630506900948807786034745607930076700666705969505290499400408080102207000698596081686200858900052235002788159007200780023812470800530000371297140403477062288809005078403430002677988082650860047350000880018075050409608480707060075906670930027404110550667044916949560003109089794080506945284006707208199200740960403500650039700593578019703604929934000000800691005704063060609506329096007041026090010072060335856800797806800000798900100807040740199970047389009420890600023000044806909043177554712796011750802078482283839400840802489802020009087503908863883905269080900681090367307030980036009369190200300800989443398708000076194106164760019506018340646358807622000728683096007008313200300970708834926940736050004137089000039005060769684853088770400032005906006086070996067309048449004340949320600060821090947021080574657106050080000270200408487910677000948760502007860100067967900988763000090047706000089001072008904980030090903350730070307009680460894480259752400692400002008720160000933480179017697902800500800010970000500700503944437290894597362755070479784955180903100080600435233700996505891162402850086619090640702760890087988840503245070600000049965198908700821000926409001168504927954079670730070470804164046900695008001445007059990394007783000679829000956307541270091375548299001070840801820305567034540433450000269098358440789050090074604064509106960600507500480938060700060073089072004817079750890505087707355808050605448009000704065066590665889998907850000028548408584790070408830004336300610053050600371410666600610500107880840002080075009586400938800780998927776600115088003960969568160062666690203622005647390342366900527007909030677000930809803000474770437030492674000883060480009080008497000750070030780545259504906208004909000046300808320700808906008009007097000041878900045655000499030010690500633553020108059090623097560901308541056386994507797790758944695316066080000753296205407004031530054700780403000809014817753047809870671900863450575220060095905785050998107190850647494706396700159884805002500930905035120383006400786008037447103439744732306750976308000908006900746703500450608364745920403050487310108000677266644843008009074547664707080702490703805200089050008571035870095882300918909240096914005877201028090989910700002304920790719096800003050180786701273705068007102528727968204510009943757604886700009070004628972851500908024067388990609701101970356379909590030009005503898420069287605862019180708661070151960605067541220017080059800190055692908423468237000032418597040980000506000536005004029868907069077070679459775802006508006007065050272603700330579709057462282774678072548946007670537360504639633460089760030603954352070960353649100007170255050120800089107296940310006704074023020988020800865008020570090303990900908970109767021309295255204480367074709207079043779508000047600400630060719703060038305502032710824846070995351475067340301852299096067910408007400367001107725041441009469809580780500055078087070009800903536703002005076370426880180099080185070438787096040707769400662140434732362251040098570036006034452008637030992041989090748284108004050500800004520060009449315360660966044600702390300060015907890607032600803573580789070009836401039060780878108222507895068415588609769806069423905667203888405485087944024762800064524084893947004109804400057430418900712908608073813160500603049364909697930106007970200655078107501625993609400369604700665000289940080090850903060304077600658099066058585999278050069090977898551002300214509066700307480867037090530800750070907031204506133051306086405400044863090899670806000455400711630420065093901843223776620017093060829489208602807606505794960650020849886043808010799780007010001600004060448109860539200035108058959900600700024967800759001000050620600580008067091599052030785509338303900950885008929660720084527780319390128966200090488009680990806600400670608000007063059488699600778092004506200902107594719987804905934070097546707580655806590406198350401021373030888000280754023468571167890539469790120306100810829116080808459809123000426900001089607678650387490303017300074908060259706981000743547619816286090095010040007207745600080071021758009300000793986324790306088507760014198530050562894900030984300009980050400500009600606003458468079504000805070764257095010020158910408460001030419463900486491090009360058000065721089370603270900548599334037009960058200193406200820906006040408657070065275720480946201078090999061450410002840184350005000747596030440810108000976086090001018950500841606805867089252052093070578004007093370666004377080074260580009031833209000522094020000092070393790700006400500880700500790679007074376100308050029516811019010472000048705002689090007046679704079884079086308559697950504503735003054588019970603062407020760706408594009807990150079333386829704871854690800029506663896610017606730901260000055006697580435510408750408940900350760302158034413008200040971013087037380979083088440080400059000000676070900696960073660080877900089817040690299821280000073060082950017040087190879043761608200070989077205909960460600060219070675999458184940489070035947041000096040032504006086776036700006990020080958080008539992016047940074008061340688941732470014324808030280600080745066696440000701938870942030305068577059460077819016300023746670496265098431103033869004008104500200703000041992050028014740789003359187045972708060878545107980470707401070616809902070800057708601058000660793400600700870098019796058840526000008065063750227500937560730700678367904020878236890309100977066000480077638602479504007060000669809040087002880809700100470146554880692067721796085651066000541101688445679053873259003878086990088090407070054296853070510310990402307070398953730289984398692580074030098600886084000879009500939740290474877088038170804917325715090059000100008900980600084909007534150000800290556590316428007766106085098859280060093030060151006826890769004075040085506005110013806900005806407980560779367759079793503000354067071208008060770888000059498705803809521698009860390900206820147920909081756799594206077007600070619419825709002019007300638006050762689040910742286671399018000957695001308694095006650020640849700297090822300009097557095923500946376460865057085739000656668700778064407077504004060866900832762610203009700989000907098069109857051630784704770000095854000010032890005070000079000910772050910586140809477840490402103570001965014026142980909672350893048390408500270601989601680589430020060490063000000076026759006074063900003200279000383453990150007600050042059628750487000205046600400020271246374409582528990010000905043759067000505090507790000600065803709001086041630000696009273030800037079832606866080660308126745078098900608969466456001000616554203604064400609970791009990045036070109007800075007885082990096570716794480294119809092304090509662082910500449409960800827508500090668680076080809422088005784350552568008006065630870656000005962113909207040027089071605000168508290956003908060910870020044585609778637708018090502979879901888507007665819044890067805078844551061207090044799900140900598200000489677740991745320005806700956309938500120055900208906920700704006097090048006979500400004798464009074061087020910198600740457435090177900690558094828608800409930028134046650428000587839569039087199077950394008680809900907200904541408046728018003204160004208210089980047794365065606888870533881605150809971705203302387202909956782849908490690037950650030330087049982500709500076066407604003900201123696096001408500530080592047964330080090690093267500705087732160500340308809200040006990307800333000960885455031990103079706880497020687837800059805070109830186808040909705592860598430260024990033098877280770589330000009300270487520800081113030969000554406400600008068580100400957083000008000880870335021007205269059860770006900304901700403164787050245100784806900885033950799304968001030450208980669909080040070006740209009009056175952708756073805055054852640253100970809800561190150200409236997675564768505780990033984785008801293046474006680190643005770360730005505180060060435251477780908555600640807706078070987979707000001685670716597806963400801380550200704152006080980601009009026001302900060878049960200465039250390304606334000212490058309086096900056003989197017197002909394335556010000550640410875976299086000884052000057600309240906077989000533087271987042797606959958050062977008787249925026035106060705759720071335204409062066090750850805000270575809307000001000603608722468040068378509689706918110559021304036040737400280940704040590868630064035005880905676706000801901747020850210065600080413000003928980979563680190748003518283349276214696642087096080080908009909606800261000700068772680009540899647140632607043900963303588890008349964000590700786979053097920998822256000700361500110425406900499400040339037008059220519355697024101003098806200500850000237004450030075707028904070900890306000599320050500970081878000008300002407256305308003637190956014800407460022144950987646797500106012200002409900322299046460097910560706000600004104673809380072709265190000007700839006868056695889300705028880990655798009066810078365130075902739600606005990508022557094897447299238300190098270650000075040217038875906608072818476605096008681107706306769845501893360005696844000001780988720609784005647166736200099901001190905040006955220892038080090048003695780832443994060487336171609665850555410099690580000275090407070993808598650000079000476700083020570496571969355687290076402209803000457550360890390682447880944841387109705062035000507724669679085903007098400000946000709470660200200077934494461409090067880003088043003000506966237678800270680603964000890820074398440660007671030140090528090802705720909978008708063397640538690050099065890079300730004060959002071650090018009089530910100631267500059400028035700366083501769009030700662276089087019600651655069210009600665770007923883332200009404502950237094605314400709900489494050470799900600798931679000963248667029290004874507710440006058990757740938003800950800094083009079008092074380602040626900308396033610866600004760065218640466008038509304902230487008088708692832804069002000040386103000140767590800009808010929060000003439268195007054450085008334650530927007104077600005599000059961480089904890044408760700070037086095059768297235005907096170200470036850066800350429054540780015600907376087703207986000000699902098498546973043487083950405750497207000009400880017200167196669540060074012808295004797088279653638358070081530174668847090599507737623809907422687600085689400460008720587694776206826160500030504027800801909944709300302817500978050608009010816715860650781590608079087289905002002854409053008680033032135009456070799738054006861000074758607180810301612382252000220636976820047973599089709665019088051701994909140600810940000796090000073019100595103902964049277091978055040679339000000505688095097875019722909080082000520007302568410920850000900030000003018242099288994709437207002010005280685007097506860375061075199301090749747801203706641050019006850604195656283880062006507520760089006913050000060690627202920099097600500829000301001684067805061407075020784008074084600979581850280755006808803601000040770889850923296268306066686200038786011659800627088848680980307200950360788390876605024990009049000340800408037007167078909991052750050570920452639380060097080890050955796940080890693060090706000564080304040498050340606220830891600602268802032437677072401069605950068503080060098756050598138847026910781480900096858430870500688549050615059278680303884769090638050090557000074326400090372021888900010410720069605050799603069089702008006060410369060222130000703806824971260352203080447800089909006556809351088830640807462620607080568200098810687987349230755560070898075089090508007000502067723008810791008247900200303301559916700483909791859200906610100070505037200405459930680617920070487695704060382720950969807500578400970570597030000240415460380096718400619800043108030080077000099470403904098006069347100001757008461659005540909500993011400885050933853067072240050801290290342013808857489608156700800806071590807198004644047009140502395296000850618026501809072700870382006005003233489708752000277675835269190000464062000177466355990640007200080079149010006000606060401872590300082000970066490904709806700407006185372009038680120090124053308053770095880406908098870250000080890396993282315938620189020478887061800040069098485066009109040000500002010769205970009022055606490807093597000000940628007087865739806679000830094079662013530950076790787035908965309087135280492088006130009989978144878082807000340974080063370096970118438080600318190309499002506470088730000779908540249800291090752996120000004003270001389405594585031999870070649406033800130488670000030706407140630000080274278087600467007945900701697860743700280373069823704009120007789206080087979400670477888590200502007007082709132596300028690087875801380451725918800838581045086098172900000004009665804045905005200928002880668416031074050234094607068670380023089987800651036600095088400050100573552795003862007054600900028773790956826005610905568500487030569088975253905060394065009608006090897202999228000010740812797530090349508475804938610059951700492606653000000078551780300784069599653254038400700022805707704748000035400060365499075990790879010017080192413000349419384401808470069608540263084684909810000203990207507740068687602050680077079072709006890640098090407800050302023050780880768991101665705108400838872970662002838609974256100600606000072602960076280060630500188688001685412877523490047942306571786098002000000042078905678570034762769433008943501004020400319076508486808027682000909900058077440950863705008605721503083309000502894900902034576000000300088167496039904084669700550091908506390900081705075002926166509028009429390907580050675069590000160784620041760977000680501209109400930283274002100075036400575390474064052076034569000059487895390001900420006006500080757084879307980012010003480900768054055400860625409400602250099064022016019952954500837507000884103638190002210079093200920600296037608008363008070081010030757120032756776590009009400040022205803900000901801535190837819780005755715523800589601140703939501300004038062318063000630274046094198054304018000020000706300088046609505961587460669709706730802109897800415980007958004030080500004050419000500209008300800760487063007990346003500307457080779605004757099204804068001650088802837787966107053056400585218067459046790300973909049000000190400698061304480601578256004340680290978670704175020408002282090300959816900000966920006705903000095876709500140959465000502076607794009900500542268012800892820004825006470000082070495271872123307035270490040790389789902000750770090550010720847885070997099821600063470073203000969869690655690767849090008340089046076970680077307302202009209407301000076338492033059160972090050700040701002477400500270047969991050628949704400320980499373499018570750008009010834099652175487290091100057038035500050033783415679907085156409003326662830040906000905980036097408779798327029600699080337000660990983900298028874016054884005310697907957430660840950000406020820670040990013004898050308060040908468390064012048619630896763450040060769207017970081010051700693253041705053900930008037027360398058300268300406200708703069500990060878019706597206645955082449769780094908007590907555055007180509099839090650513007280003018065060966026863976750080307090982090235923484404783059301788981382375004075064062502674028950840880046700684705008845902463707960606170889852439095014200083940115024402965079807505000828269690030150007955936080904006890809000040056000050790879315085097350274049337078126480009911508068000042004970008164000577806907878003204605050009949840060000970746369545050923644338840987710300684000868005600654500713067209788280306780870599061179067050440249000976050500758460409709745102863500075710819052709370604220085209027406690903549056599463500730790040605040980834060627440451900080706730975507052420098001980873569506607429028567056790000710350005000790074802488950008468467087073707001706680905401800005005066009990923805648400905800340086086077998097310573068320909705206780306020660839792406040000142387000830287060401170107042408692639670940637658506290200049790143047403010049000006080215021786870080405023402945170835602018220003340925986620848087900505794352200800068400017684667900386906821070017348003003392008608004090602498000989669109929608547035700010590566768337679002907000955006088990404507007877007708706060058778907440237070807411965680707649904077050079700090082027809017660074067060507600280544607498036010947309200300290604352017574973907007697578000401002604825805565926500638000467780890802209028006409080007800668044197804504000844000005484848129095680512088090490636800961509404009670190090320840034870090051570050470499780830687058792099601300045010900360908870700303005293418003607729486003296900040166959207690670407020775049079019189800423650570197678030576770600221780009786926618845068460619400060639025614897251080406995975768877409083940760861979993991704240530060929590026007008810898068465906974985970780036703020098308008730800019001037327768034083832892002058590084220020870067067407079900290530872084407378304098008066003997031507906072610079087890753099062205030524863535800600510656913594041076087900048606080814526708221409085650081902870074900045900669140409356706051943088080750002007059018984036737097020905800679330608304570770257707060571183400823947309878090980806906630600020070801688640984997558000368088905606057846900000790060970700498650976090000400403708507044500946096605050120088019804250034990760009979609047062060930902309576690950807690298569088054382500070764300450766457929288506807665069800144300046750019044957678006200600840407000272798303019990900509088665516885099080399950130058600000708800107983602033307790586043006700800697207500694066843900058080198607009098782062040030065305528300125950237993974071702883077274300070704779098060729000602000600135069010200783900796806807073706746090030005000770848308000000685107043975900080705010504046150728965870380091620690701508050560172869020604894059550511000025095206880986195517200993775069620802806431689577084006706089280764870818870453508269616000425780019805200608109958857568190040005330091078000085084070715209600207537329076376500750740449005990076620071780264098057987908060340687407000380203001040220210800380088500834500602170077428002809494060697027980778909857005030905084059070078838502009987008006008991051777200075300540011000070407093600870707967785600900770033801080300180785784831040386900000094770659009500000260504242000090689620009577020700209410070506604361609760083005650072908004003800090080530396387066202110319405089809209998007924600528706201048909523008810704297030090000307352793048093006857000058174048280830499000460510500091050720744135670637829090859090228890257008970909750930309809878592905707598878209495800010070007254000207405655507509030498899700007009000330090000810088622005045806503606667095696807090092230800689978164890900000005788000004097934028360903800430405089970680052431900820770272080004063709066170950407358065004838789000088000793646800180500000709056318980770206015557010000741973090508586600660003260908480001106339004007003951570750091204670009388083056703099690625009673000702509085747042286240960752997160259992005190030272302003560058050006080303604077508717589970088002025931400900460402340009200508400686020099927708779042244045790482970050405428060931050882095095490900770698661782520996723629710695606020005007442597720090016970990941687973996850036070029068159940060760004220000774000056230052106750440177203379090592077009808798027964092000060603014940707009060010309650683863000630293907960009700565700246097388061005359524005605810286058504734850018070837000204732000000082383090964490062557088070939580000100930020060908179603308009520003456234204707089670506024000452330380081744149379090990986375801718877106599804400815006070000908605204077883850000700038060390060000605931277048000585578005000113703937060770087220648871171680001508902169011895990506408060505913178615098050002878060000075068763996048103970709748509897804000000182107939300886404735800825901879002602390085033050090397766000729200194104792626439090909024580807470890077149102007448806031300763575493398000600788007531072509130070840733407577035987149988336140800109330058757710879800000680080000870867530746987078900879004268048000699688008000237705136907390001595110075076900000902004537063836062440999824260798505000060910770900800490055302229306019209000965200099030080023867590000208740079307604906306160002356040600087593606063406000030903591403758067780060007040900090800905030102030730255061068577998492920874640754257560827590800060929070270000188179840003690072595030788078770803000238108950890454910281590094319050040809900702700006010087538900096061474718118525800988585003030070000001000994008570107984618189049300807500707009014540684048600347847400780047769008750438590400900701029820002891443900608779500600005286023500106896708870693083100260640049824006080544479486040099007200385291438570395373840387008449659948807800840956290380070689377626706886990609798092080470016718600308093600090000084790115702197270900769127000907385558005649362960082800035806649766398694050090471080940608468067608300659727020078940947967908471560963090075703850030092704901312701024998400844340847320999063028070075868717078790678006988509827806075001080604960094168408584889788679800985926012700089520715610074480506700708921977408531009200037020854359800600205097145035956609802500080000004565493045028198469890330660802030110039031658052505464200080079009516680079808870208057807003809905156070704766988020774004280050799402089004795801881670704986843521190046610050923044066700900390800090684785083809000004852252960109670960700193093230086805081386186780206331885057995581690930096620106014080190083600090829919996005023060005206980368900411364024029300970713500902000600007576584094089392511079409013067007167068950807898830038350078913638400017968170093594336609028628297809958070017350890043034001980048600966006065736760005008379013861010608908070900093000036485040206044437952307150000640000750024500058920600660595045348858007896609350056403957900470479084050160958354089065392457580070090450729004988541490240978903310769008804385062079702047000556920089910690376070850229700898201292880655942520262067460044002313034658009052100610478502259121100303050309696730403620667700007200726817096356004602618576003680408740640103040629858307960395104690780875980000000727009805236100666569024020070028000775780907002308049000099670670440089950230177089400364900000918354670968003760536657397029090600014040502801807970706567590609970850770998920092515704099277081040049241984004400534080003933110878158070033306865704059090000525070608903220700800487070906750105165306401239160300045660600307505967829108208844707009002074893972004750969780760661157300102300385308700916080020002964988000890120000440400000405784481609050689002770991709063708959467004525220310796673085800004020056066065676950090007469009470777007600900582840349039501593070083704843008449837993094010460707000316800460808649006979640120990008043008084072888787320662965970558069838967941908707000430003000021056940200528137191003500287607704710090267770027920009993969390069979748010664545000850454708060067054190845984010702703430372273709008609003500050408084460397963584780090480870706946020573899901042085656960009155082032430808954025976007300070376074980034000707710760502850570978104400645209247088779091050652001027747009099049613400480903006170090020009097069505800006445001040405600260452025062540600089700700189790905440200921907056000080828696903903048267645803711509099973870080658003000882574000025528717680497001940470670005090576005114073061380502041500001405070600977604470596919680907908178739080997009360941040073756457749050208839733369910434907066660524006362828671805051749968909058001027005405809940180602000426708009270007499481746908600987080900486041843900005200086306270567057659688002978928001930350050910272859799930747050904055531350180902805338806173939014960422905650306609075070006982608776339033808978880000091575368098727290905960705997700160959987840930072650182069673656909870510900009409682070000985095178088945710839206563504002700088060150120782509006576931900981903940266986403749586500945753004003006208000094049081028065080472712000780499324002056882800000006060000107908844020494026924002901335515865932602804960827019000050497800008050206077707874701027081677079646624632670704790020100009427793736497049209541005778702970010243029408605864077570086400509810192607097203310050520786004600100060285330939208685930474000077803031410206009667704798823607070000380006351095749068040000002630018804070865090060313005818970620620055030308503908990065687040700217080420640097158090400857950819803520404900803140080469007918579066080843096102806062736881008570057265810044150600800430560040003312577040300589762338702739870480706704300580004327880370670893700488000148130731909999465331410168004350480100234803389007806600302360000922351097070706980333600000108541057504378190300697036040030001960058000508078009007037950557992531601708020048046663897591570768059640700879380814099001054940108000900004040090706708300009907080761390060378942209734090901941870700807566400040099996070080873052072080450054404005700800000702800300700288704990701300904750064053180033007109806135548997370966765902079100600043609035075615967867097095104418007499902709007310064405000757604043400826789390105397300908907506000029138779809408182970606191076731050700083020935009130400030595806101889008540157300000300089850700005462023380080668300500607875050055100762504919666700509574474490017076086085406680010005875928463660493785700065958890913980760220068711865917800800560095830800703768660208051999020609077722500040000800030820797745047267080533590505980647065015840608406008001058706080038808979003703608068085576485769908408031560405369000147359902800876744308320008970937004509006005808400050048607915900035689768785944587798090950003093080409405079224090300700052230086596280000011065600537070003881273459507650406046300797000053077169709083570607908090284884000924296603100201491400098048300759006500897900020060514044365132090093200000870008103403008900299104632114052588070040897779560002963500950508090310743773093070000099004064093101034394000903808060497190048940800006306849007800900492096990080006864454404502945879003055001739700857501269906700509692552758943400501689399067807006006980900658091706040020502437924033094039048147363001400289800062274003404105090280842005816053099852054917040065038890080301344831900985077600450054504980500611940000000929060700973560120629820000301856047006930070004896086047602499054493000301500799006011396907529900654088670966065090320204697806902097042478760002722059400306745000781189090200500590425575078002760804008730060970480498697000000704060468122604090607898226099400000099620036956090397308056835209897407007493070470877980980030150080369012678696018800407244253505101570000190000501057730440309144605090801000989010020048000860801000085006005006020035175800201230680008830697033870901973166903080041074832209094000087197310500341400602090198537804991050900089947469085006889360008829590490903845290079990851708000088697890002067785486030669096000900098009099069788409089006850006600273099925020609404078390407004209620910006000070049367178477000900667836193354708028448622090200030074797540003932000194088006009340706002001606000020450761035001147048080011879205986884003842100697002700809015098286948700042940025096011390495059000302008700119994357002067332070680400278909760500910095324032940547195790051662660003589048726000386218408468367000074990069080664062749919140946000090001240990590821007350198559650050000600000200004803000369204887497406002099650009826300509924803370175020631810000782011593074788600099592080812267048309008002007146272388320300007065706940790877625860398010087539884016007997030209899942060607130095099308099920906559000425918079067491347905973004870424277067479008009095808000694260050456374900890005000966075800099097728960680017200629404028070830501701995850083886080089200042899000070087001361746070520040337607073000000007200240108000930067386000136357370960060007907080474689852010380740207405504858740480679018630017002605501509778000033307720810144030004086044404066655053090193006000000340609876520080000000086608184918007200908881598840809026456010074435860908004059899804477760570004004795849089098246600060040769304720303074969904040704237948149028451295070006004062909907023645571107381507595077709002040002001420040099709009300083820098860602100070068805047484076065749490160410034407361450870021504379396000007134002976048397009807088906504001596781602006512049050656891018620480643905992642605000860063668490850100705601840270600038007000843000815488726008060000388884839004909006775476084000070006408050610662002021089084320000351097033090842069629709180882800028908023314063620540386400800005406645901658638793000410902030778058957506705054800070782540058038306007809427783000861504455498809510004400460680387610394632090300025007100689807605000740869439406460990365806030709129060605530105838060200010700500015267000060249000006850805000943379948000657052248306000989166882014060945012859990708300080050855070707070000909089760989304005080909898007841720078707088394590297830609200665789020004660909262930195387101400000481908070900459747496030744060775400880280400839923009219205097080926800896037985446750600906455005804602480080075080048800000070081808972978400900077825000260930980826226198577000350500009980444065019687060163308043890148396100415079016486680180036960010900808970153000909880120709004426068899070801303403086007845870146900050008688689059990004809103088090372800061404027600270606799305570201033440665000901600977100706935908665140790957796367080951073000987000545094753845470006090760045104097048770808005207030880843081190390001594608907000492620499486007367073025327270500663020808770020895454801690956005063086018468328800847545330401603364820036530491960205800609030172005800890905840095300068620970004520837050850702037405036024890250050880770679600749302336979218678639870005029020025399096237108427799580800650670936558790200622000929100625908006050809000530010906179284093120150851000909078425696893280740957598973838965800916848463056049004958790282138180897060906047940001300045709479930945004600090076207380900607690053010066009603719720903869267014020027404080048995799890076169094864842637430896330018608091026100570089839398000930000806971663763349019150033094514490360277803606680599897022079463949310093092767616000604486820075006473470857000505063040001697000080632703484820296860510509000675800805490397620834820709099372000036040000373662887400447306403076987794559070440726008920002066887906070590099906207608730670600579580758119940141703760422065050100600955064091086200840020084076036046001757094753005900090005100605090783406006200815399097010593781013104015569799068005290008035982027088090657022049940685096079810008603410600086870655083570004090876470900058000450776839565060844090970118040607008056243648492790709674000686003000900316892067000050292047037184789850866600011047004303886285890008058655009003471444093890549000976946550206807350459040058073900982040740009978060395040006140099570697005820361066829032803106707400000078505274218744760584090004100088273947668000120240300081060900800387802425000957959377750002904749029029580409005109187696302487075756090810027000849090403511620900658720295758027709276860950909690907077860710661803006033849941446000803380001050786853007050009153100500570015053769000108070902404095600406776616305960962904005736558900173726054048268336580009836300090080060660004044980103485280007637308238465060906508775089369903708020490576490504965000010808546250043294209807058000986004631008552920473876004909080897005874054009809859980390503085055761700074409052007030601883450103710067008700120730032060800020790590050080017006209496004544790048040004060604090450000704507303630495508900066382090036157553030090100560480599000590905030007036102275000385878988571307399040050928085891304820500987863567058085006724900468500144909586000905098030076984987140997308009703723540004688503000087200006076664207070000668358070933588490950170856909074000087977001702080005859756007809675470009606300979012003042606060872019900009785096697638067409890977452460012735203407728140496095022380506024040090750543980232790036400530362051001009095986304089709077300093403017095137910006967880680830065397509976290273440771488516243928100280000887060708693189302684084048008060063188400668949066309058795530329043500692006041904427053750048875069090682700938078853907720200679190300053507890506490077506010600805052510707073234002154705000900580740688200310025004008819060486008060240054078078099090024070916884180010600799500909079900807838277775900795020370690091605593939550057003650040588065080461997045760331700220396539072008389589405165800247099850502909260002165951005009909080762399668150792939025040600800638068100260850480308084089104040048000908066685452502092000066097606808709149895700748919907102051008783584000049808000341710760689060004608016222000000056600952004800660400940980663182002300952030000607307008054700759520084209021980056000700131009409077001949035679050676000954600619094310930898602880700223653843505073829148087002092540039595258041088047568013605088000005702935134085029403060019295389000903002760905809006203596897126092894689085407036760450575351086023073999040025869946750009244006000600428453800450034101645022904633605840902391780004584130830777029170095770290096950506010908906659786265099386499820001009070003857941909460004540090906102044840150030120800847750375992909079080200000205090003086009700040068010062816779400406878900793800558990499934900983600860400300025089409019800608200871000002900830005673068710730400915909334090678962285529131730508005016850205612321015780570682408800935800270780000080006300077783000007619808808697044097070990100070090350107630200701861028786540019700806604907517880620800601770045600093800201600000060003519701015036907334664210879000783667766503002949530976008902004916040309808622505054718143406500569009861979048896000072038708240730169098309576080973968886800700005030004147500000050706400600067619005109528300934407018030000479008002840070606626806790505020030005092659686939434004927708607070337870873868800140200630615204480060910205672671428790020090008079324060780981707034202380079907040860410091839295510800720708990405542769952060608000788400985987003604086814586094434000005704566981958310585490399513588003407000004098905490007903916107336570723980079300775721075566780548092730708941723425056407827840032400699069035773460104002907005005084845201007690709082406954909079604008746015998480260660086305977760808040777950849000700702430090202509056500090016575099400098600784500409002505470806249867107250079067008180109501010400000560020700004006001058278006080100585008009090404004023005875388659070754000442650670250108477580063440980329024515073717804870606282975709440801033960055932168003060297309052086002609872520297679742880363429048800017056306016306007984904510824715163930007338913696900605008594029320319709269050306000033850795060399086986830090676488655987080785090690090087923101822074193238738093000857305980893860040868652885003000080013056003027320070098824100441057600410589806039524640000060000817840867086820809400340523007850038034948090060050008800032692876997058050779119400045600008480400087549889000069054700039090850005105075720902017070068508903307007300004570908003096005540911670900096020200030580870010849000428608399079517039088032673149391906361050874304200066041567107000309700107300130680778755056052091363906902748807856400237770963409199201597805660948490300109420572384612807027257090067388900585367700602812866068512638058000486700500069505060612635583407915893740249190081603886600769060879800061069850980090616140314394605469806008962509439879208930587087079390338885657379919500605832405036370700968638220008765950690200687157304800286039500048790750808967051009012069706008689107688000800680478040586730400901054605664000566905005300300070798594700821084057700204005979830980049850940556041254000643004877009080007400889365004866329040813671001390889676004905400635780707006060604783530590009373006003730009050301980516980008770863569044530906293612346107071400064450440052056076900468985080000303060173095589406920099000085120626600065780876800726700098700030677000600002970000849680407909020504874683005949370778927010710850007007720090000686400129538030809659700930909767555860000088290906000403037050809260580694706080092699020760007160050620767534708200049884926100040080300915900464001600046707065069590980400087500089500008008613080285600047823907407908079830080570047099090019469004303900748778608750307278935004740849100136937994096070099493011500955498369900006704007604703009960040009009900777906000037879960384704308016420680060134054069514120661905006070960008784800916020334523632804809267900000721690507774180207480020064905879584780097066037409050230000309294544090009709106408882393949093891970459867036476879000010485069087688002090002005099800047096486404877300204000640087407003404007050468647790806806280009140700743150030922000670380880440892029954779807880335066140044734137070092097680975006708090705069380006019008090003686490670986407101740390800078859530870671504750990900492050714740793571661439082570559080708907600905736550080409937400901600554904902007050060230624559607790643000000900016385249614186027000801000890809753762000408008005988957487000020126000086800030066987639007603890293610666005560079908090500101078973056007760092020060863330909098904870058010930687016804090710003107095136389700500696900375004003260067006008383873430269908009100088090603275358570995660090600086070050577900078990087109640677193907680400770306039842090607695078353010764002176460037021852950854405030188045020080097066293124810038570608057300904000007901568022895409577464036382508750706980000200058608981802101210080093409020010584749079006810004902535889400286000237600307380064000760600935979004006990080006909007000158500096032383326808303008780350008747907008036902553820960107673903005956506799087472530139000694096692201089026293007098945005054337370359006044024696033086003869918070230051010408088000600100900697800400299804182977359004036709041608105852000320304453006505114096019309000609000009908030800008450071890505961170934685976008400960076407670000835654330079003000005824635050025609317035948659890861540880469013027272006830707401501370737688080712488700740560074502973007358946197819504177005777645087202787510290300001041009505485808106000070070107442806370998087806030595099058505883068483060003299066006058000950670750400565320526979050905010408723931063046801370209470528799980206974045506787470006999899348840205603649586805606000857974930540300044000360830674886098800060906050480860940000026604041900000008806027053751557007768128878640325857094670766786606704004203002108067795080768050084090006790008269939878966296591410287838967050894001045108860000080708871071700899700206510090509737000890205104777001150074020034877930000033500777988409500589440980906030324178807057897505537310840089801977476008068690010471600709450556006148307804701560102607309919486007790049200662620351190189922059095762690090293362970085507082004528200970905010900085000907000008000656090990909600320003670407468141260008268575006969479169600054050842141350693003703800785000474750180000098677800920317000446070900059767000259147677037393830383947708099089600000244208744200009999000037040070990073070312290075484063895335906020309600780860679500708500700007640500060705060090977087297646053846069666800700553908800070004140114008007940630704901803067150806810700053097074708608995852009860797008080140194001600045093597006008609138200010988903007473940106092621910087850406080097409072781051162710491604263699934060990690809009900060550785020021755200104790606084640809008703730091263770963401405076388090096019090815056130968080405305904800048500361033700220008003057909097575907032008349001388302780705520784809773904925790690073164932170863061085007557877518080038620067006074990009281030090299500086505003471980303905359051790700045094510790930000494093595906739970465100908819707701356087090900207104089570396700082087006643016354853230770051896093020012849705747807360215570744000080074095872388902000069027710936400004870096903562157970024938870109998780799107031566778094580016280544081210620800470800492080063868908052640080886009923772729016406388005379099074470052780008605900806980600092870086433508602890799630006005907000274873679005000070482007001260000680414070493948852009299050005308091707705200010900009040898025964000064066096008539688096839478160880033080682720000191696730057075092350980790004470404800838058052597802809046600009009750160077878955050087009168344697887108082200560098759709415472046605326960040000309898051700619588610001209867595099010412060000590054159819774608020053904408524308925590073500284796050819606708311790080011040485080779063002069066620608280436584070102160089054805093085318104280079490704507390707028068800548903089090768206972068704090808648600909702067040027500000579000001400080067633406100600027000000002008050090008019067040599016309937308069290006300108057844074928449580500607054009072880107061000900074608509028020060643098569647407978596000830033097010227685014708420402089025500500937087580048834051060506500894570207657091285800659009960605243001887740765090623359930009300824466725104307501801060000076309006989570505090890769307201688461040030700055813008070568178041889556203091220863021400080000630980171902003050601983506250000733350226803109068706099188941058986668080004400304060070890997379094260020369437108506725655543506835200787000190200890861086899100977708405069010036717004088099000785640649954872087902020568068005817009003080786000600697034916820001052970082300880001044680808701070700400400501105400727300180880059078720085505300009592405308570819099647659515460084009002074600043389190377503029039700055260963400800002387090951417804840546880063430050009046709918561540009695899992068990499750600078820670800582600078058570906001770049808720440587309785890310590705051507800096067130700598739780106776300487075620907855799220050670494073001909008037500607205070070894485006020880003570986728004391070300207029287740592590060335915080025937205148087233700637900388001065009422772013567063760836660880009216380090860050044390093488600625098689700751478160094860623496459418670695560500080001754158041548190000455043400410457807037000077839000758060084046686902086022052968557709810907468398060662160090100037898739860476063270320000001850298196689300480982051726997600134020940490903008059700073041508847350806700908096508904609000240401000828610803062909985010001968060990048706419909099399006040450186909386737044812269050510796038300908000090909000637240910008000568659471053090705024021670447709009907070080308065009987098936570657103709650708800254009003380070701002700976380004060020769307030097973863045079258008207806740793020900786038406603350070160008494406440203690007000074508990016730060009900096549759200022400070044032565496060806710060535688130850820039747372780980207076083049001857700860839300521767303004906098956600800055360956882360079500019402030805030730000946183205747587010080015168800904401097888005500000400407090900790027109707075236900298794608034009482036006404054700984076360550088405000900203629538080403030903699007010687060740967050600089383086471955487700063490134609650637127685672100008050613890401170020598594032723008710200980818309058076209266909333256820034037555016640458687904060519001330090076990610502007513174026067054304143603412069008905877008307321180902009570903704090210835807005666087040405508000808790110136851779791447607814703104053107689894097260005970578330558000183007508603997570239694564799508405798807809776500000008348262320885001640605090933100177912094903008608004209101583000049098360056370003867703400087906021860029548260902009877600479727008078088240096095079064195950057000005317085304770606981906963488000008262070632968700060999527043804792090120068100530066000700830028050061558001009040140112780077882291745478007400503743134269806060900054677642567090608178719050250058370230002679062080065606505339031909300161502250001899030869328060000606308595120707080008802390970500796297056000700932841097008110020168805500514087897090663184000505808903090577572003009055053003004383613047393905000133900008900980584009005920007000930503380850101859278000759000310080193406058020002068440500907150080707976600380508627500807000680488770001047083495666401007862010990300270033307084000370377725033098384008700007708007660016008078804224090080026240049030700801905000560469707806000702030000883219055965000270086700090278000702001010047140150600807400064690658000002157564602000000590243071809770690000009600970108262720673300660400602467030904887287929636988890395052440497663040952020000628100980607598214679408400509609009504470605050649482081593260605697891990459071556000047427999591890476089406040800739300101478310318039658264656390070403519103900909002900000500767705001849909670007029045200078803108104120079810080250324730827402303272311005780070400900053665800900802060071619000600579353690078001777871002090928090809911737788018909802562206882900800398707500330500093026890487090846049848766030901092986419787202250500233907048800078066090900040208849010149000088240002285090033996511304036780008102003060730312006900607060747989133605500798010147438230304300700910010805680801743377946910061896071449000000640145476003972642096909985892620732668060596409303800000390900905053283030040670430805277901243010842001408090380567090599072635202907676264080810000431298943919896180078980180409008700687960560006855790338080650390901074460900500092190205506989682060020728770208083000086002850600480025410050007323086159960767680065709780090804070546056000004330810107030010185008532085707098049070410025208009008009699875088190900507151591117527606735500534790370030909800914903640000898090005100676980350713263333100000900984164910809003879403906306000910007065998414745002379718055384790096600796540759310000452540869475220090884046540890400390970075400028035060460286090001588070040805027393873094090300723040450090028098900506703050090901614898560097100899080080320814409040683683362492800903095154785845905045306650050351350400795400000039803070078103050040978000048002000307500872100640008770950898385874200243007400300633028086743559079080502435485897003089770004200000007992900462806008709049003406463847036451000203724030258075400061609506032495409289980790701000901853056084679624005087194807140698505507085437600410072777500002809840800303090998107800070087276370000090200300899080150008320495102799690600873900679382350692447919008785640701820800793048940946456382508914098000705097000795200597079016755399509407200044067003184600880000000500004076496605828071057070400100347100649477000049000100050087040006406000574090068710004458079870066069264405008006178574009080720009900068309050890840005932501070849004800227002894705071255643050370096163982850908049695609800504808954984090000791499050952908895096009730002069747003439886907080702054000904702070670068928174909508094970061069926006450809700504000551009516808063005497030060053700609103800600699693086070862159602027300300042950085949069538894365270003980173944009058000000706057500086000082493541089770010001808080887850077308859002737258008409000137780885385310992000142070585106420775935580030540003408582000401690004595024128011570750900302089024004040001080082990754505030970405460299810960806228740484409000100600905931600105449030982353462079036696004001600941154859760090806066581733143900820839800792900118209099540090277729186046502080704227097809436967900855598894988100400983060853003497011200103014999054070058075780715601380070200009009809220860400799029130092670080870207109700005906810906358280901706070740799347883685099870938708509090908051608000201579126800706280502366939630705901340200909049055097620002706337439444000098087580673702070546800150088640660669097550080010007907699884090002603040909209700708086596909080407560000650860870234207321040952031104609709750601003710289773509260400095507099128160857137578006000779600020077968379620030530110680790187871609500392446915561906058104409934290000070200470011068607299069909680378802940910588887803800060803506194030603890048077003971000490868170700414809094600152000289000043860700104009260009260006026600625007346670609042001996060998016198385707846036246206673219010509097000949350520068606090930306073949535000670654096756785076366579249059809420746438035607346921909030870005503701409008075070089295900707005392526725751712000853262204010270513046907849377811905410851060078582260049235904907507005705208657767270904558000309780091000048082997073900000879362409017077906615413372994480104077970050008000880270050004070186900306840084096960009400068300520469700410047460917440094900030080047700000320500060690006996900440775290430090003820000545819909067434027500450582506020479040976980028545895746030018669000075000850581748459720154568993614748786462038380807109640207900031603609270434882308015721005060940999689809000698774427890696720000770781065782007074276737044539948842706040570504980008484140476003160450075303015563837087942090200800310070902809850808918006200190864706299420860680024700309504201165400000507003510005885002786995801344615584010000039796046096170067762080360409009230820200028402956091911800200972253000739743045404012038085002092315770317950998188012906151840452906660498007706066854600448096070586208432070730470908463671800357809970019308890030638902700827822553806350020966637300002830026550888017687001297090101466572700705688070029062058267906844105460077356100999007050909006778024303077450550902070096003390683929799772734039670406002520099058076046080806973005006007583124005000047902306709776400910012082209537000060720308000065949007670368507100623009702806705695001004600000176008070400684086900800390303300005800708300402010858000910860573669010060900546995088717018003084494860007000406407969820203090748505505068126006062000732058470000028754731050673007700298968802060704007379008390000595301230082816010040207500010007994074060358600770000057309990900208975048850883006069700108006196402907490515017077605608864000506407900020785696009600509987660072044800704680571099220110200988089003039706420134597102190200006080900600761315390607050267742553843089226062655902080002605427707987468874406876771608250768680080340079085835902040040085060723980701918320924006747008399402715910009681089720003517000020080602707250004050003696027402807360308239017599952300369296070890158040028008000300608648000984900900086310640009340100408036006900060000320876520029300863189140561000610001156590637776920492000809000409504710906485249030609030076000000055612860950529208044426847200907090740000500090070507290987900550024020808388000746179520505132689728320016610065927020706609417720000070909711985170000000000640671335027037811371067065447008190406419820095304093700474008989695406308996852402270400715478875038075256256206409004080055039000063967439860358900688060050910609009068570056040060880013609040306556177665060260270897001046646464809800801090202439654500040005600160642870008904012215080099906897080406444040254033169918519000190004020806001802078040466673350741743009698480354640939004004109709045902672009093759007028000575039513200704077519797691084067657607057996905652921309001285760430248008898058276300504703365060047568089200000776050098604700004084189004006801719194490700864089040540003660817101897517893055584036760930906503950009245840750387026027676400890784504777608590450090003898863872600001208008680601008009650611026882560800810290200046600967001659082095070080669903100610900758307023002365176090005256870288408808377401085180846008987970497320030355986000641709059580068930709352230823226090783087006020809770504809445070608081409588099090030120104062520042627060062799657439000909200086400089790940793020029390082690000720437650060994023000370019060230938995090924008879800175996730907358053660000018304440800803000041077409700200098310801000060039359970094065000404942490003469005300000348718970698219602500790070029435680002040910890405355000086056029302604070879281800660800084000006614001260768971957308140090423803608709980700090805080810225795508060806253007459001087500503807055507690718840920996009744057608030800899570026330171402465908527344900056547872558302069693508206962060470700089517708806399706927897840886002108940340851011190002530990088144004905604608040995000759100009700256052000350630000008255671057495099500291045505879431970900809820495534094105010959049417043674107060959061876560809326500950549009400072835098848000045009846040006920129612600500060740430177090000090371746045050320076540067400008010051202907005967060042006030593800040995857966059060772790090090050800700200809300055900727480063019003940595009680520626966362279900009061500592084996298000077095940550005800600870006006000800526764099625400400030033700283080760428489195501507406804940906700806009796021995065893946068109793057040717268856909266020369515672607089020740052400039750798936740049700009008910005274001760056545747100901092174000060490067023490005000097030199100060725097004906850734287080600037965580993009095697032009581923080070097000410976061037967000458655065788625009070183567070309716210000705480496401988812080738202489021896600590580059107620053054577170008002050007686550060218660009100020230090049030874792709608002713005665567082004007892408009009212760606800072000207014400640710478058950778007009700931970945683081520798000229200697732680297400600207102711395099309002075501177002075638200687773808900069800007408880582007128000163078000830236008600130973040074980301279705708090807152496405085460008940978605015581498900376806067666058760170607670109040607075023035680565460058037400364600490710598506066390048250739498418008002768905060650890044086280920121197880494000085358500000609870100892950939000600049189850808001098615607073000000098041153701017000300030968929089284668082681990700106566713000499089946590435018302081946802063098100933601071009935009839009096098007077250695002285547585454004000082730635001971070064800080865883093105783093580160556208810960063600013050649884508906402304503607086009619495003705100908001953051061700028376547428007786770559581921876408404790008090099408810814107110900301240453729770908305901051396464009035006448870326706400488402078208081008770306620060049009505610560805390360080060871708088204255908066662400980090285558090070419850040090507090035066729086082390205407026980006637063708279000674000930860071930789017609080389000695500571508004881846920908009015800536467057882930034038674740728829540006008362007009990080045704289000744340200400029025580903590000580959899460500669006173790455881001061900427080599090020505674076668030438007080003600499670368861758450261949007880010560030230090569539609148440107069970070460960045960031092039628202020051001014937960059707317040400999087080015250018023400987352029097067800089050380680679508077003400464533167289805246077000800745977397448004058210044500103000719009112768080968206026071508304005325807888433080333065300079500673809882800756008690568805817042009097710907019006079965737502520286220958012680074804990304651396561806908055045690627370090970087701500760579173097408088987200980405423032770903008799200664500451076043077060305282062627000008600755857502440096986797977250970000059757850040023600000098646101019500900880079060837705020309621090907809970406030717061669910058569804290880790061000669597994060027809600200004000868000503378990905705381570408337081307005553000000020099008000382728467841789060776068905090504000022518339904143800700523267989620990997707155500879907237827990020534894863689095490046840273010994803000804506948916209600080906098980903460806003871708017648704705593444783749606275884054764074099840001859080041080560003057986470038396030050019149780607489280849080507358890850060860954340889608810030692006427060793014070100605717954900603106980740248849004923390807716201870909910103330280237744900066740791658036672351090300407140006948016035003080075064805992902650544639363470008184820000000905600357780046018190373954090299006106993006309807868058000405800000090901093050904096600600585066800187700900020000679300856388074056095290410404005047807092000180009659840209708982108609008002670969405670984007020162076705705043708720079000750735408368500038700858770265700780900950080046052629869080001687086548580880678008638606164274990037690650004957866159188988046507008168364010402082093933930505840006710906011009300200407698220009204402880049500288800205006000457830009106820707973508669068588900003599502450000036073737008600200578757820710008127584059160096097003000007390990000012690450004939899664850060807000107608097797500800096179593974790100930658809819300604869055002240919029048006055001435704007773203229460240270699000042239150604037003032797090405087706840499348006326900787909601005020507075923029804954902847437070648744005400008070678565995000490506918544024298090696023797034228008575790200981973700080839090816450090708039092000030097960307760861037006490991522052847000970400790037405310060090960008200320827026300286003096031105300807980533858020370203290664449007480800459980004809040097600297030090809020316739039047014943060370780779702010202879090906089603900428690245860806870674750538857108039085878095076166300007092245977067040018469789004008425951060850024007067406917403650406080366200096270078309048900070049498005726497869904500106980090019959010090704040627400058986500640060408680960827300007700729418000333910704250303294394075282070080600907090300020459990003700104007005500079300325463793000380740090006090305808058691896580060800530968206000438463808040908609499200016309004700004083790090004478000001794099466333492980600080750035923976100589527007907105084606324060904542400591811906090037060618247100042580972405940757077668600059307973678108008330540865504890446438878608850800970408099950420356206000966327406000875617964706912019750050037903070070487206088150907848094477348705475600959907096466909050870866032090304605000003918896560871060330906096009503543200009022002042867920374025055686980049500700048000560085066600004768057850723309309600060330280008039300880000390407850600409025568046561005500058000809888927910430002324649704000050020500080799908280965079867000280004677469700076603762882451801280930840600080404180209104501009947822947703097302303030046003089320909092729084090009028586083906538064890810066806310033875800077650500004067708376800707300267587265000368608969006300729279350598009000000017010445902662004817986070300609757095745613506908073011460720721900000325951940908070641220038900970720905707200996080003857102749790470340907309860489380630680990984097793550400000660487080780707988540850005679909308807121923561958787530882900860600090080025797966595934610400905068105800640980345009019040170608006289939700257780996100089068093700052160002642070000509029957838955897797970001796420600084966460312301096038896474003058401105060606060565180048879070000000106070007399040090526045003860900500895791070004099066069508030020038051857148003129053330437088902740584089000860060080059350804093030809006360849584087801024093486408582692005039300648560064003003003588600148700051902604704320180834566819098406600400548676070400638808404261030600600090089800080752905604157207720956318265005800868000506500080030008769992020454926400008791089007000157298401372077944296509000690002050860001146563338398680208405950300039064080914590857567006707300369525605980881042000873047096450009970078308003007000303905746900001676008560785020008809739755607053560359344230692375876090000710009509800670904065040699884200305930950270600356788706740007217600030009972903097091801487489425860800998725300764320190015980037076206077700005700568407009458379000420056997540278805040000998505059267025606002097070007000039000226590019220090254999798540252807300002078000780092070867601055710336866990080980970821608950079000406087606000039080100903070120804203338073906006690880087337960005004606095243709350002020769953287095080006786059070091880038008909089807010062905090087611389666702478675300835220960304003455804995700289080060477009047792020305038801998956370090830300108088008998830370607000389624009021418097700800609563279089083470474800908000007181778299870300090200085000895141300404137980907993096063695146800304773887304640880900004990005000034940080759131619403609062164030008620632572656506869816102900873485077600026400307305506109084000092470081998980908802905070300941976696206807002063400582063005745560859000998274090080560304039807860400478404896191660010090606687004090869825699858703006041899006000000650300046707402880020940102720576003700960054306383079026396405146150900001008809994008878823038080980390000369617006657029005059570000909748860850003099042540360205260444538035007383799630910870050383090003820003500908020960480170977700990057204075500560527850672990209008077677098745108990909044457301595818009100025220880840508062047508000717483980080368355369408008199005100060686994759350056490599004002009404038050059000099040701008783003091890009737073399427090969128006006326460560079209007406098008630480300104500007605800002141908640209800000183088890808800100885900544806001120099000209978091080092279997005602870705006008800260300240015000340903705807464403760010007358020850000603707624600890330720890045090500405936835787627970085360707097383338990110900880844240820075500770005021959705208989804080635203180906009090002190497150375995800528164924060001842135042654996300933506300856006000025688065590807050406705938060809152962203900098077969900658891017546100307906956575603807977807180000807047500190343040060684797094089538807063674856570274207820685090437686907007249084700161010307000903701737069008070605407074596549608920190895619888808809073700010091040060105286881990428506817368560808669007999003400694080620360814079061890043800507408078070096758200609067516977877500800200400943507404879127096726151049502404655071660357516308523700360958700078649880050660760605902697005888290001060505907657784016006797742040069159004005188636475009600491626888004005007995130109588797900088239400606060008008055906001060099413089456095908033000570100060545300971939840770009870658303035640389000864090679907001000090009297320895050057100050838084825090058042008060570238200636670177100069005309000541049760000007362097001408908880469820069545025580077006090571000900608435090397041000860579920040006006069450482300084850507000082460857240090308097709044043008800897391446005802815808045956840190600030691193449286899020308090008860680069580500788825000488405570976705685109045954388963403800863062013002071000689081676910583095884000406600044040735599105430040300025309802080578590005063080200700064990000086504005008300031003074401998575006006284545499562033215030083700368980902307790700110390546003000028928008900340689300015940061023820430503058668905060309660768850097510978565878068695709876404302016995508075887593048094872020200000670902027048490680306387995000440070767050000646494278000074809503720407703400226000735965708400094000000981828740692500458059077087127703024920045979300080850561948200308077069009890609968094107540600076365332098109449540008630099124050989845390516308980730208989750809001075000108259967707004090098503801080456403040076335503800009023480051509050006740970078822390700908670600714798464170188698077917102492003203945709280800906705164502498540993606408745407118897108963300050920803948645630902906633040890580005853000080785080070753378800294099680450680190090220070896757884620504098901707001010057699570042108276962400306000553000458204050782709869010980610809835730803040707508878897206000000506090270406000005005006308486800587909620060500986020996528956605288009024905078960000008893120706060043040090747557059078260700020043906113374970000894424810883330050074690300769109300200200505060000140000169460076427588710019062835500501207400008064123502407388008702040070709006900650425554770110370900400800809644007990903070327700647730050119032848069360604680900000005064591009880000800553761780120560006340065540350195481560108905265039806188051142900000004102200706009017200330027203064506078065959340065487904149000030660000703968056282570000700094018773007939892436051878017048309001884879960648604000989808741000507109003751880636720080052095707804800890030409900557002062918081100890800009090207080373007799310787006540727082864980859267673400097000797007000793000383804730710793875976683407690332050910591890810479318072755400417070000140701663240390850640041570140377078750685085067060004587005093280068100470707302700380004670005203000002007046660017080277073177780000699793805556059897900691050470604990208008600069840600000280880209998500050055050090470360060389900514000851327139909782050800919190790090050609006000330400014070016048950504175979057890080004013587969600031809003005070606507064373718479203608420488496607750919900400064112951306283000067006590795055041806678802780276005370149070901588542636309067389169404364060829009007440008012003033013790660413696252900957603700000887512727680078760730509001407300527993443070288685800770040060600867290577312169500009707960550056607800808860903510719303080091100674647909807367064580406742760958706700466907709010698092090006070002704502000060800690398670766371474785509060149060000004007822200975001267000660950780005109094609001006010004022903013890760110009493075040802708094908706804050053905807405588000884008968212000596198700600005921140530036000400018970677009723660750902009642269850592106506703090790005048646087289200885807004909960057047640966679307000930869840300000138600328590509728898300557046044406529939709360090040000709000057312380190238502398402006309002195006170880958000404945020069891005774508074401447700860681653010670000883902068586080947290009896908078011485000009760705300660480298840609389010090948430607590087066064099603802809269901490760578001000020719974766006948091148690296006041038009405099505606002873107880893764197390709594680003071550588607350600260588909003207970826008085969008189585051067208700588630807731194683070308108906697099317501066730977000944668104612845961056996009906868704005876083201580462439847298859450506702830035928068739833008429819916242336436990760057640683412700308842706188018930606019870530875830500706610940409410282526901178900009605441698680004400090608574688705600757250004055797450485460804100004585170007077677008959719090104300987974047960090700477800000586882980400682440035087900300786000103093896697000630639002077229970006985700007000996009192907826503992701519089470613092090405505301501070369091078900709078970090802065006996679578089690095070848080550908882325929900980903900778380957097823290956292919500402675681318690237781606408000090072248590250085020500410093547004590047604708565470004003584604009049090900308503380900797000410089408830009000108039505935160958109806006792012579009109818284000405000216300038802008060500963701001007049035590400026209003098002090609051005190007027927000944021570023009200089043000415900879095084705500898304307770200000784777050061709060024000001204860038096600141300007360607298985536107800236098702130049080304578325090641550620992254834061500460662103375999108009750746590809000964617915790880055090706093090509007057070509306700070830134935859098870767100080210401400953900005022097057630200003008366734710607495007008700008205000009962709501050677093809990682518745048000436395562908406290090440750430290026000670789604820969907718372812260030378940754204234897384164707451387038770080786559093933750077906860100970740501704701357609700054624070120044063258609000807333056020066480040008830659606907046581419000292038971903800030418075064903079074085510090070550007901506000509040099400866850385633033905504402600029400100086746400010787098817933020010346170690005018018905700263176008577109740004186055043599080300900308701017854511660613080771066428033406802941130901011693908790569009000602077090596530598918000868550845960589002406807902042300022508889380764017008920077029489004096810007749060900089577060508840270062026008569000700879409309874960689955006930880405650643067609766268106410534200209930752846730700087936070403739307008000000720649590830543903001008617070209060050570873898079606690192004990822049208730825000966403560000046000808882051905092400136850304889690766008009045170104964780740720099860003800193070000738009559040036343304897304630707702901287899005880910080096850074000164800900006025600577098190770979913907090690989490602981760005070820900950820808071570669026908800005049464002090074004538600407030827475909069155796040778420907356000500370910705901782248678448480088805450630170903700480872005120003082004660006008853928606068508909330305535746016800068802030000071100627003900899292682200938354632506050002077555809630999054694002550800938400069276404977000070330702036070690104207903007302067762030692538999970856860057910820700014603943485954090743032791005057908750160183097565626999004506524357030897962810903006777429026010084980800053704629007081019198400995848606700600208607800080023407301002890000201929058030860075660734080247805408610749100677030003265042050000295520049060221007942337952007357176070074504007477506098527922907080365040940803587955310156000958009010003307870704006909005075005918989070436704170851075058704010705879800204020099950030008032072900076108000188900000762060639960309250074838778430000769006710399431368080016900630309695902468400860608702257950071779418200863456640001001070000030475830978840810774859100205189606499876277000880864020561094750306770099715655000901909803406068586106209404046406407090603773908912908680860594009191820443607472076002186880000190370066454170690652000538770601900440350474220000030141020710019008050900385308900928070005980089400398150040980037000436702850966708263099345004043452804199046009870615826099970750896757100794086323000068009904598638403767060180988828077300049220637789875008904041257309500085073820005297145863863100739000959361698220007005030898000078099392280368549007708307970705000780578006259002484075010080047001730201309007906270080890008580005796670319580000650303707676505295053772000838960406037070006085460859520905500002800467980930001009840014587480905986003685595007430061528236050135000010053309000050510005067826009250001000400777336000000044600295005980058950694967830493530204805006028087600600020303066760004909922201049894996478366939536965004891636812504706060829406068499030068516098940075790704090900984381009780489329715830725008434805465677904576972020050706005005076060882640635234814674008007086370005800485280000092040726546005638950867705549099244099900550036579555854070788000040049004003597005000340900000020987900672708760000780005900204650088094610093251899093400990077070806666760890954890570510080063695043969873953644007778684898880753753691572502000756076973705700596006050162709904030595066400849006007004934086080564000773413610708801861799099028247395450787003688707346440700800305823308070082969726006405710084600594620083035001978616010790720009390699750070564905060091007090870600607200807190970098038750800198000400005730108420479535090900903009005890580008863005609409080083890601990578640402227420909609955054777907940360319084608501823018933002433070395007580130023757064400854044750850070087907645800406079080087680516440903303288068193090300033819601075206706580095535308195948789493100528210005220064052010838776080709085080578009049490060057334000643580003016534749012090910538937085300009597528383822680888908010995770000309015090885820857905270960138270030005608690690967088853020437308491050630370130088680782887967680062691840079380043803825997424500930499409600001136900351084064930586944199616570930060000087960506769009776079550750747607002566641806570040202961900000009080603607182260200000006909172600906040490768499691816908720750868730985490790105695081201680707909700200956025278590800000782006010888604000570900750430250180467256000097060904800580340869050339865719500219090572007509566538012100529760079006750749576000778048086398820924759190680905810966660708650080009018600750035234755777804067000285668078190009499601858068208705002696040301094396584207803532600050000857094695606702066000409003001038240705450083697058806000800700200386006004095633047007526790797079202003007878070007003018783920076593913702006500707209043120090537796713023700640044040426766062808890700779000290381400706070385979068700234299085904861609003424380686900402415806406090050655059410062059660540595506720816065606250866868434129828500306060004030920290089360983206787060730794765083001057617777009499060792019094941868479055986809587008010953602907836734407300400000467330600007000005900091406950894000026000007860296306517205891008003290590604904308062690050040080688450501730420885703927609030058200666458745308478000091045800604600903979007007060022063830908090788900545206610000366028010822400003710977340680251810559555003059406004173888070680211570730478802706494070872039900030200068040033036002008677000505984399968590902507096216096827753008088930604000060700030950409700104629806050008872080155093730933076562777030050825078077208965588806904632002916779549579889400900084343188080867009682904470200420970080078006558970304900555984949497050398170095070287054459301555813570090065769044090103302658070509827162807970900794909611310065935990055600050348002070270003070008307080040004009008006595189090876604772807560646090908079758497507398500507703059039000530000602006059301382059904000967000015089100064055833380073800385902391204007754368603165500000333591720346765976000970760290001084086070203797060677047051806290000478500000000016904800008504388258881008155302566059690847977009483092364275007940950051037803204058094110800080934600390770001069705051757876860655046001005006958000673007501841280002027997200956732788302390851580916006408180905402657566807340150160000005700982999670800200706897600320008003003930870583050796586000689060798573556300300003904180600990130000019000860867599099000091237003046670004441003062901363003728209542006905608639076051594666301089902012088779009029775045076918660652000468827787964360540343460445059472073089084003003707864766589943500340108900000297840050003830259108013065650336060090320298408049088930079790000000096909604095700908388890508450500450095098542770700708540500458700603062063286400486000307507000894279660714005709006075450995109900111508889803090010200918728873807780085884733610800790679906002340009742316025996800380200900778177099639319893324094880774907709879001085000005080720076000669990019074590000909951007408971056706000040001001036390022008820097500002130179560530043691803380012408005390763009507904115406646006003290752001756068038277060351679950803043338041800608254509900471965104070635001440166879931170670643482400046054840619955720662943009000120078507149708450580483749497116097960608257740204740907716660408077600063103078078395205009009539199704406197080650095141500604098192090907800006008077230030890044088477877669800550751974590080900967050600802160660106054060700408605389405600047872737000056907085078278006003900768087030790538430461885098500003309004090109505009095286700890246009550837409000700012457000080489856900066929980800009609900140498004070070792700209970940769077981103360448990000061910883093028509403000182031008900057087190005967601809375988089792189200675750590904657253004047808340055529000057407500097049005090084506750704005030511094049069460897790804700006870078660050014479009961000455960948304005010104109340406053090308770054096366008702970040095854086570079941841020063370050005499537828062582440840862307374094185070006207055706890055260716300870054020278705473666578506840700984572200608887046009389904075068590489173859960960049619504031003009409837487028100580046090000906789954958788208155008861723072848062009703346780540408103082880708608047881404400902012660066234700503472000024660090840965740580686100852147082070095090059449069027550000197565088009341989600304676998681904085352939008418000200076139808004850910078300007090004359088020774064038338802600000707901970000478025003780516002158790598041056410297940306520373009005000560487560130482395600165050800098005897049409600800010630991081189970980810140353091097004867405057029149610509097100003900009890748072087004102003030073008069782071806984738325008505000904076000500902250629970986607630509075959436070898206887000146600010490457935440180886818451706397000008092030006568230435940039923193590927000562587516300782131096957664330001009803060806432136667980733199592037060132773929400999263507947700502507335199872609014015873560197504164503063800800604100720588630200874177803086401407500805060107030096074090664007096005190047996950486048911052404740032878051003090009600807000326665014847000509987810837100865029990685038455470896667637807938040006000841080010904058800008015006830010230800518907069060605933729839658090040020307448008029091986999079808990017080900590708002409099786055690907908306480402089967727090014004612470499240497900062886798004300020040862000534388608680429397544709740104000843996720903098085092609703700000983009034500188060000000800404080806690009070050000904500980167475090402008007140901607000858108709934824965970060010505946462003090985736304073117009046079690907130760898308795960400091076809855707779271507048996060594063792092337750868099482704500358300705386604679700000693560793639450710425112080893929860170090977850032673203099000489784080000000979057988870810847052301018498166050007903686400080509099077060006000547105250090860426180740053879428788280409998380060000774960035126876594106307560735005140645950091739650970940110504568080771380878928066990033917500199504470820400007300134686530503946500306704270005006606008938036260028029042870540899100067027403851377080341090950770040691084907887328920560740977003666357002018660701677097094807994694703009711987066030490100000990970791830092030003148084400209895401000110549936404817007004004707085080023980070043059500898040946999816000367008000978003302090082054057020530278015510260870504000009000000683918268090040606825040003760876011408900080968484836005279956340875505090552645001076787055020486882093739601709148000346855906107870010590974040340408024300490680017200610300170800308740073506008400960909748039560997208079857282558041575080608920060660827825630481006000037007520530049758200299030057091040508049660101503469700100592290720076009089702054650045017044534695702495000102079034040801940290074955905076332640407964007937877808554700949763736350090697074890530286200017005560008503179492660900809608609049807162869004003520985650450052078410298970580099972901770026010910099468380904978500440436707704178085802047094477005045808402700494808807954601099976867213902760035000042091718708048000690500798196018144050286470756804105003609700372912038866880920554600055505179275707577200347040260902400680280058892007800687000000006446740401610742006040508420000066708044033781758803900538008500002030082023085483044600036859000600918208067704765000090175470902709007706809001005704060665000029950090333960090089809000047084007805996074881105100000077774191009440050091855967009730005104308088231520406900259960800131090000099080704470006802097307000888095930008162097500850710300602066604880870060783100057230047068204960075407011570969608580374890340500803018828508930650158747030000508404009875584487230974070430050743060463563013812007781024320070838709067757840996216700986783207027575606720080047000304800790026966857759330600564487330962722042400981770752300762986502504043158702607019950060110760701807890880094005687040473086809572906808091017408800208257060701027900190645295016007378562008710630406061140008780593490800437001036404409007775546003800836530069685613204100545680370706565939400850100048981039010630900020908374700206809900955059706970039009040055088080726483890018055006037006009730808059991514791065888349606705740005819914207100009929100067710609431307666698412010409009868509004306600890900009800480109808806087908090290145600836179740890809067907747790092329880057002660707018870700647200835800006035502094870690007009978077740053008082584057093422331009050408009040370388135408067104900367181410008103470901040108090969014918034867905034450400906774946503883013480003608000751719059837305470030607000158014030471483901400909909241890250329026772652209078646698089800040091030574908705700043148469043518470980089680701866410944818078209000028706069057030220008900908688305705803759499930090782004706797464340018735009013389925541000700891004610701709209030980060109772809730056007590090026670044227307705900988206866000905772806904703004016050040696490806076680528790138082550096045690904004033600395000497060850818302706041084720875270997006297278099701008892509706002460907809807327953654036080160080073767000730030491766800370979048509490096703667038039356002096099460058905764004578868820479078459606700029740050500007309900023075783610577090060175808901900500712826207620250557204452530002260070991024600380227780858079510836962894842890670910213729609438793097306880998950953025528660002404109010089100008706409169068550004257949780033807100981863100281080403304068040016058008600673007000040506900909007000900047291080005500690933407199275711737400010302003040901400796000354065006067780201459046600000009898908017628187010688002403599907608577759980005560524080439304003384809003060908309000072000007087003554807499058809018375768008979087448700760005493201002530007530387387080028007062700090530842102058000090503004036080409143425708677901914402507028172595000780001986015002509000600303368761090362948672080286601540071600954605700084469166653890060065986285085040615500918030889989050666496028284508013100790100007000860009374000001651900178009000770565665086993398404478060188790910077048870316365799000700328700524039050762094090348939150590607280800990600651404087568793593005028959006091161409089769864989025455910901030369880310900440004567502205036203007209830506960400404500502380192349489470733440029868089031603000050230907975289450555977494705427070209072250002847097491190944597805000989167635009962708430640887081870195056500030689849689809420060059580390800020005702983009046690650234969786708060433976759883051856372868230983507700952026553408008100880272649340055088254030257088020055759404225030790600852881990309002043227006603898056599007869004098663202602006100098900006400343098954009200696003550021019000080687077003907730042483002001095664420890000408559336400797194279880608700200400304659365420960071653605000992965590290905753000456960030769079060198207189900609608906980800800808000971800689247579018098611040888037210000473097008000389070848280440095370621000045790769560660308080080880090900044680565670009839200890002029000600000709020288985220575008703300087040345898190807203600678238087805013682230039300296018947657096580069009893927749907082000048704500087690084088700204310001606175438380781699006005050109770910500906566086008140603840782905204407406040051893081270407211480955086085770042040007304049162970370870700807083003409804524001535308080019706790608058266061209006009099903670981070889630593098063678106069590710787008098909999796050590018890731308062780304305605888007990503700040766090381009389605040834407305709720805099080849381090844176061998708197500002400786390908030033420790605590585803619676000550458001088200399030050181201900800913090008183009959064088007867925070698005809182197000230058088927178028400808808154432330189848960806000000009767035108970255677050007093095100260700290786078173090005769104445998800790085674090000707076682000000388812036604747054334050000901000247000500092000086054009023302901087730390776660945950206709900590040100022820008015245404876709043346500740020558666410999377800950690957701000008090507863000972660769330926000705932909086350860238350200004969800117895420303065409017886908880005396770790121958207009091477491572434468553608904340230006273005049006704060742904014517309650006904080807764680000994017350785369671850478060006736773040267653600660810208002878800438010900757585229498400020080760301905307407806710726077000989760508604008028052007039748860398540300609009401045837180007480069906165768500900087980000642053070090060826005449077903897071359408908470067900801680500060090080170069811608624100056090246145783040000060500096600052799508005092209400901840200994309140900088007676098917070670700746801848060070629568538800020604488089987000209088978900000353507030906054946910609800090870157006079178079505890886620870040855792000590058903578550089862972081000720770045070967510546870606883002957550580613017011574107741732050012000927006702483006995804000000820104010938800000070020415730700269900929240078704076050739030091335020067795300253797488783741251005002510605754189651010588675606260094457729287016306140557970360806390098705120951009701085983040545002008807010000400968989172019099604027906080808095126903374098690005060747040450027408342990097000070004099979538808009503908639506670820876100909791089207725009884072096906500387060005003599000400548847167020000606000700404001007470808740960608654300970171450466172870868000508300503072600009095548009093621620540840065000008007636009012507076315069350270506605001008628010433679655305403400700690979943526662376002004990004000903695900870950600000205000863088386089906981102600540500003046964542820006007863189031500500677000010856517565078001880290706778670099070480019080872180870190986450103806724807010420289408007938060505060001367108766926680458099193005892003260963489500000566090979969809006808572760307007160809048057600066069507350307060939476200540003006909779352088178684791130586877016854489909643208000685104400256000010003040706998319062632882086900430770006009349789071489814000476960556774570859089306330062600308094031074090060979609398289240751106362604990325859243470060678608010326344802940900734758983480007061577191673707307090000207969860703097617066407509757906068400026888948806188507038974328005806619646640328083390357496056963370098564004524403400803168051107698225119130672908876068007954654090000401616500123077900097070095872002563047659905060204905500502349096080079695980700977313009081000361540082006000480490000068085000090600402607408008090886500803760598006667790514600107550100958000960099100639700094320907009000975150860786106817400500600100004800400085000070900071573002940034840806800059902155199693092370484490609665995650305900202432004909500098416003054840307481583663756950494400369830750066000986859509505005786691047404909045037197344076504660700290030068000850408756009090700890598606284900767461903601000489506030095264651756075167409000198985945017717469191002800294908108005062020070080470006896763010800097587809080125682436095029872208084004804100723080303791900245800002040407710420900004170749502750087067658017098270699001517409091028004708920784030630901000135548590005960400978806652773550009800905126720989907537700044106094100408005363719781005000800357800145469020100316980068303495711911400009000350897430804081010607002384008011500750780808598004000485012103892058400923513098517380670061398080590468709057280770040590000300456030745300030260065230950003898968290062711098907803507040540086008230006870017200840054124066496905003019079040907053004507067076827470904190090708229000260980005906660687661080500910460042707002000909070408777349153800030007053108802510958790396104042893399608820889582060090500907055021965034066456403814000347991517200060606051905685679081002038300020095073997306806090000676620099356909507036000003928560200066700605785070895707188084906243200981000850062105370609536962207077229640603980089010030208480508227007087004760257850700890260900390678989077008051401573995090815190151808587969000860609630460806880107083020090296009982920609468080807148047709900004370070610903683960680079870446708600965669071068671030807904250498995087680060003905903578420090557064713776606570460055054477780400006590070806120435000209000417771109900008005040070700208070050987510365901034020590262801088835530090051807397490501440845550009926001403091748000209032825969470810504260008496658506209700009607100090900408020019070805411088080999145207207069027483030730060009630808060329870300330910809100870050084059045530890052500060290080330809006785794060990750044184000002405208060364901098000680092479099407087997118008410261575608800730847081903804090788908041096008004722030075830344005880576709408009579098007809093050491627830002407779505174727350028023250945765070889656036350407737607033807208608760408001550661970809070004576187030600088917517539000490299039028139867966085003899030605015020703076769046149370521291030007090005200000050701005600176031303975008329854048051990041535080081200970048000500586007540926087060869204404080409060676037780011507200000285000048680045783798009002100512005028356665070250887780640866507189844748476816000000861807120340403630050203190853507787520687683065009000990978088073690986400129008816090948000020077950080080435099771001607085907027010000908985040000405027150600008834900892409026032874007505005090010972007429745680457800058906009059189705026510092413869159097013079069360723005006704884681903406065243004706003069450166739205900180804181080010040800004500703580002047097900946120020087041643369970881893980494000007100034000601090009006714812948090094903909003080960020269560264063650071700055090970127930773279900275400019049002003007501509974002823052504307052373008779975609708883378380707007037064000400071587370070300780600017305480412000000420002072050662054003040960900760740530099497751990607833062002044168900189900043672100060763080004222202042700007909923041506039300040050008839920552058027514478299009780974386490009200132870000379000529309002896013070700820057008090708950914820231398850820420130710100070797007099982403800596073277018966269077360518001497503004809006535370568000779889004657070670200005863800110107519049604018677317550904050009093901004683045877853904688790089047816510500500009042030000006566070708201443803006290392566009055028592000878406280076500049406096164080090980706020266050378887071850729857684100070909069686049599059009970700825160032399634923890096207297960728817038607999003943082046040986000830058700850933872600634095756876006086100909056746001053423930900169002994657604046093093700709000508033060850960814903075090008100758685308428108047790048590994034574095709079186055700969949558066000593085694145009121107005076639710101740979040626086860490785869350880586511070932000480550065539583074707373501768890578953029632400000750041179200000979508900043709881706800477085340804701077089780001001945037940600557036850600894000008000389608749705680657500509033406682650070054860745871700809995381808607607390607616863307337412960163740092002098809950600007600083004276731312053008804894790017013090474302081288548889700245009049707867994090000874542030559400207174898009006469204564098850807090085028057018770004633703977091670702290142000929782281799646300438260651075056005658378508902057004084477007641205050701040998030208580909290006505398040424000007670785005971104130300751099780506068094806050687047853002300471100703156082520350000603065790057893790928057021010900938707067830767653099680409304170000470006786620672691703063925008023095000582700200550894475004409738327066036043092647197340684176124605498005006805624060900364091208990400585089694075900504543753691790600908005548480009048871800143566923605541260030000600500001470023550609449294050006563895701020002950249084715701869446047921063703326040570969299583974089124009927000070465440960197086030633050000475076900660111097080043012009009560571088105908300691161306887605174680507067210988930795070258683961095069030628700076003089009682939808005708000062600000900549770049349240854594504485480003800506004838063289200281707600595088300096968878400970804398097901368077006878585039501555200990960505778030769860700410450998000301006217465002060300508560600000810400060894017745717967610254990389174580463502065007335003060091997933904000749108770970803277598688000362014370116407436028342438603830024038604345590200070300087000076090040014590365042300373464765803000790230295079308096800492864002076888568390050040105800037040369076870180008010693381442028885080032878000199098005079073090778302997847017277707602265667043950095300979049000490982047994080108445430505670000033037847020000059105004006038030880000870814001094900390691805107901300605796032874060009200024404797200536040507726489068606900906086660700208408701090039076750895802999696851908009271001248029973097000501880400307387218217000944052670080809009040200947691945000099104605860645166040640370178350055570087907753083069005750970000800008689854006036464006090505869039207000047650738378775685087005200004060035990083718009007170300683049678362964800303778307980253084075290978600840039090700657068710000329026050298098310920107000040010645055200712080890218776030428534900090155109108348601074007740001073039088900607400886808010897131709689173857597020609054690030672989596070398290590000275006300007000260580860468071509550206090590008267038079800085920870000570100943313591537774559798068080247410004004806427080089501925301873650500020010970324002098959037010835070087891072088000409004200100450000060900282690542790948366380710530405077040541021500421544062318926536900400640020090794309908041969990750904007120960560000587067336650325800990000700196455007954903052862930015805440071902490233808108080563930100463670079310603670073807786309101056260317700706829061304000702509182386003393640981200010760670504400009436504502088537408030011909308475030980019904560980078110249084201284900507360597770094188663909747970845901043374680403007453036708595404609693370000000203750868508209590487130886450925601007408900279537957006069402908300315530801103558093104000000500370809310620066008036859000303015080707036860060055009064082089068090660057565579670656029084730206100900044820670607900070339507758700408305005845679405067070040963518946841013869305190764308940091035600087400682493007791689659057803513200680071904883917580902004004059071618585000608202070920300768712972720914090846598809000461085082688765800578409909963079040546654408690290677967759080000400080089902634070034603255085739070990908088000010087058990780030000585500040080103000007053900306850505090001020205903381752777040788600449305279025060460751090009000960514731030571779006600406990790090486880287504617880469104067940600505306073079008503410503702359057081000792434958370000539090809913009098008003899800052387020699837503970980707030698055505676386441096054004354871293085003035950680900000500989407107869005810412928771735730709863556666264500649001079498059000600002500851090507048000469040830045250652280095919600009030877059478030040300139090880804825034016785248290077865000030082070007002000600970990000990077060063310805598698057386329400682965055688080603801074000886357820088612869502886579206990071640059060040066379748901059405426690806980684787500806038507030734808310000069095048009003907470906622600725598496770090055515182000690908679896432188107400009006099020014404040504505640024575091405797882966377990000064210994037303090483001297051030600886342100097441059890099894545963000069007627007009000871007300770060470058707442020521009390855016706008908080981860900088076910015090472400048669863972668808904300040777532802013345024490035900582705603158504720723700600009360000630017788739892081070019030088180098609400503930820009869999205900000034286390006480657053200880006228594589940080800005707092298879699507360976850500906809053700063601078774704189272192310030280100079063296906147659280877775861306030007900930066077199705003204075780858000233800484400539400405110507764090430909900925030930007700768760899301776502810000082773090940807570060903078554004450929080839961404007708580074780800000800998312667180800182327909024390005880903303088006955794377000071800009748720500000370056188115620907700906535176050385472366088979962800059885068090167803207406409970094006880068758766007951060390980252030408970597820050082830876809000308200879007053074078402071086086427016700267108050094408060900785847720001217058005500860309870196592068204346400206400170389002853458809008608753799000763442092000900888600564300204529129409324020667330894444709064210637030087619610828070589869804000704009042903509197909760403042506900199073109275199451709809687628017000600993926082085578260200403007900038758748000220085478009907070600077489027795881416020005905838600502750047659909855558399028096000598730230807739030269220604990970794845010006014090700154109800021887661440503600766700608669901909600757605470009557859011090080099200049005200450603590100350099005945355368909560090817009202749000820208090048949834200005280875045036403000606930850500703107705014416064550005009008098007003544530905902922070574957080770060710049849000944032380059062823990260202001750806069001006600940008819306940307007268804855098999420983408876300715859197650568586900967409445080590520505780570647970404079834503370620600000970178480047000038061010480109040857490708027690398186000470535890200900388786964700809500007880367070002708606055758753024456804048000072458000300841607906052805070020840005700076583302014095348708580633206010793355860060000127750709000507727008090777369088955089259300008809469092307436096482080123009704530008382307703766995650020911908070030807708100091929098360440218008280010019811308328784052813700640109009497860198566069405507000607900509275123800607800894651950737187072026802094784901175551441962009789657255091900600865230706007805700615030132660460000040039038080970000800800960940000671000598173830893730273676206400972504480014074082140290200805337800186804478509090007750880608804795516802070906600317908300376339385979170407467962891038088009818019800800025635063039104470070000270510656005591994008230009786369100100800873008627680100604900405865680871081199091709099300840606107060479779465878007818230081084188049031007724003709400197000779693036820109056666650015096069720870062005033060005805900550495700155068003033009670008010909073200504079535177608276465862266005007389300030260202294000049400702924023699599690105007596003409989730520001163805106386479881060068580755946093838536490558535600871605239000076060020128079681255644705380782704005030810069011013000005209168703310842704048309804719055601706800860080475094909277043006257406065901440470080015506346397466054801807980799800601766780803900076784500094073327888992623015009203107903600569730000829010798490149984803706500257939003900399080070038800386970970009088757524881907063088114980208671726100203096050040709090781053500981076468069440802065005384050093680055061016705017070050058509300810312780660093500083724706872088500210039582030143209008868218680640079203626093072081608788888704500086804956767890078690400023326048090031040909600632086026303097073974009800107090704230025096070819096913401700008005740038062694960290000733296059903040910957091078580033059367011480768776300700200100878000752057005048001000047900987600950747940109380927620670387240090590056350108084033907761007045366050899489309700204090640099092946060085050918130100177932083987960081800087629004090270604062070809690870873485034955592817777077037009828889196080370036808000720008098540800298851558603364843880504067428707616028028003560043000424090081508403387042031060908978098800009904030001745768006900504058100030080979566600509890986303030090490780329000072509906010888590961603493586050800402909280090801058770797028594509500775083003801765058065569105090400058382060756678701067224410600965098601700327720800050000600581073400906980548390080555305575509700531400040500000002007036900362109617027082859000055640900986780836574176108869702980800000054807001700687599631641758100873103385984707026890924260129130997900103007407750200083010556900005008317090808030509384294637958167680006790110098145094710901090497236330247046400085048057000039060050093750768880008744846004804407064959083895400894880000060031003040737338508537601563300806560005059209093126064590007855756998070099004009001050470868017620935902096692710000004010910007020150089009072076560060956089550570740000795609008845506066008440770006000911493250403327016500005979400707078529779031830577749764319300755115820464000709307600890085488008030104005025000679462091294037368696615530000600857022030326500639040037590810802900040034720287708860359160600080401750083306309411067000022906980675092096098808667715574640893978053091891289428665190660184608499472608107836259078700770007375604990250030265040984604325643650507761220408080805887900939870902239596193080903001039066680766535703084061198408808066060509600288040549838903094901800960004790020964949570960869675000000007007081070280880650500500005006500709023992427914888782050032750718904997860954000791920094900002104604581008799195007176491469200332879001590890005409209733000772433030690926860138000010011990841036277028501235047709000405008172236008009502000755709704980390609862094008038860259009509009990803089904598049000076980197060870000000004708664700105441004014198836324971920360008077473006506035069478760979489031550780669068609100149400980872200680896608692555700490040705128015002570690347835903091502980009708201810309759073099893021697533085910329709000084097677809920796916330201048042880200096007400800083498390789920330004090091175000070000090740798069600697732200001100708190426906808090916006037089445740080008180420014104880200560970950302904009886800049280063578972980498100929085862250091090008000000540304749802803289369600403447604495935097828092268003984475266904704962500800409094368408011007770090000035009258042660003630320070000900996678051955040230040018008900461086000908079759060062793005790029736314400266028244000522005200006080292000017880755800508000071805157088447709510000084890076206809936000050010600000613026985001066084000401801692845105404959205143004030558960035569484832442000739410153100950594705419053470987590832068767603418449288700300896960009909070144000549000250006078700874059865430790100650080703360784000126938134077303608057007793009999406200970554967012805050089706716598980398100830227950469005030922802009043039374802066979565037209600807500092250055089097997718280203060590839086800876009020058661068006943193170638400708773008840869688000680718503027840000556445480090071400005201864966970942419075050888825630499999042900908408960260006602228930003584006050727061048000068805895000091348621380099665009936902880756073529467579096804000043452050109055300762000596405590071096859700209805090007009001220792599405064847698364784270078087097980162807008408706409077228739004470029005087009639554918047977006648803910000560760009450567200999011007106906690306563106560978580051605870601000476403002040067001098661294647094784407347040128195087025092706099607780050059708999675909909000606538406000460908000000609077111219000030970107970000870141788010003028404070000016785069853295901975589570699001008420090590005101550641080990566006027854090520090541400808877690085006460795107785677799502056663042896840019035075599090351297898092087669043003797730370639059750000868050421776080415096790000750919030660567768004040000476078950466782503010080060008790600077508760410301013008666840659600024250609061003790560580007077077601098007077531587000302508439659920087980997342567206109989305579038798057100007671680050303990770006365119059404799500026120833679036093500405001364409007060494761027076106675754740806080855040600456089683701900890899015089450498608960907584640001560007597942002800341056790003422281774000080970085250060030516767270158092919107770485629750027210608004070092000057831035010060001726366009400638946609602040903400060200430090006306900549135058503200010307828017008081400097096078063052262070007047550906609890578709203339306598289650070960696978900008675059989010680270515894324090432284090095460670270000055094060444540018030401509080035609781186010040002805007698537439000003960750340027620887700364001001030005000055062836400705430000507698030700910005800199801070026738372930336490092493634970940262000900308836007500608305802010700000665001031100850053004800386070097303080000400708008497006509907280008803752303000481908040540007340940000936880870540336603660351078007206066032809167000008009415447802570768620050008068280840067960555000690000040470400944970980609800806026675040005690600065888001730500997447508880217408097544296860008047300500860089030251409070605155329700506000040179368898060455109076928981424063800228088099030000831600406288700791670400045567949390800239700049720807940490008650287046596890406583820004070110948408750056700536824530600006976874982862040860086006085816496077177570076987029060592660768198057309613079129831040797000845889490739805040066380299001330060018900600040026449015007949180050000620060060739689345308040560760507809873138082028000057887792009052750808319378908846331099648760700700600525060213822265800033019300430900660670400020198916750402564931970150760432000550534512063790092093039700687055905775008097673000821484681504910950909077166325095060999409004067021004095800609885408406849109030597510308981430424840600800850800105003340023007889863808483767384350626340760606301520083008095070164509503108700510909550400192842294001800049850900092410038401846990715220707942690800388099790505047807000975208460002699050406466804123088617702279050740006899504274095521084290099450750640070890060000579000700018379621006008450110970835912569003593949349297199868030777198300029006070580905408002670718250090039900916945088782235960084614200906696080889749026496360004097832406676060850790580000609421937090095148022533002795903044890758595404000051164900054702080527690070439046855330119509585504077080006468072506603000302900000000863097081079085782401050306260030720506410404559704096000994004847580250409004000523085090508073066725605460800620888000090000039700700000398300599016061007209206590111880000088008942670421305977990728074410006020015006261130703040530046020002137145036080507789200099070902060077976080690822099950057354360706400008040030087274100040000009993804895568990963750064060740800180314909590008000000933947846434040040007800012061707097803001918050700039769726093799008510021540984002981080940087500027068772005009538887973063500000460940010660478372909025790063600100109009086835103310658908060080060980667660743906476034908950044949604009010676090180602956201003684008400939000994083772070096079489138989377218070845340405384972905079159809009130507600091480883040622749081000804079400825158700364075560500378288001402050700571605830049209308785062815780567320002030955790030005805090909893230562300024803745509017951707718004305707022749064005460246240608800091050449508935150693707202070440478007790265140008004065160912040470556800562400646640548188980802680580460103060050860030030958948760867910500042752380030033672000098594057090904900805930100460009305478000006038003094945275605006007006039000949300278031509064089039940998026708001630370480079000000204096908342065808960600029035005681067977081076867707083372572097908010265680892817870800004231083917930665773810697008290081071800946020702098569381000730909906067430070702092088010943513000601084729381488600088985800900440030850097285036066003070788007096097549796012249940802331029570020004071780099973006029063004000584707074405084881070370533569514592704120000124584720047498550720009092133270106002499041016954153867300596030900001704425087015829018907300000808407030630514665857007903538540942422644906950063893930691943580727902019560059040076080008808290814790029009276792003500910963054009919649006907273950004038007592940830008521702200208000170045576953310766090048653002543000600600090000073090570772780407076339407079636305261607004785074004708808300309486930465062080400007014959425105269457765565480005990098070100406009187505566107359506996600980966780473890025505770946601002963870919902076063030400906114049510074850710600310798232677008574260260072788970002767010909865004591204380200980726009451607981590794006385045000733429270858076926400220000909000079948017840094097905067074040760900019970070901158094057308597000070814059000010027830420280600641720678005840995066062500730880816458929650086498467181708080503050759005605524520606527068890830080090709191739789305443050308006300602907900094007030030830902807265208079053787170005062060401089200860003790603500005080186317906005072467202905434035000628247960059390031006005850008890007407480688457000064430556407040900528909370180276849210040293699005800200710220303971389666802030555943817919180506846000108090503290545026000896577080097050090805040043498216072800601094090800000501077519628682047600923003170584784027063700116676400082507009639974467048403376700053050097640107170290666508138059084907887967408640603070480490077916096499846900208410076024209261360700516500700071479086404807010092101200700080000699759009086770405629009869501802718034001006403101140004608047300804875689469058706040700334406802075630125000070008800057502783804005471438265700505293739009618039060230179008963269680529006057572006006290279742881900000760633400090905000306328614038590690686909008050700072118080654706809833008040663373800280078106200801602901060033701500049004897438000986490769142040640107446376413779526030801405209006450820690620647549254600010388909576015002788045489009308034800600985760831000661801070604586154000070304010963100072550996773090301209360780030580065107982000300390062700806000085283505826800000700902570900780200628400080163811080289970000051709800799541000485097663787880839475418109000606509398000440050040370683060835870873989705008909050002702808045780662040580030009010207974303000290302507905033000180706793047005587920120607148099108831107300440400907009670877006062589279069015480094946004573718480898407460305880079100872006180373285974908784800721859570000859052963605050973088735207993590508450700087007245106930390502079776702749065000939408360260706098473000067090020860568907897419398961900958607200090000200983000890963052595080520303120761809719909680272400080677580000780481309008950800837700961605007818029500174000909500579940412020570006279003849769347309585883372900994407264184094710046000800100900066056035706022205007304502098599700173899400101603989001020817000757832016005004074090902190786654702560680204006101473472020545550610208867011445819080776000104001083099050180880011008101040809480450100083080081006129763894678038052900470550260075560110830077840749000000003930359306708999589954407850694060450076505125050708009058050025020070604590040549000010020408497629080380063017020069254720017570093864306330100004008306603080907500135406704082920840906654440102829964930865080857007868000758756560824202409575506100987909049008310098894106036099704701390354409030009936090457300272005500838060387007800038188303702058703008414249990005903265738030770005000990510777805006900009040078001090890028600500648099000357480036070429902698807674833709032398803847310909647200080065184280807309500200006004004202060609056808827469042000700959009094409076060960000889667080907708858296014430974099489080768190561009080106966086900500601989707008879568048604046070082100084097617003031090650027402080999985006984767181070000000008077865092380586778850700175610050007006001378005400845900006062082062072500005090008092800049003066169500534090401706065200939369080550337027347030678490000895097000008352080005650007600487008757218754034444000870420867785173907000075005570700400010000057643460405564077308729808890869918050978997015500270049075905004163630960200140888550026007252320340402428384078958497371009196360040090000944666980426676805968607642373500940619670388656809000598480098047864060009287580709713028000934978565350091958707353090606547963903700197000609901026470728006670080172736904047162065006767001804801100834048950050076094493768799029890002820907376880090306000700850405253091810716504872850000704460790701925092859009000514995066807036908658372212580870075188730848800760705045008887600560081087600808500909009300190560300562498770048493271170078176020829650099160600200706907006099607900923040078034854504369509729009709146010605855965000699107827004029602527020804090550756096098055905883824861068049200336847000600007608583502606090265790200040066785479909930005301900570490007960855098040874716080750070401197000001773000616738045024075770673033878940848010497600880636500065883043000100876050360166940899084050688840788904086076500595017286955906697700050797006200600500654841900839370982852908304554030349008710045089840055000306890005718018001000093082922400000474888900870100890031608087739397100688990594763007503007457893900692404960008802078848059600080020000708140005539004050570108988058770330055073709060770120705080024805200608065800905207750378824802399003369657877000984608877050367985037979507076009047068825000739248079600300724266708883192006970400079009013664500938047041069001201097205006096005018440002000967880049860300600350003568056014766088005393170002885900059007773732847030087547097388704004908066800689080546603524757048075944833610505270108530141053007009600300489370580502970909600799307020030006908300009876970379898600006039066985184345701209306366071800619090709876750021008020450840593689200876696507200034508038030063070423198940009870000000610087002800508749809560081802070096487408936058670309508613940029890630544904090060108750559486533106709852070996016820405765608400043630000806400280050509018602365045403634940184545302545031603041248000102370266290638970001908108850800078004339719933810090486920000171000708939000008009076079179993048060280290025075101892089800700992006185444990390587269375434600388736060740509885060606657069006973308608900969905011080866001273953040400090095074471222535400990662042030408900033992008032086800008030577101802370959266486471097360000770094109820330050809069309990293456080052670040603070600962017626679000096609840074370078881020614590008064025009000808106906910030699202000421540899059560490800488750908030060160560728000000049500800316018790078446070608380000054599000186470600295030050008900309000562209203703206595010078982900706549907090030010051061567090086005094008342000647700936481480677300001700939502080780043048764080500800170225735955376048750060025000000769660403043071513305080957070757896404175706012602051800590040730008438927768523605051909862007080033580950846630607700606479096062069628000900200947630027640026086600087608603204934020660984290430800017271695000000601947777090466282750289150794880740072909820969200761708090009009006599022078005460869985138550895001701989400066470050860058900307070909466085906630207309055601555030151907889750507777089170900963720907095023000015070839350000009007897001724760828264759002758093087050205258870804738280157901012016613306258400956107050150280087650449006052049502913070700874207690579174070000050026968900003087950629800533850950716884007903695006120003030058709136567590609790080589633078564808070589296230055335705860468180918980849000884685009682072980592910030010503680020399691428304005602012083305018586080077097800511861729400513100319807281619067190775020052998806005450007800098050090474780109000300075695636790960380403078002620545065632700997820020223499060713307075572006077009000056014411600060064330309908610670420448049925095320620800035908084590459650759100000026657734403060001428010996695579080007093058000600061845011069613930007858567020980984560408006096896751090028331604006970066888006000020655600521091871600029807759705747303850037141204038206460234020609406863138370660627040978140608500091000789901007003068800901040017636033009405388407796209065070650910667109069702003509692066026840076038001320933116010369089000069900300099026010362668000003700150025171030500680095800003061900085605000600000149040005059489704335906703290759834955680339790266580435992100060591280581790009099592060940860500341648171259708008933783003500738447592590308597692109844000005604200900204079900511257960660909200549848004400008710001877789211908050198695653459070807094050406797677880633098805002000850984843059400600860190864450847079497823084060003614600990826750564690408110382000322300710370800442880966578200049570346328302900446013981702492000799007305000005890941036008132002047046109069434753109541004259536000080754079274900495007001858483680400903906909264010001968009957205101954000710010089000030429529071800447060004077656453435906208590522490060467400000090005072100059901090746520080040503094038069055008575440160886303980692083076170948062003801005849509005070900040704074126099010502075055148308988680147141236578009394152070002153610010009006009946609945265030057440578205591369800740907307060060821604400515820018560530700678645100080965335802050887093300507003908004060287475600021770518090180904076007071415371607003050040790943000000354729882498059989090316779706142104858400290500800504795904201654800900559090086068902750072006760179997890098030190828062211627204499039999092093036102344074501056468002476009272995150724087309290002605032720709600900080000681295004573076073876202301203030060600079609987790182890804379367036407801700034841710900623030954277547095078081607413978070911900735004709698040572000968798040904646709560490004001267079560907907500205670387180603020091627298882365608080830050609590300006320608075065406906004982690070830900609010008895603000208208018467690032052565068596041700003050664904878708360058059906800900590566967529014088009837467000525493965906455653056800000321849859458028092079089008040371836030005481181050009000004569059908401800605970010980880387397464380776308486958403400090330064730068901619210774306019080054565180260036006771718306080001157078009010650600048387066360260477029046600707074087010018300070005285090108612010890240900206308030000006247700001500009040300066080344909020400550086388609050063057109600708060059083800340103080560670000501519800516501916614007400414881800007806060022470402080707030690023957771987900163057009407069488060826959002367788060690080050011053003052897407885035065000000007003300069004500706149090059990574395722005099004006669873794896108082129461088010500012008053450608890407467005420639960820990769800906350908008740007408376010180482908205694946388990700403048770378059564036047607087800629540646210030600404290244420654610608875066050250607997754877990435220030858089570780879006852400059309020830500260090976405485090104430492688602895507765005020008674715295097705970800678699370387848606630002698076006240519495980487700760080006690902690475001490060004000080526702780389770005804460440593009001850007497470520402270200005809990790010586086506930530791720904627907183007861702995720097088688273080020209100203015734066030070470537089530000081268203660560367109867008800730698001000000992697080980287708406000108089008795208701841007954253468038732326004003690246927844066000850870000482080308105000700880801180093979937731430500003490305646000219106799879970677000809800360775048000809925938979990878870797004192043080064860600053900300086003000836261057840500816000306732508033800861020005992206006480100125038271410470490761539076900683052186088059910043680020005259059004480962099506009080009060010275030440000428155809686886937108560268840908800110380373849039300842923080778830078170303400709477507700525208050503759748860103004600908070812620850202602900007670847987090186700770440000634713838068525016830817440704000001896040393530609900550880664639293247050503546000069004908749199508006750292470700448906640205400000567050720931825664767892046580109160980009170942822006401687067290706948365000876096070744560604660600307430908121905101819198585705580408030701405767685980373860103933608084040099607670940920504230004603708092088000604436191249500365186644400510900000809405441969300013260790008085808790000690870990579235410143080000080130263907010987808285709950050300039904004780947009599868353085031565970969865118008540057271076609780700080000260032009009407500300890600226898000760603000706088062070087009860230830944026332258097774629100658808615005020017000090504782610260290054070000003199009000945090029900970847068900050988604014380556045109000748708230090200669048007005009089271870274773090055005305449125800687102530690005000830074800862890400080787039000798293500827804005602080700807922740050770249495070900393740560820880849097604449488730940138396502000036623093080397505023868049408636401052000400007020057220902607000000086034007480500510726700708110900370096004009885760069876806030285809190068770096940298842800553801706800441307004090790750007000923067709005600035780980475084700009170591006020995032500894024667008069889503085178708770005802391465553800697065684768835700243000305818800050705909020585487720188370977669000996389000507001442620900877930903100449584298601907192131696070010008030700500407380026400639708900300207269586860083706347477700999440700609614777679663600042705850698600088008554060440999528708020066901007000010656241587690000900790976283540963826000300506890009058774956645504700521007054099762966240010800572300539479095910161980860360350661000009094000707709917785847720073801855077007096897092374839209708043340000653061028220674784973059007880050000800470698540680600301461906707165015087200070783031637299936660816900040430600719380005341970110074006090288206306750509402060809969926000779905011617609098907117022207025400100147537780205505400506808356927003665430090304909800957203986206119621034909204404191389060090543004909005811840009300806960051072554418747734009667490004009090537092363965658580608305179090200000989804389873010067710117382868693960094092907500674700640000716042366800500840394131082077701750007010066080622076790069006706016064316730970048680022001000963612587050820805559686300000060055467032740807970060068047079010091929923208808654504049983000203660699400092590090230049690007875077990050009682065007867902546297899964437670097577037009205063556079083208679006099700098600778720990809080839952084104748580759804900427851070670001408102400821082047808045804086640000076307933100034033528883806904459700480301745009003082627006010260705500868680340995702713092806000077009760070009828639088440407240889393989081003939035708017967441859040588940593137905046013024400093850507770074000900407363030072559259019982002000870906909946089000289910056624087508620725770000933900106603870006040786805843392509511500208005300165380998050584807656200074064630188717787763804194760660335462650917047000782736400892873070708900709020050003005040005150645250088660008605878013690875011069090708765780008003047867099879088974066008299389094858050392409545938106840560587300059045100928372460960590700828502038028023003099700018300700065008900000286642890007867467009020457608385180348220026213490720759140009030240600782910001069064090000006550240253090899395215300100103460059678085800600971187109575686016028760970004506215002071961035960038537006108099250900068190005004890230047960901499750097060066976096610004440840510710280823190037307944930780038060050406030804220509609800091896952894947000473904857388950659910761080430800600060907688460000059589963900009978637790804900390709079909009950098988804209070490084080092965305433000700130667850767499003805757400005994276977450870357022009260492000415454508007003600000000379902800308850930560094250000000750050800890098953910024891086003099326588898001306797870008000060604660767006655438005036599700899797710704510300094460007705900005020001785560900378207709049010720745049068020207700002001894607101286580000010769030006003192883070577109910646896050704038743007907977000606600439900986490604048501102608782170008848589074740620007798262800006006048230590607740800074015886925005500290880019211809198060500267183705276240427046379001409359460001855800706670303701430010048550842770050250282006599428800900018757710031730129000974040386454675498847980307852021077780298047697697107400001068105103020149090090520006006407090500096000808474640654509010957476023900563000158210756290860080009014080057907700060807070702308448530847910029307600074144907008023707001900080206750096938900480957504040002054006707009501730801480209010999198749007060561538825000089260422220045590990350907343610451560057540538994090508804897316706360006660287900010014239029027340020006960807030900000904040007007781000750483880910478090068285200234904880650944000055020408800387080527007860910716084290500925109076009007946543065507740900770407463249005009800424586028257509300608509039639070729789038650201008012638317613098098863900305209054700080296000893000036887505520067188606078020095074770930065200937830567173840208005247700503097792698780205041607002097710042000024010800030808504603867004907017002000964006789481656856000373404500954086684281009999500001920057518641090798526002008702676568470710582008509001777902014072067000580062807916915125611707006057440070700000006196137540200004999920978907060000102950903009006026010000080681000598208090970789580895577600107000300013799870028082490476035692030949290869303001929670060701009009008969466095178009605210991092508005195819052086979409182593075763912500038020080819532704964060080407385005000008909600804728040280590995795086768030252860375089584789798709986895102003960320704780310467552250260066589189889820080449040412603009263296750007013586807159104800999023087068128405502120008250084080169059809351189947111680607277069860089867040024818684500836100645387074609153599996903320938150850042839414250093046007111309091652082030400309810897740655760800901946749009948885600867460990585992810727010992200944466909052974005442009479906394008852730804304900701378408889130458888333270020084600080896869309408100898089968486924676485070040865059062904052015000750050971202034504284994034037513002020300200508800640094105390469820838800780506869092098608977632229042086970400609597861030007076034806989007020488085908190005002977240235070500094660658048744727072903101009066189500459907876763100080007886059900009476000745403100082405001708004759801790230235340441266700808620669009001004083402574690338089856903705378000280957946849097009000960083386606970796652390803748234894559003050970400051099773060904067110000409340664906661004643400466907879935077200728278009610083461088000035659009615060090605376407090853001705053032015759007939390007083802208008540038603070790050675269800677662483787792008433060987609000956431099302404900508004004804083098785920409898808902773004000882680801767000690943902908506109005707030185906840012692000349092590284260399029676300426073050055606605650030004706170447008705624980006092050100191000484436600959007027401300000478706118934130000060504488080479601900630454074400908200604140030608060000947750600300005350263849879199010034332050957005150700064000245239095015884309806303020807650982768700008084081035740282875649039490800807006808758000070229249056020777408059370000080302018207321832080147508401640000339700060493560900094779099280041906708000029033196000800025889805353067913803140802536600608986040300399201000013000370499601980712470637172390790404866089800038080707068370602080063987409730303903069007134593988380645047898442048498910710603999208830407004000977075064807930009308967950668200080394030674422740627760011908648518040600607064066900849600090003728033502486522010390900062050007716041027028976991807910045089393089803500804000069508268997807030000707900000900648080464003975000563496197966070009002949048943009574700775077000440090167094200809000000708385657000402562141977509973240763370708500304007940009204601022107009796010904900098890019080190047900355299041851997860994927660047704488700500541704670748224080090944306900994250900009540078978049900350379018290400090000005609000080397440450077400280882087002909300754009202080099760302767200867520050749650090075030035111829460502007799783090810066109017795800399040700616940480970609094849080139045962010006670906401009073900504090802975906479988866607068552070978903480166670009090370108009974500847007605068257601080009000000887510600000095258580883465069642870298806078400400078075020093660717870404950000566046390387020002000909000050037500008086253712711240850579039740707010660023743680764068600820187385405511360000567770086728807007340493875557086678076800808096797250306408992059214307008820057961909300001542990768204219965014604509607355766530610767640004738908883976005917006028010021060412720082000887806884946600098891210003058846706007869237066007877800462401883760509270780959607060033063074647188602700948894459182044988884088802514805080901000930060480500880000396470036987086800900220906907004700353760030509008939880201040963600630018310415892000286040208049180008700990056035000880038005066860182217920418007033250602091000000770666304008067087000502990536072650036018808883790024990700090015000079279191709070217670880852999808330762402755007060330900297893919063890038956000430485501081676016798077660807800000007708500018009261600604370305075637078002865040001846350023554007700990790600901186608098182092550930800409470610685557609878830513422004200040700745660902590399570690540550099500174451258288182018599900493088006966002080079651300048475680090500680000013720028007835201500403994099080476900139069708550030000043049971590904036918060408280690150098617009309354840697018090689003730070636010086980505708806944341517027204903016006250880500100604779890086147888899397108000008700768690719378400339621040200302480762180407920709860300830006009509805990000000730760924690532705400747046801120086101400257340580001089251111800900170995003450067906940285640561672848576200092890704059270400004701304910900460746901726052009990058015408358287060007005090608778170280210100100096804037304801053500920580400981740343002578897407677302890930409005985115909070295278702788294080000720900780629609708090502203300605075036665008067600380844587013021090830007010624457751770134750850020914817036180950311203050256078241772660059766860800003000109218040653880583410000880640009140007946917807905966989089866310319500049007200409917382047906690250907092780000928088200798900570003350869900703537007973689496216078090100372304072745609509002891095708820079380895879742053090067470630026800444243797009100500800560997656012740510007269806090839098075300080006822930040090302673070004710075410768875099946409000020190902308010020044259333980143376000000420908856231800683688950070080704502000230489068699089365009006905038607810216650990712373980780206287000120087713567880655200757670088485719258080220497299068804800080862720300261020845270554109006005821105004575087707840700308399177960049079401600604885397190780000097800709000860740354073042083030708770090059050875486090857034570030760070861000000900070660499230019004074878585006000385700007601587020409392849090000000197150080004490009404641278060049000102000373037076360403598755680038868355327109820011090198540052987295705765085896907800272070018450620020972080860600305049517007007709600407892518667660604700010061045521000590007470614480530055667342000095948000500001509600850048609993101523500005865940054009000900057005859900008007900007304008775905038950803907423590665293060960007100050048267035000077019862000834106606547086350432640907901994547505052046805670089774609025768195067750040508080034985099060521890903899600654077700754004030038120870545500776119000098808013316889277027730130594016090500000080705080097938867100899777747050008205928060037499048717788000005477092700406050007011405006409096450908002503962504640621306475823090307006050005890008060080026639030992766030080764069907007204054970001045959089657078022693801695900003179563908027308900009797062267300983800555260100077073960781950656987070800796607950095650400670061008997400734602200375912540009586008025404983080077775301320403071008937078980000880927050643178026400021040000200307700209869061769130060068083040726031006070005375080969760658708067070301378030000120087055364500001280690950500062020290095003900090104003006002761199845600605040746638600536073950770035906967479208666000705001474207039059230770124762450687000005808510806970360458091204453705180953101079007287600806709071590601573100060959858008296397180800909623701769949304005610700080430047689009160937907004596009086925225001992669996509006592956070957400006720193319910800280680047987516010095846003067719210602630010099611005700068006607346407098078788077350974000070075509050763000105240420715907794700709000260808086300600665080000630850006080178100029554104003400804750036070882009050900348703527945062418456469300600735000001809383076060037600008220088000800477040004019067600589060870005760600255600053089604694090070005168805081770008486100080030597305700342031502357007341700057009108336097660800970077646564008269018979942000101000506058030229017919003106090880472300137064089490005490069531486505050877980905063352790093097001742808707566008007890550810550009892600346800080500854390807102310690098092609506040060390089487737767221542002170047093235099407099704500900807696751506297180854018257010680324070961693001009034000080038806830310080850710500907136570101504801058419000550710904062007584374880677486464015617300000719460490309710610094548563069064851061908070150707075090700600092922092540005220000307346400806000002030530075787003065095907010970506302085890050144080019960885880991970955900000002589069089840604276005901709833406700499620070700000404006800646006544468070150794002052748500905809000003204060000772698100810806790706010700797450187930357704098905006999709000236765551070089953570003060857420087039890069600602031041569606037780000290507076000060711000087899012004818569587706949007334580175050082208808250600016586894100707808658700106002577704585169020080486006990104980700654700390550410472506044520809085070706900000209640090440400087061047773090816567090039908900024513027020457464088010026790543307780909945267085960008205786011152000066070903520197799506744625000871087098059777030791671506672004609007760737090647250280800054036967099006290519467938058800604909757020037300083750998028730018070097492537350099993003262866560097886940970060634042021000659070079206700727583728200204006902677008060804096004060607944192308005000007679090462206060095540086604409840720189040769250020004250556808003501300509850668893009530846989070504008792719260028735892466133030467551003900293009264904752808845200860038700900560956517879590008866057548800468670405000005170095042708700040920010593077000555504839964786390882230620290959090040930140900764156903402064000608640146000295092008688200053448409508244808800954074303880101907562703500307206007609390086381000902410310984068861476002100096155724000948906766971304535310395707800790078030480707882625790110325090000006066028090049409000080880520708823506080130655087909700005240890437047250409827756299300900880051680200905309088210897596711438800959609090885002070050030007709989505060877320040209609050057958570013590909008840006340135675446343300402009690888502097316100579674454997600706605550876409485040537673063350920740908928006060029764683405480676870580304070474369937505004260930440012860572000305880270660049047098070404675820213945196042700809660351087201087277084989690050596016491504183860902006009085729098000708070570127885000858400809877500298925908429089320338016270966000064809500006344919020780112776880080619470092218070008004615672801639576907008508337530889680700738000007098000560054818774703704082060090000814007045080300990768630950000599990360280200727712110298701406830800612036009765500503280644080006061000899000091940920951075900270096800008059921480990989380786940581167938070517600872504589565918409790008309031609976007007107070405443700010510084053676200200924470310006606528947090016669210918850182916038815646737800010110927360010807030000968840275769134078065560309698930303360070013889069900486048219093686768785990520012002074777020537097369400106716307940673008058703990379974706070000000940554785000862175003906000760105464008764001708003289787648006035084260967004090000565027908900000985600099974036039808456039008600406900002202097540246646058081997099889000240397861906080929863888454850000077204060007094201706098385098520497919507900094997780050080328006793006440069698630205077808860303963088920140902007650297975309600985863579877002985370073706860025623082700329400055870707607790005101354751451909069800909554340205033372010300308419541060254206630050008658992700579037152980798000419710708004400000660050005385926910350089304069790057648050037608003803778479600864034090237092805863530300620006098228988000900007056095788578346775829089900906028307731950948082378707539400087089504003641003490060500601207400989800400700960769409900689398006475724500504120500046248072290066708006580609314900994409864097001460804058831780108650910902028506890045106899902958002080540997433071940703550008407044003430708214660050350046859906009132530700500604607677053808909680398580395709703350009769062000724766098309692838000946709809558360003000780006971000609050751900404909000210978349031012300900005663081200906201908060909537005503537046034381749040050407900180020004590090709904182064488079516002900938180780000709083092890890085049054287000548385660740391107080600996809881916609900030094828660703100710095550940679300067450690000093170500589255493528003075707105196905805180250066007930082399868034997492059834008051042509988000099994002442007720800990449777307690037924062050004353122659600300599655774334865027035000588850907062009780063000090919700775644964970008700009897090400099537823050828586907034350890057307003004488003070058000600804870507078082973296809020037320800535730899690900001684470904595009555075324428169185414159082083349061001600878988490902958265660845935980667040080437060531370484577850099400608040174504150000040003084665000090000209777306989200674347655083007989095400985080602409044407298000290060950300836009174005490960060002069030060710709048834572503710807307390100773074088686849800799909021886700008505410086865554033902069006865236009831404488040907707994780390980070504586008020038000000780967755008005680750432000009600500560084087730060081004686090030694784065320059060062830005000295390000083502303980095065687981700280020100780007440135001654809006070005080795304775408609508769030386020105909190933819039908183404088108981902614920309060994005850000736052921000043066400310709709986130040196085759000204960032080731549109868100037460009081240000405056150649900060098800047005988909887490109000403673984818700333589520300050046080860703209308485048988240074304248159149077497509680107088952950000700024712005862000570505000902686769784582075800099100240940300671000750317005035999928800000399998990002713086847778359950908170100070848403000690080900979290708073047819648200043215504009309046026031830020706066503000620966770090700786300481920700085713099608062810630590932000888317049620033053888094980069088090320087699112060014962930319706360820061008907700539208015037068006000633989232070358899400000004091015150204841009050607499084409378007015288860301957036056928596043008050900500908550287680049278590081959998667006147894409006037556078900007943180628060888670078947565132006600996036050300660059879304839570800030331700075000003076046720060778951876059435066945308905600090052808609008990105327060874990088305489728006139978173816728571438766095000000005006280029055026456420230602469303222910504917600184040068800563102600600883804909355088110700922253700404779076008048122508859475502093787010733059869406637880795206345375570508000556466503830854073008410002296000000290240000061454080057701378421592009651881079005770249757486001407340400590604960078040312450849692699979099893599103828000002592072104401049049903270000877809602093429199048004090631600390042000089986940220024708701650966016561679980950980060000660083420573088200047187680097803001580509300029578340000509015074152010297494830009288000009318025868000120992843889457555430631347420730780240963080900470930108826000080905309958600000789934900184002690082303789625005008024719806906020200357788808630060501950500095500100469082400059960390500007000942600008910670400037306450920940455009049290216720000080080060443309000702080009990786990603903005069886698943959046009000850071004730894150689979700797960866804309007988469509400851058070908308709700427900086679680842509049067884825087068040790600019774813950340420503503688396676879609040009000060010090088506002090190278968070479080808709302219040521459675072089040000066000547769200937002602770090755090211586293000052470581580039970298009086904750369920591407616905807070830179047132580868979626480900800097602094000205020070007100680807407366860656001000497860000410000709986536889235992073626033489502052600505908732053040003092506895939009088050604370866400097267691814430600900792066700689061460486842862069077007508036609903678850269524909080272380077065000670600805490003199188466449000829605084510783770240174310628203908489800002600057300946853005755990000695000200474221074545007032959898070870400425782800656050880950564156007005573944086008081075019403170030596809400230107491676004403366660690056502000845757295882909723877073003766009009422050803145810000217969002871048058016800000850848496055073001819576906070000828670810015060487000810464323055780057400077008000993940700895000070209165879067093010960776000852700664000000200178828080518466880600009898088216089073000004503079015001005497009088209752070007770865647290100027000063081005907390250305239000370911268578205099903006954034069502657006043968088933600066480092070000408000827034280800740007300931047003087519019277410400660303071450070975750090250083246840063604508500000300435200476008264069009806086007790647006500424200393003807962000360733264941100648959704680193534030020043580054524881106603010529721044059024006213078485069846607467081750027099082859792680343231895260009806071250601598813113700725604349500049008059900089006300004241880877980900090009000620078807037018244959802059260900017305433173009480935639005278017668930980900509002228900093550055003907307309605400060980090174170690650392970294282501903432402079976090207900801669609600000045509653788850820800004000637097005789900824810773395097457903104009108074135066980059100280999668039530040070880003959076628831087022321807700040706906498057600350640098610160268980529693890198802999962066065950806890000200848702970540308003008099600996404300090869242790772100903307022480304609978444767200219000008025129300235064730853278789408803260005969600910618003500410509897507109027300296804094390080705762067007450167000980019002829831178549965100200007014241945786350706659930025000606304180726710720900899037040077420533070402805908800480070600910080800831406043530000049055979696485000004500046770409904564774006661640700014403020390576904837470608590908000870715024005600580271669073416083805137000887099800009600070500080406799000102899770801800730547045400670313000530058045992094380169805532594004687568085076822050367047805080900608950209002400298089207309019847640581320908500988802605860247438902117992290698693060608409083090409028350620022095240720976500385800004900807036018264689540897800860780029362530843050009006990007924782350080079600704099716968300940404057800070915003820570274030020903105690005330003009007030690070368055080060595070079491360070090046900200500401193707009391069000756089900608719690407500040057399096071987950270134600280412688106001090801690090926068925000490570000000004896578950307538919500002638008809861099990080801933752008100970549860667607659134760089700109600093569083763907974306839608744085479718519012690095019549008099062199760019000793296370675452804806099750484612390004060470059803496507010929156744240153006465160362048690705791000796004706106861067008207850004833580006978305053970940200286980244307994706907200403045800702399960080809033003480008717080846900080600278170383004608053605770024677400970080000044307660040520089580059260114840664004000053880080560705781870850322005606996089003600596175950086068004009056498736370000886033300052904467009370233899010968906074907301740208397030402057909090900000810878106008087009144070780705100040041503591204052173500106870086006720005006347902083915514370396863900175010078000059184088970843147350609000397249197168856579400307005000048405790940893004901758600020040060580232569008067050970405009076301004529966495900901509100710906596058093606347050170088600006098933900800033410805501803407090774140692070671826646700055009309096347708051002300681002500796151766640880702745200001045044944850210056800033508550416403983838546894934095103400480050037070080008908072066059280810803585559749052404091400007008078050834779600103700030209254008057787009808770601035904297000302900090000043602784006800330850617089754020808430050904003068053809094607479015000396680089779905680003460050051089090000785150002610585320839831006800096000815002800571501797087795050000074243005404537504600002092080008868880696085000060067066700826170046802208900770010700897900400006972607305572251230803696566003700098401663040069681078100063050780020565934095890069077588894580087110109025701456200800061909241090940383042659700790000600645707960000476878451890990093649500760074000076001180766090015024002065059806020098900094621926030094400000000005902738060030542743709065527000000718040900020730805250877007905779848405960808020072086571876080500638080208010009757450007769548008841969098599070430039406067044506450906578676426196008040040442799085018905042498800990368850762090090009000800009935765550386004010626809070876853000903010395526660455300793300500326700096580908561060060000109000009758860010692708000900000477700029559076807004085497806981730502070663009176563402354962606985010808000651006005840966000851960600355308065956379030008779400069227190493551088004797780995908284070979000566913900762605500780895186051000200007660009700738569686709857025937398090541007947270307700077030400759092046610201951600515606350504793653900009206172060726007048804113604785890000009069930158182030660003210080108560035406808060590080006085000056281798000000732793253450820656886900046000690552200400520906040007830203050072500949010697000976651000512557407906478958985007261066110800519600910902237000000789019130080495562369187000915000950370383061070022090067762707807991889604998197850722989409420035012809630257432880478428000457061578660095070304012110470094700474109638908771060600070700156120000000733460000060800099030160800797656090509806996600166030890409730581510863970000300089876890768010403070030608000007009737080506750002000057091853049065616507098682972706005693039174589678007320903803001548797307020701901857700273790269040200033800981998642725460801098504000009609860803708909083884005071505008808300590800689902318780993046288370070090000406801086439080980007008110510440900960954858070761070408777156098791270000890649178060407228069830051780000059002000098299550708033054970041100040658602940060007402952380130660589000742090604000900026000983250907005400685900290378785077080600043931485469034704207660056906395407000023900000000308951586400029984803024700078703300100028200008000400407706732500459793000502800600071009079302260300081706505000900009877000050099680066700006660740868905070460040565250278416000290495080259008070050000100604800752590088700705259071606840587068248094400930000004096456053315409060667686760990060023120690800509786843804007396099098078089769080097900606790002780918020808352050947206100020980900069610770050702060500581550590725600550000900730009004340000839114003170050775803009460063090020989800930501006854790994807775908324007904380208002708221066503408056071876089203059907269002110800750974010020232069308350027703856804400060108005810088380892842266689676569009008713707850583980530006977526040560915560621039916075272907958872405026604227058178365091300486000341714005500006350693089801500578257581449980786958808302565970048895700753506080037501304734609696024000938804000812085910801087631451471600709350754400025304497586569063550145039902019330606090052901321076598900208071845045704160029040370457850895060230000875757923340069802378087927305895203198907503000057558290035026466270578003360004924695036896500032652060200795804009909902290160340407900322090808041070080400001377931656560608024150021054477315004083020579117006609897804860240000175426008260865284499669020547099533141258990009900693800438190308670050605878080183003022409827706007660990540469100093785400300500289859030950183008088878990400090482440100097042034128047251209007000386000904107090000970676965610820809729070070021020077000890853885900561538803065877005800500094830020003907018550791705670027920482047547099400174307050809608639088932101959093000750020098070970030302074040007707709191476005040500200003690933090350094081004908204032640000405375607001070506809693050780069376006985050008310899110965006160357085095093304806714578736570274090050058263400080000096670090300009847007817792087106737787556028290072059020283400506036000503408773007909706807000703441491805804059806086107070780414012140904905076800907562577199370660027000180868304080100140098714009800909096138470490110000014602490942295006077408005052753807680919206484620088067500408503000013059557898250089519140607927178820000702005000076663750709167703034065272054089461860570707650230806000100501970080907918635699500187969979069044050070709999099606600076904783066008303709026005706845880100659067888038400059506905630200670107000809091268108701800320878859670664049066029760507590879080910906428960690039510809000008444807209093000448906903077954569078483704787906044909780556560602963199466249064010018000780668090009880906799966700374551684030913030007086006022009979098751008080210103070047036207840044940000000964070650070004990900900400000952889290668160808079309046080800096096800004009097978480590206000718980366773598699098760299773268979393670050800500308303090650008440806590458159708089038001074709843767691600460507090901780081650909200303309470510053435800210441900082027395835485009000567904084602902662778153893970895098090377035006710899658090106100294030568534000950300801340045847000008520003357570605447480000516419004709103463538102304480904980053888919698930080045609780803050658208600200610070100008900000784680002040260709101080885735000403099029300099604039800087009914070808619234187000002629094090705650570060500000463960508049025620508085089946050245430506016869687606807060347003042097390054005386453988001096064568086709094784034995496002610475608568091580404740590818773489530900500000110740903004439346032920076830860009976790030601181050000067870001013668073850150570750088201194334020005667280972049065152902336372569873473508059084663268900664077088763060447000560082000494951967038184206070818694083400204967758938640926740727108970000080070099302067805056330005306012706000178387400006046000640204956007070887736404891410001000525573904280808963036930402601518406772205800390480252417998020640998050383168976007110696760180080401500646870433099009822245831069512530060070037580940300092990900975556908710060250380000000089279161709053009483300004196100094068764837024770883978091100000796549680706306777909058566702107104907100000345880003240098888034069005250138038002479815949069004866805609214705000190285058049041500517800974079070874016004405800610477070900000819908208697009780772372560809201680003804809570008440900404050805806040737600950850393499965002770757261515721000492711594077060906448026069050665003075006370270048749370000523000166600060514096001920703035809098290830000281719750108087604602906085360800020862300058300977427000603380026901050075003038000004025028428768806906000050066009055303157850460400209681000687007495086138798586026200795700259009067903607171888496527860770365071426038892647740608020817383007905036700676308070490061438040567693008200790446995870845220205344156016290051400800005407840707077878890478590745717202700241030007372289763306001694778740672250878030390713004887630470309744102050822057773000074547170000673750030467360079030990994128900096050850009900867905089416060048009715507608392006069310496400048995442689088855509687008306930820006242048586000004810304700747050004983090966700051755600402448078410036100923606219508189374554475040020580703440400347066804070042068498209989089005196000600806007000690880001070004003000039418066165097021608019995220445070275650007762554386508890052943700400607736094928886772576072099106550994000510010848088090848780381307628303609801040038080007092349380050007391901000090000964796900622650080081417000295407109541604008089333965790003398979109000241081614063907080802068091677689886400866046061290455402009508070303956567490669030945860050070804076413537260346065050599070396507990301930700054028070930608907118087908726800265836518968790039096100770386060094805664180001300008802905150099614364077300563900304004279708370300377799008900466079848000306926898964009303869944009561407209020610353449800000020517930680800068834370879040007844493270068305259000000000799010247040017053002004187502680144200807092546096100312700985388503300309303697006047250800206908760057470178003676005037556095949630052005806973494508003672870105090049507600110094063734000706490036328100070774866989747141050607010070577023863076609437000000310989595088283634803609005880000000790568577709052590504360190007002958090000060779399400540878800807886588523022052494001300290579509009890025070000400760416854100801436420801998520388979500779806791103458799087889808480070300368316001509090090010750160190080786349900700982238606174250600509170053907229180286027000060490806108600982805010801899560096650300023093090200106067205640800169193704700668557909801003090501900075940099816000010055960067623007160408050300400905050350858335620382000017667820079107830200668303380570548898096880735620708831058089000497908409450892000704032730803909372804800104259707200684630068380790688872332003020066076567024465085010300488535000760020780000006847060008908890078700060007809670054705000550088904090082090380879792777006077006800690185096289439499047002000428910537545280090729907939030100100389351190015617728303772905960029035009005946020070793748559916099003325870722977080678317081943597205909782968906080002030090066628801660000907760050068700848890030070689679690482559080189209600006680189781029786000760069620069803789000309930717400794985093998070240009005926060037448300678011985000491534988080919007530070601008700690009009051094000004000459000036505409536133950703108798857090507980573000900890000787089770820008502150969061010359587565219150397680787920890031308963580379945700790090573282076000086496014745000655057736080078050070670923000068090000156046079500006109003050081805709089996607017901609900460900705641590200800200888084082302308504069035300095849397009190000347933707090600030700415751085420020636740067605025738674059900025885179070600095730988000000407640380695007999609800091771200800701071670068740099424099017697070000403070649945996180400070150280084089088015220750076302008803230007896076800827054209038072940904038019047400941906030007786437857861868608363643090072058520982000700005240708027004001750902022000990400860834064003798680734900006070091140950006157708004006408997793080135459696085090086189820006502967567704993780508959700000304821072459034809000070097205039028264697054800575007080034050056598709430419703970985048600867430975040049720005000208800010059900803009996960504132050668181209064093607098480900359950759370500061043013149300450978865837630068467780370456003576302350679009911706552042617455077501963000610768647600828060654049009000509200600207926049034051084541641800007080086700034001763700900409107051509615875020880669369600757469490009050800663880699000946400496010900070000190408979746380600762708895587360384741780085550045707408806047563609406058000860760609699377406331218586400300610950040900230345000999700376048322740047038008026097068370647564900009075750900689733862005964831056009405085055079077090008830805069770200870007481086558599500008195304873870080660934003372986007095800900019906041407090308026070700709810292120107010301790992026460857007564834004490420054879500600440886023081917073906090506094010807009102403088099000089950098048319930082000795000604062453006063068057004654130903005076938979012440006072007058344470588021080009567701900706008909018072289903860529927000570060447310850862402007676000980206481567875676005900005907690901890066008960000589800365193009200421780579303662660682182030930008659475180096103909088587936990548030090780359806060000097500068523330050062898649900830204500098940100000106969100740909350679187360805708390896801680371705003727070592995080906550693896790052071114017005064430969060788840009446000402900008087007021003008890049000500049092089052619039062690088800460071000996797080267660050482207310777003090720607000009756930432636331501906003922009032406066005000700670505860463908032080069603798300098080800490070009004044066406006110708098305809908013341101378601440196148910433400007010464020869075956000494000431171910200918619009340495900303280003027500080728000192320801253459294711020348335914865408580008080107070958900000860350487870850654909097607020909071609721048400427098438830000075788020530696774607080802800700964879840996000908508007080490460803210200300451550008772967054453707650220008292414756000640487069048000604489809859076001170050907000070257604799003405682910900900859007040022390239452604949001010420100038390076440020890108006660509905250789976860610190009900230004576054605066300001100000774089000085140040800061377090015022206796878260457400306799070000008587010097287700059818890705090165600007909170095007706377007169501578457745654605993590070607001970297720460516790180800800906890796286010238808800959278079500500530808040946405000000090005044706084034790186700300069888070330300507266035080026028007192000430207500507008801309025702493460600003578684967959640888806417629030783006398397203040773097018694970891398090019702990020026959954740508069090098910594768870549400088456873957058754558087107367608902902097900455009000709500673079519108938005368207067904974459620869969346544848707000866643668390459180070968504005000597792971006140590584300700413800670768787096080709190859008068910205500582937069564971708910996095278040790096004004961100459460639088710087980040000507753520870040016750200003804050266065509280073009701037200307793620134025084007000384006050784040020730031090768497094460802758067769110004802089067049139952609005002960808000006050380635669155315782907609009905929556590779440113889454087000807010009804800430821808320000510800909063382075854413000944703057470403040340008005882860007587040094910009900975000507702000008040100405090870060000387872000048505900706704980600018960420000503006587000016060587700510093000170587089397560914200534004509801860470060086906820119460975597409003045057043074507307980179508377358290254749000248098605090917314880402008800061909549027004065044303202930004900995465600008087380009990049438566809279780030019700078103082000900500188480000070205227098957780157098608614968080002755080020079620478610005074363080960064763387400018903747803480086065007620800800030540420048805556960198286006070396068410771000872960202928580668044358987074975820503008002702987708975809000083098690900049150980829954890050070100957906780878530800540290801607610290706770595370609090010538330090660014059584050399883786899610579204550590076109009020908050000051408510870060146050020900035003609077955060997503107831577038000620059085700090008210770009079780900191505086206647103606006411007214005643609106409182938095603700327000936001065875023591906474590001958531096080870910504207205701470697000664039523300065906470061700200779108957555090505930880890440000688481780708149785660793565808090707958100000796800187009040650261203903073037130090270880560999676678682580062390309959044834020990984478035909190795000000500095790039091035680652030761900704948340009857006250501009092173645868903605407194945033000005088908159007000287423806089033000201000092200080057740059509603306473690910000000569000908000909070005009506707110806806000728738004150114043050200060317093454070705903704946056378030060838530758786044056000067436900206903853693000550090550068801003909785553886000700400912707409203901504903400385768037943880370842358813830470210097002606250042520113267705360976035080700050978005700020020654661770070204098833775543997325073094318073089030070032387633047330098041097291854508056307837990028224003856801909047289640135030709057208800097104003007808010841050405740900003971347034009760770599502527803993042000890050060004500897687080950970799665654309090969009130808840900550540060008490375570947188469465938090100026950609084000000542237408808207710109890109975370024608260976400406960404541070881007309603556000429336433454034074078800500600108089960390010908804480706000605067200360509695703386200000052069009930809187996001559792383909805740000037750805105808500091099790309828209607889379660940974310070208909079104115097201580580085007993307590100468085299330024900960074590610803008009120828608590762060380000461609705500070010170620632208108060801685088889235878807125900065000987070390680180367204700081030263043003028097000380137030895892253901000266026372185314571455050007430680106714009038006000094444876104575100595768092008952605677037209092407110070002008007025608099344980907007025000080007444005090744872940000050705306500009064705764003268940927005634650060670200565870902278097006307970609286773968540493386018974016035890490490003049994322179760579830730106697081795560781994704007545154730084428909031450921064049205870565000794040080006246979004857960400806570052502900097000368803147707656088024920850073075010090029009048017722430490300009050942006456409403890383000030602356087100700505190805700009720170059006982570719451270977479395000006105582649710009598809049203208345018160010600015068650016360070800985034100002735070565906630864807705990608538750140070000987894800045031604000709099859098006694609940017189402001308352601965609797058220369421400059189900566590070010169002220804299079070545062074440008098300877094620083097045500350081004029670002408095009974006108092804000523000395703090578850800501050969008501900406038503910676470687205770904070780868445476909708380010209989904737987596906079222003080506926105840780648960820450236896808442029170060002366070968090202570690551080398108608780506260160000430929580800603993650030726100903066229941010058813203036355600072906200001598909916700080387040366605553768149009000062650859008048040848780412969000098830049060106698039564310605830102042689570900276783050048059393821154373468000600049067700080058501190654879008009850209559570039000309332000600050020100455898408639550006085651608025610439710168885013958606705500060996996000699980909990984903060500509086501704890640150780000007974070290473755531907049977280175086078006007029010856509890071850275000471706000705708098700272000025919000288900170858840825606838750486944980028300064077504600301062004070057816000846900799700205009669600800618000058000780309700903679070968370075045201226777076809090490307905052078810466982890908508770552000965437059370400990990628960080899834870148567016010973090953600441305090009251892324904270975455960005501388556020670906000728082080509700025537100080678030600880622090068520059030509770657009303938808804630459409968504089280339011420900488267065404166900750488024575900595103502302070700608725100043307004089190001019180863378908006003100085306990076003094833140345750680603615026033089504900000023090510260109907072897058679801871010070088150705668070285053479580862000304307049960285000097850080908700045042906004932800007450072775885678070630687467960300306800900082890005609106760815047689680704045189806048980793400192977470360937766480879001741427240095089186905001827403804760090180000355572284905292245070830070000069780006050079293840000360084040501528300000000700007054180686060418282009000043314006099934522676090347644340071700040086676500380683008041388090100083710006089058048008007080488700006004994300009000584562360030409069808040090407500780800863400570700708710989268787205900832000001050074050718918580109930700312491850701135008020298209266200650690300357840030860209848070978870000907003260910760763650210819000302000094709066507806908946247004043205663885070750206899070865000468029000284786379560450805774630270906003505049470409087009996150537477055004020607560840002555075705967291099017190260530607090811006000000000767840440097897502860534055408090008703570588350007080049850518505045916087022862663006098413000098666253076000094729902770545097630944009203609381879608008807338000870059800048075860324368903750678159890690005705620881005097787098499090037002403080605600007084388808743621809575460570752558456851645008507688270090006396449997796904701150959189190941700304049503684900068894394000908576000496147605501208021002314942167400881020750538319050050910320968967099070968623382008850550860360903806060005402687795406590634190800088960631478065586160265010275307192563050467800016103990784090109040041009840194780393495628668526090994008718800709000465472150002890591179103257057049907930010048734375460006021400040970260963708439955702437655070106800799906241004066300000038765006280174700740258340868086500564101438080790072508306607754091710006674048830801854080009038093490000085197240710417679096344600043057900009740889670479060140270106007860040005377202050057578991050820995402072000600914906050608020090029462470080647050044801021809670089050370862781997508149324880805807017430169780660907040710025083242008904300881020612049669702060444698300767990070070036090050000969500000092004008877861770670564070068040099100050909241350210099648005219098077399983008055560897919662063010090897579350049008002807007088150078208269770962006960640803800246427570747300033969979700800800020530000909907000030099009072040889800436000006050000000070407904634889690809000480308447695306000077017177500816358704804453000060650407900158383669908051377505496010180890970000020407841628007995007580960095300800907703005796038928508090140003004880002942075707806095055301703300011055068304886285697785186562858105026828448502097010473007285068903940095006057004000305597707902997006957270070529645379700805300438686007460906290060040085051760804009384605799809809049003766698890086974850030007770103754898068003281330309095915586814008093967347684940908671678430670092707004306708889236600004500033029539640602228001653525985300081900559400000095008011690564042028000077000909170449410000505530007049567681503507908766786652007146020698076030986229730003870670580600206990809000808647588990012702805401090690502002660890806035010008552840098504818763860080539040900005060909612064593600004980960044866210058873406050886601954606928848007885005010027800905118165661907387483007007554905500841126021350798040685000205174030905278267665700007596348325079088808060043027101015064007074917020609904037002458766310690300300992003450067061067006030301088487970000000607481096864828095000017024340090176092080850597780180070035873440807507499087007065420735905009000009688906300431500009495406820300250700409570908640695490090400986500500000954048367000515020900887060716407662826206007058997543031987102576103270488326599082070507393909930000850100590832749200470960500819690304704720637070290808460053628750793015000591053809705265055900810080909406092984202086648950092000080290808297100938303340360508106099400464915408079500070276024500047604579230900709006079903910944006538050978306011708428309265340113000090708005063810300400604602084707660096556857047003000464008680090970054559006174070550100020650202893017640560099393500050601605460687307293692091030985589005078900564364066002590718437990556017350605109055731000700803999801575005730078283406075490095900092433489074957076095015502390009009988746321000601730495769995101510104761800902700627892500790060992089816823724168504037204070508883209010120001397973007071730140088064001030609004099887005090808878283000452558386807014047406982056088904087099880300400670675255972639470200080040300532001318500800120405500531004004096000996867267364021704017025930400055076000009920049000000660037000306563005007812791498027065845050170058041901998092320004826936880497354353598477004008086022710060000168537079010506006800840007800030085950225287802427648913305600790006428490090847592820058260759000016692500192733840856500000570208001058950489020320277140956700580903007077007810676568897680009072070076060000941638805000865730903503305477900008990072000860031195077218498157099608088081360064089771008347965777199720597606059009772897000070242129902695072547986028858146137690683423000503703940095880737009986106022958407302820805001054206478633008301505074700713358800800951968086709090443009007086057536723005767107600401048060817571350009703054548699129300057115905950568256551585780071586328718075013097709008059881000720056693771068040308070920056206079508023907068007009508966050997071705787609380402280463339950949000807757608403026809007097609550780594580610020009000095200096919803200199596677133700405682104003952008008820587006510702780652590060880720010060405298759480977787270035002083103006081704207166700003883184803800977436790606909809406998534204549694087290607070991309724045361304801008888057420380000109029906890619767651452000502298800000357685040598508908950050865599708935862998000254907072345099007041004691014388900707003179500642008125093322851020025567420010500572090448001008382749606637437100160983500727570090440500543090040940795288545450605590688200800540709157300010893498256506797908105804608005070003437901683041708500075066006581005509840057360730709860022009082305660007086100281849250033700970860104509700066533750226060073056875067650403093532610150782011900220006200000116037861200027793300500636190850900207766000780060308728067054482620000889010395465984092529000630054010060892591009605064243983042690000420035993760573983508003600820570019066186664480760768690324551775002690333773055844099104262040078835919392890430946807953547535706900903157870756700000092810874020908673044983509036003850942006710089002938006099400079190009003070009843536005050570040198095570840064041569799109750998688870290090400037672443777450933950058006370255058195167925751069048587094038940006030214306021402012630279949909778673376000702019838649409528600765070084658400900052002093448050070877901062093189109606800140042038757540492550404756147700410806140718159090003800069230803556729876809100040098607630067020980176808664308848952980563900302008007002300897010938820088458079067002500389907736006519200397204890804700808280975800034076500904204652047940000410907000075008590054813085907010000016075240091100456077010706500750000669887251628508484066000166007144404028240480110005229455008009468795047997300805750090780740020985026088300082800900906974080817302590469009786095000069003346089070479168820012400002067909885751030069076080477208100009903119008007554063105007801000031088974540060000709655000200600540562772639000489091004643488077290278099059356010603738093000808678901618137490030000070055858389058085599907453090397050120802338767750860900907006500010000405799604669005606007057730086100740578908059530708810780087764609040549030032280008320299543209499014965005490970090070013090740094097677570009600103045026901010904909990572073878900007689778558232000860540704774004809710415468705997299990532700630920097607299840450007787098004506019200343508800000663004860838649100710766484049496708808540830089925018409660809840004615093135089500004077043009701639020000501405470678509090350809050005023805860709700009985037624006096790399096407063450630888179580098056420104970006008090000821766899720591204790000008090405765907730900080089716387400008080623650960020066060065560008928559691258037609847470047794000650062630004097447225007006448508974903809290094009867600046600051915028808570705600960680608154506498800901020076848589568950238054070254297865000004095007825608870406101003074894000782000035700890023075809000307617060887690400889806702471069801358340970004749900000004430881177050096176909804323800457208767670319606142068077786900704602866003093808660700528076576007757400408946096290978801745640360020614106048062305097400978380742491000526096640062058355986777602806020898003234750945202080407642006823838400001489019021500081078798004690804488864059730241535640500004060103081058009610836690109901060609962005604477046902440850907507003990106076000007017486000677061920030715867840390639873348400730350620000470000758314960911006400043637300434046000779052906000088000869069409059060226008330085370575815050408000751509080068739600606436709800288678036637408890526002585090005691609278863008958890471176702240719808540280050092006474602047668809305680054904300957702063880694000710792040537842229070094405070406775198102080034001182380308059080138828095008650358880978795269850006153782058959835869866293077006050501582755700281668709330901186090600106702407595026090588660502722864889905557058391033401900552040027208009909205009033070786400306636750990506500800090003000084672600009920308080700000930057866579859687955090069209050800565005095190090022209095780808052800470772106064007060020392068905680877900900494750803046808040003002645107403503700303561717860985877730497976138705083073097745060660840481907050900900060591600870003308165307510607490041040056900308802079060643498800036760027030089039506440990931000933480884495842051000498406976057000606053070200663001830783750133030585849767958120278990005907810089280723822013070409003270072071180001880970452532073556965700943080353180800350004565008004299789290004065229975176640798976960900528630180200508704939702006906707127036906605070459730220863100566966776326924555470075602903100289006490803067067001788807688770330150500329009546278503040090110310096598440007800701406439050055700336572653512837008600098000060040889008908009460970008936002960034529001557059009020900600195300020003077090501724541650600005002071062156037152306790170500000080008868907490859073019940209000106770579087087758700869403700005348849200863000916706688875869699640650869608873007796009504012523890000907500580807018088000020007000664065287008080885000400050089909977305690056880036088001400705168751806460000082850782005193588750623104910080726103600709079598000080002090457087646050441003300879670326798061017403666709806490948009080794300708282958010290847603083888078873002000409597001096965680810158050008746080255000000434003600650096953509862473997840600675854691108594072820460960607026005700758589058148924578091037035390409160208794088009056260106030040000055390057803047904125005509785505900848143365906888047066827200399005487070001500350501570054516860003229079496719878013905009306060054050090640802000030990987407947080702066002707447470704014000287730086289006916800060965290073008130060250900049286408807908700950006008509075780461605242086170867481370906000028004002337005809611082720000999000380601434000707918704010930760907063002700871995004910187270691907684258940004250908500570100700007440068008854524000005802001504005000015802292590682704960283901963755919900802008980297049068948886000903050494900007019702580408630010009870400390908679090084029070600733896886900506099906103390880208595436070904006929395682973076693495867070090980707078056005020010701400790700281640079002000030747894400704098099033440335520410870005436100901005596550208861020106500979009090159930050066070066686750940058280709408885545868662300607160002060060446571730360050338089004044031771207200803805057410288000706067040006203003099688240805690803926730080068060000277902008905740000053890076290400790965707963080876606900372689200045700509520075984577307008406880850010072046156590936080590801595068088846062989709788029103209730063325798006000358000008015802850083907861267252800032300308377906070060271057909041730937928446755009679053097096709405005906409010729670505222680530913004005400610039040449888013379859698620224034705819684080041054620496007650542099638099200900200263010069070372733660087080606000708000088896067088805008500309090808058954522989686302040048063071383487254000080808989840894980009860315588009004480005064077084987058707800890519849697270052009078098060040003769659050234688400077007308004204080906097706618630805083709005476945701030816407404405201066908494400057510459232605293009949609080063899057350091078448469486019391423976810450009571090003908021060400010700299209230363620266600501609860007306000039000085610074086764909070752055400813660670243007520040623080001003970600317470960630061901605560000206829806600400000998088749709540080608047020600050900107000020009470200260087854270800100803510800090908069965399890097092004485400049608389400076999880003999002039246009438960060003070369079007005060489509391452000800207480059000040282107896016600890939675099305000802006060508760307009705062559598180337096319808175589980094742658006741090405228907290040013800038030202019980797805070009759345457599000505959079020848890500050305608293000987690470008076592213987763725219008700810035906765098006302838295990080095806700046990201000250985915006800684200808945700180999078030107383220895800600701006707835229666000099580057202653719300048937000276964070057870690320988700301000471009406604840045776013085027109060949338071100030702008623065360060270608810954906406907700380057545007669000050922007009395087084005000001500774590922700800000066008960170760602015002146218258000000064909701204907080458108320462028005405030182765008629409068709070918979930855030780000754968748052000040010202761393568020672000505004350000091440096675849009009103035521201634602888059096482500133400040303073104970957608500068639835105000009900100704705879007008033789007008900700106088077390768063637020977307091990805701785984900980633040394901562006000208095045002056506376009400050070172803009790005561031675404056593295007383968080150921908081065596012074049918657708077995318988394149840091827990350006308409000704977070940147474900008774625529053096050050087675598070260308806805146040001050408710810077408017835037900000055948030404607230005080806835000900600304870910703772689284703998008250709982903400049976000008880850430608984962047063400790995067665010660059902890572000741098061039560800040040509042810000380802050000032990607573880499290360810007899097730098065789202605903062868305984150886782609900928990008702858055608509187499001529605390570013209801039608421782927806078040797002050705075300500805990197990171580497800883088950530010980840075820390046610885359777900506900639952400073805093837000088800623790906590153720062300095981626062850307008360019900263000502827709700029500300995950899430924980082169708617749860500735801700966474500962673806900001521669237906060600612003040970408555481200063203950490640020689900400387008080280970178046904440200064098700448681948287411090773091458009588090130943004003500144300558019056477798180041508680068072008050608756009567633691010508846604950000270859990460004400456870705086030390299580294360095487630029400490009610020869990468635600879002845079935009937095032932439393409300230028728008690029080160506371035070683900008028356080093800900933066090032812859809806904010553434345000431084700313248196258047064528007008170004867480070002590900060803906854060830898000004798276973050104900000530507696578907008896767400008088950800063714005030562600580804000004230050190504055430293562705889009887689373900000600001400101942900233088043095080903700702070099503502700657040850206408857065906980893080003003087503001966598750447501000607034510270960048359646088380720305057208684050060205078001010206668309850171060200625097051387081059502270086977208299707040794700820608090000002580395125003024396928014203982008366380781809007798789937760501007602099877087199818058010027632508070016729040938600005870820396386509090608802008862707408804314833905700099017643777008007079096777420068695000608005896003077707204907848006046700926780390802066444608000808198688047037547079887010082421524077006106810147800060969750865045070205000340403004569450606970964910110040390060639895500597470340185204003970057034051900829090006058603438000562750304498598804940252780696508402008090302575230040636000088371000906900001724185370604535404674657020676110415450098820001789036009328998615005753750701000082500005083567084080871000507700027160472200045201895660007900043008086761667049630150909280556588961913603111217089129807896810500448077486633805280058779760589030009505952000090098063497585758601630080058504200790760445132009910006550499351087185401078162606408504007990020016000738050699253070083066500850304572133075785300200930405800200949958060220900508300968108532654806863045963008050760800889477507140706703800896100980289021005318285404018907070846108100761081540718050787884036539990080140010401014000407954130070972079080106859250070900575608082639540094709988750891759396607950025307000079981026042001859806809802487908000080816070460504000904000012818879920920066803038700345307320070550905844450080800420080300657096009598340004704376366062678903010000700907180880346700810609815020050219007774099503506150086090607500757990740078735078601977640972023669576709706604799900677080873034270006420170408178005789066030380096325071377085927186809480452860656000857400110697013962634103606008277508097980009097997206051347209010579008770915984907851060406079580000008945080009740664909409000370467076912370803995300508597621844530966060084009060975002029800690541604298910530105802608000807152754410020958302020047289771014409405346699895907070977726160127580005780085430800958460235640440998980009007901811877539000107004899390985000059705070004072010009633700497874370860500000000304003488240799998840275080708507504448007764664636900007396009976050074406000516040757275033490639780030500700062600605580080209672003476890089030707007598800309075539090777838508338914088077900038431691016742618350078016950789709070950004987640355962860829908846076002948409870064553540290179000350200568700040400330010500700477404090066880097316705007723806800000653963090604400293707900090508796983003030026708010002000690294080550664300809093095609104720940753090003806100435008045097887807945282416700006702210508007806400550608023027704056228228084058635030007885005289801939910000008500909407006030056109405593700900918701208702304900967708075700090686105447660011085849258810699834206800010006048370695640760480805040080199702435700801066076020077909399907076300380560370940787062560051422038180340260200700206903000418808060006080207382402798907081070508403202035030824621020600545000097400035909400700198300133000096059890009100708205000609023440034090820806648032755900030090003006778698137308007776070007853040368483009046300410091200404002302756860094320595606679977040990670021508870085038000959008530080521600320940958058641900580724398070306115390704008477000188008089030090788258043000007487000290990771756093909875069990061270890837680573916002551140528807961678434489958992001000687646970057606507150768808009989476076969609809757040070914059670054909070218086079601085109450916790008776094507226759500000002009400608280075985010494000949009773380460971577004007060061278863856359960090006896907122467092035006699702077100980807705200000808048580038407508006604740800070000105940500499094740710006909079870039710300699011270057594905360207663009052590547506010286048226093000074001904780000412600603979790096530560700599419005077004503228704803252850040415008650834448207600905007570000469870728654960060750200550703909060707190653030080008007797054902470258709773080403754625014187016068000729070499075496067564082776072033957352005403448325766003762909008060767900568268960010033544099080008071730008000990502030300086407094947500000009561301042003505500090710700548003232250293599000054676625120676000081050889969008707067720300108000468000250691050990426561063017390906494507740000080560873070789803750892750801001018830656602073505800692580160992104086000803600829630095548093009869508019110076980101990925340539500001096900003697006596160771030769290085014099926418271708027923542017009570880007400608855027048001006000084000030000770607855860608000008730070354112000666096005447500650300000700406905880050058830031956862700575460470818690780422050460107980030605103300309741800924050290060300960750636082064007800986350503966940080850569000077065960771350939849968800569370979574002997003081880600000263100037460177401092543442705004900030748000009036709532100709091009906080985198765750040006761006526808409060017308673900298907055536004160066205851001287043806260833710316803688771566739160580105010655480097005000003269024000001021054808109705077007905000797749069005026900879882060000016065088780600640644565855072054052008600090636607060459587400020006700780560867605528680586683650720095908980869756424100984007263015204300407400153208378876500480939700005039630406304400820891850604200420990670301100500404996631085006510017497790006002394600808907132570097960470048076174969756769380575014090994320107860909979500950046409847060003629039450663095497808912009009601092265040157209730955030340329408800890600780840019506001084032500199270980777070994505400007809060588466054047933540700890009097050400088551920240300893050037283774072080051272690772350473906051033740400770000154950750500605039650010987806359091089200097098696989798940604504720805400395040002720002193000257085300400098309606980314161602598400077894937811666538750072047047760107005480060041537000086099825971007898698677300455937370109070691636060908801598007733925000908288059000239517605800731933240254509869300790307990269660009681011771000807037007040309035419708058781679392050700097977931460807476440642510804008099770800812665059830036999022004088029302008400004790649005834010920088069197808062890598541443668690777293850190097830003510240757030099380509933086003455191650690015031050040604888006544000720650754000732046090395046097404486780505530035109400560571084300058664487010437482697050328500070050080800681609098708574000030369697197480045700006070800010745090005002900514700008617904416010380008100058026785056890814900646016567430979390299150096000051670702353033700000961003926200705060022660094009039100845140177888866098498396893870090000055914050567000200400803925400450079050010600019043260230256159790006745078000588010700710002060027008006040037070000055045406632052030100767709109093000080909900420070053984043398084748605600800204090820600877000062066003670680920000950007605161736301040335330493324790408306018800800036008301100600083007039732909254526938000005484163740030858406402818844935590000036807065290060930004693087000055580096040143030005728301040032607087662080672026440099531000000298823340090234858482016809608708750880867370336383962303649154003706462555830206079009707309007003969501080878948003508400570300088660608038073655020020705470890707900094100028082832940040086485538000009350030406080158409011863506500009060200090097780869476037562007680089904398094006069044436773782005957403414001906008084010213008600900028204897770070040980040000568967000660300859218070307930829075368040008003123009493435040958040747060787300644999306637050050609290060560401777900020209055499035080006832057085200080040808600066200400778035900079000808698080987063950693285096509157309751024850102080060139008903767080822156883000603360878067080507959000037577887518644850634722309313190396697020650002903900986880089033067080060909836140680040803802349276477435000019955034870404050010305006125711020800090258003765003252474000046509546515900013990883870009301605040885001909822976049607660828949510043742007050904700471296099481055081544436987781006890033601033404927195040905001489658492088631590007616009005003002300679158404000037419004087730082961289039002500006035650892700700058900390760917926783570508106390010777598080002980117588079070830874808990009034008804936000095044800903787075900608140085580070953003775608005700987720470200000868949009980096700007448448007800035987005350555500020359079050404037400333904500094034881002009040507104470901903705093366009570700359920006534007576933365004980097073138686731648050096594050003868915888908666075388000600092009530895070723702744866083671200606100178006361678853850050020606007800098020904080660909889840668039780589010865700599802590495071780761002308123578006258406470971754509609408660746309063380751207004608068726841086964038466805002076578106500936077675092008768639643780891000108549724010006000900016560399240700090066509071380386369569507908550910809379778520747065086083493503044657084049800145645617040072544710400980707690495941095030754730035699801721008809900090908010009090810994075900145900040894597708902633604083046590300608218726004606602402979099640604043406870083800600000268678000869350847550700410076970808888300908018090979686018003125160960535027089976927606542755308075906125600013760984727434801860085657507943600700060500080091200008100000041483928980981060073960600094984600073991639765807103969692604702904940904000508859570290420034093040097779110615909508403605820640010500807301570395509670394460046070670808000522080000057306296030929401493300109970020980506840170994807500044677545066080750754320585800249769005937089959015870100096060908056907834007080300484063078005606673400619720769500299948053200139089006078686968798708000090953906970906601647905901693009089040608640280796270083090700300006001107300249480650556128009504009895630008310000305007832376078970330005080789009379860000510690057248039092886002075400003098463002886868300903218940019646106290804209990383067004304006941006197005540687668709062932640341540209050445096848704080005982000662637908305876980908907895182916802897600569909077401466207000610309659395097107000151872978056594001170489601002700147776930086003700041007196537900808757900188686300067169030053930990747909140513490085071080089097888098480540150809393040960300070850595900600790045062058200096086979896082570950880146803745629008308319039218090618000906709700401725968090028267517600085552807320049804900323054266130782956403046605000060090947200339040904073880949200505057038540006042867069560507001001028368090809771880860000140915072483588075009263605707270658929401000901750006379205760010015003802341722500520089309080313699553009490590460929001090008635600807396247049676953001398926000735260000300080050657385007510000053009909071843509806478775185738865970550009576650870970061502020100805739748502476880261008045830439830471747473349000377009090507957620960314923800004007050220993090090006310800877000908706988540155050098080659568985851800540305308997732987384798753990400055049306650940082204555761006990620040106869090030003991404505791124726004570700004088096456175050020900936542509000000120060793700346899440700606992086088120208680607362308447004178350980802070030600409496080084042861508704100605354929808032800370900950109646350960001078806670500240670900001432053000179060879089902800480004720709000026000819000045804300001540903009240039840506160706209004109860410487014086454410030691609940550500000017978620107040686443900768670880970117770000958990007450789000936232683995089883070003908906808900898766280481937199506090747044495850257100750001479701870039909445965712009000284510003808410502643508005707006507600900039570006008000092300079056536096730026409709049020030047000800880714800500800028037782853067670060301530008599007952049161508050089400700709580008860760234007700599708607259827007070056006503552356050208972706941539505486836800530050602140000089587000881942901466060804989060730604213930099040904020274040070796008650090906744430100700048808504608630930600070300819800233599350816905064903700016000277588060607006972020000068040705001000978984074689888040021990009054331798370083003700354405269200630501108328616087010402588739787199780367997670782179090508089030506961083940508186750080380000502980408000023341097608600290480008003003980207279839087080091804082086360495784000233700600190078406080098220870059989030027079079555960907008904455010790600170500650491400460674376800704092148020678080004000500789005740100210340701567074806530807740519991709980000060840000523765481610862005050401260636609308800436997365257257999091170993009510650798790474085700437903183900879030599370640790045804248020040108028476570008260510481580009970000964082520160093906300314088159709079306008770300657468896019499982785065999895150309000825900783056043601550217128903770417771090003076095390080090637090300660007957534400784006006672000475060783290000030901404796637023490830939825704276090300090075097856006508696119804016408162430739030051907505646640701009000600050066839010092053760090075577000905200073311208510110660789002047615370875606900510100243075777005654955009492759549300040840004790000589640057083296900720488007286525993150747000806508909092516000107300753005459082290656500066839037530109300519550425507060562660731800350709948270808720607250440200006376950430815939060409009850990095080008900429957275706635905517100897090096805580500047690705386600067698266904727300090134060576073000330590490005965056065818806490412063030004070298180206097600986460080800509898843168091150803300800925173504903038308451759000708000105040760217608390055754508135779060260879990403800819308078970284025305649324080959188042564704040320130686167248700772556003589096006617804060030720000000404086905800620780909719093616535059900404001050909044160388071902407659803018750501048000898060103062068950003062790890709544698095003960498275004097062015655395033470030189373008009056037490508069928266594060875508091875400468500000386927632849200857030142477728633091067749078451407057907609710004603938078045807900087611260068006080000500180767320780891499408004624000060259070010780829538030380520600007008100405732980398073009098044056609036239916050700000002022900975746090600563070399008605201096137500970068090560307997089800008559303070086090059092800983000083810846687530610500258506900054000001750808066570048827389970660651484050666063050592075050220438409500678600500404006090740300709600993660105804050747582400030000083904050009040201460460594809030146935018792939966628012189610803305074600099080010089344029540097990063000840472643057797290794000027660309650980706070527400980705197807899566050400000977077709398843807078048500750790580275724020072000942000681084508086560055984758560058998460739000062058008057082003860018640734007620008906900409970640239548050503038079004025199005084780939870084400356069999194046498390001188479506047000728807804080039317004327904107906008870500550779702088000046586400104690209502900873810804390235740808470454585308080538400099003778751807407003942706785555077076000370800398396022983117060879083058050043852500005860000976500030000709405070000403083400004549657301100887070720706608130095040008310000820889668209096005045290800574059050236098100069018010838199617077000803000000730218979740648036040807135072757002852474102007620803069081009064353950030454201075307617607030038000440760034408023468050199078890063765450784805800099454190159680500473112695000996007167610408005000405010640896293168037687554020200810550092820003137530865260480094126350229035080004996116000008806840903009906170847207741125050008985468596067892678004706000300528970840070001077306520013042660826800809940380909060904070477694770080082088000809773206050770077050096030990699350670076083109590993960403864799070064903054550620009027001070045660043506937107300611160068057574500607279827725290097841300060480900000970090569769399450632004067406900500110507000225077283008450106140047915710597493707090600097941604301437270028903108400009270920207545236602685144945351008007580400080590929894902050000566207630100599806805088774250100808892607940610065403520130060709900450308230870608409689307548038230320729270160640040885234400308107609008700076301169545006399009056305020554907007549088070208015968538950000060240125727794001370700800855008018478077660404505070387093467660590906394589307091637328287637699060593076006776006065058051994950830008803976413209600690207654001600695300860000950500079770880497803430029615068396188780602560789266898600563027400997003830184993136059000689422005500480450678801052800500064029645805312008510000203720093035504080406923060098393822886940910051080060108900863087189003872566670090009451006908059308010058400870692079028050047574650001060800098476660165160607000750070700081050700268903943904967846030335000504990576430400310030074006693003069061672314409097603707797940004300080000097075011460000600827670080811064900477004000099796512000040000017008009873149227332016076080900301679093606908997093702009080906915008095000436099902986064020058900516096008009201600801300853050008760183193008700333500070300800845003578300013404760194906730654226509480324529110690065609706801345000484730980187000507700071653050080019365000591900901960561640791070390700849330527037040380492468000304000030833303009152920093900740276972000043755010961000209048
