14.83239697419132589742279488160142612195980863819500319746524652868766036862770048550601842639164988701205022370547431511876502782728460203089234118532346951046276090379162609821983746080299783111422215319016776996608304152821926076667212118431331703837188429106211666758783384233275459071120849568134579117884178716143016597894475589836524355384090733523838541348135854167838007446555109350846609575739367373416616905927790857297165283558966066297900777482958743788539029454739334955808228039401327106906436269771031746065042005914088989641915108342302837386004305166761817766455908636971970756799546838797698154605625155117148244766457551926892633139737993562484108255961138822270482967509710222244675733631459328295629189061261593780100364078888571212809011771755191345489233562049188636894953226190056819531082188217931784261060866436921270419738384016663896287285418823809016090342025368614391347030747649129005382773479255289071397083567321901193804448846286715757668584109145005727945834837460435316935389101866755477556522116122602663093457157009413433182255066480084806498323380722368640531420874716388771801797111912211379379147642886846778217886941848062798981600457136210242245616947558936545675047548550000063568867156560506305109217964662706507329079628191266879094393325948368995815394392530668971792734683660430029644651052493405184415916208624808716242884227680214953049255729506979113296901875991762734576934932144374111720277797432453261461363151810467536676014876090201564922239696744448849063321728838311391830726248120102055341741352592833918218949189538682744378946928642947204422748053915797759194490501374532419593046983099724706528587305171888267469277035519102003434961423563569504804237474552237132011074763330231091358124786251019992853289699894556794866775144811354490373182709844726179760627357149968009116699416569135397949784168022942672562911973010594284386154291369333802947955961053579860023406539772492588277948921472854896858013164377166724401121787682527553744580830295225737442255695485337530008265026552873015115420250299261545360334123610816457220653661915747628097504940230758816616329431840484648441141186841714628468435639129355030386302542935559114272418353803017950190049454390302559417780621299286504150816973872412952390495001220294557674269134041936529397646254197712986616755349371360368670401961297778549078947093984323200279411412649287857693305879537012430400953874847697695495711822176580599943192970396906733588654533116397107728603909284641385618806758703875788008844030700083249732464177591083825487685811085223370730257989699935733665985743941199902216317624217547484276878672447280912556084837576848875533750074225632118855500029980767732049040161868013032335551534678213548350692415026247989745065914989235921200056733915264454515349915081624239661590688192765812417391613807626675752939685550773722016901647194200785000889639888383699040672371735057251734448513395096144276336556328088564799026305843841827742979713371227062037756872445539400316018754527597791566055863445290489776682622243468898808821400014499290085550581444911474095958752578592860681092933786153033129960355031697587776961043449630201131881064916698446595394439199264310104190253715931103636347745191160654859866779414468495715281502858680475245248627564209013053734898930408845313742500820386962072510411816357547022615140357712453680140032057603081274454696315619008685842175250176225020012881441864765815786578727044372833098092338755576609206654761918827806810678512374263008532012780834724180305851961214126921829224658690060741467249688351570598000572150904770357264146444270137915379752209227896147087639535746530487652642098909240297591202359699651943977161034307394817555302447982622051598628934646936560835762295241424419069293861922393894594272121680125337397522374924420351479978688071610416362933152181001983305465187918712460212793877712484178584880322549359969713611329016632234070570256972850506527539732805600395508503594158528834938485246393938695526302546242618554801765572639591961731168893830348621264485282114492957312466931448196950250693755818738985407865011400437456838362992886591104290974842995050826016363246725798653722173526877149183262320286244740808410701591268223317368320087472008761095135583565213568279215013017529158159099581377259413386726768225057319796767738673291312327966663380752641224103224566944686338678207177525857345020545555959858362746216706165590773561795789722064131117308440061422657319415229587540579605711935878359698157852489335733358865997529746464218669985003020854538551037340169124339356452528307049873473850227341887688829114807029671444402051779893973221465433828142248204671814904416821535101916044140971861417517997695015774971907943021238762194787906457372766354321799835089811314173660554094296508384352656828196552807389388911479290035806626332834569833369159734426320925598093011687521983393486342458894226772425459664550490436505318240833994885572382661273251073245240316256142662217392663794624025488544910727883464833742813551481595086558348037722823426854578794518390524365104082534196969206914022943121038534786195924909563194334726303356982060648436592640393449832469779781577470744446004796932136652071576336693200124038691643549019565258500258116406027000308451417816547972590994287143883889982162610024030185535325147830082990507573958857387035375597892914779986596306490099223646679771873535386338868861714291323632422946616559400870516271188382403506715125852256212492315922556852097134121685183634051436562826516939836899221727882755534635820093435415249658910633044853776466827727721543701261678598948161947133561093888127929957376155578558540445006546041318576320293312564263910875669685437653952800031988226259006437404527036412968810271685467899647179874212592502935350043815797276771879379750018169568737915623928044802929092311666068833128598744519484490610025478906323361615005770488777159513528970642239442426834912091919234260451963234746497852510769404214942589593408981598166258901560801267809127834116157474543777092819558894113781136604092965950655988117494417253605310458765480549235404340840171054677164674232452901625771900571783610935966324769502153531558286359722679819871420011634533939398564552051789741417996765180437657933557172739489620447797030826351640103839562642304173226162261086290402235977261849280786483598258666026466860834058667570090615931387865551776429467738977430506082837929897504087243475431454839193432430882180916085487250632874440781574012453288999588133894867813125760646997395813206351591964860745409433561929384092226364691120160451647099627384887399892250098174485033836184198911482181885207379832540383521151853170549445838964001919336293247292065486407551424579653886808962996410348867218530858783987902254197288163390544821376151805445806750570260917049830907546454004265254181706783173941499058700406849708370619211302347803471121145491930858940053748559871843166866447958700923351031868576079033108977814554860821966297549888749610979583579299327024592687550742667475592140927380196347659152460603577358924171630464469776441462316531549752192919640592520952750363882087509508912050519041204679515157932815716723108965563120251849147145178672819129196233077177319282027314167308906200687621740878981179049075727288074342692911099420719467035935164034386312710015359042451533378300509400893065026648452836251414537717368091328439440279927610903279989273414296387214960825401999355504926975981951718525383017062579156823171215943826125373666658984135322199456314899092720498426781509905464011389812605103783106362932224548992556022119118586307325977831132838237195330370941392382447701023830354705518860537834127563615256813311566124089275267350269762175838860253478816167855861604145691579974162014760926009361868391385035524783954333214128084581990112660271746424247962740046163924356825569518548117554530488576375670505843516229539028933384198222242236583417285329607016101479506411591457704089773199458940700313430251589866571210321976369967460350402077812006209658295150886457885599250100815384082507203651232948173784504492609579944207176602556429290008248801594103262530279237688079917240503760319796141734092031716301204097468920815482417327289410060036755489184723767026410330167624506024614380849646014001899815356596778322262759989411043617978099810745869096330432304083125632330254889882116612483757110191261231414840911984902117044832473038142503679462635328234809110590249266363086197986786718510896490023880456071076485253848028071410251408122928911129409967034562877508494807856745051639601600983687643679914407262423929966115447932971968455161566954624966167327264088320506168579436094433828753789648871747223299417974778372513039264030185987161752053903419636496627954027070188055832864072992107304484548221452843612863568451569191241304319774000186325825058031441032742639892878955739742870612925608231593393912249135038420875636241722760823009564088287811644406477360285939681009819303208843524951970297399667617698564108334906458864493673608236741237273087324086114719894690082789488784873461672606757525249041594377491357186404767331410913997622127223581300365377292629448098305567885143226484602929741886305556772030343836727981103384922436266804784187138849197354381789876113996156921359583450987738321785854534997337339211056107622593531919271810415541393210854346722663005747604991512523738307397157718939667607428755224497001017579150792103340806654332952215408708538351380305854790993183285067573382121207770414375275580680357220579193488821061187659013995352510188794616419918886560627492711336024761756223332268422513827930492860611244688306752817638303539238147107839247603116261499535073505126122900779195873543504800652087366594024526287953962000708665139440458236114651289346227161970819704078744499884466802003027607228256491226447850652419657454812392043513567099517004370055070793420643294810077551998004557640508072575904146034219331864396855874648770115382291979436513524571227314628193236417755774151636942952053724326556207009110540549737812350795181557533732238492761642567602300536888494796018206590163361684592777630990359633255947306183776793360322585882607267561146681836737664694066496489584972973965572429312417366379945508121889534788849209105472884029678699539844680929033042776094813013291398163518289424660256405483613261337107176807797933194144108874516776450582720387648704219964698323896619771250083470333030552242720128823431275672463075068959349498576693083733253796598664461711915156069258538915581840443097011606673429414918831957971341114515277289917796695168525108522522137920124314925370318779698750007954348875701957384018112637708773321932838554482278257644915077364957490951729120842101672410327720509738348025394651185771696525425258326998570036959995022563853553992432492765908757103156318780281756689049333261229590570775797442743845977520391622801053962836066284370146598253403454038502448643847701309507332347974668801545303542441081957170939981497228066375275425306065321897587259357423505834912910816552699380696027110750946295749819152006451272991154166678077239719938119010997618476462548277117558612565215012297804820218617044323404715149735627113849038478652704310218274002374858535531291514968523807192762966503176688548231298671397910419076098170483402983675309784440073545229087466895085629940803084005075171176524171591821015462140078417967276922629898260773240893075070845032298194841461832472708849705024632287608240781568630044338151024922948383068685902854362765206705878568377606004353900921036075984040569180718455901274113962676763935924498985602172972319103474434125447158749987963838933622450011637246335919480551662492237135000954804827951720851577470901272903904490306643050091139454623868580313010928572128681054696856859001626400646864134404068450122660884619721260890391911863985799273215989882343418410023573815780098709172644949616142959571168865684066977752831818864881896655794981069885629489435830038999693796689464707941426271120412199487444630857437930533773955940369655842574967038438079450394235709794863222139695330595723962610012889397118963918445221748492923775549171302625927273781706189629599805284455477473946959187487322747347683873004886070542139080048533657084777499406196373794523023507273978051376073202355528037154283061181889531293562598671799206802483594326521922999002148031915478627838258786170103767624283988910226741919649312431343113464524237629741287984438014744271690020911365559452346540575334368966063974360456016225318498944781337121815992917078525996135976327940284199358443968843322793475837333954170021428683084570500952267774999208326903791684187400930321021180442683263718422964531103081100822027374726783461525704155714874377950107765664544895441739748844352389857022015949371365883829780195640648081110353226537055027161906133707946073656606436829285789430374762883474938451049060748863918755348659026395361550838167988711986858639260134773088408798654506983165249845399314145807589033288557875300576816675918331762334581827537234791975119629713951630284709806204536736475871800788772107526861971611962737863943552364006390108603706067009584744093701840717718328744995969549289862975831734436657685042543093328655831216594913657337401899436635308576198427972487857243905041610731509768968461268231958902652132472830785267938814058327946399559171071946349505332276837611315746174402624663423810052420357833283103367723753688864051349390831309364525636864126958194211652011381408382420202262823986093880573386348855248370305309538060052682782133048659468473197595734762469576638364945945061398003462683604153038286938374588000419772558570370786955461996362085928709914709584785550378945943394834114016681645708457497313123959168158817804428289819885440275436566632446724743666235046298443906543157663873453796374473140417442362486196440012995234262111311250882474583077111562876470307072213502200566572065884624175995820258314356097848332890278006616782628478029930866653387483299049509724261289647924988191647466261947773376366313551971388173079399141180353338916358622458055548216967417623732337550482776159950131106269960290631568663623102687570141886640297470157659052968762439581458370059691786193115436532458299117960795991148709175776798794280600459806831331524607542514060025609207066300206307887439117548448983366612265163460779016882191571231639367655354333558819838841147830640698270405268725225693772067236647362397914817939150421759855479093642199256417550154367779892149442884981479990258082972127701041153596956401786246801668541065025199100829059021198344224034175557980743461175716950376838116085931225394293010524466944301065799655786579796594613305718978189253414300820547136889257747096512501920986613217257351031937966266134044386090006538446743312041120354494831049635928644684169656988796545571614336469095005154150449043894935835326615838008861455967446162825259090032701759218392092938027785363712117079351643881856258705402414672832323303025715900374550226095757063529140126149981389473565722349089926750122980044529497135368576985871403057082774607212920291615229998485431702056472715299092971619520132956093831099833860771974761452774941221035343943419276047701833021371905780862554426160928665061043941480198570492227798695578958441156325348948129996346376260251796193150385618602525609268304300769615512544642426959853112006390388795064398482107035138400295666216139795501721885855854065547563575178113071904931272063415981311163883498887114107376215979471667695280145169692993800704046411787193828935904048367130174008283151171530031242857691276772162994106122953680364586995159400507103860097839730961114687250046804239459105004030258680366270057101523475231405723137830554690144220269495716125759784242009721066474595702911144414385262605402694810575566225183013330068727435866768953983629577093976583999442175905663483731971408705953976170542383367080931606675259101473440427000170450409100369548361702749261825355392022117125754135421485679373036066673582808238837842928443819732345419429201775768167644396567731513756251229946151286450785225383456039874434212031927995232752203894881015296008663505876742686674351903352590915895657705317410360829239414904561506845990455608365002945581925316517464994322938687154240556649461210074189298448464851273511311416606165205853385412968928559282678036849354201808209446221452219814636931775096687000031894970544545834201258726465876765738180979428428000474025627269207305651474668374237758726695677234949809016180928055709659814736459364191572370333821315272116983803961718420233540102449410445333973673806692472631922232121424712723214795111330665304479350531387320026952793465505807085079596850164160378046660192774485883282571112740329582138822619120959529538628219973580262291850551888885255182362313239241339197958699701074119704418337138051726867035228750168206928532058077602172433612896379232266698234618816382728319266129648390258079299790115503505385247451500775801300171701862991710596723987403069170838900322809553121663920557743507666435336309674354512877515430540323499562038947177570615514008462002670568331595606053883762789939183859685441471021918397584559328081728321707600527595428748541839208853510533966770846746599091937765992576870337080314600294321501668887340646484360775451863782489070652229454759424556085609677081523822699280723354189232902864188279716968488259473042818417341362458286838465908205555846031441375830240901428509899999734837206765103811733933946225083398477838804125248296829120936047371774791241724170168729156650510929394937749422202589375070955586863378984408068602595853780500581666797641351221011960720960324071150601439217555219000495821351270518790945551240070989710386003139877627048513434381351878861450682726282795763911664728438866458814823821553358945622038844653592732744377705344430341336641967929750888166534122935671890922084030859772618354095496111628160117188360170878310781717083892799327081340490204099684033844629219796645576340806399169619453419331273261563192160966939611802320933529411554545454338669926498399238302757918003366191051636794599962877779708295553217779655063988692901779860935056989058556243569772923523545466319142171729281309536911095470648025792939655749922874870202735632444991082255165742732552507619007480996582792374139724972476048434938669570397439559521735947991105900534131587962385087990702600984374190972410308759273779584549281281147668356371061154033885339002013427173491628177900189904633187414120472837101355204602710281620280035234878110897099563795960770159523557839274517708817910467885436832392410992697414152401076815607853031624536654144938203029386681279848985307518654391936438843932992831131650843455970166378306874317859905122300018838974357847323906701272527340831218366251134425177226409872021598226817378140982368064628957872797374969107088938486877548466004881194613829293479902093689259168943293656283444751986976765097093354680581493758921559807697222665026796647882774926188731104606299342838714125070585088393271987744468854363000677519172850443541792137786446680165026180835234102468823095588263622383006372224448234654883757588316373507303951660935018543794123329546009832119336271633654549005705964230802007442642084251279598586366129988740541006282457070807126619131448315577486547306524866642000608126959710310347574183730236824119720641731650526713707353883110583769806155613948076649063186346940628069531114289855599780279431050544215731286005182901331275452300017249512481589372386930363128628157718123541162339626307827675438089283097297563470014790935186110430211326349646720224561791111822100414242757604883701118331357481032206160699651054433324182435647229995865381678945253346591148107854666805087092109185321557085725371342948246391364725425984804747171880163065892390989878527380500471606082252924292128964753676535279673887311311317472938610389192924158556532827497366201988169208808064944292305173433400918749001502818135486968280239758992648624887166842010466455412190391336783925045662346827986453597466739562545807919851588998632504972485863364396447965067316197513615342679980350999731169414469520388423690199816273188689966216664137191996906766504904657539104348395468239981857027231630978042207627456503356410605974682796839604960247928351370253213163284249713296534987812432122389592712695178579218038159648022867059235745026909534067486618586139238156465252160302228206510762419634766768904611212167212447321903775918278789028865955485526409262461239524091420471591406358225289768232988054435657923045295848934331087370477407995885353318952744119717322930001741365102581942975305015771070935273508745176167576189989697728641089337225337218495782046247100227121111632127053868987118180259632174078327970025267353625405672214969475137919880300738263680579427304594598810947059119856113369597234205640579165638192856488010083127185926469393545762040589411695990888334515765847291075817804384980608333335427259258226195047688889420092975458821310893175074953941963011922273963731850572970045469014553560825933342630574358874728389362290256045853287138543630401978433951360290313574378969728855961817315642814235467592620564932889094205013782974137542804189496767973523763068536135613645463876103098213074306921473207031187990583237060736770264490704983403906775224714754176680566038444893358753713594276664523275839205361514590346926567444644933818372397082699940655904508037375074821098073306176058851315372974514202926917719934364114379093847108106597102970910765424951841345508434773194402742100176101217013901755012579869119260086111666659601086674385042222819545320232139646240301529780817399369281056412820687265947441713028262122130319418083610228659513166865175855063097156127284256516078436855310287444738033316969005301995124067941999232769524050768014248570801357396865327724380402392240013225312199267466235340613440207532318720595655204728990501849405083182666435281740669136843478061470323438009589695834634720004999709078012474531741830922439716568756061681999392814760686801366375105152313748132497052184284087791028313857935813826830021060965044468469390278323048064632318053423044209721680825444707785341834666147679207804529122115289422146975264067644662945482660789068459595740451288872596819867619405210685498967593431573151701239756906703529384582163732639892680367531551267490802749282955368598528237030307174905386998947089597021725832691472939681656560984292202132219496219357833175828419778061533018058909768960508414835590618848078516084573232247770652443520593474975341498152195223273530431570033197314134552464644025603888175589271129572724454484911408440652774520373535702018098689519505094836721131797460741823924664085744918813748054632960894184819776204698650367521317027573363621914830198832307567738723948474174833097454074779440325096707158201682992414636478340801714557580206236992829800020853837128226509922227705065308415152263575297948028622843063144250174561447797174587392817514649848398995251847377008491015165642194949927389964558336691703891873423027749649666672915691009872780382609021689753520846219850598858929129839047892941881956354598761333619738223797575358581076781310271045279188129201315422656137986436632584099410628930834924926342279601088192993044521602224274572526696807347345954526480149326142277545970641091198582915959504223936270312319694266026303182840199965771616987480658289391974041180887692266315008259554513695732772632022000581009846748186209797247395343145908641986664913326941783856383206693233538296271925143137312196184255114090575252972407422289620273818777070620067403416129701756280319711496149279096863836217808724968866954106651999443677698561176283636957883516042130372542181532670707439784441032088788157330854363520955066658349140758649669968875376482916095403596432643506725081413092334095419726630203938454776410949995839348090667012126462933718522769128980911475641128972405842239920642373186399035010851944024191658613663581438638096903555920125879963147184878264056778301302348559934795589096827462087188568514990294487594720238594013716282837363136561637272501801426072662539654034609124293959744070900828989645862429695313596712320210177842542474440737919125883669083633722649509045680607564575166412537337187747309328939162814190084183074215449066048949268873380474495522808507054664639734675927903548956618552891558786492661408939377114124839402314812354739186017415408060607604736019381652038295742259988172729494405576429358658792922737826808866680722298295194604470293984653506364250021433974840915111325958813775009045950833124389752537998111639689033905611179465226258100354526185763468846278212993690062341062403254138867581325882710564154201066023633657989061729287130020733599490408688670705649318161215912226707386246799646805820306838112078042937206747448391852508106495233176024725066051333088181522166947651044147567416999061582057283623934882456499758253941386102737254360033180991736699622097847297381037405086941402799158997391900851193048124740127104113194727688499405641456297882404328769727066586447412505942747473684209878428631108370454433934227578491761539669459882152312705235306946977479794959046099872156814656461315148616536303737436577817850823896590979995488739688709006796691833903296484994690368665171787423704065217103333361872839653234411104219578065460149130273959175877642758684383110377080783754550148371640588871184266381725640027007417460887850093579280283166154253268837160752650092471289798881755458933245335097846129701385676756968509752658638241547906105423669249627855846634982745200786896561868896910052952383966477635129385480135060786790970636016428952915689181336441867700119017681940151018528844339120691707617820496957595224348546893952187623116763140698942688323752965599143425377433412310641349063892067263286811165014677724867226871500192437259058496349694875618767132948641542107775171221636034900346257639608963866012234095050553231122386771870109710390032111002665380240921405127688472641867172556848263790778687563668312856872009261542557613264897939064996261360181390755808710915649034401658323143201273703749241636594315458954084126040251619990311878452246027874598030112039525536878354123128907940444021751714461190483957276288707991127874444210233868634319151346982746029667745232615822344138568369371181412921637657730386154013992318075390959752694651895939627132335282646191875343764329525145034296284867180963033826438171455064047431752675038958743266146755948050036930719283360418308395687279518175485603143765831161006326663980745699662960196274173830157411854323741980596584488590622788793915601687514116387054817754409205573944312266602629020055443131639726547563592441682315222515281563235512619371175633427848550384488972393439716215498662983682918398211131756862349297681893502476958905012564819459163499175029967090695576611808540182251277849702142279530876696181679479304971058411239831601001847222076711919106534875894039625300987382002583294717294496868575097883348155164140567798451814321157079408812303662751442087643612283383713323983731821929376816710589052046837970143669599116647643057493950530690885332057691587663180476923954131872854030663674142123690302990476896230721235991917874752494177606981076701711154310355874994221684819805034277704884256982863305366364787999977677212016267433768137995586246645221622826957557050807400848610035114074484813177505073559019023369212228189956870579325181436919982164431736282242649300957829819694594362460046500144971624973630585573180960794776155266509601603952961518643672096708001179510889690270637216991612394849501296017754914844249556563804824825402376162247650514454074206991782573146933811084867091384519400344958307006947042215201441958566264275690607416639241917691496228351964008861457092968867252517028380714121381355031239409806171739489725703109929441496934152183798103714976214946878985145160984594648225487136659769574713949815885140554078869872400848583025448246179671439897084659829983282787326283013999514239848200616484048060770875349443290406308715894193424067684291333542081995319972118526668351347064818525168097835075269404025245622388912930934393396402845509717078749496091200752372309334537861303753839911823979158461812010360027994979931539041677383791066165895640738446310597196571382667504773271118812836377489406648248711484751869846981659187234686613000316295780035839569907553778568350650388997782099535368751442969225587485769907163514311365883353459738834150012172713819153840899587903995896968650630344947847371406711781150477214488244475667102141977665746465793827270281251952666271115724709796945419701778412171026588916739207027604885605412006886910494406429321910537714951462305831171585852491982241381492324774663027616793567458636117665200448855550217795772863751790659900156216322005063002405005844408345106081497471581776609669502451753566651848277651212650934975604016511824365581795312968115597003985480879303256442585530127601061438400675551022198894670405498595239439198758648053118291317727098450661801275613782714244761623343106288919743068144072461827865540479410201211332727108487721125311120038047085434223743495723244172871955599442174403328289760496717850042176892454716817607210438367260025149612602104658586449283044742302544270003817524487540311267717658736867829966958959935665518083463793706730933381996693600415351964125781304382837358566237865079459398044811932954353081613816020119777754158803767232382910907493538519496650861922329753024103219772256206160948999902097345257927844981500641004307093341507461851968944038998938125082850278916693611895816346079450673555069455116919098135708726549801744067176211128172005393729345278832483748949855476493620877268798383675206358442479213767845935981456964358169123395785097128177221262908482515100960702889213933079547088426721614354188167689949398490312606101655960719786273188990002318234573271005281928969121391905498594464971980290005340233289967804382682323823282942643821922448877074159123956406503641573529167943405080481217866406178969482796512084047186375036675570925027621847587057997524289203280714265020051664664953481949165849274453247868234902673548296751563692501267792613690937013201692950840299861726673795128252988488121632754664941983785301096261154367440947284926063331227017812926446610870618345641966444090563899743596589096491312393376273912984096998098978560396138645000259758253426694361682154899320116983825642472439311444361379473201184569912246085906191896109716230840593798229234490053772174575874941978199366178849593784649268978384541188375928329933524758635595859048562271282158858912355903380159427747843418416504387539788564555681274942816245156783091129587321360191628375471954362155557586442960527970297135080521377703131562165604676765544808139431488342829417923583245225010602100507573842380095269583558803919027297453489320360657324647309476096856360726018130693035488566781476015879635073722464415615529165909496859870296548978012842793545261355492131112211667667667328413965877356723590696954482596497978908145538062671521712134989691790052882814115353204852538272068278921140524041926092023565024415629375992225878056068160915619854880122755535183425391107265005706943309789555262940778121525977304272035885174912041069267101019306930135859759255103406329233323819680969710400760603179851475574453474128944525069370989910104193451512560444113542255666866614900102677435120762398540035259897335427725852593664158428567287121045517429025212274379630486325359295741725365764900200560420497456482628364917817550450382697850362257163508597377529493367856089463985403331121535136948555057116551270646625804025438312854342536857210628590780152325438230317106883053129615822998245739490345806674963884156344098734625018608960537052184618375911968993009043321282969757856199448788408598960328829983916735738975278513101542402588090477643478469131589934283659213605706246157951772024502305278415435709368539182185275051336489579110581538408778441221306168630059658132887909892962133276394284306500863290971069478162671341306014829739149907305346451177894430611025715479783536512238494358576712537794839470453497860950257076911601640457407747168483219756544413731994808766017977745996896118651589076129769410905226297105018016665611362439674606194366182615361346559655905929269955226758544128745015132966084841975776983570431512661650166843279471796098063261785193033674395090096574674834791747663937450494016088396570698052080118269862680213175002149695936680736307542176911292791441419429197731987259127794517440464366724084361736580546014187576328629307456387274571872901357183816507431041261775980419624447074592410137293636423067360238678962712643771067815056800779996016861362898434285857247666461319176024911783652046248828449748916872793652076841193325797552818407636474553359004561415720914378312371013346166490946972456623478693055190739428678789991851977274790410961446269496654776289399071361461406790398051591040516924131272288374118972605254427635521041681794043837087600710414926654498343908966250244136637274866389307012288791368288180356813202293204969706531077547545326960751632022201266299281380053953113246506236269785778056263192534116460047891024508783760767802849513337782050824113075421737295509850291562330173698093731985419185522075227096548532481045405241538597091736654704856853463436082501328520147287474101846098730214370890371710039870990708697647706405932679575940898669680941001756552740483715117407134824743255978028233545749447111635548079955000001499434851840468320396808368596656655551165668852818570732274254280598881197289652320405621690283940276156060462437391435494059325157138463600586894999293438885228336856041138278567854863102318809513989558275458062867544215923406490313310410642203804720695974775196995716145179707234104241044177226115064214532258547248634445418607551576671625500512453738748100012435559655881917298525833145065109789463678108686409802355453588356674470316081353442657565193540706620698511718550594923011674749545089861070274538508416796009210414761432157154038647453418597914108702876793314359736668967403204882237183115387017952459164870515659069990218087292974708307227425831681419636153033970263174455954388269069985916632134991429570701311749840168427850218181073850100968589727748832961094878268205977886475596491570437337925801339732714427571154782484597287220444404511034417487508589671612530687290423496188593375779074746732988812888960836075366673447492118692910143558452048331717707303319337494601654028933376905900709663848099117448051067100504753314521624800659683395078979031662510807584397344761754642329451967617195194806230249201596340964337927112592053398728003199610831946630840325119351717185132913869156271786629396745735718628165487649815954014732153390711111597494913148619588173442836810693713548831052013003193853383893054206260849774731706747105548851831820091856116773174048191294071415858267847135646974511707742455004259909004822402251308835836579858806193703358032956847387882262200018745129844093249649408194818660030209369948735952521320395265952403077666816731740642300194867788405837226759749804399578309717746027530230539422376999751394212080468154682479950566135634331083483214289369164331613102040208856065242365222795144860314831057443092930998916540823571035113682290351955863750760740640498102498535358662064309313808060452637743781574400707105914063491302446218901951607921571184670677521567420314786689849629236572500922697098317459317230069674940592374360741609730967567819722789152194632042113705881460365274960848260824573615236978564529753408663261997827799284515613039515941058666048824836868591452577460521571806590481148924124540670583873833639843452660833506101446727686011476921988972086471491064362228592818548110564564422925834082215582711201060870145715552019456682456763088534481997109082150289778661682510718408586346895156713702231413063068030641908906357915322118521731960252973414771468349069789070559634880218782274414302774680007524946212267768763506957283013694540463451189740708078215900626484315514383981577717116267771308452492846033660571938245658524870611947751618119585253307771766330344670672979380981390117300160874378561867146869200765338831882035970456766402261225303431528236703013215083161385317944633891274643226548260753322730979579326467961244424184490575323639936729876381737023752404722113153519328334514672444863134145785913468044671272175359785735124172479322736316304496820775749153732715475084378617582919630233476274209450976341883858073277746916162615927403490795255301005229561371821406239819801432557009347490623956521971868061984347990834746088739574725104155389928814678622783692647052302189530084069703726745868402508421932371429077493600001830773124742863495034324616431431067992332012697299945927576274906222160583465607907374456046464011820784675471230853851490091762930362459100849205118848108171009502408219962459562033985388328900413889382212710389667367591986683740555787320686499357675306161447640061982375741480487532162805090238960086000737338686508642049495994602588482363454823895581166458209963222114138286962874142040341968256406869354937792869553464324373318220228010243090337777648688126674667184996278953484966784850488450914272696902393973114043173808954687220241258436358574647725149860437447436600577916308908029965855634427605454802049865199853282436471417823865475773687716997862468337332267616321443821241544635609613203066994779916796013798095656038644712638740444089125597449277401783260196465432983933450318711662703573414886753931398472811351863718559496503167327146030207294336292000198916097210168364567787564033326244744552278725882115245755321628269668367889412712541450838893050222852827901883529584065871801897466495418491590192771673641869093790792436648989400048521088494730471255125207708851905831873548989939895291984699791106236288365506929072257708106181710225656029776245311308105881600115960872006612623590271649211055218597261850251700972881914665586725516694312975951089948252770654047341788691345896333871368292276018756303292087603918776960998638024082881526723258883674608081244673827988699180957437369266600142629269891843946176562350482225260747730088147856720384970417657911337536424682980799913948786173762881853480038320636741084379936826306924029383093336136193613838737330189208239256605643254207740503672505007738848741532146368127854037706440411896482658850736251315576250115149699739295902847176867645735408219000201083614898368335178339114001224874673979030991739819895520466575784796090358257743714506691541496834018688266731415456595808209096961989969835541976500867824843854989746202099290526452904298281804029051441718913285663627339097611732135194005055058161561321876322983179535904596561010329308844422230538948016908564952233108031294685340279250553584613428144612539466096872310029163929114151080628192531734461625013578004209622175390961128517490583905798983665456963693372491024469084401676869737469577903044719847221296768095666635318214059014251936619903748215338063746291516047434209992108730256615860951653308415794863151238644555216964525276077589238215268266973903539160857837046457179966521991414582004637342606143481685494752778328467869527543260885575892545285934401235300721265939685278737273108325206363986336878585298539238455608738613879203615542274296517756150070577998497604580477063701706624371774410500958318628168620885843592905211785093983897152023760257001981017428182065155816899365135098701951641355440148334906488247607889435422778401378391019588170202066605977864453599899319637780929084586029252136844820810127921971729094121137288885426516834635086999825626660970643896695002821332755690535788439469261655561484825567827923222759559410392563484992884250663679151628669811548436379933160941271088640130745043168820128618468636102637327033068172728339636383605436752410755650485998096683823889884006149623512576165754988107513509496493346747625401619910745857881459373286431341203619540644415086034069331704845186947692496434338370928021059913382481676028420617461110504381916066909257377060346563272572931090120219756599661492765261642235736313858813410000720886278255244007480328435606343778337222346483653527327936439509801144108399397563608332423293564027324421454565573073190090297597438764487888644163740750836213615189697806414900808679176368285498267570661159449543343354580655432533019933964362898438227462796545428216113781747901883971356623129991399084494769953183185513195001358212358743877616965763330935354907312347009961591528151242453939113833560866166843797365521124524625118413642630529546068461986146306326365123864434894654017742535668735841069730104758834472206903798718834139274997207678085731094039332460522479336542161558281810648214768978860124611994174204282982188153207570818796991862358339512216919209805963556553063752036750749047345012190450546682789237151182975676998503298851672952045788949343932696927334070204915977357264827801007038422538095846025743092397308808918702079139060222669154051502875796645570343193708516907484468487231931727878925014965888888868735128854373662362117127161518646219970964307573097216585880837822512247261774184167597380914898265084035467705380555531937686230549582512469851717510071508986001068687613881064522546196156556560692167773313516206395491425540954410329497274801186304700480106474802394751486225086525965254994129943692981220809654434399649974682422623075605601568335985840506818111852482259291227624825606293760726730666525836466906986184286841659878951714893053406989791151839967798468865359657165080482286086192059254154775511379389229949961478229579201395548550630797635070204639552959704853929720534427706717638701249049205693097663561960932090659345474536122386983086433387267997355339342573808942341825298548151492252480655369683644093306308255573319285317018586782740734508607789709717908290966868220366773043065709291049973597027735067976018173686790947081609090530889306837158664551597689531253697539814047734938192339092260228156153527024012735988772267736175278078759279687328232847938634014010666163330809710561907185757437902248158318537541800356037201212504426432210864652801660330216195978682285247248442159047481529615206679424330100356548140967759795088385319206559754917024016007827353806623737412308309597151923218246172117552220050145801075499270824760123163298476239575005196697401650215317652617733492717643633396806917294487726249010740714709457195423112430391323215165379050299712985153259831273062363675794470855699457045548368300620789559729904652527597835109897731837579908989744283361370049095908326803504510316349201030902765610884881378181293444704490403602783401901118731842626453258582921808561643138425395113891174080003841086257116001994614958986936578702539067956920340679273555783817680706269249150434027334115557181880909941285110511945043372302278616435173731757138687210798028686134955769880055390058058705295434465202541688769698459229320699571108939447051884660911823301578632221568118811070437823458214922477613351072143596799613788258179081041104924084205411683597854083410577007170531698370966782040283154835422576243437307398262879314069400120684660333161285457429584897788588450901558549554519276500511337568555619396631672079761319944322515001940053166515318844361606029528000365873956303509739625488211404870141405444485461903918205770704453629581120516814924701069774008312950874881607156127556494995887687591240595507819289824310595788181270151360186194952437820327671537179990437046310457408648868065176502967425998552432128924167062037321720199807721672524380947381167726013593087183974039553341775589600625737118893181986865015687948501304567080419900650753094405704223418647955147245413931387002210457234192475789101741854186225256476112846123237076859065577230535889089903183533243901635097560453366346661025504469541517679441097492882982901343857464397369333479756256024807009264512055175640937385532012740196769146619491961631265840269925279146958167157053410423284575688469928590461104775165138377543490941576904301178384213345606382018177924753921851000032671891534205893308852045719452314540481793926133364412138383637573297994205551690218963573709613097223232875774649450176386995556103648613241860481994448161302441494221205921872669808837487076225774590667824238521096205132201779613051157430164109082876594180602476788306915442567738080582543553315406445809743175249288462257102885572389557509050560261786611078918371308020120144216750408462934463531354408500544262183865547010535531849335005126378506978469622742977493120065517695858338611012198896054341646847174012130272139056615672174326285971183267777598652299458498140571999820140810842078803510233063597661386011491450875468574934807340204303736136760274944143855676597379920993549610223645187521788529502605801623522972364131565909370395599936527779854143272095139013697309840357468277142225309939865682589611249935545970304995088637679408203865782047586446454700421057237146155557541537778572965494870095827895575507238892409648964038337741609635820031892392510806136497220774074877903163584928611897970929279616061988434442628618623251936926668168181420651638410957485013289515131383654206111214196969534634604552263543665153906146857936141722209648260980597532085991376282322809659676766625186197132164807571359649358033238460595677123556160924430315980957701129201984219100176904475208990589163444195358098379137595709237015718614806979145300467181437352617738820186678080728990017244934918782377773351706717897379349687225002166199048638125572532203251729882172842652039995527502226858945084758567800698332750057304320522022798053166053285098448784311629682824567686502705957366026396467408229048840598635336206948748331800102472547950684529484204236493127272004300958069487398060580130950613256490450307150549493651167487960695795404277047513241535707694006192786220271316066467376153744042197005322749446057925086251498530454292802659310601333912787328667928962816519765236531025617846649779056463704463536194535565926599890148999950843893818536276427042106031753201099041365135816811659261134976175578610431147737945844542823252320576457630130345672683776271379719870435412617737182369920934386055878877660063788642174301591487628856403977713627189875063580170836763921136313941806901774899144211329923043150854590603023493369800248441126225047354949045260447092103039520310954293988586339262070925216020297818456373837732715932476277283252013055412710175820099123390474506925418855227736233116230847279703992112407311388012375830793366405732453344479868932606362705651415853002341708186889756153156016129540723792881960450037091162758174890847306459223170148589747630924787126021770790703097310559009694464382809180307209201085711507422631728240343647808717633117886429301434933908531672012829522965879613110451543710153312798880799148071778735598340495924893757852342314915036659061981304311806277501662113650380960255824356657251886497376698799591324840058368837204332244790751474885443209088389544549483247143329267564388806964584617422870481799127184730082166940055036824179225670949851447197527357395224923133591345063687629796009489023654395492470667366761101268828146540443045016002383623657637953264595670226955131510784524416503685730558153666473797172276133845734939047195220470948701319047152801354429961239067391474336695311080668441771987405953561641044664499263558132208788180418409801978467286134565502193525249818346303400622803584425391472301616509619308173594447359336479556060105467849485501492955001477622571994555822672919794122605874742529283650036651683525916551851562980361769398963821940528574810078463860661011180915694172742586768248770741641847802833809021575732231633134023996549574965635513995739374340152730142969537462772240317678871458176317794770876674418404630271397802629794655986000692826624341476915090932940581153154847443416870730291995079299096855377793651421450399803338605402955918301842342399995892299361868559010640164353477926800470340528569603343003211934228229947679348819915228529494252763701937573493895285734777160179782680179516294149518229120125098819211761354349542131967611937188998703790235791394549396850532977625204867860828128028260989200772982412129828833109826520195432955771510338830186860418303115721262576910780729137599050316387329212585471692062102522533967848645115178767180545523105245185668089847469589551319375634000775684415584134426171605587808100067494861664653655907284821336808347075774628251905610949158082850762723360075817941843561964558107254531541649931329398642564002377905388201601141108599621695461781530518128260712048474663574549579777741984286898694493443451619084830764127382900539122069811149129531597019993485322872503734715727054968271680514710326530163837850910651847835258420828925332061459327475375059745680304120957048675901004002462011349516322743753568780422953086856972426432863870807770417824070469379233012214030155224071968016487179787436484533953689694805379702563653029250104333978003061404717270681266183250842007649615559392299796799902810438321687343122109906198643077994078587539411609224772262054386644941352995638850264417434078723489194014947237222084613492978005235562178308173660242902548519117394419806196032804645942058684816210524908241754418546556789076537086424399107723449438207297796340334999119981177814724882322791314067911398796967153930411614474908865852875030992497364163658227714958388239588725989777828227940233071917559817010562619426781748546182319207184504048270239518069959367741565621270137990253089582938890162399951896109365490514089194753515145055182215325309763034689155042555576587959660006231203413707568892390044468867515646839944755990938966724295296332805800785572117457062143318257967148949905008494398009306458105100488384124764962861906029496512821134797475978271839556358412675089381559921770807288034556365571517664275004259629851135989172239128306884161013636712894566999423207825505677376296513906344239931150646585388463960318340608075629854068998455685396050424112147572976102303400157798913819011090749100449528721700325833154048821783469656409386563477913164060707674024147879844754837712902493891083940567644966417544361730880877231030159607283087064748195381684399640686039907727598752176710780007101322741944687819081373595138072567313009539488679236992712632140869663493217573359192416548545905783369025283534688955330648195764063098658025011049510122104723984920091948164330835943762661441776601016477161284509544468370615132617334662319824050567193190139515653575264338713299914907171878076131208438744329108105036718427182276483814467717694701380379155863584734312512412297881424221182317732131570448043432018300574175837059314911265357507172159890085902813663433532274281016600309648371253847912978320436199523731948808205557674355651792677966801797516672003624644965426607464216584506134380465398943196614367231615886691801999145032221241719188248617704542422813045797743555263349329091825886016122629871630042315351113605829636639347836341541868425190990320456789651747265790967369092332768589282929991662032846120054208832182504084830883858709167204745099190423654683328361763701995706591313111708724503681595900022926356498371280417565312063438324962008716442071613952156252096949203757595527752399844460738597303084099378337892035466977120069971218922194563213414053654296948292671561842524108884331681135392253880940795965289934153712601738429251055455756011164724855453401875136556316906123232495858200102016196155358287004742612331971596331457531493360215133844799809521918851625886795386427662875796453248122284209162609083158847066600176324327129141291820692610804817419511286254893577325503643530338567512901745893408586259443805135327298692108546502100825176128484099242041024872643304930641119152338733642043687373501405338534596632769548059852812584767120645653663346077079694286146344088173826245575333326992928596379833183610007709402879877380447184975292888658144784007439282442173411929278101897702498284671255806772147332048826115682727867194180504142526300887544063641954796311624916196839177260051490226797381990322163293193939235289343361916684802954998181124289683953320763438555663763930146864127091846043548907594627770301589134588054553847822525185521306629630340027171536821778433524522529620220352393028686689944124440273150360181779358005013651790758693459568916145638706537371890163575324277726655401974759737255740311217068342250735309536394000814704580305648830325984149233486161507870009037457352522138717095915599070266690813441284965242177445188857345138011601054298219614868802431599002203124987038340101353213543872592832259034393164809026892398036939977384764283393086076918256035589182505901154207528297423154423764156841722356047890367006717675925548022656841734699362388619544878008672572294151857817294892641778395537458246864633786259380172079205810317657648448735839813592752719860134920437151246212786766044958783405901340372632354703697465467774808344177351521640336685055562029231184658343580638221735166513583609864905638968367959087347192306310678426685793813619183264997221172227969738830333863049210987412873139381864048326733823062224288362425043441594446850205525169309337328286231308505212975866766106374269058714027991930062407867750949511260060020191907211930346907350775390723642399320823652730229064698123584808720552631701884367456488052122935695280213508916541483769333738864684331060982161348282840545947802973336412280191862496027128699577217791344227132085886668834029265090397959123697984472549406056244579700066963482416113938094957906244818415754325417243424037188700407088903997702486098562390758270534915245303949227985025691151569649521125001526431090135543374153938341525388232691738073946253643496974685316149366659395062983096224344891873619565522453341026232938964601296359684787460700452347767912811719000857924310546053912690257150741033024653496273552567192349623138747567311948736134475953070045905320056433546321622624857528666688623673317962420482907490796016890488155628378288475429322751195775242305629633023606091854353152455161217022008802063329614586144922947147620106894019734821521771676440955099134304323258324253329908073468303971043417369137221148938738491639708971343570820677795340720436549945917239917333790444185793551701067333284428258561133227133914096652504000769634757451387383552662649667701232520244827233741572157319612712161998984457393024028499573958034487001170928068855894394057148738634530191503095314079641311768830746745103072608237201129069360947067701759598198108350063041429645897711586689428547185584325950686311491206676472700058590814343690138597097072549903117655694998898074315812535085371740164753387595085539131245978643761698243996582022135819680661209726839221784059341794792486069358570711769148938340383831409799269868844971934054762789750224219199943070139352068619433739624768792054055592054584826089596619658815452217362950823811140744050192528454492013453367087960759459253108459947364237511266267734407430498486047999473691530088868652606010072375816771020654895954953793218454637501884061448420092954119408098719415362670050717083026500507023929561903091947361265783756758286281100970596188661373298814799121862773333627993374335534705071728092321253120514332954182101976609719001738204236492852854077288036598886296684584210460061282443938529029358764353685975939102520451031241967919109097875824728618346891661260619021073494169124522364110749155857440212417558741411468447009278204636120685916909011014719117720412288109754619912407735721229350422840049817731179271625603301966368359935699034274890540557361019856673211840111765642874810900858013708234934564384542442204057606102450075512049918172948952104035358481670240075625050090622453410074763772698955153841747592825770891408947881346019297839384371088876844995414232333994935372934801795173372613265046541702103609239202368655022270516897173998910603502415029454489827555661299930912644493477910662455502717419758457017725255734843772426698827825494353806255414266219198139976485208830248331791844854762898913121547437829868682275968061044100177496839004823174155540410186517591994863733611498254929361774165340365264586753363480336728679385249212744000745690752892044194699425557817533833120195771688004006982419136644211980643061402215263361553562539496066056687843676121524112700372059562612373169982155803731697511504843163333543860479139696716206379616255506366361627066515030324556867563402444240732030024403920260063830517167607220132739068432291851213803958122111314366277012436377694408545005747677290596869120795486633097293847147387305852530999573619529042229485983794205423903124196562825667977914199378486156073925530851113748830065640693566774963063985195728366991135832676921029748213425199202776506640182148503078289337263734551924029914876218947323346798874001085144377900039313254870117122556108754890939777404490863591131017202362669574259266887571590139502574251890052480763992811618765537657880813465536432925123810545909290746365741512759650829267630814906676720621989387341640533483087337561098731599403673980109957890317536003472255502043560909214200892328140760004097519307176433248915996029888094114268964833348161806687257886655831253885431684887002702863541112823920470972420400794494992220942343316502449987046146602500180425314755524895268406151116677243917762256733984252795481721864254545466238324959492026208797782733567005049079584961426310423448208407801313735127182004024675553772190039943836297270617013535123741078406557979590817482267466529291855772247304035853792190576157758549424563871677548303389286820899281414864744132215833462944149269520684771519965396549141628593624252507999044078586141996223658744143426212136260426742876220650943501045897524121419148642317020304993344422373095622592036187897089646698408578539713731848929383707642692953524332872445222487975328101133302930988259993737434588664676066907284362660538563477707423704507748304879025766609828603789512863945490787225212582212474377850786982049213789445447518207809663451103566070885709821560093698016681047823423273499363423376391362584920355400426830877159211472904654395085462013408385337996117410271061579599370215835577623518283314224538293070204160484306909406639101258539005226953699502522862113623211280049437791881692321913548577156976937716084478749612359238481097346840109513087798196805524355175863334423412989723106744972821977244758835844868321781012090355811030224342145786242709188423736045968406522146611347044133552270991375500937539463152697044170589316517327709798207222608149203062749412480717974175702740595981400945335526583194457332378709872710949953955551268202851788775942235983827431354993883974595379355049648010615350849023014812286882847277319302639988643421932130212041847208682662806162257949967102846940909150698797506299086979382610928638017840839362717460495888499363085098727956432013146660571768620081110523867832643265480361343906106583419565623218825456024345379545446322025089389314036756291126242857043769758335862671988404164366373895198542234859032492234113939412401107053329504380217210052206174811304263880092088197982126394786807346241949947740791867520326537568410539070172509545433164380377418918837138711702069675291120675970476717945928449992894063534622430052622986062903767666542676793797201392609592932275473362999792611647952668617364347608583580369884210263106755740746419321666539308515061982323467305087997797535536852766302920801241549539779780272557545034768236949487092098454764799704741575744991254067010006924593270709050836426697242358383329458708969795110179106125596590846992127134866479494624629006553046777294149330165202915831479578644341624265974353615151674215224044248845394787118425272492329895504389550065295744924824937342082128223537823300968730500506336929092869072024009628140570661149347467949362533377180954093988455259533298576670061325071272162852383268338846037652326168120093239980673965442501391147485403223591909663136815279032505337315411033412222313032510040295379610114614741337131794128035288965030050865452458536115253351654358752636137238954548915073890502405256228834959762925103019929860648490452291970343701980478143218861046221600777007742876474477138433942182334611978037381693214659738738531190701756820620863812057664194247229119049769058869719718450919609312738654419004105162735199893994359461732504868805812280527037837582056794722652783650048006239776528986098176101715767369160793575703617712677346509429163677920116205442250995511730921269877100031948535568898896676011542805217259799553694406712400571097547537273655972427977564901412049132360492947486569354022297883655621609752217289515433636762419069310909024545123344054462074360506678444978777161423489001538844296271441812637304040935697312884212728017428454217607036770341245694568582792573409650968483394231625201052468642550084696448577792946162865174377721360818110095727292327777475098890888054358372387937017971500156641780815440033618125305945209054536182125566435424625100581342494395375606324856776953123107706472301486316518792289439138893911477355069795655408677717015082129409988340298358536293023422448108255681456810072085271118748407761521288535085750710870906898211579023852979934382872066428039084727282860961109536090924967268609846369832959487471630894042183937293483913712448333437241040744338784435308567710044369044260841211473105931829246690635119386337238664967032448673878915970440479991219038024390005210906626382713854195322965563268625850185965763149996891682987605530207154213870491116301112957323340126287466363914750900398237932425914175551314455091082345522171793558277805556727037227943759968530713035770607621170450388564508582764646263173915615018475947075665230045781103662011256964274307009104143721816103224920811611606999656362357541749975058915589905321960175281467430937156948804174469873416972234693717540308380541023831471493843963015296975129793868981508292255863583639707917972685022545334511669884387521957951897519074394560727872966026236526411824893675230133680114136985796487471411485873838054245063522951783719676672221550179712686387862591037226420687627539331599959294702923320783821824380544763652573874591070068512107283474581346078434018040256476188027958374005917936917554929591900591861426101264339584702323218118986968468077308268521810521274745525941401068394831120038268097484058698855708616518660774071575859647760024559221085306477844061313879495766022828521425887168191965159568559193516024421782668856686807753686342340649561537698121089131713060937684546908592692810787466625003044530517688803600995241521131640423061246838912406824568730194126039650414091702160603938713411556126134910684951910850852680011199717555182157681492971955814013687766355582533654879348576724381974017931203845762515069966694669735077092147613369922604637945810824257069865979249868791818667950747630985635281725393246777238116770487978111610246180137289483800337613949928718171139832208292428704170917738257007377577924146786890869264603935679003444511807867692317154247162114381512513980475817376878413401718031443596333854137418075998651888405206752094558633195848317121984954050279567743667648069058705069959625774114138383496897486753850948716602243049259309934740255450091472452843751698220565310715440159283310760711372150451997678205788776788804037422761773140922281125236635107199794905217502741318087473955117754465726036568548013987252993878416205874542283530665776556181841275480993260653645998568770099955615673712762154043706728019259935731510140868984071758373140006235512448758381501028703146328833369335731933609536122530630879390385496999231301352274373850867339378829126357754680264036762471762974563720713936132012444123807055716197534685584626507616040448522465354025331999933133111832101478351177069113595504099573925261938685864355948179217868175991148652264987816244740480849131127936167360525878133196989588914292765714135880648833653170734948180839095609944702273158940095042720686445034410638446611839170606375114670469144896847761428959979472726018888462639252453598980150076144927889508612768689619442151255255358857335069075281006937475823670135398763988909726376792043672094200179363061519618277439807365971123872873744998963641533514360114263054352705934090120496369350704381261556828022683885791094851022934406476973505793724507845436997607870175142153789078850265876881299873010441892790281803511915200346575573274546971695184521830520457352156286082479108153292514750553283994329330583808215180357862784730974157662383126137257087774155943948902601673554299484203415711550749177023067791363150710057066528907100003081729202018330562256098768953841685453095347222589465303456882362870311090030775536166218782746388824375842979959122645603674552903945852613722297144353736862480430099138270206543215268207090945403720889497895280677340494614490711448240066509714850239374031354452310034970420015630943586580425553619770326566459217462991037593473312689279829016579678914446111237014388564004960827445095006726076892711503449006748796024492774281516357436258034596834085649571763747107336959259498789056004063438494331091026962199757829538729088915369151272688116739667420685662695383507522354544360876953139238948372085142336732371145724058532584975875739338683577104382758174168774642929756281745946519233831979632396848059090117024360052936933623607955918851670891806468706327720809389878267001123930235120392023693444777980292690300798492352779882072900036205287126721341454347864115002772747073600885777934521134157745091032568874035418239166101250304889745571713075196988708873919724735831649722831749617648830895840933672973301858130994058132517597701796093222916247481562272538403386362708022258401515110795440677855861845253014019994456891559650384920019312851405680970757377194716906367225642781030387321896953652451290087932640951790323496701908129167713129124233009895421783826266144229605441525987368495526666788236382594633451597186458717622167122862899200645926571786249948440987188092255060351588635097817961360185992288408985515221827145444390355051065525066678380371834467707703649984857584478567710068576405687247521935087820458686313946792711169494976713519285833841175377150679453229973094406298435074991726234301225858882603549765467208120669883438251126531694437151092720093048933794362245523384945109205479210647857962200162252560111514683001197137007645378409821851394688577422827229063746307496782542701907964032326059244596032455588699515747266201264286359711305525572450279913048328426149757233080658930020405120957613886118119697712515705101294566402457863496920324520398280765465229643694458256889764519788128107335822758075748938595765276702923891263314505126394749796780287379068099417921726967960508857684542652414756748534238837792562077163261082255523806431163722024848971304100335352440249152256266819268752625098183786229644220430163135915777455533413995014055978878644574248294488212427018463930008904200589848273609480006955526541935681103130761460715922092513948151326141371406185942118587708888319677802788936064486522629577985606491461450096289998733733036978615450826315672367015674984961497033995607675112014845111310988067304562616466629329079917608495331831638180564303522287274108596844088385385679403837473886252871467350105589059497421322662354732101392369415354170323606066662169054055572187125781745197709190343391944279464730895921987904887177531477913783963326114474483294183761051665850821327142963681007336761703783021963029184016491044923269012276496575360173421491109984311017810793942606298933104216259972111942206126618413013207055489588360488044523983128432548500396040251043529046681854527570331365195464107463021408271949625448827851215574327929992386288407718800463063253513076453227034530476826103217973144501988029336847573943621800851507407545284154297230550889669735775873790982554904756319644381500676073184761787266896799581244709442137249944870277072350877214781289345855748200236453780886676994149245670705544103122738844851314005386377459510772025275732510451800950798095234469408619416350113033807533793066825240746123671649062141576340956593344653645701527750830386629176252885278812508236816861637894209852359899751604808708209724972578041413790929917315236654179601289404173010566233299172474520677218024588546822272731549674306191733905374795823423555872935566588648333282764672326209390736155001976265543063682227836866462806603602736452969213305371393504220666929435204140688494561806063657493067248032646382390285474896648539758438556217958897737014534398073591923056303134536473469792341628987131452290777685739977985005795266041598134430997443350873103458398954404046425642447775082978126633248590926619028436113389218302583962564253467149006573063580686972471318879261946121122000520958582089585321191172966838146849088843382034192569771994508073240139737729224160239570082693135336131462438043075341936120440440104346887619535984373020647562914144194607998357083158657482146441574617562412491500118158077028166341590777110480534628200306512888025016949264671181499299262214255414994765414463554428648513683678802101001586338578762658062391223891183321009998789474789450617512800197883591351671998029744744315469542027175717848661493718373446192374043046889792085067261613351968398228221076470139697696581778578354679304091670293498182727493244315427058543327953958352548067148532338591256089138718345161271637363382522626865954515017729966929108771543198889465803255589614547229183373575051384926465532336318646007735227460102562002568425018336057660557989339492068624217287607521642472798778523107882264060188196358843278339565166655269171865043739229144422486874840956270543486911522690643029001658778368709998340153702416810267529468836675736727904200118716145155374093920621201026875999744351508052996863334183373307259723647312911455148318573985326786622186529590134729260875805176192966270071951174079268394995589947158678230442222814944633072226797470800422210524103608171486312228930378029530034470489299501911618327327596427726968079426677918271627754087394958094382588926453509638071330207549569759322696065104318513016137061769702351455022451848474342849981035297614739380860881545156851226472201901952589018935175025116595136566267399647839172963222244385877262926527406979587442439060199356683434823726233143348673417696004209606211209475107276375671291889513712482483978411602623211616069220193323501382601665622220745613042648281354856002435797079853806777952493282624327151896646429082378016984563953948516810482776536200847247249112446754727660131184714400861572847356920903917012062395116216418654197960804440209697290135984520497603204882793976619605961611269822051264074853787148324454101451158740903341762545127072558468841957160929690772611606624385395050197324453688559047864458393972122256405976104583960744200727090565930674088390304225961934418412344042582849517808004685251509026617556010487390378932303745343620990981124258487568436546685240515178045367411444468852670392494877215598509912594625618329813437711749614729354941890830147854267025602836806308562617858720213650214372165043235776972611758516708451835587522716531376377900590246592794693909155568231321289905535391244018015314811636609437033973912685261244597045672156859974833015241964703648907253590642001792154337497251583764543915739170076773510869219932888833860707978581122424146440917260592940889879360902112126398617902836652228005134515597653839810280569744348504541484520114862308598043746525031390433501359213193717191645452528558636082237499001508145902896958954022300372804677911558736591770158816043505774049822152710699120951954385775036837073841402919797392648868898159050303139197749128039328087079094224552447309760649765316349005465821148871482525833591150536675421399050422841814588288056535989916637408444211924048368544914641497334459019247737223141686149371318826888653524165594443944015683998079260866707488802017458178374868718077562421497431863425585964165745536972130007608217062417605055735348826153197282286318984048132077833577573574713797352544617397915438996750790851940777317150208817203708294384080699366852353812515997270187747890283697685001803341503434803311003913722829697571731290910220017867413064571763054779704293591236459230269580234464401888506693321666544841871897118498754171125257393474087505325993262580426459666774548711142812062962403292814865781194953126759091356485261109657864022364630699311595213774252087831359931105428330597369973182307403032204366304201385152890401303081913948857394234186829195496941769371936604406771472714276187605062375911612792638510232907393776666222831491508687356260540611658610605144016529262748312459104091895027233720589250486903362047488630001317126727824483178052825892152867159307623284113281740274675738377104944702010088036389386596064154864601978799851645265478275223817563670017644069854650691276182763995601436312719731864793927736021318200891945898753897652753748703141321315045238482861428168194677610502994663394776884999304609123435097517848115091801933077332390126644701456445798697907893248945449385971486433828446037856295867702140565641872115404117184664347962823424936202190866530901342448607538050416822442513621310568575643739921146461240417153432075830088930077486559230298792910450392232673435989567174718088628658777074009376255177950397976211131094891584012983953071503014420072472435575485360699316031318092386865121322805405659756036995871428179123727475604138810995258406395183614387920430609724740333566579375930438588930608148687243087403574319517171289854977007961966325479794206337806696211552084539983806792141994501492280167734065125583790745688153332119410774940206477912426209013840759167307736600877423340732812352235723676399217611926873393109583316675005081863954428330285186410937084928641584091526097835066585269605157848496754885125450246091699103322065706335754535451841407033344034706038325164429035090296470768602230077387268170436595699276819048879190324474949463930077146860670604475661037132313661319575679151292094069621911555695343216658713433496624766639560792468754892993990687229240095266288695276840030025416136492023224529613037844929877243996376607654439136251598280578423797365924446122134476104836541391516195830146940192602556991298430704559340900786292684738889255159586354436142472201457855810550064330354243260142610677498862239872660806868578046437346078668031764237284857102475053305678648909590205356133712825987848351513865599357927687748567880252121437992392160627886705157693329964881955049637366142430586037484610470166089808523999217799429568322664681953837837519937596669791336438771867208201477215237463261233265285243506179368854987399998388818830549463405545495988949147002700429435911358317395723078794839561089956719880601412143867170354937142614461363408597116341058309922853475509229420664199658748525087885195997178777123035825336171326910060832002301122759060495353835242418647699489751099051700143583777399326447679945793912951768000699728136343768902849733670595936881796787053337074436908897506857832798786345970298115411294236983530057553723634042236415099790077176754301412992486197330343459039560377089926469657166495523741565016012776787939115525752002481992082989705050921087018961868650722238896506160570805781420132788371981168973310802892181652454555263895933599271028256309834729377623544187111934615745975720676533136440266246371263500636581790253437874813500631462369041368816677323631948790108190543905282496607304054798543681103550336498623893979526984983615531510218868175023744526682020397045546792937759186196119580686760210168217053967411809916975742498141821911113487255688573888678027754022960086871038685820402501433195242026286483449781615655530185431255161617369117573192182833076929441442129069260136918747096741552667176926812977114371548361567769441599130202244969637549878505399801448325224403754984990675322307264588974846153942222071119168595513776153703615586714306053954610123314751438814784921795913533922639041758704331921253855066872745584058430670105782159354651255135464256656312330791539773589352160146437657773803516724148402231429420748952063596161932522481101865541286655661347230944728933735287771645453647921687417875447807972425810002652436548744698746815008000543063959589652844965379225458833640313398386858452332796922816079907754814910450673955775064930867526749101598597763503171809297119567165275443623110880884165804008090880464809729963582313760854802808585834799607466103252675194947771097646571202929971870674402862012751166018043209398244076086955997193904756907889317338216419255959368604303145978791089138141609795941704682676637156156589939068567832780583846377126048338672368245638863195041962604910066399642746085062817664864636203228939180264830606026498765705759051544178879144911165064096513166108406877817329028260820225800521322529459949576063578739048936904016338135273811997761967704291653943724877500136989954446619703175958384778378085092723089187393174082626484845246066010549912777655668846134163532410814794554067136439345681213236076048289544917966796563895853690364042441183218265737044606442047064130777336165921035087671662315789677370893554903531998424494848448242453134060410005579121622735526213394031237070479949754706949647673782397700102654268135471905863898276215002173477787528778559825655773336583789591858135386004481059919787358990730047259543991587154659623891135622317908610866319757763660605670380906744875966073601188500078003616438076573170551308939558551629674823328419073676072980496908570202235593152229316431199590342766576507886055225990923886059693224795030615415597449535211438487684760537592129737702429449662617930844696286222100757273392932723756498207875104322508921990688379531099662993717754065521465501723384047610478644246371499811767314562559357127635954765819913398444332903941075090752089671439803770654230647758827418443872168276951571967868038057153923740058988855343532828943978517917838925768339679492878982490218266550778501038672827271150166420584441725524866131018474036690666470770561843680893214222394387841277363416329852306176641997899803871380935459222531265894868171569090648420466589717411088581095213438421976798572794286886496067199559358166629433402392811686099277200327409879371505221813957900726342629670656742692688819862354002181005781932504251679634152838302146578013161228251758578621216710319243016676658718999705218115792009488625619032492085280714646014905400558479694347799755609564570107233554875816599387793839693337797308626460525401028050946187058123272682672518774682768945892969269266955682562938253479671390801730636680847545744099632991287997062006715051170330120396711526691228157107265045286456069111516013564624318276665924493300249089104496615650065820369402822239048635187656974041989625001290472452640039253342590388651201598072778025278819583677168412193116621738282096778815171310598967523768710439605814567522077039453846570142689434854547130776181970231440866023170496323704170289139590223720653692222717249858808711126534704307248748049439412149427678888399018243591336517374555483466375190960180596873031527671970571591946435644340093300818649489937090005222417395505208939672406204080641023866551743226946036227427828590002357673926067862061518326739497747248323455679549929137740207878858979357614366655921146045232508886867586613938901958958373284329995240613551078884252403577596786316493399949300993329289485891842469400001482317562473008435212064253436184361682731625212042919929537424574578997889713491618491177305001904259153924351317283750340194808391522967577393504223566477792204497259910559030951460677487150862163135372596488744380388979727573447145693747317262495464493518221580628480541460332486644146945534487974532105139794029066991806113768628386181807376373670674334625051582114231149446465227338988770326878097789045585727766604183257658187658860886234139654028962273842170146041724697464219087752070421440573598449125141321721463373002122153637212414533897039781224649920840117153613101694866843272609807515101356002227862108487109481639361110907573524399124049677171685295876877351971457945758823614417773677598235298592588059248785309029180557930171727481727981178713051926537016234043064119161813834898199288195676661237503207999568503287167681759224784363292605261418986702276084748932388816182349395541236519806159753364034286934987215404896385902714536699210823582767346627528044860777948747833981882636465857948553523144614207036599200846447404801940913040537192559248559427376841532381118550412333831126358666650475243238158873534108422712274766098354800694443984836861899390950914686257919530045680913172500194139548353089753276670766822204182084633865342807649274578364090328170580053463468257956830653851382179955623762951319095224786078343261339326514470869137837752905835618751901905177225125576791135538772702971739259691352445128181428300309709544519007487557561511572083697111719968010088084363300301273275634363362343689397928540970471135683131159602052833179093356395122445359806795803297009544409250365798102629592474519565017828297302474658615153550325584457706074712148432744912965377046981813176689971670392772698285898632990542865261883890315138075570001310131649666851399578451098498151769332473424925844826062135320779536882786577429648857961090571889333660245841054019443213444132824641590235827527717806236502384626121476680266815821850784745937083603247087833789079118438998053257587976949610587803435242899225594298315868646714112116682925805903008239662860647328326574419538014479108902149667785330529318105544779934355981399805491017205388525846432683788751742021212476147485492988797409316318228689652622656219432417375331900804408344115343047368559984335434640184545952224670052520920103329752790241101641343267984606872368788647962120951236437249219684782630133633970961186534178225009734560533174895811167567474461146791351059366722147565616811009026356451898939396722876146607497381365027470576439399458805174276367199460400754164991401568560725033366052671821163904972529054657591134276732602921511117793188931205397652477366216138213201015365642531017368908745598817546874018296193840423850715693479256774309907593554734172640353527409218101390447364747527783281078455010763334946220255244440520502516244788341391899700633593168796611213953861949015933860827090757153665763905767100932772208750373548561580271285888632581873025766106043157624773206940233348556779439047976817018071503296161722151677729969198079989941460735390164179415339011820996554928145750082451203813222386740507570996636664807207307822864003800576101563991138288477442649719197008313451220785433810708337742930387722739546179729157003197823808673405177019476592431590316683884909275528243894874707832959569403628356604855166043312812896290823295771254086025851586863865432736349772360830998165632402188994991364702820363351505851852422718835311293646992810308369698939937850441532548015668870187062445125192472316867260632844366105555815859351562579246192003223768563373393601269942627748960779224054256643785575488157991511138475395280151054696726502952570828170793494711988685824369641227661210567060720216116167851603916810203194558770907194511476258865912203913467068620977258499139965309427789292913232377817449948906016297112844146169046042088963092079928340530348597997090359819593946632572879785112874629997041618513831949361369687175923746515363564020999610524135523974078678740375885223338914809646283917734589648191083267501607298056586586018051067359155878346572867211791888244456777887459511424388534962540884303129766956501675586638433589419133439478206355881588219382065410747303627085584089175145408231776749150399771783859968700635966245059185945454343249869136497717532337428123354660037621584589417814433870606285223014203085947653715886067916917595055971677862545800785406374737975846631143603838818842254605430596020592283508589902590911297917646752755591904694962584419363834120769859940861481722516660332028129912477764317268918731321214111043596628184405557034492303159145230973417449453857029363832901443311050286018464899876139175537656281621504363415498695529232795997545325809951543861444632023298390387255655118623183642888068852459221719453285787502619433152058278719566442598478705363044804371524264705035187526113695190320919048482105681647842254819036016848024083927140557219652880411713561126990520556228996007876811982645535528046679836639402904862946204494000959061124685859967149422610138373875587604934531396340140338809492342782236734996354477567105334585053755533235662916987628816286583947341666677658194917671215773896212100869872087557590220102062531548256262867230667450552811810090317219996202084490734937344123198274800928271786054310886746934609940581657975315397611420974377087341084493665193229559537153287951503610062180842281097957838167275529107328777385429458877069372422702351845664071827906345872253195231506393340197664668092007357996013058851338681783523702444557669994953885524250442537493110737832175751325844401943737611039090000363218828984199826786258486375419075150052380860632791749828527777449247534802695738511653530732056162936224046656616133091463350603387674680043070523989328288798504020524883151057669707976822792523970742982161088213658748233254611821512660563179156218051951005659660583801674001313737823371354397495512845294702775406208474267583996488187644194773496129142800404109341077109845765870672192639621000794476698698151750205836803648118451018881155478618989607634156472403704750223219149456777831043579299787164591997546244510966117209500564147344308372699233414609879321402632260066436307134557594167721622902732360881201256840523205722955327835678629004194249312416288744567218057742302640608987675056160849850735031557681664558509536781976492528343440845354081895433387287648354417385577915685085364104501692410442890972724130561819920849192801288773474264299423853308869194498829810097840933194326995047949332679322496082431262364242967949197489394596861961335937874274280056692245914915528228136742789032177192810231429053682058868923952525350185487773478797318212642529045638010712553520157273897734256426861980543762389885354604202343777283343821636415053678901626422672140725636975847220315647077793520510890635048793463403924311337410908428043399886716920717563526212029950397212344812917114415782952328243918834460450524590478414209385707014982229500916855515150599700029012486428563785197613340067176125275306645930657844532112448738569529111062438138804799855375312648602371692939065678992528746709956356863970129726114546123757010480550595444035939857599964158964298693627025311773257819316155924290329545408717304331465107551347863148643101910744642383361564363494995057399759259244456164430614654740885617744675555577009234687817403759088791027179936059984284876849755130511604477556904399982650369445467713311137522931500902885120778589644927824041843318491020642403370826370737389802202803262370974959904804745922314845241840224721597416125594123746471852513361351259315231561625936509383018024218550758583256441503367429434944632162119888908183805248817071154905342966445853832872916831554071076963629572905101968635761359355793198200579295173508349382044819536511552902003659859363008870315899302284755716528615592124297107254661475037937474567791365570987036320948959549175367917090963717829663639908436971929296728172572952955576776287452168242979400781080138316836580258593015559404329680575613604169156938293945509512410064606517481170263603426012120222949926185187271295096495786169195848451712685247607428764638464592209769187834672217951368744724964829096120718163710100980648776356454927379761797532083554877977860287608592613995596273283023514809466438646056392252062915212991453531267330046344775749531013296769629204133830539180324310444473881847992606387802563875799381418568786846844885543971346967365232510349738285713867194170612559189670718294604991320339813355125156204839235156610233286466195864240577707052525873150135559818830148986872180467682708660919602974525376665333708935206292500366511402462964458456215262915437391385478092284693252525268952577405203265456955716344207935424794441954579552323131058252490840664506672657861817940653411825927985804051176787480288063173041555881133527481078837514436354391703412051329404266216567108386884533294652360574045944681629161439822626502350138321470368812761977016583208274721061546471527995761706398191842913466558820833199441267586631733638146761544794793995565470489650612250267315170036387742739854208265513185885420540764300186042751877607871301580240169080712059298166256491184439199210690080009775846774854167917031466372372583466564469305586652637437065357724380555922909377892452675375781658228512965128191508781900516838562862982205714993272212730361286890516173594153514929519912219251778015181773297337253468045248523566300792827206215267637579567613360157522108917581628683759941801588202500560160746777472183719565027623457954178800895528478963819842269632863136123799300739993590948198690369287424073380803036496679219286470645679977151016555977409631264205384834795104314014864685468331090858665000835917415883203813554595811700412258763200715487648664198015881018722577141031247380726347481904014459257100690820070844881310388604244532454885542666083724119205600250807055795887563169659661963037850958408988683573312822395208108600840071481880457582890240605134147408587209444470996200473669539132933910117045770559404557521469829695114191736724655389110870533962703427491249574217740307297805159219320042911782030711846997927380806801975080114062630574132797279222145989407058910388038845898783446849151183284424206853322420096941188801707144677050081170620695793033541059186140384774213387375747484603789543774504662965654161757302205004923844454401400643264071200157766921284784667319260457414510108840673731578696497943989901053561890065671981522870415301325200607015440013827014753852395749886942662126148919194303982929916944015208364072190010446291272966239263043974326280688616263061246280689447627810687125734447879290294923781724775251917366118862869489013024906245413010892703031250686493209976939380712090982328555540416848534581846703417814362848613576203190474144053920979307293745408091052421468187721782885950950862606257022287250973984970518344444854151878358760711109675882579870543877686154415485459376875025675321728277703747870580948545229792218984863941585460979316222135440352801096195515865304013641190998556933478303695059775990076729394928091554693216909596595316347107624176278017353922838266145027038864531963021270002602491010232259602170571682530167869964401372053671240052400022764339264310700763144043956842406463394690969906861312697470170117391778645250813065553729683795062519119180236549868866588181691105543735666993440525605796734097936727271388183061198651723634312106582254311925122647205751516027604259100983961534026586052186197221822477999173764150462482785368739402075809673742845661472149341639312085961818151675973350750025917041868018028708904168855357885902286587017877818368194330436139858230550333017162506255907670020372782779231791543044680804332900209362953287596286596103431501674508751237341589997703214949820710305748307238315230767670774153787559250468037999179471577395797489441932931548608394995335942776848845683863176514979447079561681935286066074274393646550540153613413969556658078872182761607296695843012710835205616773469690466086621538066462566147319613132319630011721053492810802200842608639061663255442699999075185249652606001005993444096332700929254904546291812105885889009936981189859261433045742445045517460579851230304560500379864614061563566891357128789915838275201729108931507457048716768593246359740656633554656445311549635359365802843622488568884161057412123723870197453064246705749024113583016817580883950852318733369931731244197051622405624357915362917349241851509609938709543435013032429616083761163799254741363675344666238819257949245875025277653777193801160265679414617802820525643478972083071844850736486852265745004918223673620768118986454604862550297810187049541357649669513869514564895129928903520554532427167692149578900878626916378104280319545949658141665985213031622719565935919430282153094667560086854821650660674186160019364630200666318650449144769266426259741086139739758730249973988330211740977278165548436134100252806552723501716247656515772907070800500376169927873271161501090350676217065712339682168188476738390411753360633381942602891899655062388957470523502808989182886845620616761403492525345119491580668197566045835306405401927782810945817635932053855645443239680681179226238806693069765339529514745394257065272401181698102524992302711472647518612026992783725449129659955333257731166924990372095430912141469842496895852009488800000677018253630780895264906408414274097158689649340486461942829607849771137637648434003585419788243309431307261007325422995903926807810782077924247678688972761209598380686923451352208720119628769065127344100156020693838387472339291935126675810914575919904085832593010029219279162205907999317263042465734144682420315773860565125454288714531826116060288709671443594798227457220081481231724086342972120123694893026378357560522707648876635099517733192883755907016846090415173227768624960693751804563169811187360130222082114759081525800320655237747513010840438673977453689374666819264327638801423306609187775831656673526208970782221294366726602384032579511558356525807019008297787536602763485146055651418159234291574269987446386069214461207451911520329614415541664941752767467161477120386635785497991328018575925866466874759654703812758251176481665061898849122928323850419366854091676919870656811789980514441559461007485776465540451430229650007812880932898332954230987984988976177796696103988535471894653362439366357302281385090210611395755238614184940372820022989720426944243431200012728026335311403333570278648038954307482884024479603730298187531312445826299261478926330124494061660671685766270794305230356507200070176218012735838372017116083261995499676468112825291489998777871860302398673226862723647594396804031820418976295153321418530313716057804931606395364570134378368940798615773766434654337296112009120553163651888566626271683889703373862163457874400030817824381576515505796173925070695627791685216254726704892597890502460942929582713818522327444134164864511271699589919470630352006266895760371399987212469813779837352663571162850294920410350805347984018809742633506849857931245232019123578806312638419249367760521138786938481590220490312297984339225662032702975419467357384869726425482466388804788413467033365632416608261565246720641112530556126790096883674418051498652100344113486314904911736799543808537260248357587698244761917523321695922129490243484843444514762915610350174859898143598272302985861065337509408052676898358981575868023815826524725471354625029916739402690872068592749802186806818329746711696438048431677353922764767148955873751650755388989051294995207869543346037967604927723607660011999184526547911355358623090124196365462883078378603666179620023829387374968827513668265958290917328656355321749512271074436524979428977236527470