| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584 | "use strict";/*** @vue/shared v3.4.21* (c) 2018-present Yuxi (Evan) You and Vue contributors* @license MIT**/function makeMap(str, expectsLowerCase) {  const set2 = new Set(str.split(","));  return expectsLowerCase ? (val) => set2.has(val.toLowerCase()) : (val) => set2.has(val);}const EMPTY_OBJ = Object.freeze({});const EMPTY_ARR = Object.freeze([]);const NOOP = () => {};const NO = () => false;const isOn = (key) => key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // uppercase letter(key.charCodeAt(2) > 122 || key.charCodeAt(2) < 97);const isModelListener = (key) => key.startsWith("onUpdate:");const extend$2 = Object.assign;const remove = (arr, el) => {  const i = arr.indexOf(el);  if (i > -1) {    arr.splice(i, 1);  }};const hasOwnProperty$2 = Object.prototype.hasOwnProperty;const hasOwn = (val, key) => hasOwnProperty$2.call(val, key);const isArray$2 = Array.isArray;const isMap = (val) => toTypeString(val) === "[object Map]";const isSet = (val) => toTypeString(val) === "[object Set]";const isFunction$2 = (val) => typeof val === "function";const isString$2 = (val) => typeof val === "string";const isSymbol = (val) => typeof val === "symbol";const isObject$2 = (val) => val !== null && typeof val === "object";const isPromise = (val) => {  return (isObject$2(val) || isFunction$2(val)) && isFunction$2(val.then) && isFunction$2(val.catch);};const objectToString = Object.prototype.toString;const toTypeString = (value) => objectToString.call(value);const toRawType = (value) => {  return toTypeString(value).slice(8, -1);};const isPlainObject$1 = (val) => toTypeString(val) === "[object Object]";const isIntegerKey = (key) => isString$2(key) && key !== "NaN" && key[0] !== "-" && "" + parseInt(key, 10) === key;const isReservedProp = /* @__PURE__ */ makeMap(  // the leading comma is intentional so empty string "" is also included  ",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted");const isBuiltInDirective = /* @__PURE__ */ makeMap(  "bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo");const cacheStringFunction = (fn) => {  const cache = /* @__PURE__ */ Object.create(null);  return (str) => {    const hit = cache[str];    return hit || (cache[str] = fn(str));  };};const camelizeRE = /-(\w)/g;const camelize = cacheStringFunction((str) => {  return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : "");});const hyphenateRE = /\B([A-Z])/g;const hyphenate = cacheStringFunction(  (str) => str.replace(hyphenateRE, "-$1").toLowerCase());const capitalize = cacheStringFunction((str) => {  return str.charAt(0).toUpperCase() + str.slice(1);});const toHandlerKey = cacheStringFunction((str) => {  const s = str ? `on${capitalize(str)}` : ``;  return s;});const hasChanged = (value, oldValue) => !Object.is(value, oldValue);const invokeArrayFns$1 = (fns, arg) => {  for (let i = 0; i < fns.length; i++) {    fns[i](arg);  }};const def = (obj, key, value) => {  Object.defineProperty(obj, key, {    configurable: true,    enumerable: false,    value  });};const looseToNumber = (val) => {  const n = parseFloat(val);  return isNaN(n) ? val : n;};const toDisplayString = (val) => {  return isString$2(val) ? val : val == null ? "" : isArray$2(val) || isObject$2(val) && (val.toString === objectToString || !isFunction$2(val.toString)) ? JSON.stringify(val, replacer, 2) : String(val);};const replacer = (_key, val) => {  if (val && val.__v_isRef) {    return replacer(_key, val.value);  } else if (isMap(val)) {    return {      [`Map(${val.size})`]: [...val.entries()].reduce(        (entries, [key, val2], i) => {          entries[stringifySymbol(key, i) + " =>"] = val2;          return entries;        },        {}      )    };  } else if (isSet(val)) {    return {      [`Set(${val.size})`]: [...val.values()].map((v) => stringifySymbol(v))    };  } else if (isSymbol(val)) {    return stringifySymbol(val);  } else if (isObject$2(val) && !isArray$2(val) && !isPlainObject$1(val)) {    return String(val);  }  return val;};const stringifySymbol = (v, i = "") => {  var _a;  return isSymbol(v) ? `Symbol(${(_a = v.description) != null ? _a : i})` : v;};const LOCALE_ZH_HANS = "zh-Hans";const LOCALE_ZH_HANT = "zh-Hant";const LOCALE_EN = "en";const LOCALE_FR = "fr";const LOCALE_ES = "es";function include(str, parts) {  return !!parts.find((part) => str.indexOf(part) !== -1);}function startsWith(str, parts) {  return parts.find((part) => str.indexOf(part) === 0);}function normalizeLocale(locale, messages) {  if (!locale) {    return;  }  locale = locale.trim().replace(/_/g, "-");  if (messages && messages[locale]) {    return locale;  }  locale = locale.toLowerCase();  if (locale === "chinese") {    return LOCALE_ZH_HANS;  }  if (locale.indexOf("zh") === 0) {    if (locale.indexOf("-hans") > -1) {      return LOCALE_ZH_HANS;    }    if (locale.indexOf("-hant") > -1) {      return LOCALE_ZH_HANT;    }    if (include(locale, ["-tw", "-hk", "-mo", "-cht"])) {      return LOCALE_ZH_HANT;    }    return LOCALE_ZH_HANS;  }  let locales = [LOCALE_EN, LOCALE_FR, LOCALE_ES];  if (messages && Object.keys(messages).length > 0) {    locales = Object.keys(messages);  }  const lang = startsWith(locale, locales);  if (lang) {    return lang;  }}const SLOT_DEFAULT_NAME = "d";const ON_SHOW = "onShow";const ON_HIDE = "onHide";const ON_LAUNCH = "onLaunch";const ON_ERROR = "onError";const ON_THEME_CHANGE = "onThemeChange";const ON_PAGE_NOT_FOUND = "onPageNotFound";const ON_UNHANDLE_REJECTION = "onUnhandledRejection";const ON_EXIT = "onExit";const ON_LOAD = "onLoad";const ON_READY = "onReady";const ON_UNLOAD = "onUnload";const ON_INIT = "onInit";const ON_SAVE_EXIT_STATE = "onSaveExitState";const ON_RESIZE = "onResize";const ON_BACK_PRESS = "onBackPress";const ON_PAGE_SCROLL = "onPageScroll";const ON_TAB_ITEM_TAP = "onTabItemTap";const ON_REACH_BOTTOM = "onReachBottom";const ON_PULL_DOWN_REFRESH = "onPullDownRefresh";const ON_SHARE_TIMELINE = "onShareTimeline";const ON_SHARE_CHAT = "onShareChat";const ON_ADD_TO_FAVORITES = "onAddToFavorites";const ON_SHARE_APP_MESSAGE = "onShareAppMessage";const ON_NAVIGATION_BAR_BUTTON_TAP = "onNavigationBarButtonTap";const ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED = "onNavigationBarSearchInputClicked";const ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED = "onNavigationBarSearchInputChanged";const ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED = "onNavigationBarSearchInputConfirmed";const ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED = "onNavigationBarSearchInputFocusChanged";const VIRTUAL_HOST_STYLE = "virtualHostStyle";const VIRTUAL_HOST_CLASS = "virtualHostClass";const VIRTUAL_HOST_HIDDEN = "virtualHostHidden";const VIRTUAL_HOST_ID = "virtualHostId";function hasLeadingSlash(str) {  return str.indexOf("/") === 0;}function addLeadingSlash(str) {  return hasLeadingSlash(str) ? str : "/" + str;}const invokeArrayFns = (fns, arg) => {  let ret;  for (let i = 0; i < fns.length; i++) {    ret = fns[i](arg);  }  return ret;};function once(fn, ctx = null) {  let res;  return (...args) => {    if (fn) {      res = fn.apply(ctx, args);      fn = null;    }    return res;  };}function getValueByDataPath(obj, path) {  if (!isString$2(path)) {    return;  }  path = path.replace(/\[(\d+)\]/g, ".$1");  const parts = path.split(".");  let key = parts[0];  if (!obj) {    obj = {};  }  if (parts.length === 1) {    return obj[key];  }  return getValueByDataPath(obj[key], parts.slice(1).join("."));}function sortObject(obj) {  let sortObj = {};  if (isPlainObject$1(obj)) {    Object.keys(obj).sort().forEach((key) => {      const _key = key;      sortObj[_key] = obj[_key];    });  }  return !Object.keys(sortObj) ? obj : sortObj;}const customizeRE = /:/g;function customizeEvent(str) {  return camelize(str.replace(customizeRE, "-"));}const encode$3 = encodeURIComponent;function stringifyQuery(obj, encodeStr = encode$3) {  const res = obj ? Object.keys(obj).map((key) => {    let val = obj[key];    if (typeof val === void 0 || val === null) {      val = "";    } else if (isPlainObject$1(val)) {      val = JSON.stringify(val);    }    return encodeStr(key) + "=" + encodeStr(val);  }).filter((x) => x.length > 0).join("&") : null;  return res ? `?${res}` : "";}const PAGE_HOOKS = [  ON_INIT,  ON_LOAD,  ON_SHOW,  ON_HIDE,  ON_UNLOAD,  ON_BACK_PRESS,  ON_PAGE_SCROLL,  ON_TAB_ITEM_TAP,  ON_REACH_BOTTOM,  ON_PULL_DOWN_REFRESH,  ON_SHARE_TIMELINE,  ON_SHARE_APP_MESSAGE,  ON_SHARE_CHAT,  ON_ADD_TO_FAVORITES,  ON_SAVE_EXIT_STATE,  ON_NAVIGATION_BAR_BUTTON_TAP,  ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED,  ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED,  ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED,  ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED];function isRootHook(name) {  return PAGE_HOOKS.indexOf(name) > -1;}const UniLifecycleHooks = [  ON_SHOW,  ON_HIDE,  ON_LAUNCH,  ON_ERROR,  ON_THEME_CHANGE,  ON_PAGE_NOT_FOUND,  ON_UNHANDLE_REJECTION,  ON_EXIT,  ON_INIT,  ON_LOAD,  ON_READY,  ON_UNLOAD,  ON_RESIZE,  ON_BACK_PRESS,  ON_PAGE_SCROLL,  ON_TAB_ITEM_TAP,  ON_REACH_BOTTOM,  ON_PULL_DOWN_REFRESH,  ON_SHARE_TIMELINE,  ON_ADD_TO_FAVORITES,  ON_SHARE_APP_MESSAGE,  ON_SHARE_CHAT,  ON_SAVE_EXIT_STATE,  ON_NAVIGATION_BAR_BUTTON_TAP,  ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED,  ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED,  ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED,  ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED];const MINI_PROGRAM_PAGE_RUNTIME_HOOKS = /* @__PURE__ */ (() => {  return {    onPageScroll: 1,    onShareAppMessage: 1 << 1,    onShareTimeline: 1 << 2  };})();function isUniLifecycleHook(name, value, checkType = true) {  if (checkType && !isFunction$2(value)) {    return false;  }  if (UniLifecycleHooks.indexOf(name) > -1) {    return true;  } else if (name.indexOf("on") === 0) {    return true;  }  return false;}let vueApp;const createVueAppHooks = [];function onCreateVueApp(hook) {  if (vueApp) {    return hook(vueApp);  }  createVueAppHooks.push(hook);}function invokeCreateVueAppHook(app) {  vueApp = app;  createVueAppHooks.forEach((hook) => hook(app));}const invokeCreateErrorHandler = once((app, createErrorHandler2) => {  return createErrorHandler2(app);});const E = function() {};E.prototype = {  _id: 1,  on: function(name, callback, ctx) {    var e = this.e || (this.e = {});    (e[name] || (e[name] = [])).push({      fn: callback,      ctx,      _id: this._id    });    return this._id++;  },  once: function(name, callback, ctx) {    var self2 = this;    function listener() {      self2.off(name, listener);      callback.apply(ctx, arguments);    }    listener._ = callback;    return this.on(name, listener, ctx);  },  emit: function(name) {    var data = [].slice.call(arguments, 1);    var evtArr = ((this.e || (this.e = {}))[name] || []).slice();    var i = 0;    var len = evtArr.length;    for (i; i < len; i++) {      evtArr[i].fn.apply(evtArr[i].ctx, data);    }    return this;  },  off: function(name, event) {    var e = this.e || (this.e = {});    var evts = e[name];    var liveEvents = [];    if (evts && event) {      for (var i = evts.length - 1; i >= 0; i--) {        if (evts[i].fn === event || evts[i].fn._ === event || evts[i]._id === event) {          evts.splice(i, 1);          break;        }      }      liveEvents = evts;    }    liveEvents.length ? e[name] = liveEvents : delete e[name];    return this;  }};var E$1 = E;/*** @dcloudio/uni-mp-vue v3.4.21* (c) 2018-present Yuxi (Evan) You and Vue contributors* @license MIT**/function warn$2(msg, ...args) {  console.warn(`[Vue warn] ${msg}`, ...args);}let activeEffectScope;class EffectScope {  constructor(detached = false) {    this.detached = detached;    this._active = true;    this.effects = [];    this.cleanups = [];    this.parent = activeEffectScope;    if (!detached && activeEffectScope) {      this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(        this      ) - 1;    }  }  get active() {    return this._active;  }  run(fn) {    if (this._active) {      const currentEffectScope = activeEffectScope;      try {        activeEffectScope = this;        return fn();      } finally {        activeEffectScope = currentEffectScope;      }    } else {      warn$2(`cannot run an inactive effect scope.`);    }  }  /**   * This should only be called on non-detached scopes   * @internal   */  on() {    activeEffectScope = this;  }  /**   * This should only be called on non-detached scopes   * @internal   */  off() {    activeEffectScope = this.parent;  }  stop(fromParent) {    if (this._active) {      let i, l;      for (i = 0, l = this.effects.length; i < l; i++) {        this.effects[i].stop();      }      for (i = 0, l = this.cleanups.length; i < l; i++) {        this.cleanups[i]();      }      if (this.scopes) {        for (i = 0, l = this.scopes.length; i < l; i++) {          this.scopes[i].stop(true);        }      }      if (!this.detached && this.parent && !fromParent) {        const last = this.parent.scopes.pop();        if (last && last !== this) {          this.parent.scopes[this.index] = last;          last.index = this.index;        }      }      this.parent = void 0;      this._active = false;    }  }}function recordEffectScope(effect2, scope = activeEffectScope) {  if (scope && scope.active) {    scope.effects.push(effect2);  }}function getCurrentScope() {  return activeEffectScope;}let activeEffect;class ReactiveEffect {  constructor(fn, trigger2, scheduler, scope) {    this.fn = fn;    this.trigger = trigger2;    this.scheduler = scheduler;    this.active = true;    this.deps = [];    this._dirtyLevel = 4;    this._trackId = 0;    this._runnings = 0;    this._shouldSchedule = false;    this._depsLength = 0;    recordEffectScope(this, scope);  }  get dirty() {    if (this._dirtyLevel === 2 || this._dirtyLevel === 3) {      this._dirtyLevel = 1;      pauseTracking();      for (let i = 0; i < this._depsLength; i++) {        const dep = this.deps[i];        if (dep.computed) {          triggerComputed(dep.computed);          if (this._dirtyLevel >= 4) {            break;          }        }      }      if (this._dirtyLevel === 1) {        this._dirtyLevel = 0;      }      resetTracking();    }    return this._dirtyLevel >= 4;  }  set dirty(v) {    this._dirtyLevel = v ? 4 : 0;  }  run() {    this._dirtyLevel = 0;    if (!this.active) {      return this.fn();    }    let lastShouldTrack = shouldTrack;    let lastEffect = activeEffect;    try {      shouldTrack = true;      activeEffect = this;      this._runnings++;      preCleanupEffect(this);      return this.fn();    } finally {      postCleanupEffect(this);      this._runnings--;      activeEffect = lastEffect;      shouldTrack = lastShouldTrack;    }  }  stop() {    var _a;    if (this.active) {      preCleanupEffect(this);      postCleanupEffect(this);      (_a = this.onStop) == null ? void 0 : _a.call(this);      this.active = false;    }  }}function triggerComputed(computed2) {  return computed2.value;}function preCleanupEffect(effect2) {  effect2._trackId++;  effect2._depsLength = 0;}function postCleanupEffect(effect2) {  if (effect2.deps.length > effect2._depsLength) {    for (let i = effect2._depsLength; i < effect2.deps.length; i++) {      cleanupDepEffect(effect2.deps[i], effect2);    }    effect2.deps.length = effect2._depsLength;  }}function cleanupDepEffect(dep, effect2) {  const trackId = dep.get(effect2);  if (trackId !== void 0 && effect2._trackId !== trackId) {    dep.delete(effect2);    if (dep.size === 0) {      dep.cleanup();    }  }}let shouldTrack = true;let pauseScheduleStack = 0;const trackStack = [];function pauseTracking() {  trackStack.push(shouldTrack);  shouldTrack = false;}function resetTracking() {  const last = trackStack.pop();  shouldTrack = last === void 0 ? true : last;}function pauseScheduling() {  pauseScheduleStack++;}function resetScheduling() {  pauseScheduleStack--;  while (!pauseScheduleStack && queueEffectSchedulers.length) {    queueEffectSchedulers.shift()();  }}function trackEffect(effect2, dep, debuggerEventExtraInfo) {  var _a;  if (dep.get(effect2) !== effect2._trackId) {    dep.set(effect2, effect2._trackId);    const oldDep = effect2.deps[effect2._depsLength];    if (oldDep !== dep) {      if (oldDep) {        cleanupDepEffect(oldDep, effect2);      }      effect2.deps[effect2._depsLength++] = dep;    } else {      effect2._depsLength++;    }    {      (_a = effect2.onTrack) == null ? void 0 : _a.call(effect2, extend$2({ effect: effect2 }, debuggerEventExtraInfo));    }  }}const queueEffectSchedulers = [];function triggerEffects(dep, dirtyLevel, debuggerEventExtraInfo) {  var _a;  pauseScheduling();  for (const effect2 of dep.keys()) {    let tracking;    if (effect2._dirtyLevel < dirtyLevel && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {      effect2._shouldSchedule || (effect2._shouldSchedule = effect2._dirtyLevel === 0);      effect2._dirtyLevel = dirtyLevel;    }    if (effect2._shouldSchedule && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {      {        (_a = effect2.onTrigger) == null ? void 0 : _a.call(effect2, extend$2({ effect: effect2 }, debuggerEventExtraInfo));      }      effect2.trigger();      if ((!effect2._runnings || effect2.allowRecurse) && effect2._dirtyLevel !== 2) {        effect2._shouldSchedule = false;        if (effect2.scheduler) {          queueEffectSchedulers.push(effect2.scheduler);        }      }    }  }  resetScheduling();}const createDep = (cleanup, computed2) => {  const dep = /* @__PURE__ */ new Map();  dep.cleanup = cleanup;  dep.computed = computed2;  return dep;};const targetMap = /* @__PURE__ */ new WeakMap();const ITERATE_KEY = Symbol("iterate");const MAP_KEY_ITERATE_KEY = Symbol("Map key iterate");function track(target, type, key) {  if (shouldTrack && activeEffect) {    let depsMap = targetMap.get(target);    if (!depsMap) {      targetMap.set(target, depsMap = /* @__PURE__ */ new Map());    }    let dep = depsMap.get(key);    if (!dep) {      depsMap.set(key, dep = createDep(() => depsMap.delete(key)));    }    trackEffect(      activeEffect,      dep,      {        target,        type,        key      }    );  }}function trigger(target, type, key, newValue, oldValue, oldTarget) {  const depsMap = targetMap.get(target);  if (!depsMap) {    return;  }  let deps = [];  if (type === "clear") {    deps = [...depsMap.values()];  } else if (key === "length" && isArray$2(target)) {    const newLength = Number(newValue);    depsMap.forEach((dep, key2) => {      if (key2 === "length" || !isSymbol(key2) && key2 >= newLength) {        deps.push(dep);      }    });  } else {    if (key !== void 0) {      deps.push(depsMap.get(key));    }    switch (type) {      case "add":        if (!isArray$2(target)) {          deps.push(depsMap.get(ITERATE_KEY));          if (isMap(target)) {            deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));          }        } else if (isIntegerKey(key)) {          deps.push(depsMap.get("length"));        }        break;      case "delete":        if (!isArray$2(target)) {          deps.push(depsMap.get(ITERATE_KEY));          if (isMap(target)) {            deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));          }        }        break;      case "set":        if (isMap(target)) {          deps.push(depsMap.get(ITERATE_KEY));        }        break;    }  }  pauseScheduling();  for (const dep of deps) {    if (dep) {      triggerEffects(        dep,        4,        {          target,          type,          key,          newValue,          oldValue,          oldTarget        }      );    }  }  resetScheduling();}const isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`);const builtInSymbols = new Set(  /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol));const arrayInstrumentations = /* @__PURE__ */ createArrayInstrumentations();function createArrayInstrumentations() {  const instrumentations = {};  ["includes", "indexOf", "lastIndexOf"].forEach((key) => {    instrumentations[key] = function(...args) {      const arr = toRaw(this);      for (let i = 0, l = this.length; i < l; i++) {        track(arr, "get", i + "");      }      const res = arr[key](...args);      if (res === -1 || res === false) {        return arr[key](...args.map(toRaw));      } else {        return res;      }    };  });  ["push", "pop", "shift", "unshift", "splice"].forEach((key) => {    instrumentations[key] = function(...args) {      pauseTracking();      pauseScheduling();      const res = toRaw(this)[key].apply(this, args);      resetScheduling();      resetTracking();      return res;    };  });  return instrumentations;}function hasOwnProperty$1(key) {  const obj = toRaw(this);  track(obj, "has", key);  return obj.hasOwnProperty(key);}class BaseReactiveHandler {  constructor(_isReadonly = false, _isShallow = false) {    this._isReadonly = _isReadonly;    this._isShallow = _isShallow;  }  get(target, key, receiver) {    const isReadonly2 = this._isReadonly, isShallow2 = this._isShallow;    if (key === "__v_isReactive") {      return !isReadonly2;    } else if (key === "__v_isReadonly") {      return isReadonly2;    } else if (key === "__v_isShallow") {      return isShallow2;    } else if (key === "__v_raw") {      if (receiver === (isReadonly2 ? isShallow2 ? shallowReadonlyMap : readonlyMap : isShallow2 ? shallowReactiveMap : reactiveMap).get(target) || // receiver is not the reactive proxy, but has the same prototype      // this means the reciever is a user proxy of the reactive proxy      Object.getPrototypeOf(target) === Object.getPrototypeOf(receiver)) {        return target;      }      return;    }    const targetIsArray = isArray$2(target);    if (!isReadonly2) {      if (targetIsArray && hasOwn(arrayInstrumentations, key)) {        return Reflect.get(arrayInstrumentations, key, receiver);      }      if (key === "hasOwnProperty") {        return hasOwnProperty$1;      }    }    const res = Reflect.get(target, key, receiver);    if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {      return res;    }    if (!isReadonly2) {      track(target, "get", key);    }    if (isShallow2) {      return res;    }    if (isRef(res)) {      return targetIsArray && isIntegerKey(key) ? res : res.value;    }    if (isObject$2(res)) {      return isReadonly2 ? readonly(res) : reactive(res);    }    return res;  }}class MutableReactiveHandler extends BaseReactiveHandler {  constructor(isShallow2 = false) {    super(false, isShallow2);  }  set(target, key, value, receiver) {    let oldValue = target[key];    if (!this._isShallow) {      const isOldValueReadonly = isReadonly(oldValue);      if (!isShallow(value) && !isReadonly(value)) {        oldValue = toRaw(oldValue);        value = toRaw(value);      }      if (!isArray$2(target) && isRef(oldValue) && !isRef(value)) {        if (isOldValueReadonly) {          return false;        } else {          oldValue.value = value;          return true;        }      }    }    const hadKey = isArray$2(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key);    const result = Reflect.set(target, key, value, receiver);    if (target === toRaw(receiver)) {      if (!hadKey) {        trigger(target, "add", key, value);      } else if (hasChanged(value, oldValue)) {        trigger(target, "set", key, value, oldValue);      }    }    return result;  }  deleteProperty(target, key) {    const hadKey = hasOwn(target, key);    const oldValue = target[key];    const result = Reflect.deleteProperty(target, key);    if (result && hadKey) {      trigger(target, "delete", key, void 0, oldValue);    }    return result;  }  has(target, key) {    const result = Reflect.has(target, key);    if (!isSymbol(key) || !builtInSymbols.has(key)) {      track(target, "has", key);    }    return result;  }  ownKeys(target) {    track(      target,      "iterate",      isArray$2(target) ? "length" : ITERATE_KEY    );    return Reflect.ownKeys(target);  }}class ReadonlyReactiveHandler extends BaseReactiveHandler {  constructor(isShallow2 = false) {    super(true, isShallow2);  }  set(target, key) {    {      warn$2(        `Set operation on key "${String(key)}" failed: target is readonly.`,        target      );    }    return true;  }  deleteProperty(target, key) {    {      warn$2(        `Delete operation on key "${String(key)}" failed: target is readonly.`,        target      );    }    return true;  }}const mutableHandlers = /* @__PURE__ */ new MutableReactiveHandler();const readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler();const shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler(  true);const shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(true);const toShallow = (value) => value;const getProto = (v) => Reflect.getPrototypeOf(v);function get(target, key, isReadonly2 = false, isShallow2 = false) {  target = target["__v_raw"];  const rawTarget = toRaw(target);  const rawKey = toRaw(key);  if (!isReadonly2) {    if (hasChanged(key, rawKey)) {      track(rawTarget, "get", key);    }    track(rawTarget, "get", rawKey);  }  const { has: has2 } = getProto(rawTarget);  const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;  if (has2.call(rawTarget, key)) {    return wrap(target.get(key));  } else if (has2.call(rawTarget, rawKey)) {    return wrap(target.get(rawKey));  } else if (target !== rawTarget) {    target.get(key);  }}function has$1(key, isReadonly2 = false) {  const target = this["__v_raw"];  const rawTarget = toRaw(target);  const rawKey = toRaw(key);  if (!isReadonly2) {    if (hasChanged(key, rawKey)) {      track(rawTarget, "has", key);    }    track(rawTarget, "has", rawKey);  }  return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey);}function size(target, isReadonly2 = false) {  target = target["__v_raw"];  !isReadonly2 && track(toRaw(target), "iterate", ITERATE_KEY);  return Reflect.get(target, "size", target);}function add(value) {  value = toRaw(value);  const target = toRaw(this);  const proto = getProto(target);  const hadKey = proto.has.call(target, value);  if (!hadKey) {    target.add(value);    trigger(target, "add", value, value);  }  return this;}function set$1(key, value) {  value = toRaw(value);  const target = toRaw(this);  const { has: has2, get: get2 } = getProto(target);  let hadKey = has2.call(target, key);  if (!hadKey) {    key = toRaw(key);    hadKey = has2.call(target, key);  } else {    checkIdentityKeys(target, has2, key);  }  const oldValue = get2.call(target, key);  target.set(key, value);  if (!hadKey) {    trigger(target, "add", key, value);  } else if (hasChanged(value, oldValue)) {    trigger(target, "set", key, value, oldValue);  }  return this;}function deleteEntry(key) {  const target = toRaw(this);  const { has: has2, get: get2 } = getProto(target);  let hadKey = has2.call(target, key);  if (!hadKey) {    key = toRaw(key);    hadKey = has2.call(target, key);  } else {    checkIdentityKeys(target, has2, key);  }  const oldValue = get2 ? get2.call(target, key) : void 0;  const result = target.delete(key);  if (hadKey) {    trigger(target, "delete", key, void 0, oldValue);  }  return result;}function clear() {  const target = toRaw(this);  const hadItems = target.size !== 0;  const oldTarget = isMap(target) ? new Map(target) : new Set(target);  const result = target.clear();  if (hadItems) {    trigger(target, "clear", void 0, void 0, oldTarget);  }  return result;}function createForEach(isReadonly2, isShallow2) {  return function forEach2(callback, thisArg) {    const observed = this;    const target = observed["__v_raw"];    const rawTarget = toRaw(target);    const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;    !isReadonly2 && track(rawTarget, "iterate", ITERATE_KEY);    return target.forEach((value, key) => {      return callback.call(thisArg, wrap(value), wrap(key), observed);    });  };}function createIterableMethod(method, isReadonly2, isShallow2) {  return function(...args) {    const target = this["__v_raw"];    const rawTarget = toRaw(target);    const targetIsMap = isMap(rawTarget);    const isPair = method === "entries" || method === Symbol.iterator && targetIsMap;    const isKeyOnly = method === "keys" && targetIsMap;    const innerIterator = target[method](...args);    const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;    !isReadonly2 && track(      rawTarget,      "iterate",      isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY    );    return {      // iterator protocol      next() {        const { value, done } = innerIterator.next();        return done ? { value, done } : {          value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),          done        };      },      // iterable protocol      [Symbol.iterator]() {        return this;      }    };  };}function createReadonlyMethod(type) {  return function(...args) {    {      const key = args[0] ? `on key "${args[0]}" ` : ``;      warn$2(        `${capitalize(type)} operation ${key}failed: target is readonly.`,        toRaw(this)      );    }    return type === "delete" ? false : type === "clear" ? void 0 : this;  };}function createInstrumentations() {  const mutableInstrumentations2 = {    get(key) {      return get(this, key);    },    get size() {      return size(this);    },    has: has$1,    add,    set: set$1,    delete: deleteEntry,    clear,    forEach: createForEach(false, false)  };  const shallowInstrumentations2 = {    get(key) {      return get(this, key, false, true);    },    get size() {      return size(this);    },    has: has$1,    add,    set: set$1,    delete: deleteEntry,    clear,    forEach: createForEach(false, true)  };  const readonlyInstrumentations2 = {    get(key) {      return get(this, key, true);    },    get size() {      return size(this, true);    },    has(key) {      return has$1.call(this, key, true);    },    add: createReadonlyMethod("add"),    set: createReadonlyMethod("set"),    delete: createReadonlyMethod("delete"),    clear: createReadonlyMethod("clear"),    forEach: createForEach(true, false)  };  const shallowReadonlyInstrumentations2 = {    get(key) {      return get(this, key, true, true);    },    get size() {      return size(this, true);    },    has(key) {      return has$1.call(this, key, true);    },    add: createReadonlyMethod("add"),    set: createReadonlyMethod("set"),    delete: createReadonlyMethod("delete"),    clear: createReadonlyMethod("clear"),    forEach: createForEach(true, true)  };  const iteratorMethods = [    "keys",    "values",    "entries",    Symbol.iterator  ];  iteratorMethods.forEach((method) => {    mutableInstrumentations2[method] = createIterableMethod(method, false, false);    readonlyInstrumentations2[method] = createIterableMethod(method, true, false);    shallowInstrumentations2[method] = createIterableMethod(method, false, true);    shallowReadonlyInstrumentations2[method] = createIterableMethod(      method,      true,      true    );  });  return [    mutableInstrumentations2,    readonlyInstrumentations2,    shallowInstrumentations2,    shallowReadonlyInstrumentations2  ];}const [  mutableInstrumentations,  readonlyInstrumentations,  shallowInstrumentations,  shallowReadonlyInstrumentations] = /* @__PURE__ */ createInstrumentations();function createInstrumentationGetter(isReadonly2, shallow) {  const instrumentations = shallow ? isReadonly2 ? shallowReadonlyInstrumentations : shallowInstrumentations : isReadonly2 ? readonlyInstrumentations : mutableInstrumentations;  return (target, key, receiver) => {    if (key === "__v_isReactive") {      return !isReadonly2;    } else if (key === "__v_isReadonly") {      return isReadonly2;    } else if (key === "__v_raw") {      return target;    }    return Reflect.get(      hasOwn(instrumentations, key) && key in target ? instrumentations : target,      key,      receiver    );  };}const mutableCollectionHandlers = {  get: /* @__PURE__ */ createInstrumentationGetter(false, false)};const shallowCollectionHandlers = {  get: /* @__PURE__ */ createInstrumentationGetter(false, true)};const readonlyCollectionHandlers = {  get: /* @__PURE__ */ createInstrumentationGetter(true, false)};const shallowReadonlyCollectionHandlers = {  get: /* @__PURE__ */ createInstrumentationGetter(true, true)};function checkIdentityKeys(target, has2, key) {  const rawKey = toRaw(key);  if (rawKey !== key && has2.call(target, rawKey)) {    const type = toRawType(target);    warn$2(      `Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`    );  }}const reactiveMap = /* @__PURE__ */ new WeakMap();const shallowReactiveMap = /* @__PURE__ */ new WeakMap();const readonlyMap = /* @__PURE__ */ new WeakMap();const shallowReadonlyMap = /* @__PURE__ */ new WeakMap();function targetTypeMap(rawType) {  switch (rawType) {    case "Object":    case "Array":      return 1;    case "Map":    case "Set":    case "WeakMap":    case "WeakSet":      return 2;    default:      return 0;  }}function getTargetType(value) {  return value["__v_skip"] || !Object.isExtensible(value) ? 0 : targetTypeMap(toRawType(value));}function reactive(target) {  if (isReadonly(target)) {    return target;  }  return createReactiveObject(    target,    false,    mutableHandlers,    mutableCollectionHandlers,    reactiveMap  );}function shallowReactive(target) {  return createReactiveObject(    target,    false,    shallowReactiveHandlers,    shallowCollectionHandlers,    shallowReactiveMap  );}function readonly(target) {  return createReactiveObject(    target,    true,    readonlyHandlers,    readonlyCollectionHandlers,    readonlyMap  );}function shallowReadonly(target) {  return createReactiveObject(    target,    true,    shallowReadonlyHandlers,    shallowReadonlyCollectionHandlers,    shallowReadonlyMap  );}function createReactiveObject(target, isReadonly2, baseHandlers, collectionHandlers, proxyMap) {  if (!isObject$2(target)) {    {      warn$2(`value cannot be made reactive: ${String(target)}`);    }    return target;  }  if (target["__v_raw"] && !(isReadonly2 && target["__v_isReactive"])) {    return target;  }  const existingProxy = proxyMap.get(target);  if (existingProxy) {    return existingProxy;  }  const targetType = getTargetType(target);  if (targetType === 0) {    return target;  }  const proxy = new Proxy(    target,    targetType === 2 ? collectionHandlers : baseHandlers  );  proxyMap.set(target, proxy);  return proxy;}function isReactive(value) {  if (isReadonly(value)) {    return isReactive(value["__v_raw"]);  }  return !!(value && value["__v_isReactive"]);}function isReadonly(value) {  return !!(value && value["__v_isReadonly"]);}function isShallow(value) {  return !!(value && value["__v_isShallow"]);}function isProxy(value) {  return isReactive(value) || isReadonly(value);}function toRaw(observed) {  const raw = observed && observed["__v_raw"];  return raw ? toRaw(raw) : observed;}function markRaw(value) {  if (Object.isExtensible(value)) {    def(value, "__v_skip", true);  }  return value;}const toReactive = (value) => isObject$2(value) ? reactive(value) : value;const toReadonly = (value) => isObject$2(value) ? readonly(value) : value;const COMPUTED_SIDE_EFFECT_WARN = `Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided.  Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free`;class ComputedRefImpl {  constructor(getter, _setter, isReadonly2, isSSR) {    this.getter = getter;    this._setter = _setter;    this.dep = void 0;    this.__v_isRef = true;    this["__v_isReadonly"] = false;    this.effect = new ReactiveEffect(      () => getter(this._value),      () => triggerRefValue(        this,        this.effect._dirtyLevel === 2 ? 2 : 3      )    );    this.effect.computed = this;    this.effect.active = this._cacheable = !isSSR;    this["__v_isReadonly"] = isReadonly2;  }  get value() {    const self2 = toRaw(this);    if ((!self2._cacheable || self2.effect.dirty) && hasChanged(self2._value, self2._value = self2.effect.run())) {      triggerRefValue(self2, 4);    }    trackRefValue(self2);    if (self2.effect._dirtyLevel >= 2) {      if (this._warnRecursive) {        warn$2(COMPUTED_SIDE_EFFECT_WARN, `getter: `, this.getter);      }      triggerRefValue(self2, 2);    }    return self2._value;  }  set value(newValue) {    this._setter(newValue);  }  // #region polyfill _dirty for backward compatibility third party code for Vue <= 3.3.x  get _dirty() {    return this.effect.dirty;  }  set _dirty(v) {    this.effect.dirty = v;  }  // #endregion}function computed$1(getterOrOptions, debugOptions, isSSR = false) {  let getter;  let setter;  const onlyGetter = isFunction$2(getterOrOptions);  if (onlyGetter) {    getter = getterOrOptions;    setter = () => {      warn$2("Write operation failed: computed value is readonly");    };  } else {    getter = getterOrOptions.get;    setter = getterOrOptions.set;  }  const cRef = new ComputedRefImpl(getter, setter, onlyGetter || !setter, isSSR);  if (debugOptions && !isSSR) {    cRef.effect.onTrack = debugOptions.onTrack;    cRef.effect.onTrigger = debugOptions.onTrigger;  }  return cRef;}function trackRefValue(ref2) {  var _a;  if (shouldTrack && activeEffect) {    ref2 = toRaw(ref2);    trackEffect(      activeEffect,      (_a = ref2.dep) != null ? _a : ref2.dep = createDep(        () => ref2.dep = void 0,        ref2 instanceof ComputedRefImpl ? ref2 : void 0      ),      {        target: ref2,        type: "get",        key: "value"      }    );  }}function triggerRefValue(ref2, dirtyLevel = 4, newVal) {  ref2 = toRaw(ref2);  const dep = ref2.dep;  if (dep) {    triggerEffects(      dep,      dirtyLevel,      {        target: ref2,        type: "set",        key: "value",        newValue: newVal      }    );  }}function isRef(r2) {  return !!(r2 && r2.__v_isRef === true);}function ref(value) {  return createRef(value, false);}function createRef(rawValue, shallow) {  if (isRef(rawValue)) {    return rawValue;  }  return new RefImpl(rawValue, shallow);}class RefImpl {  constructor(value, __v_isShallow) {    this.__v_isShallow = __v_isShallow;    this.dep = void 0;    this.__v_isRef = true;    this._rawValue = __v_isShallow ? value : toRaw(value);    this._value = __v_isShallow ? value : toReactive(value);  }  get value() {    trackRefValue(this);    return this._value;  }  set value(newVal) {    const useDirectValue = this.__v_isShallow || isShallow(newVal) || isReadonly(newVal);    newVal = useDirectValue ? newVal : toRaw(newVal);    if (hasChanged(newVal, this._rawValue)) {      this._rawValue = newVal;      this._value = useDirectValue ? newVal : toReactive(newVal);      triggerRefValue(this, 4, newVal);    }  }}function unref(ref2) {  return isRef(ref2) ? ref2.value : ref2;}const shallowUnwrapHandlers = {  get: (target, key, receiver) => unref(Reflect.get(target, key, receiver)),  set: (target, key, value, receiver) => {    const oldValue = target[key];    if (isRef(oldValue) && !isRef(value)) {      oldValue.value = value;      return true;    } else {      return Reflect.set(target, key, value, receiver);    }  }};function proxyRefs(objectWithRefs) {  return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers);}const stack = [];function pushWarningContext(vnode) {  stack.push(vnode);}function popWarningContext() {  stack.pop();}function warn$1(msg, ...args) {  pauseTracking();  const instance = stack.length ? stack[stack.length - 1].component : null;  const appWarnHandler = instance && instance.appContext.config.warnHandler;  const trace = getComponentTrace();  if (appWarnHandler) {    callWithErrorHandling(      appWarnHandler,      instance,      11,      [        msg + args.map((a) => {          var _a, _b;          return (_b = (_a = a.toString) == null ? void 0 : _a.call(a)) != null ? _b : JSON.stringify(a);        }).join(""),        instance && instance.proxy,        trace.map(          ({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>`        ).join("\n"),        trace      ]    );  } else {    const warnArgs = [`[Vue warn]: ${msg}`, ...args];    if (trace.length && // avoid spamming console during tests    true) {      warnArgs.push(``, ...formatTrace(trace));    }    console.warn(...warnArgs);  }  resetTracking();}function getComponentTrace() {  let currentVNode = stack[stack.length - 1];  if (!currentVNode) {    return [];  }  const normalizedStack = [];  while (currentVNode) {    const last = normalizedStack[0];    if (last && last.vnode === currentVNode) {      last.recurseCount++;    } else {      normalizedStack.push({        vnode: currentVNode,        recurseCount: 0      });    }    const parentInstance = currentVNode.component && currentVNode.component.parent;    currentVNode = parentInstance && parentInstance.vnode;  }  return normalizedStack;}function formatTrace(trace) {  const logs = [];  trace.forEach((entry, i) => {    logs.push(...i === 0 ? [] : [``], ...formatTraceEntry(entry));  });  return logs;}function formatTraceEntry({ vnode, recurseCount }) {  const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``;  const isRoot = vnode.component ? vnode.component.parent == null : false;  const open = ` at <${formatComponentName(    vnode.component,    vnode.type,    isRoot  )}`;  const close = `>` + postfix;  return vnode.props ? [open, ...formatProps(vnode.props), close] : [open + close];}function formatProps(props) {  const res = [];  const keys = Object.keys(props);  keys.slice(0, 3).forEach((key) => {    res.push(...formatProp(key, props[key]));  });  if (keys.length > 3) {    res.push(` ...`);  }  return res;}function formatProp(key, value, raw) {  if (isString$2(value)) {    value = JSON.stringify(value);    return raw ? value : [`${key}=${value}`];  } else if (typeof value === "number" || typeof value === "boolean" || value == null) {    return raw ? value : [`${key}=${value}`];  } else if (isRef(value)) {    value = formatProp(key, toRaw(value.value), true);    return raw ? value : [`${key}=Ref<`, value, `>`];  } else if (isFunction$2(value)) {    return [`${key}=fn${value.name ? `<${value.name}>` : ``}`];  } else {    value = toRaw(value);    return raw ? value : [`${key}=`, value];  }}const ErrorTypeStrings = {  ["sp"]: "serverPrefetch hook",  ["bc"]: "beforeCreate hook",  ["c"]: "created hook",  ["bm"]: "beforeMount hook",  ["m"]: "mounted hook",  ["bu"]: "beforeUpdate hook",  ["u"]: "updated",  ["bum"]: "beforeUnmount hook",  ["um"]: "unmounted hook",  ["a"]: "activated hook",  ["da"]: "deactivated hook",  ["ec"]: "errorCaptured hook",  ["rtc"]: "renderTracked hook",  ["rtg"]: "renderTriggered hook",  [0]: "setup function",  [1]: "render function",  [2]: "watcher getter",  [3]: "watcher callback",  [4]: "watcher cleanup function",  [5]: "native event handler",  [6]: "component event handler",  [7]: "vnode hook",  [8]: "directive hook",  [9]: "transition hook",  [10]: "app errorHandler",  [11]: "app warnHandler",  [12]: "ref function",  [13]: "async component loader",  [14]: "scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core ."};function callWithErrorHandling(fn, instance, type, args) {  try {    return args ? fn(...args) : fn();  } catch (err) {    handleError(err, instance, type);  }}function callWithAsyncErrorHandling(fn, instance, type, args) {  if (isFunction$2(fn)) {    const res = callWithErrorHandling(fn, instance, type, args);    if (res && isPromise(res)) {      res.catch((err) => {        handleError(err, instance, type);      });    }    return res;  }  const values = [];  for (let i = 0; i < fn.length; i++) {    values.push(callWithAsyncErrorHandling(fn[i], instance, type, args));  }  return values;}function handleError(err, instance, type, throwInDev = true) {  const contextVNode = instance ? instance.vnode : null;  if (instance) {    let cur = instance.parent;    const exposedInstance = instance.proxy;    const errorInfo = ErrorTypeStrings[type] || type;    while (cur) {      const errorCapturedHooks = cur.ec;      if (errorCapturedHooks) {        for (let i = 0; i < errorCapturedHooks.length; i++) {          if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) {            return;          }        }      }      cur = cur.parent;    }    const appErrorHandler = instance.appContext.config.errorHandler;    if (appErrorHandler) {      callWithErrorHandling(        appErrorHandler,        null,        10,        [err, exposedInstance, errorInfo]      );      return;    }  }  logError(err, type, contextVNode, throwInDev);}function logError(err, type, contextVNode, throwInDev = true) {  {    const info = ErrorTypeStrings[type] || type;    if (contextVNode) {      pushWarningContext(contextVNode);    }    warn$1(`Unhandled error${info ? ` during execution of ${info}` : ``}`);    if (contextVNode) {      popWarningContext();    }    if (throwInDev) {      console.error(err);    } else {      console.error(err);    }  }}let isFlushing = false;let isFlushPending = false;const queue$1 = [];let flushIndex = 0;const pendingPostFlushCbs = [];let activePostFlushCbs = null;let postFlushIndex = 0;const resolvedPromise = /* @__PURE__ */ Promise.resolve();let currentFlushPromise = null;const RECURSION_LIMIT = 100;function nextTick$1(fn) {  const p2 = currentFlushPromise || resolvedPromise;  return fn ? p2.then(this ? fn.bind(this) : fn) : p2;}function findInsertionIndex(id) {  let start = flushIndex + 1;  let end = queue$1.length;  while (start < end) {    const middle = start + end >>> 1;    const middleJob = queue$1[middle];    const middleJobId = getId(middleJob);    if (middleJobId < id || middleJobId === id && middleJob.pre) {      start = middle + 1;    } else {      end = middle;    }  }  return start;}function queueJob(job) {  if (!queue$1.length || !queue$1.includes(    job,    isFlushing && job.allowRecurse ? flushIndex + 1 : flushIndex  )) {    if (job.id == null) {      queue$1.push(job);    } else {      queue$1.splice(findInsertionIndex(job.id), 0, job);    }    queueFlush();  }}function queueFlush() {  if (!isFlushing && !isFlushPending) {    isFlushPending = true;    currentFlushPromise = resolvedPromise.then(flushJobs);  }}function hasQueueJob(job) {  return queue$1.indexOf(job) > -1;}function invalidateJob(job) {  const i = queue$1.indexOf(job);  if (i > flushIndex) {    queue$1.splice(i, 1);  }}function queuePostFlushCb(cb) {  if (!isArray$2(cb)) {    if (!activePostFlushCbs || !activePostFlushCbs.includes(      cb,      cb.allowRecurse ? postFlushIndex + 1 : postFlushIndex    )) {      pendingPostFlushCbs.push(cb);    }  } else {    pendingPostFlushCbs.push(...cb);  }  queueFlush();}function flushPreFlushCbs(instance, seen, i = isFlushing ? flushIndex + 1 : 0) {  {    seen = seen || /* @__PURE__ */ new Map();  }  for (; i < queue$1.length; i++) {    const cb = queue$1[i];    if (cb && cb.pre) {      if (checkRecursiveUpdates(seen, cb)) {        continue;      }      queue$1.splice(i, 1);      i--;      cb();    }  }}function flushPostFlushCbs(seen) {  if (pendingPostFlushCbs.length) {    const deduped = [...new Set(pendingPostFlushCbs)].sort(      (a, b) => getId(a) - getId(b)    );    pendingPostFlushCbs.length = 0;    if (activePostFlushCbs) {      activePostFlushCbs.push(...deduped);      return;    }    activePostFlushCbs = deduped;    {      seen = seen || /* @__PURE__ */ new Map();    }    for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) {      if (checkRecursiveUpdates(seen, activePostFlushCbs[postFlushIndex])) {        continue;      }      activePostFlushCbs[postFlushIndex]();    }    activePostFlushCbs = null;    postFlushIndex = 0;  }}const getId = (job) => job.id == null ? Infinity : job.id;const comparator = (a, b) => {  const diff2 = getId(a) - getId(b);  if (diff2 === 0) {    if (a.pre && !b.pre)      return -1;    if (b.pre && !a.pre)      return 1;  }  return diff2;};function flushJobs(seen) {  isFlushPending = false;  isFlushing = true;  {    seen = seen || /* @__PURE__ */ new Map();  }  queue$1.sort(comparator);  const check = (job) => checkRecursiveUpdates(seen, job);  try {    for (flushIndex = 0; flushIndex < queue$1.length; flushIndex++) {      const job = queue$1[flushIndex];      if (job && job.active !== false) {        if (check(job)) {          continue;        }        callWithErrorHandling(job, null, 14);      }    }  } finally {    flushIndex = 0;    queue$1.length = 0;    flushPostFlushCbs(seen);    isFlushing = false;    currentFlushPromise = null;    if (queue$1.length || pendingPostFlushCbs.length) {      flushJobs(seen);    }  }}function checkRecursiveUpdates(seen, fn) {  if (!seen.has(fn)) {    seen.set(fn, 1);  } else {    const count = seen.get(fn);    if (count > RECURSION_LIMIT) {      const instance = fn.ownerInstance;      const componentName = instance && getComponentName(instance.type);      handleError(        `Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`,        null,        10      );      return true;    } else {      seen.set(fn, count + 1);    }  }}let devtools;let buffer = [];let devtoolsNotInstalled = false;function emit$1(event, ...args) {  if (devtools) {    devtools.emit(event, ...args);  } else if (!devtoolsNotInstalled) {    buffer.push({ event, args });  }}function setDevtoolsHook(hook, target) {  var _a, _b;  devtools = hook;  if (devtools) {    devtools.enabled = true;    buffer.forEach(({ event, args }) => devtools.emit(event, ...args));    buffer = [];  } else if (    // handle late devtools injection - only do this if we are in an actual    // browser environment to avoid the timer handle stalling test runner exit    // (#4815)    typeof window !== "undefined" && // some envs mock window but not fully    window.HTMLElement && // also exclude jsdom    !((_b = (_a = window.navigator) == null ? void 0 : _a.userAgent) == null ? void 0 : _b.includes("jsdom"))  ) {    const replay = target.__VUE_DEVTOOLS_HOOK_REPLAY__ = target.__VUE_DEVTOOLS_HOOK_REPLAY__ || [];    replay.push((newHook) => {      setDevtoolsHook(newHook, target);    });    setTimeout(() => {      if (!devtools) {        target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null;        devtoolsNotInstalled = true;        buffer = [];      }    }, 3e3);  } else {    devtoolsNotInstalled = true;    buffer = [];  }}function devtoolsInitApp(app, version2) {  emit$1("app:init", app, version2, {    Fragment,    Text,    Comment,    Static  });}const devtoolsComponentAdded = /* @__PURE__ */ createDevtoolsComponentHook(  "component:added"  /* COMPONENT_ADDED */);const devtoolsComponentUpdated = /* @__PURE__ */ createDevtoolsComponentHook(  "component:updated"  /* COMPONENT_UPDATED */);const _devtoolsComponentRemoved = /* @__PURE__ */ createDevtoolsComponentHook(  "component:removed"  /* COMPONENT_REMOVED */);const devtoolsComponentRemoved = (component) => {  if (devtools && typeof devtools.cleanupBuffer === "function" && // remove the component if it wasn't buffered  !devtools.cleanupBuffer(component)) {    _devtoolsComponentRemoved(component);  }};/*! #__NO_SIDE_EFFECTS__ */// @__NO_SIDE_EFFECTS__function createDevtoolsComponentHook(hook) {  return (component) => {    emit$1(      hook,      component.appContext.app,      component.uid,      // fixed by xxxxxx      // 为 0 是 App,无 parent 是 Page 指向 App      component.uid === 0 ? void 0 : component.parent ? component.parent.uid : 0,      component    );  };}const devtoolsPerfStart = /* @__PURE__ */ createDevtoolsPerformanceHook(  "perf:start"  /* PERFORMANCE_START */);const devtoolsPerfEnd = /* @__PURE__ */ createDevtoolsPerformanceHook(  "perf:end"  /* PERFORMANCE_END */);function createDevtoolsPerformanceHook(hook) {  return (component, type, time) => {    emit$1(hook, component.appContext.app, component.uid, component, type, time);  };}function devtoolsComponentEmit(component, event, params) {  emit$1(    "component:emit",    component.appContext.app,    component,    event,    params  );}function emit(instance, event, ...rawArgs) {  if (instance.isUnmounted)    return;  const props = instance.vnode.props || EMPTY_OBJ;  {    const {      emitsOptions,      propsOptions: [propsOptions]    } = instance;    if (emitsOptions) {      if (!(event in emitsOptions) && true) {        if (!propsOptions || !(toHandlerKey(event) in propsOptions)) {          warn$1(            `Component emitted event "${event}" but it is neither declared in the emits option nor as an "${toHandlerKey(event)}" prop.`          );        }      } else {        const validator2 = emitsOptions[event];        if (isFunction$2(validator2)) {          const isValid = validator2(...rawArgs);          if (!isValid) {            warn$1(              `Invalid event arguments: event validation failed for event "${event}".`            );          }        }      }    }  }  let args = rawArgs;  const isModelListener2 = event.startsWith("update:");  const modelArg = isModelListener2 && event.slice(7);  if (modelArg && modelArg in props) {    const modifiersKey = `${modelArg === "modelValue" ? "model" : modelArg}Modifiers`;    const { number, trim: trim2 } = props[modifiersKey] || EMPTY_OBJ;    if (trim2) {      args = rawArgs.map((a) => isString$2(a) ? a.trim() : a);    }    if (number) {      args = rawArgs.map(looseToNumber);    }  }  {    devtoolsComponentEmit(instance, event, args);  }  {    const lowerCaseEvent = event.toLowerCase();    if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) {      warn$1(        `Event "${lowerCaseEvent}" is emitted in component ${formatComponentName(          instance,          instance.type        )} but the handler is registered for "${event}". Note that HTML attributes are case-insensitive and you cannot use v-on to listen to camelCase events when using in-DOM templates. You should probably use "${hyphenate(          event        )}" instead of "${event}".`      );    }  }  let handlerName;  let handler = props[handlerName = toHandlerKey(event)] || // also try camelCase event handler (#2249)  props[handlerName = toHandlerKey(camelize(event))];  if (!handler && isModelListener2) {    handler = props[handlerName = toHandlerKey(hyphenate(event))];  }  if (handler) {    callWithAsyncErrorHandling(      handler,      instance,      6,      args    );  }  const onceHandler = props[handlerName + `Once`];  if (onceHandler) {    if (!instance.emitted) {      instance.emitted = {};    } else if (instance.emitted[handlerName]) {      return;    }    instance.emitted[handlerName] = true;    callWithAsyncErrorHandling(      onceHandler,      instance,      6,      args    );  }}function normalizeEmitsOptions(comp, appContext, asMixin = false) {  const cache = appContext.emitsCache;  const cached = cache.get(comp);  if (cached !== void 0) {    return cached;  }  const raw = comp.emits;  let normalized = {};  let hasExtends = false;  if (!isFunction$2(comp)) {    const extendEmits = (raw2) => {      const normalizedFromExtend = normalizeEmitsOptions(raw2, appContext, true);      if (normalizedFromExtend) {        hasExtends = true;        extend$2(normalized, normalizedFromExtend);      }    };    if (!asMixin && appContext.mixins.length) {      appContext.mixins.forEach(extendEmits);    }    if (comp.extends) {      extendEmits(comp.extends);    }    if (comp.mixins) {      comp.mixins.forEach(extendEmits);    }  }  if (!raw && !hasExtends) {    if (isObject$2(comp)) {      cache.set(comp, null);    }    return null;  }  if (isArray$2(raw)) {    raw.forEach((key) => normalized[key] = null);  } else {    extend$2(normalized, raw);  }  if (isObject$2(comp)) {    cache.set(comp, normalized);  }  return normalized;}function isEmitListener(options, key) {  if (!options || !isOn(key)) {    return false;  }  key = key.slice(2).replace(/Once$/, "");  return hasOwn(options, key[0].toLowerCase() + key.slice(1)) || hasOwn(options, hyphenate(key)) || hasOwn(options, key);}let currentRenderingInstance = null;function setCurrentRenderingInstance(instance) {  const prev = currentRenderingInstance;  currentRenderingInstance = instance;  instance && instance.type.__scopeId || null;  return prev;}const INITIAL_WATCHER_VALUE = {};function watch(source, cb, options) {  if (!isFunction$2(cb)) {    warn$1(      `\`watch(fn, options?)\` signature has been moved to a separate API. Use \`watchEffect(fn, options?)\` instead. \`watch\` now only supports \`watch(source, cb, options?) signature.`    );  }  return doWatch(source, cb, options);}function doWatch(source, cb, {  immediate,  deep,  flush,  once: once2,  onTrack,  onTrigger} = EMPTY_OBJ) {  if (cb && once2) {    const _cb = cb;    cb = (...args) => {      _cb(...args);      unwatch();    };  }  if (deep !== void 0 && typeof deep === "number") {    warn$1(      `watch() "deep" option with number value will be used as watch depth in future versions. Please use a boolean instead to avoid potential breakage.`    );  }  if (!cb) {    if (immediate !== void 0) {      warn$1(        `watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.`      );    }    if (deep !== void 0) {      warn$1(        `watch() "deep" option is only respected when using the watch(source, callback, options?) signature.`      );    }    if (once2 !== void 0) {      warn$1(        `watch() "once" option is only respected when using the watch(source, callback, options?) signature.`      );    }  }  const warnInvalidSource = (s2) => {    warn$1(      `Invalid watch source: `,      s2,      `A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.`    );  };  const instance = currentInstance;  const reactiveGetter = (source2) => deep === true ? source2 : (    // for deep: false, only traverse root-level properties    traverse(source2, deep === false ? 1 : void 0)  );  let getter;  let forceTrigger = false;  let isMultiSource = false;  if (isRef(source)) {    getter = () => source.value;    forceTrigger = isShallow(source);  } else if (isReactive(source)) {    getter = () => reactiveGetter(source);    forceTrigger = true;  } else if (isArray$2(source)) {    isMultiSource = true;    forceTrigger = source.some((s2) => isReactive(s2) || isShallow(s2));    getter = () => source.map((s2) => {      if (isRef(s2)) {        return s2.value;      } else if (isReactive(s2)) {        return reactiveGetter(s2);      } else if (isFunction$2(s2)) {        return callWithErrorHandling(s2, instance, 2);      } else {        warnInvalidSource(s2);      }    });  } else if (isFunction$2(source)) {    if (cb) {      getter = () => callWithErrorHandling(source, instance, 2);    } else {      getter = () => {        if (cleanup) {          cleanup();        }        return callWithAsyncErrorHandling(          source,          instance,          3,          [onCleanup]        );      };    }  } else {    getter = NOOP;    warnInvalidSource(source);  }  if (cb && deep) {    const baseGetter = getter;    getter = () => traverse(baseGetter());  }  let cleanup;  let onCleanup = (fn) => {    cleanup = effect2.onStop = () => {      callWithErrorHandling(fn, instance, 4);      cleanup = effect2.onStop = void 0;    };  };  let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;  const job = () => {    if (!effect2.active || !effect2.dirty) {      return;    }    if (cb) {      const newValue = effect2.run();      if (deep || forceTrigger || (isMultiSource ? newValue.some((v, i) => hasChanged(v, oldValue[i])) : hasChanged(newValue, oldValue)) || false) {        if (cleanup) {          cleanup();        }        callWithAsyncErrorHandling(cb, instance, 3, [          newValue,          // pass undefined as the old value when it's changed for the first time          oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue,          onCleanup        ]);        oldValue = newValue;      }    } else {      effect2.run();    }  };  job.allowRecurse = !!cb;  let scheduler;  if (flush === "sync") {    scheduler = job;  } else if (flush === "post") {    scheduler = () => queuePostRenderEffect$1(job, instance && instance.suspense);  } else {    job.pre = true;    if (instance)      job.id = instance.uid;    scheduler = () => queueJob(job);  }  const effect2 = new ReactiveEffect(getter, NOOP, scheduler);  const scope = getCurrentScope();  const unwatch = () => {    effect2.stop();    if (scope) {      remove(scope.effects, effect2);    }  };  {    effect2.onTrack = onTrack;    effect2.onTrigger = onTrigger;  }  if (cb) {    if (immediate) {      job();    } else {      oldValue = effect2.run();    }  } else if (flush === "post") {    queuePostRenderEffect$1(      effect2.run.bind(effect2),      instance && instance.suspense    );  } else {    effect2.run();  }  return unwatch;}function instanceWatch(source, value, options) {  const publicThis = this.proxy;  const getter = isString$2(source) ? source.includes(".") ? createPathGetter(publicThis, source) : () => publicThis[source] : source.bind(publicThis, publicThis);  let cb;  if (isFunction$2(value)) {    cb = value;  } else {    cb = value.handler;    options = value;  }  const reset = setCurrentInstance(this);  const res = doWatch(getter, cb.bind(publicThis), options);  reset();  return res;}function createPathGetter(ctx, path) {  const segments = path.split(".");  return () => {    let cur = ctx;    for (let i = 0; i < segments.length && cur; i++) {      cur = cur[segments[i]];    }    return cur;  };}function traverse(value, depth, currentDepth = 0, seen) {  if (!isObject$2(value) || value["__v_skip"]) {    return value;  }  if (depth && depth > 0) {    if (currentDepth >= depth) {      return value;    }    currentDepth++;  }  seen = seen || /* @__PURE__ */ new Set();  if (seen.has(value)) {    return value;  }  seen.add(value);  if (isRef(value)) {    traverse(value.value, depth, currentDepth, seen);  } else if (isArray$2(value)) {    for (let i = 0; i < value.length; i++) {      traverse(value[i], depth, currentDepth, seen);    }  } else if (isSet(value) || isMap(value)) {    value.forEach((v) => {      traverse(v, depth, currentDepth, seen);    });  } else if (isPlainObject$1(value)) {    for (const key in value) {      traverse(value[key], depth, currentDepth, seen);    }  }  return value;}function validateDirectiveName(name) {  if (isBuiltInDirective(name)) {    warn$1("Do not use built-in directive ids as custom directive id: " + name);  }}function createAppContext() {  return {    app: null,    config: {      isNativeTag: NO,      performance: false,      globalProperties: {},      optionMergeStrategies: {},      errorHandler: void 0,      warnHandler: void 0,      compilerOptions: {}    },    mixins: [],    components: {},    directives: {},    provides: /* @__PURE__ */ Object.create(null),    optionsCache: /* @__PURE__ */ new WeakMap(),    propsCache: /* @__PURE__ */ new WeakMap(),    emitsCache: /* @__PURE__ */ new WeakMap()  };}let uid$1 = 0;function createAppAPI(render, hydrate) {  return function createApp2(rootComponent, rootProps = null) {    if (!isFunction$2(rootComponent)) {      rootComponent = extend$2({}, rootComponent);    }    if (rootProps != null && !isObject$2(rootProps)) {      warn$1(`root props passed to app.mount() must be an object.`);      rootProps = null;    }    const context = createAppContext();    const installedPlugins = /* @__PURE__ */ new WeakSet();    const app = context.app = {      _uid: uid$1++,      _component: rootComponent,      _props: rootProps,      _container: null,      _context: context,      _instance: null,      version,      get config() {        return context.config;      },      set config(v) {        {          warn$1(            `app.config cannot be replaced. Modify individual options instead.`          );        }      },      use(plugin2, ...options) {        if (installedPlugins.has(plugin2)) {          warn$1(`Plugin has already been applied to target app.`);        } else if (plugin2 && isFunction$2(plugin2.install)) {          installedPlugins.add(plugin2);          plugin2.install(app, ...options);        } else if (isFunction$2(plugin2)) {          installedPlugins.add(plugin2);          plugin2(app, ...options);        } else {          warn$1(            `A plugin must either be a function or an object with an "install" function.`          );        }        return app;      },      mixin(mixin) {        {          if (!context.mixins.includes(mixin)) {            context.mixins.push(mixin);          } else {            warn$1(              "Mixin has already been applied to target app" + (mixin.name ? `: ${mixin.name}` : "")            );          }        }        return app;      },      component(name, component) {        {          validateComponentName(name, context.config);        }        if (!component) {          return context.components[name];        }        if (context.components[name]) {          warn$1(`Component "${name}" has already been registered in target app.`);        }        context.components[name] = component;        return app;      },      directive(name, directive) {        {          validateDirectiveName(name);        }        if (!directive) {          return context.directives[name];        }        if (context.directives[name]) {          warn$1(`Directive "${name}" has already been registered in target app.`);        }        context.directives[name] = directive;        return app;      },      // fixed by xxxxxx      mount() {      },      // fixed by xxxxxx      unmount() {      },      provide(key, value) {        if (key in context.provides) {          warn$1(            `App already provides property with key "${String(key)}". It will be overwritten with the new value.`          );        }        context.provides[key] = value;        return app;      },      runWithContext(fn) {        const lastApp = currentApp;        currentApp = app;        try {          return fn();        } finally {          currentApp = lastApp;        }      }    };    return app;  };}let currentApp = null;function provide(key, value) {  if (!currentInstance) {    {      warn$1(`provide() can only be used inside setup().`);    }  } else {    let provides = currentInstance.provides;    const parentProvides = currentInstance.parent && currentInstance.parent.provides;    if (parentProvides === provides) {      provides = currentInstance.provides = Object.create(parentProvides);    }    provides[key] = value;    if (currentInstance.type.mpType === "app") {      currentInstance.appContext.app.provide(key, value);    }  }}function inject(key, defaultValue, treatDefaultAsFactory = false) {  const instance = currentInstance || currentRenderingInstance;  if (instance || currentApp) {    const provides = instance ? instance.parent == null ? instance.vnode.appContext && instance.vnode.appContext.provides : instance.parent.provides : currentApp._context.provides;    if (provides && key in provides) {      return provides[key];    } else if (arguments.length > 1) {      return treatDefaultAsFactory && isFunction$2(defaultValue) ? defaultValue.call(instance && instance.proxy) : defaultValue;    } else {      warn$1(`injection "${String(key)}" not found.`);    }  } else {    warn$1(`inject() can only be used inside setup() or functional components.`);  }}const isKeepAlive = (vnode) => vnode.type.__isKeepAlive;function onActivated(hook, target) {  registerKeepAliveHook(hook, "a", target);}function onDeactivated(hook, target) {  registerKeepAliveHook(hook, "da", target);}function registerKeepAliveHook(hook, type, target = currentInstance) {  const wrappedHook = hook.__wdc || (hook.__wdc = () => {    let current = target;    while (current) {      if (current.isDeactivated) {        return;      }      current = current.parent;    }    return hook();  });  injectHook(type, wrappedHook, target);  if (target) {    let current = target.parent;    while (current && current.parent) {      if (isKeepAlive(current.parent.vnode)) {        injectToKeepAliveRoot(wrappedHook, type, target, current);      }      current = current.parent;    }  }}function injectToKeepAliveRoot(hook, type, target, keepAliveRoot) {  const injected = injectHook(    type,    hook,    keepAliveRoot,    true    /* prepend */  );  onUnmounted(() => {    remove(keepAliveRoot[type], injected);  }, target);}function injectHook(type, hook, target = currentInstance, prepend = false) {  if (target) {    if (isRootHook(type)) {      target = target.root;    }    const hooks = target[type] || (target[type] = []);    const wrappedHook = hook.__weh || (hook.__weh = (...args) => {      if (target.isUnmounted) {        return;      }      pauseTracking();      const reset = setCurrentInstance(target);      const res = callWithAsyncErrorHandling(hook, target, type, args);      reset();      resetTracking();      return res;    });    if (prepend) {      hooks.unshift(wrappedHook);    } else {      hooks.push(wrappedHook);    }    return wrappedHook;  } else {    const apiName = toHandlerKey(      (ErrorTypeStrings[type] || type.replace(/^on/, "")).replace(/ hook$/, "")    );    warn$1(      `${apiName} is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup().`    );  }}const createHook = (lifecycle) => (hook, target = currentInstance) => (  // post-create lifecycle registrations are noops during SSR (except for serverPrefetch)  (!isInSSRComponentSetup || lifecycle === "sp") && injectHook(lifecycle, (...args) => hook(...args), target));const onBeforeMount = createHook("bm");const onMounted = createHook("m");const onBeforeUpdate = createHook("bu");const onUpdated = createHook("u");const onBeforeUnmount = createHook("bum");const onUnmounted = createHook("um");const onServerPrefetch = createHook("sp");const onRenderTriggered = createHook(  "rtg");const onRenderTracked = createHook(  "rtc");function onErrorCaptured(hook, target = currentInstance) {  injectHook("ec", hook, target);}const getPublicInstance = (i) => {  if (!i)    return null;  if (isStatefulComponent(i))    return getExposeProxy(i) || i.proxy;  return getPublicInstance(i.parent);};const publicPropertiesMap = (  // Move PURE marker to new line to workaround compiler discarding it  // due to type annotation  /* @__PURE__ */ extend$2(/* @__PURE__ */ Object.create(null), {    $: (i) => i,    // fixed by xxxxxx vue-i18n 在 dev 模式,访问了 $el,故模拟一个假的    // $el: i => i.vnode.el,    $el: (i) => i.__$el || (i.__$el = {}),    $data: (i) => i.data,    $props: (i) => shallowReadonly(i.props),    $attrs: (i) => shallowReadonly(i.attrs),    $slots: (i) => shallowReadonly(i.slots),    $refs: (i) => shallowReadonly(i.refs),    $parent: (i) => getPublicInstance(i.parent),    $root: (i) => getPublicInstance(i.root),    $emit: (i) => i.emit,    $options: (i) => resolveMergedOptions(i),    $forceUpdate: (i) => i.f || (i.f = () => {      i.effect.dirty = true;      queueJob(i.update);    }),    // $nextTick: i => i.n || (i.n = nextTick.bind(i.proxy!)),// fixed by xxxxxx    $watch: (i) => instanceWatch.bind(i)  }));const isReservedPrefix = (key) => key === "_" || key === "$";const hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key);const PublicInstanceProxyHandlers = {  get({ _: instance }, key) {    const { ctx, setupState, data, props, accessCache, type, appContext } = instance;    if (key === "__isVue") {      return true;    }    let normalizedProps;    if (key[0] !== "$") {      const n2 = accessCache[key];      if (n2 !== void 0) {        switch (n2) {          case 1:            return setupState[key];          case 2:            return data[key];          case 4:            return ctx[key];          case 3:            return props[key];        }      } else if (hasSetupBinding(setupState, key)) {        accessCache[key] = 1;        return setupState[key];      } else if (data !== EMPTY_OBJ && hasOwn(data, key)) {        accessCache[key] = 2;        return data[key];      } else if (        // only cache other properties when instance has declared (thus stable)        // props        (normalizedProps = instance.propsOptions[0]) && hasOwn(normalizedProps, key)      ) {        accessCache[key] = 3;        return props[key];      } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {        accessCache[key] = 4;        return ctx[key];      } else if (shouldCacheAccess) {        accessCache[key] = 0;      }    }    const publicGetter = publicPropertiesMap[key];    let cssModule, globalProperties;    if (publicGetter) {      if (key === "$attrs") {        track(instance, "get", key);      } else if (key === "$slots") {        track(instance, "get", key);      }      return publicGetter(instance);    } else if (      // css module (injected by vue-loader)      (cssModule = type.__cssModules) && (cssModule = cssModule[key])    ) {      return cssModule;    } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {      accessCache[key] = 4;      return ctx[key];    } else if (      // global properties      globalProperties = appContext.config.globalProperties, hasOwn(globalProperties, key)    ) {      {        return globalProperties[key];      }    } else if (currentRenderingInstance && (!isString$2(key) || // #1091 avoid internal isRef/isVNode checks on component instance leading    // to infinite warning loop    key.indexOf("__v") !== 0)) {      if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn(data, key)) {        warn$1(          `Property ${JSON.stringify(            key          )} must be accessed via $data because it starts with a reserved character ("$" or "_") and is not proxied on the render context.`        );      } else if (instance === currentRenderingInstance) {        warn$1(          `Property ${JSON.stringify(key)} was accessed during render but is not defined on instance.`        );      }    }  },  set({ _: instance }, key, value) {    const { data, setupState, ctx } = instance;    if (hasSetupBinding(setupState, key)) {      setupState[key] = value;      return true;    } else if (setupState.__isScriptSetup && hasOwn(setupState, key)) {      warn$1(`Cannot mutate <script setup> binding "${key}" from Options API.`);      return false;    } else if (data !== EMPTY_OBJ && hasOwn(data, key)) {      data[key] = value;      return true;    } else if (hasOwn(instance.props, key)) {      warn$1(`Attempting to mutate prop "${key}". Props are readonly.`);      return false;    }    if (key[0] === "$" && key.slice(1) in instance) {      warn$1(        `Attempting to mutate public property "${key}". Properties starting with $ are reserved and readonly.`      );      return false;    } else {      if (key in instance.appContext.config.globalProperties) {        Object.defineProperty(ctx, key, {          enumerable: true,          configurable: true,          value        });      } else {        ctx[key] = value;      }    }    return true;  },  has({    _: { data, setupState, accessCache, ctx, appContext, propsOptions }  }, key) {    let normalizedProps;    return !!accessCache[key] || data !== EMPTY_OBJ && hasOwn(data, key) || hasSetupBinding(setupState, key) || (normalizedProps = propsOptions[0]) && hasOwn(normalizedProps, key) || hasOwn(ctx, key) || hasOwn(publicPropertiesMap, key) || hasOwn(appContext.config.globalProperties, key);  },  defineProperty(target, key, descriptor) {    if (descriptor.get != null) {      target._.accessCache[key] = 0;    } else if (hasOwn(descriptor, "value")) {      this.set(target, key, descriptor.value, null);    }    return Reflect.defineProperty(target, key, descriptor);  }};{  PublicInstanceProxyHandlers.ownKeys = (target) => {    warn$1(      `Avoid app logic that relies on enumerating keys on a component instance. The keys will be empty in production mode to avoid performance overhead.`    );    return Reflect.ownKeys(target);  };}function createDevRenderContext(instance) {  const target = {};  Object.defineProperty(target, `_`, {    configurable: true,    enumerable: false,    get: () => instance  });  Object.keys(publicPropertiesMap).forEach((key) => {    Object.defineProperty(target, key, {      configurable: true,      enumerable: false,      get: () => publicPropertiesMap[key](instance),      // intercepted by the proxy so no need for implementation,      // but needed to prevent set errors      set: NOOP    });  });  return target;}function exposePropsOnRenderContext(instance) {  const {    ctx,    propsOptions: [propsOptions]  } = instance;  if (propsOptions) {    Object.keys(propsOptions).forEach((key) => {      Object.defineProperty(ctx, key, {        enumerable: true,        configurable: true,        get: () => instance.props[key],        set: NOOP      });    });  }}function exposeSetupStateOnRenderContext(instance) {  const { ctx, setupState } = instance;  Object.keys(toRaw(setupState)).forEach((key) => {    if (!setupState.__isScriptSetup) {      if (isReservedPrefix(key[0])) {        warn$1(          `setup() return property ${JSON.stringify(            key          )} should not start with "$" or "_" which are reserved prefixes for Vue internals.`        );        return;      }      Object.defineProperty(ctx, key, {        enumerable: true,        configurable: true,        get: () => setupState[key],        set: NOOP      });    }  });}function normalizePropsOrEmits(props) {  return isArray$2(props) ? props.reduce(    (normalized, p2) => (normalized[p2] = null, normalized),    {}  ) : props;}function createDuplicateChecker() {  const cache = /* @__PURE__ */ Object.create(null);  return (type, key) => {    if (cache[key]) {      warn$1(`${type} property "${key}" is already defined in ${cache[key]}.`);    } else {      cache[key] = type;    }  };}let shouldCacheAccess = true;function applyOptions$1(instance) {  const options = resolveMergedOptions(instance);  const publicThis = instance.proxy;  const ctx = instance.ctx;  shouldCacheAccess = false;  if (options.beforeCreate) {    callHook$1(options.beforeCreate, instance, "bc");  }  const {    // state    data: dataOptions,    computed: computedOptions,    methods,    watch: watchOptions,    provide: provideOptions,    inject: injectOptions,    // lifecycle    created,    beforeMount,    mounted,    beforeUpdate,    updated,    activated,    deactivated,    beforeDestroy,    beforeUnmount,    destroyed,    unmounted,    render,    renderTracked,    renderTriggered,    errorCaptured,    serverPrefetch,    // public API    expose,    inheritAttrs,    // assets    components,    directives,    filters  } = options;  const checkDuplicateProperties = createDuplicateChecker();  {    const [propsOptions] = instance.propsOptions;    if (propsOptions) {      for (const key in propsOptions) {        checkDuplicateProperties("Props", key);      }    }  }  function initInjections() {    if (injectOptions) {      resolveInjections(injectOptions, ctx, checkDuplicateProperties);    }  }  {    initInjections();  }  if (methods) {    for (const key in methods) {      const methodHandler = methods[key];      if (isFunction$2(methodHandler)) {        {          Object.defineProperty(ctx, key, {            value: methodHandler.bind(publicThis),            configurable: true,            enumerable: true,            writable: true          });        }        {          checkDuplicateProperties("Methods", key);        }      } else {        warn$1(          `Method "${key}" has type "${typeof methodHandler}" in the component definition. Did you reference the function correctly?`        );      }    }  }  if (dataOptions) {    if (!isFunction$2(dataOptions)) {      warn$1(        `The data option must be a function. Plain object usage is no longer supported.`      );    }    const data = dataOptions.call(publicThis, publicThis);    if (isPromise(data)) {      warn$1(        `data() returned a Promise - note data() cannot be async; If you intend to perform data fetching before component renders, use async setup() + <Suspense>.`      );    }    if (!isObject$2(data)) {      warn$1(`data() should return an object.`);    } else {      instance.data = reactive(data);      {        for (const key in data) {          checkDuplicateProperties("Data", key);          if (!isReservedPrefix(key[0])) {            Object.defineProperty(ctx, key, {              configurable: true,              enumerable: true,              get: () => data[key],              set: NOOP            });          }        }      }    }  }  shouldCacheAccess = true;  if (computedOptions) {    for (const key in computedOptions) {      const opt = computedOptions[key];      const get2 = isFunction$2(opt) ? opt.bind(publicThis, publicThis) : isFunction$2(opt.get) ? opt.get.bind(publicThis, publicThis) : NOOP;      if (get2 === NOOP) {        warn$1(`Computed property "${key}" has no getter.`);      }      const set2 = !isFunction$2(opt) && isFunction$2(opt.set) ? opt.set.bind(publicThis) : () => {        warn$1(          `Write operation failed: computed property "${key}" is readonly.`        );      };      const c2 = computed({        get: get2,        set: set2      });      Object.defineProperty(ctx, key, {        enumerable: true,        configurable: true,        get: () => c2.value,        set: (v) => c2.value = v      });      {        checkDuplicateProperties("Computed", key);      }    }  }  if (watchOptions) {    for (const key in watchOptions) {      createWatcher(watchOptions[key], ctx, publicThis, key);    }  }  function initProvides() {    if (provideOptions) {      const provides = isFunction$2(provideOptions) ? provideOptions.call(publicThis) : provideOptions;      Reflect.ownKeys(provides).forEach((key) => {        provide(key, provides[key]);      });    }  }  {    initProvides();  }  {    if (created) {      callHook$1(created, instance, "c");    }  }  function registerLifecycleHook(register, hook) {    if (isArray$2(hook)) {      hook.forEach((_hook) => register(_hook.bind(publicThis)));    } else if (hook) {      register(hook.bind(publicThis));    }  }  registerLifecycleHook(onBeforeMount, beforeMount);  registerLifecycleHook(onMounted, mounted);  registerLifecycleHook(onBeforeUpdate, beforeUpdate);  registerLifecycleHook(onUpdated, updated);  registerLifecycleHook(onActivated, activated);  registerLifecycleHook(onDeactivated, deactivated);  registerLifecycleHook(onErrorCaptured, errorCaptured);  registerLifecycleHook(onRenderTracked, renderTracked);  registerLifecycleHook(onRenderTriggered, renderTriggered);  registerLifecycleHook(onBeforeUnmount, beforeUnmount);  registerLifecycleHook(onUnmounted, unmounted);  registerLifecycleHook(onServerPrefetch, serverPrefetch);  if (isArray$2(expose)) {    if (expose.length) {      const exposed = instance.exposed || (instance.exposed = {});      expose.forEach((key) => {        Object.defineProperty(exposed, key, {          get: () => publicThis[key],          set: (val) => publicThis[key] = val        });      });    } else if (!instance.exposed) {      instance.exposed = {};    }  }  if (render && instance.render === NOOP) {    instance.render = render;  }  if (inheritAttrs != null) {    instance.inheritAttrs = inheritAttrs;  }  if (components)    instance.components = components;  if (directives)    instance.directives = directives;  if (instance.ctx.$onApplyOptions) {    instance.ctx.$onApplyOptions(options, instance, publicThis);  }}function resolveInjections(injectOptions, ctx, checkDuplicateProperties = NOOP) {  if (isArray$2(injectOptions)) {    injectOptions = normalizeInject(injectOptions);  }  for (const key in injectOptions) {    const opt = injectOptions[key];    let injected;    if (isObject$2(opt)) {      if ("default" in opt) {        injected = inject(          opt.from || key,          opt.default,          true        );      } else {        injected = inject(opt.from || key);      }    } else {      injected = inject(opt);    }    if (isRef(injected)) {      Object.defineProperty(ctx, key, {        enumerable: true,        configurable: true,        get: () => injected.value,        set: (v) => injected.value = v      });    } else {      ctx[key] = injected;    }    {      checkDuplicateProperties("Inject", key);    }  }}function callHook$1(hook, instance, type) {  callWithAsyncErrorHandling(    isArray$2(hook) ? hook.map((h2) => h2.bind(instance.proxy)) : hook.bind(instance.proxy),    instance,    type  );}function createWatcher(raw, ctx, publicThis, key) {  const getter = key.includes(".") ? createPathGetter(publicThis, key) : () => publicThis[key];  if (isString$2(raw)) {    const handler = ctx[raw];    if (isFunction$2(handler)) {      watch(getter, handler);    } else {      warn$1(`Invalid watch handler specified by key "${raw}"`, handler);    }  } else if (isFunction$2(raw)) {    watch(getter, raw.bind(publicThis));  } else if (isObject$2(raw)) {    if (isArray$2(raw)) {      raw.forEach((r2) => createWatcher(r2, ctx, publicThis, key));    } else {      const handler = isFunction$2(raw.handler) ? raw.handler.bind(publicThis) : ctx[raw.handler];      if (isFunction$2(handler)) {        watch(getter, handler, raw);      } else {        warn$1(`Invalid watch handler specified by key "${raw.handler}"`, handler);      }    }  } else {    warn$1(`Invalid watch option: "${key}"`, raw);  }}function resolveMergedOptions(instance) {  const base = instance.type;  const { mixins, extends: extendsOptions } = base;  const {    mixins: globalMixins,    optionsCache: cache,    config: { optionMergeStrategies }  } = instance.appContext;  const cached = cache.get(base);  let resolved;  if (cached) {    resolved = cached;  } else if (!globalMixins.length && !mixins && !extendsOptions) {    {      resolved = base;    }  } else {    resolved = {};    if (globalMixins.length) {      globalMixins.forEach(        (m2) => mergeOptions(resolved, m2, optionMergeStrategies, true)      );    }    mergeOptions(resolved, base, optionMergeStrategies);  }  if (isObject$2(base)) {    cache.set(base, resolved);  }  return resolved;}function mergeOptions(to, from, strats, asMixin = false) {  const { mixins, extends: extendsOptions } = from;  if (extendsOptions) {    mergeOptions(to, extendsOptions, strats, true);  }  if (mixins) {    mixins.forEach(      (m2) => mergeOptions(to, m2, strats, true)    );  }  for (const key in from) {    if (asMixin && key === "expose") {      warn$1(        `"expose" option is ignored when declared in mixins or extends. It should only be declared in the base component itself.`      );    } else {      const strat = internalOptionMergeStrats[key] || strats && strats[key];      to[key] = strat ? strat(to[key], from[key]) : from[key];    }  }  return to;}const internalOptionMergeStrats = {  data: mergeDataFn,  props: mergeEmitsOrPropsOptions,  emits: mergeEmitsOrPropsOptions,  // objects  methods: mergeObjectOptions,  computed: mergeObjectOptions,  // lifecycle  beforeCreate: mergeAsArray$1,  created: mergeAsArray$1,  beforeMount: mergeAsArray$1,  mounted: mergeAsArray$1,  beforeUpdate: mergeAsArray$1,  updated: mergeAsArray$1,  beforeDestroy: mergeAsArray$1,  beforeUnmount: mergeAsArray$1,  destroyed: mergeAsArray$1,  unmounted: mergeAsArray$1,  activated: mergeAsArray$1,  deactivated: mergeAsArray$1,  errorCaptured: mergeAsArray$1,  serverPrefetch: mergeAsArray$1,  // assets  components: mergeObjectOptions,  directives: mergeObjectOptions,  // watch  watch: mergeWatchOptions,  // provide / inject  provide: mergeDataFn,  inject: mergeInject};function mergeDataFn(to, from) {  if (!from) {    return to;  }  if (!to) {    return from;  }  return function mergedDataFn() {    return extend$2(      isFunction$2(to) ? to.call(this, this) : to,      isFunction$2(from) ? from.call(this, this) : from    );  };}function mergeInject(to, from) {  return mergeObjectOptions(normalizeInject(to), normalizeInject(from));}function normalizeInject(raw) {  if (isArray$2(raw)) {    const res = {};    for (let i = 0; i < raw.length; i++) {      res[raw[i]] = raw[i];    }    return res;  }  return raw;}function mergeAsArray$1(to, from) {  return to ? [...new Set([].concat(to, from))] : from;}function mergeObjectOptions(to, from) {  return to ? extend$2(/* @__PURE__ */ Object.create(null), to, from) : from;}function mergeEmitsOrPropsOptions(to, from) {  if (to) {    if (isArray$2(to) && isArray$2(from)) {      return [.../* @__PURE__ */ new Set([...to, ...from])];    }    return extend$2(      /* @__PURE__ */ Object.create(null),      normalizePropsOrEmits(to),      normalizePropsOrEmits(from != null ? from : {})    );  } else {    return from;  }}function mergeWatchOptions(to, from) {  if (!to)    return from;  if (!from)    return to;  const merged = extend$2(/* @__PURE__ */ Object.create(null), to);  for (const key in from) {    merged[key] = mergeAsArray$1(to[key], from[key]);  }  return merged;}function initProps$1(instance, rawProps, isStateful, isSSR = false) {  const props = {};  const attrs = {};  instance.propsDefaults = /* @__PURE__ */ Object.create(null);  setFullProps(instance, rawProps, props, attrs);  for (const key in instance.propsOptions[0]) {    if (!(key in props)) {      props[key] = void 0;    }  }  {    validateProps(rawProps || {}, props, instance);  }  if (isStateful) {    instance.props = isSSR ? props : shallowReactive(props);  } else {    if (!instance.type.props) {      instance.props = attrs;    } else {      instance.props = props;    }  }  instance.attrs = attrs;}function isInHmrContext(instance) {}function updateProps(instance, rawProps, rawPrevProps, optimized) {  const {    props,    attrs,    vnode: { patchFlag }  } = instance;  const rawCurrentProps = toRaw(props);  const [options] = instance.propsOptions;  let hasAttrsChanged = false;  if (    // always force full diff in dev    // - #1942 if hmr is enabled with sfc component    // - vite#872 non-sfc component used by sfc component    !isInHmrContext() && (optimized || patchFlag > 0) && !(patchFlag & 16)  ) {    if (patchFlag & 8) {      const propsToUpdate = instance.vnode.dynamicProps;      for (let i = 0; i < propsToUpdate.length; i++) {        let key = propsToUpdate[i];        if (isEmitListener(instance.emitsOptions, key)) {          continue;        }        const value = rawProps[key];        if (options) {          if (hasOwn(attrs, key)) {            if (value !== attrs[key]) {              attrs[key] = value;              hasAttrsChanged = true;            }          } else {            const camelizedKey = camelize(key);            props[camelizedKey] = resolvePropValue$1(              options,              rawCurrentProps,              camelizedKey,              value,              instance,              false            );          }        } else {          if (value !== attrs[key]) {            attrs[key] = value;            hasAttrsChanged = true;          }        }      }    }  } else {    if (setFullProps(instance, rawProps, props, attrs)) {      hasAttrsChanged = true;    }    let kebabKey;    for (const key in rawCurrentProps) {      if (!rawProps || // for camelCase      !hasOwn(rawProps, key) && // it's possible the original props was passed in as kebab-case      // and converted to camelCase (#955)      ((kebabKey = hyphenate(key)) === key || !hasOwn(rawProps, kebabKey))) {        if (options) {          if (rawPrevProps && // for camelCase          (rawPrevProps[key] !== void 0 || // for kebab-case          rawPrevProps[kebabKey] !== void 0)) {            props[key] = resolvePropValue$1(              options,              rawCurrentProps,              key,              void 0,              instance,              true            );          }        } else {          delete props[key];        }      }    }    if (attrs !== rawCurrentProps) {      for (const key in attrs) {        if (!rawProps || !hasOwn(rawProps, key) && true) {          delete attrs[key];          hasAttrsChanged = true;        }      }    }  }  if (hasAttrsChanged) {    trigger(instance, "set", "$attrs");  }  {    validateProps(rawProps || {}, props, instance);  }}function setFullProps(instance, rawProps, props, attrs) {  const [options, needCastKeys] = instance.propsOptions;  let hasAttrsChanged = false;  let rawCastValues;  if (rawProps) {    for (let key in rawProps) {      if (isReservedProp(key)) {        continue;      }      const value = rawProps[key];      let camelKey;      if (options && hasOwn(options, camelKey = camelize(key))) {        if (!needCastKeys || !needCastKeys.includes(camelKey)) {          props[camelKey] = value;        } else {          (rawCastValues || (rawCastValues = {}))[camelKey] = value;        }      } else if (!isEmitListener(instance.emitsOptions, key)) {        if (!(key in attrs) || value !== attrs[key]) {          attrs[key] = value;          hasAttrsChanged = true;        }      }    }  }  if (needCastKeys) {    const rawCurrentProps = toRaw(props);    const castValues = rawCastValues || EMPTY_OBJ;    for (let i = 0; i < needCastKeys.length; i++) {      const key = needCastKeys[i];      props[key] = resolvePropValue$1(        options,        rawCurrentProps,        key,        castValues[key],        instance,        !hasOwn(castValues, key)      );    }  }  return hasAttrsChanged;}function resolvePropValue$1(options, props, key, value, instance, isAbsent) {  const opt = options[key];  if (opt != null) {    const hasDefault = hasOwn(opt, "default");    if (hasDefault && value === void 0) {      const defaultValue = opt.default;      if (opt.type !== Function && !opt.skipFactory && isFunction$2(defaultValue)) {        const { propsDefaults } = instance;        if (key in propsDefaults) {          value = propsDefaults[key];        } else {          const reset = setCurrentInstance(instance);          value = propsDefaults[key] = defaultValue.call(            null,            props          );          reset();        }      } else {        value = defaultValue;      }    }    if (opt[      0      /* shouldCast */    ]) {      if (isAbsent && !hasDefault) {        value = false;      } else if (opt[        1        /* shouldCastTrue */      ] && (value === "" || value === hyphenate(key))) {        value = true;      }    }  }  return value;}function normalizePropsOptions(comp, appContext, asMixin = false) {  const cache = appContext.propsCache;  const cached = cache.get(comp);  if (cached) {    return cached;  }  const raw = comp.props;  const normalized = {};  const needCastKeys = [];  let hasExtends = false;  if (!isFunction$2(comp)) {    const extendProps = (raw2) => {      hasExtends = true;      const [props, keys] = normalizePropsOptions(raw2, appContext, true);      extend$2(normalized, props);      if (keys)        needCastKeys.push(...keys);    };    if (!asMixin && appContext.mixins.length) {      appContext.mixins.forEach(extendProps);    }    if (comp.extends) {      extendProps(comp.extends);    }    if (comp.mixins) {      comp.mixins.forEach(extendProps);    }  }  if (!raw && !hasExtends) {    if (isObject$2(comp)) {      cache.set(comp, EMPTY_ARR);    }    return EMPTY_ARR;  }  if (isArray$2(raw)) {    for (let i = 0; i < raw.length; i++) {      if (!isString$2(raw[i])) {        warn$1(`props must be strings when using array syntax.`, raw[i]);      }      const normalizedKey = camelize(raw[i]);      if (validatePropName(normalizedKey)) {        normalized[normalizedKey] = EMPTY_OBJ;      }    }  } else if (raw) {    if (!isObject$2(raw)) {      warn$1(`invalid props options`, raw);    }    for (const key in raw) {      const normalizedKey = camelize(key);      if (validatePropName(normalizedKey)) {        const opt = raw[key];        const prop = normalized[normalizedKey] = isArray$2(opt) || isFunction$2(opt) ? { type: opt } : extend$2({}, opt);        if (prop) {          const booleanIndex = getTypeIndex(Boolean, prop.type);          const stringIndex = getTypeIndex(String, prop.type);          prop[            0            /* shouldCast */          ] = booleanIndex > -1;          prop[            1            /* shouldCastTrue */          ] = stringIndex < 0 || booleanIndex < stringIndex;          if (booleanIndex > -1 || hasOwn(prop, "default")) {            needCastKeys.push(normalizedKey);          }        }      }    }  }  const res = [normalized, needCastKeys];  if (isObject$2(comp)) {    cache.set(comp, res);  }  return res;}function validatePropName(key) {  if (key[0] !== "$" && !isReservedProp(key)) {    return true;  } else {    warn$1(`Invalid prop name: "${key}" is a reserved property.`);  }  return false;}function getType$1(ctor) {  if (ctor === null) {    return "null";  }  if (typeof ctor === "function") {    return ctor.name || "";  } else if (typeof ctor === "object") {    const name = ctor.constructor && ctor.constructor.name;    return name || "";  }  return "";}function isSameType(a, b) {  return getType$1(a) === getType$1(b);}function getTypeIndex(type, expectedTypes) {  if (isArray$2(expectedTypes)) {    return expectedTypes.findIndex((t2) => isSameType(t2, type));  } else if (isFunction$2(expectedTypes)) {    return isSameType(expectedTypes, type) ? 0 : -1;  }  return -1;}function validateProps(rawProps, props, instance) {  const resolvedValues = toRaw(props);  const options = instance.propsOptions[0];  for (const key in options) {    let opt = options[key];    if (opt == null)      continue;    validateProp$1(      key,      resolvedValues[key],      opt,      shallowReadonly(resolvedValues),      !hasOwn(rawProps, key) && !hasOwn(rawProps, hyphenate(key))    );  }}function validateProp$1(name, value, prop, props, isAbsent) {  const { type, required, validator: validator2, skipCheck } = prop;  if (required && isAbsent) {    warn$1('Missing required prop: "' + name + '"');    return;  }  if (value == null && !required) {    return;  }  if (type != null && type !== true && !skipCheck) {    let isValid = false;    const types = isArray$2(type) ? type : [type];    const expectedTypes = [];    for (let i = 0; i < types.length && !isValid; i++) {      const { valid, expectedType } = assertType$1(value, types[i]);      expectedTypes.push(expectedType || "");      isValid = valid;    }    if (!isValid) {      warn$1(getInvalidTypeMessage$1(name, value, expectedTypes));      return;    }  }  if (validator2 && !validator2(value, props)) {    warn$1('Invalid prop: custom validator check failed for prop "' + name + '".');  }}const isSimpleType$1 = /* @__PURE__ */ makeMap(  "String,Number,Boolean,Function,Symbol,BigInt");function assertType$1(value, type) {  let valid;  const expectedType = getType$1(type);  if (isSimpleType$1(expectedType)) {    const t2 = typeof value;    valid = t2 === expectedType.toLowerCase();    if (!valid && t2 === "object") {      valid = value instanceof type;    }  } else if (expectedType === "Object") {    valid = isObject$2(value);  } else if (expectedType === "Array") {    valid = isArray$2(value);  } else if (expectedType === "null") {    valid = value === null;  } else {    valid = value instanceof type;  }  return {    valid,    expectedType  };}function getInvalidTypeMessage$1(name, value, expectedTypes) {  if (expectedTypes.length === 0) {    return `Prop type [] for prop "${name}" won't match anything. Did you mean to use type Array instead?`;  }  let message = `Invalid prop: type check failed for prop "${name}". Expected ${expectedTypes.map(capitalize).join(" | ")}`;  const expectedType = expectedTypes[0];  const receivedType = toRawType(value);  const expectedValue = styleValue$1(value, expectedType);  const receivedValue = styleValue$1(value, receivedType);  if (expectedTypes.length === 1 && isExplicable$1(expectedType) && !isBoolean$2(expectedType, receivedType)) {    message += ` with value ${expectedValue}`;  }  message += `, got ${receivedType} `;  if (isExplicable$1(receivedType)) {    message += `with value ${receivedValue}.`;  }  return message;}function styleValue$1(value, type) {  if (type === "String") {    return `"${value}"`;  } else if (type === "Number") {    return `${Number(value)}`;  } else {    return `${value}`;  }}function isExplicable$1(type) {  const explicitTypes = ["string", "number", "boolean"];  return explicitTypes.some((elem) => type.toLowerCase() === elem);}function isBoolean$2(...args) {  return args.some((elem) => elem.toLowerCase() === "boolean");}let supported;let perf;function startMeasure(instance, type) {  if (instance.appContext.config.performance && isSupported()) {    perf.mark(`vue-${type}-${instance.uid}`);  }  {    devtoolsPerfStart(instance, type, isSupported() ? perf.now() : Date.now());  }}function endMeasure(instance, type) {  if (instance.appContext.config.performance && isSupported()) {    const startTag = `vue-${type}-${instance.uid}`;    const endTag = startTag + `:end`;    perf.mark(endTag);    perf.measure(      `<${formatComponentName(instance, instance.type)}> ${type}`,      startTag,      endTag    );    perf.clearMarks(startTag);    perf.clearMarks(endTag);  }  {    devtoolsPerfEnd(instance, type, isSupported() ? perf.now() : Date.now());  }}function isSupported() {  if (supported !== void 0) {    return supported;  }  if (typeof window !== "undefined" && window.performance) {    supported = true;    perf = window.performance;  } else {    supported = false;  }  return supported;}const queuePostRenderEffect$1 = queuePostFlushCb;const Fragment = Symbol.for("v-fgt");const Text = Symbol.for("v-txt");const Comment = Symbol.for("v-cmt");const Static = Symbol.for("v-stc");function isVNode(value) {  return value ? value.__v_isVNode === true : false;}const InternalObjectKey = `__vInternal`;function guardReactiveProps(props) {  if (!props)    return null;  return isProxy(props) || InternalObjectKey in props ? extend$2({}, props) : props;}const emptyAppContext = createAppContext();let uid = 0;function createComponentInstance(vnode, parent, suspense) {  const type = vnode.type;  const appContext = (parent ? parent.appContext : vnode.appContext) || emptyAppContext;  const instance = {    uid: uid++,    vnode,    type,    parent,    appContext,    root: null,    // to be immediately set    next: null,    subTree: null,    // will be set synchronously right after creation    effect: null,    update: null,    // will be set synchronously right after creation    scope: new EffectScope(      true      /* detached */    ),    render: null,    proxy: null,    exposed: null,    exposeProxy: null,    withProxy: null,    provides: parent ? parent.provides : Object.create(appContext.provides),    accessCache: null,    renderCache: [],    // local resolved assets    components: null,    directives: null,    // resolved props and emits options    propsOptions: normalizePropsOptions(type, appContext),    emitsOptions: normalizeEmitsOptions(type, appContext),    // emit    emit: null,    // to be set immediately    emitted: null,    // props default value    propsDefaults: EMPTY_OBJ,    // inheritAttrs    inheritAttrs: type.inheritAttrs,    // state    ctx: EMPTY_OBJ,    data: EMPTY_OBJ,    props: EMPTY_OBJ,    attrs: EMPTY_OBJ,    slots: EMPTY_OBJ,    refs: EMPTY_OBJ,    setupState: EMPTY_OBJ,    setupContext: null,    attrsProxy: null,    slotsProxy: null,    // suspense related    suspense,    suspenseId: suspense ? suspense.pendingId : 0,    asyncDep: null,    asyncResolved: false,    // lifecycle hooks    // not using enums here because it results in computed properties    isMounted: false,    isUnmounted: false,    isDeactivated: false,    bc: null,    c: null,    bm: null,    m: null,    bu: null,    u: null,    um: null,    bum: null,    da: null,    a: null,    rtg: null,    rtc: null,    ec: null,    sp: null,    // fixed by xxxxxx 用于存储uni-app的元素缓存    $uniElements: /* @__PURE__ */ new Map(),    $templateUniElementRefs: [],    $templateUniElementStyles: {},    $eS: {},    $eA: {}  };  {    instance.ctx = createDevRenderContext(instance);  }  instance.root = parent ? parent.root : instance;  instance.emit = emit.bind(null, instance);  if (vnode.ce) {    vnode.ce(instance);  }  return instance;}let currentInstance = null;const getCurrentInstance = () => currentInstance || currentRenderingInstance;let internalSetCurrentInstance;let setInSSRSetupState;{  internalSetCurrentInstance = (i) => {    currentInstance = i;  };  setInSSRSetupState = (v) => {    isInSSRComponentSetup = v;  };}const setCurrentInstance = (instance) => {  const prev = currentInstance;  internalSetCurrentInstance(instance);  instance.scope.on();  return () => {    instance.scope.off();    internalSetCurrentInstance(prev);  };};const unsetCurrentInstance = () => {  currentInstance && currentInstance.scope.off();  internalSetCurrentInstance(null);};const isBuiltInTag = /* @__PURE__ */ makeMap("slot,component");function validateComponentName(name, { isNativeTag }) {  if (isBuiltInTag(name) || isNativeTag(name)) {    warn$1(      "Do not use built-in or reserved HTML elements as component id: " + name    );  }}function isStatefulComponent(instance) {  return instance.vnode.shapeFlag & 4;}let isInSSRComponentSetup = false;function setupComponent(instance, isSSR = false) {  isSSR && setInSSRSetupState(isSSR);  const {    props    /*, children*/  } = instance.vnode;  const isStateful = isStatefulComponent(instance);  initProps$1(instance, props, isStateful, isSSR);  const setupResult = isStateful ? setupStatefulComponent(instance, isSSR) : void 0;  isSSR && setInSSRSetupState(false);  return setupResult;}function setupStatefulComponent(instance, isSSR) {  const Component2 = instance.type;  {    if (Component2.name) {      validateComponentName(Component2.name, instance.appContext.config);    }    if (Component2.components) {      const names = Object.keys(Component2.components);      for (let i = 0; i < names.length; i++) {        validateComponentName(names[i], instance.appContext.config);      }    }    if (Component2.directives) {      const names = Object.keys(Component2.directives);      for (let i = 0; i < names.length; i++) {        validateDirectiveName(names[i]);      }    }    if (Component2.compilerOptions && isRuntimeOnly()) {      warn$1(        `"compilerOptions" is only supported when using a build of Vue that includes the runtime compiler. Since you are using a runtime-only build, the options should be passed via your build tool config instead.`      );    }  }  instance.accessCache = /* @__PURE__ */ Object.create(null);  instance.proxy = markRaw(new Proxy(instance.ctx, PublicInstanceProxyHandlers));  {    exposePropsOnRenderContext(instance);  }  const { setup } = Component2;  if (setup) {    const setupContext = instance.setupContext = setup.length > 1 ? createSetupContext(instance) : null;    const reset = setCurrentInstance(instance);    pauseTracking();    const setupResult = callWithErrorHandling(      setup,      instance,      0,      [        shallowReadonly(instance.props),        setupContext      ]    );    resetTracking();    reset();    if (isPromise(setupResult)) {      setupResult.then(unsetCurrentInstance, unsetCurrentInstance);      {        warn$1(          `setup() returned a Promise, but the version of Vue you are using does not support it yet.`        );      }    } else {      handleSetupResult(instance, setupResult, isSSR);    }  } else {    finishComponentSetup(instance, isSSR);  }}function handleSetupResult(instance, setupResult, isSSR) {  if (isFunction$2(setupResult)) {    {      instance.render = setupResult;    }  } else if (isObject$2(setupResult)) {    if (isVNode(setupResult)) {      warn$1(        `setup() should not return VNodes directly - return a render function instead.`      );    }    {      instance.devtoolsRawSetupState = setupResult;    }    instance.setupState = proxyRefs(setupResult);    {      exposeSetupStateOnRenderContext(instance);    }  } else if (setupResult !== void 0) {    warn$1(      `setup() should return an object. Received: ${setupResult === null ? "null" : typeof setupResult}`    );  }  finishComponentSetup(instance, isSSR);}let compile;const isRuntimeOnly = () => !compile;function finishComponentSetup(instance, isSSR, skipOptions) {  const Component2 = instance.type;  if (!instance.render) {    instance.render = Component2.render || NOOP;  }  {    const reset = setCurrentInstance(instance);    pauseTracking();    try {      applyOptions$1(instance);    } finally {      resetTracking();      reset();    }  }  if (!Component2.render && instance.render === NOOP && !isSSR) {    if (Component2.template) {      warn$1(        `Component provided template option but runtime compilation is not supported in this build of Vue. Configure your bundler to alias "vue" to "vue/dist/vue.esm-bundler.js".`      );    } else {      warn$1(`Component is missing template or render function.`);    }  }}function getAttrsProxy(instance) {  return instance.attrsProxy || (instance.attrsProxy = new Proxy(    instance.attrs,    {      get(target, key) {        track(instance, "get", "$attrs");        return target[key];      },      set() {        warn$1(`setupContext.attrs is readonly.`);        return false;      },      deleteProperty() {        warn$1(`setupContext.attrs is readonly.`);        return false;      }    }  ));}function getSlotsProxy(instance) {  return instance.slotsProxy || (instance.slotsProxy = new Proxy(instance.slots, {    get(target, key) {      track(instance, "get", "$slots");      return target[key];    }  }));}function createSetupContext(instance) {  const expose = (exposed) => {    {      if (instance.exposed) {        warn$1(`expose() should be called only once per setup().`);      }      if (exposed != null) {        let exposedType = typeof exposed;        if (exposedType === "object") {          if (isArray$2(exposed)) {            exposedType = "array";          } else if (isRef(exposed)) {            exposedType = "ref";          }        }        if (exposedType !== "object") {          warn$1(            `expose() should be passed a plain object, received ${exposedType}.`          );        }      }    }    instance.exposed = exposed || {};  };  {    return Object.freeze({      get attrs() {        return getAttrsProxy(instance);      },      get slots() {        return getSlotsProxy(instance);      },      get emit() {        return (event, ...args) => instance.emit(event, ...args);      },      expose    });  }}function getExposeProxy(instance) {  if (instance.exposed) {    return instance.exposeProxy || (instance.exposeProxy = new Proxy(proxyRefs(markRaw(instance.exposed)), {      get(target, key) {        if (key in target) {          return target[key];        }        return instance.proxy[key];      },      has(target, key) {        return key in target || key in publicPropertiesMap;      }    }));  }}const classifyRE = /(?:^|[-_])(\w)/g;const classify = (str) => str.replace(classifyRE, (c2) => c2.toUpperCase()).replace(/[-_]/g, "");function getComponentName(Component2, includeInferred = true) {  return isFunction$2(Component2) ? Component2.displayName || Component2.name : Component2.name || includeInferred && Component2.__name;}function formatComponentName(instance, Component2, isRoot = false) {  let name = getComponentName(Component2);  if (!name && Component2.__file) {    const match = Component2.__file.match(/([^/\\]+)\.\w+$/);    if (match) {      name = match[1];    }  }  if (!name && instance && instance.parent) {    const inferFromRegistry = (registry) => {      for (const key in registry) {        if (registry[key] === Component2) {          return key;        }      }    };    name = inferFromRegistry(      instance.components || instance.parent.type.components    ) || inferFromRegistry(instance.appContext.components);  }  return name ? classify(name) : isRoot ? `App` : `Anonymous`;}const computed = (getterOrOptions, debugOptions) => {  const c2 = computed$1(getterOrOptions, debugOptions, isInSSRComponentSetup);  {    const i = getCurrentInstance();    if (i && i.appContext.config.warnRecursiveComputed) {      c2._warnRecursive = true;    }  }  return c2;};const version = "3.4.21";const warn = warn$1;function unwrapper(target) {  return unref(target);}const ARRAYTYPE = "[object Array]";const OBJECTTYPE = "[object Object]";function diff(current, pre) {  const result = {};  syncKeys(current, pre);  _diff(current, pre, "", result);  return result;}function syncKeys(current, pre) {  current = unwrapper(current);  if (current === pre)    return;  const rootCurrentType = toTypeString(current);  const rootPreType = toTypeString(pre);  if (rootCurrentType == OBJECTTYPE && rootPreType == OBJECTTYPE) {    for (let key in pre) {      const currentValue = current[key];      if (currentValue === void 0) {        current[key] = null;      } else {        syncKeys(currentValue, pre[key]);      }    }  } else if (rootCurrentType == ARRAYTYPE && rootPreType == ARRAYTYPE) {    if (current.length >= pre.length) {      pre.forEach((item, index2) => {        syncKeys(current[index2], item);      });    }  }}function _diff(current, pre, path, result) {  current = unwrapper(current);  if (current === pre)    return;  const rootCurrentType = toTypeString(current);  const rootPreType = toTypeString(pre);  if (rootCurrentType == OBJECTTYPE) {    if (rootPreType != OBJECTTYPE || Object.keys(current).length < Object.keys(pre).length) {      setResult(result, path, current);    } else {      for (let key in current) {        const currentValue = unwrapper(current[key]);        const preValue = pre[key];        const currentType = toTypeString(currentValue);        const preType = toTypeString(preValue);        if (currentType != ARRAYTYPE && currentType != OBJECTTYPE) {          if (currentValue != preValue) {            setResult(              result,              (path == "" ? "" : path + ".") + key,              currentValue            );          }        } else if (currentType == ARRAYTYPE) {          if (preType != ARRAYTYPE) {            setResult(              result,              (path == "" ? "" : path + ".") + key,              currentValue            );          } else {            if (currentValue.length < preValue.length) {              setResult(                result,                (path == "" ? "" : path + ".") + key,                currentValue              );            } else {              currentValue.forEach((item, index2) => {                _diff(                  item,                  preValue[index2],                  (path == "" ? "" : path + ".") + key + "[" + index2 + "]",                  result                );              });            }          }        } else if (currentType == OBJECTTYPE) {          if (preType != OBJECTTYPE || Object.keys(currentValue).length < Object.keys(preValue).length) {            setResult(              result,              (path == "" ? "" : path + ".") + key,              currentValue            );          } else {            for (let subKey in currentValue) {              _diff(                currentValue[subKey],                preValue[subKey],                (path == "" ? "" : path + ".") + key + "." + subKey,                result              );            }          }        }      }    }  } else if (rootCurrentType == ARRAYTYPE) {    if (rootPreType != ARRAYTYPE) {      setResult(result, path, current);    } else {      if (current.length < pre.length) {        setResult(result, path, current);      } else {        current.forEach((item, index2) => {          _diff(item, pre[index2], path + "[" + index2 + "]", result);        });      }    }  } else {    setResult(result, path, current);  }}function setResult(result, k, v) {  result[k] = v;}function hasComponentEffect(instance) {  return queue$1.includes(instance.update);}function flushCallbacks(instance) {  const ctx = instance.ctx;  const callbacks = ctx.__next_tick_callbacks;  if (callbacks && callbacks.length) {    const copies = callbacks.slice(0);    callbacks.length = 0;    for (let i = 0; i < copies.length; i++) {      copies[i]();    }  }}function nextTick(instance, fn) {  const ctx = instance.ctx;  if (!ctx.__next_tick_pending && !hasComponentEffect(instance)) {    return nextTick$1(fn && fn.bind(instance.proxy));  }  let _resolve;  if (!ctx.__next_tick_callbacks) {    ctx.__next_tick_callbacks = [];  }  ctx.__next_tick_callbacks.push(() => {    if (fn) {      callWithErrorHandling(        fn.bind(instance.proxy),        instance,        14      );    } else if (_resolve) {      _resolve(instance.proxy);    }  });  return new Promise((resolve2) => {    _resolve = resolve2;  });}function clone(src, seen) {  src = unwrapper(src);  const type = typeof src;  if (type === "object" && src !== null) {    let copy = seen.get(src);    if (typeof copy !== "undefined") {      return copy;    }    if (isArray$2(src)) {      const len = src.length;      copy = new Array(len);      seen.set(src, copy);      for (let i = 0; i < len; i++) {        copy[i] = clone(src[i], seen);      }    } else {      copy = {};      seen.set(src, copy);      for (const name in src) {        if (hasOwn(src, name)) {          copy[name] = clone(src[name], seen);        }      }    }    return copy;  }  if (type !== "symbol") {    return src;  }}function deepCopy(src) {  return clone(src, typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : /* @__PURE__ */ new Map());}function getMPInstanceData(instance, keys) {  const data = instance.data;  const ret = /* @__PURE__ */ Object.create(null);  keys.forEach((key) => {    ret[key] = data[key];  });  return ret;}function patch(instance, data, oldData) {  if (!data) {    return;  }  data = deepCopy(data);  data.$eS = instance.$eS || {};  data.$eA = instance.$eA || {};  const ctx = instance.ctx;  const mpType = ctx.mpType;  if (mpType === "page" || mpType === "component") {    data.r0 = 1;    const mpInstance = ctx.$scope;    const keys = Object.keys(data);    const diffData = diff(data, oldData || getMPInstanceData(mpInstance, keys));    if (Object.keys(diffData).length) {      ctx.__next_tick_pending = true;      mpInstance.setData(diffData, () => {        ctx.__next_tick_pending = false;        flushCallbacks(instance);      });      flushPreFlushCbs();    } else {      flushCallbacks(instance);    }  }}function initAppConfig(appConfig) {  appConfig.globalProperties.$nextTick = function $nextTick(fn) {    return nextTick(this.$, fn);  };}function onApplyOptions(options, instance, publicThis) {  instance.appContext.config.globalProperties.$applyOptions(    options,    instance,    publicThis  );  const computedOptions = options.computed;  if (computedOptions) {    const keys = Object.keys(computedOptions);    if (keys.length) {      const ctx = instance.ctx;      if (!ctx.$computedKeys) {        ctx.$computedKeys = [];      }      ctx.$computedKeys.push(...keys);    }  }  delete instance.ctx.$onApplyOptions;}function setRef$1(instance, isUnmount = false) {  const {    setupState,    $templateRefs,    $templateUniElementRefs,    ctx: { $scope, $mpPlatform }  } = instance;  if ($mpPlatform === "mp-alipay") {    return;  }  if (!$scope || !$templateRefs && !$templateUniElementRefs) {    return;  }  if (isUnmount) {    $templateRefs && $templateRefs.forEach(      (templateRef) => setTemplateRef(templateRef, null, setupState)    );    $templateUniElementRefs && $templateUniElementRefs.forEach(      (templateRef) => setTemplateRef(templateRef, null, setupState)    );    return;  }  const check = $mpPlatform === "mp-baidu" || $mpPlatform === "mp-toutiao";  const doSetByRefs = (refs) => {    if (refs.length === 0) {      return [];    }    const mpComponents = (      // 字节小程序 selectAllComponents 可能返回 null      // https://github.com/dcloudio/uni-app/issues/3954      ($scope.selectAllComponents(".r") || []).concat(        $scope.selectAllComponents(".r-i-f") || []      )    );    return refs.filter((templateRef) => {      const refValue = findComponentPublicInstance(mpComponents, templateRef.i);      if (check && refValue === null) {        return true;      }      setTemplateRef(templateRef, refValue, setupState);      return false;    });  };  const doSet = () => {    if ($templateRefs) {      const refs = doSetByRefs($templateRefs);      if (refs.length && instance.proxy && instance.proxy.$scope) {        instance.proxy.$scope.setData({ r1: 1 }, () => {          doSetByRefs(refs);        });      }    }  };  if ($templateUniElementRefs && $templateUniElementRefs.length) {    nextTick(instance, () => {      $templateUniElementRefs.forEach((templateRef) => {        if (isArray$2(templateRef.v)) {          templateRef.v.forEach((v) => {            setTemplateRef(templateRef, v, setupState);          });        } else {          setTemplateRef(templateRef, templateRef.v, setupState);        }      });    });  }  if ($scope._$setRef) {    $scope._$setRef(doSet);  } else {    nextTick(instance, doSet);  }}function toSkip(value) {  if (isObject$2(value)) {    markRaw(value);  }  return value;}function findComponentPublicInstance(mpComponents, id) {  const mpInstance = mpComponents.find(    (com) => com && (com.properties || com.props).uI === id  );  if (mpInstance) {    const vm = mpInstance.$vm;    if (vm) {      return getExposeProxy(vm.$) || vm;    }    return toSkip(mpInstance);  }  return null;}function setTemplateRef({ r: r2, f: f2 }, refValue, setupState) {  if (isFunction$2(r2)) {    r2(refValue, {});  } else {    const _isString = isString$2(r2);    const _isRef = isRef(r2);    if (_isString || _isRef) {      if (f2) {        if (!_isRef) {          return;        }        if (!isArray$2(r2.value)) {          r2.value = [];        }        const existing = r2.value;        if (existing.indexOf(refValue) === -1) {          existing.push(refValue);          if (!refValue) {            return;          }          if (refValue.$) {            onBeforeUnmount(() => remove(existing, refValue), refValue.$);          }        }      } else if (_isString) {        if (hasOwn(setupState, r2)) {          setupState[r2] = refValue;        }      } else if (isRef(r2)) {        r2.value = refValue;      } else {        warnRef(r2);      }    } else {      warnRef(r2);    }  }}function warnRef(ref2) {  warn("Invalid template ref type:", ref2, `(${typeof ref2})`);}const queuePostRenderEffect = queuePostFlushCb;function mountComponent(initialVNode, options) {  const instance = initialVNode.component = createComponentInstance(initialVNode, options.parentComponent, null);  {    instance.ctx.$onApplyOptions = onApplyOptions;    instance.ctx.$children = [];  }  if (options.mpType === "app") {    instance.render = NOOP;  }  if (options.onBeforeSetup) {    options.onBeforeSetup(instance, options);  }  {    pushWarningContext(initialVNode);    startMeasure(instance, `mount`);  }  {    startMeasure(instance, `init`);  }  setupComponent(instance);  {    endMeasure(instance, `init`);  }  {    if (options.parentComponent && instance.proxy) {      options.parentComponent.ctx.$children.push(getExposeProxy(instance) || instance.proxy);    }  }  setupRenderEffect(instance);  {    popWarningContext();    endMeasure(instance, `mount`);  }  return instance.proxy;}const getFunctionalFallthrough = (attrs) => {  let res;  for (const key in attrs) {    if (key === "class" || key === "style" || isOn(key)) {      (res || (res = {}))[key] = attrs[key];    }  }  return res;};function renderComponentRoot(instance) {  const {    type: Component2,    vnode,    proxy,    withProxy,    props,    propsOptions: [propsOptions],    slots,    attrs,    emit: emit2,    render,    renderCache,    data,    setupState,    ctx,    uid: uid2,    appContext: {      app: {        config: {          globalProperties: { pruneComponentPropsCache: pruneComponentPropsCache2 }        }      }    },    inheritAttrs  } = instance;  instance.$uniElementIds = /* @__PURE__ */ new Map();  instance.$templateRefs = [];  instance.$templateUniElementRefs = [];  instance.$templateUniElementStyles = {};  instance.$ei = 0;  pruneComponentPropsCache2(uid2);  instance.__counter = instance.__counter === 0 ? 1 : 0;  let result;  const prev = setCurrentRenderingInstance(instance);  try {    if (vnode.shapeFlag & 4) {      fallthroughAttrs(inheritAttrs, props, propsOptions, attrs);      const proxyToUse = withProxy || proxy;      result = render.call(        proxyToUse,        proxyToUse,        renderCache,        props,        setupState,        data,        ctx      );    } else {      fallthroughAttrs(        inheritAttrs,        props,        propsOptions,        Component2.props ? attrs : getFunctionalFallthrough(attrs)      );      const render2 = Component2;      result = render2.length > 1 ? render2(props, { attrs, slots, emit: emit2 }) : render2(        props,        null        /* we know it doesn't need it */      );    }  } catch (err) {    handleError(err, instance, 1);    result = false;  }  setRef$1(instance);  setCurrentRenderingInstance(prev);  return result;}function fallthroughAttrs(inheritAttrs, props, propsOptions, fallthroughAttrs2) {  if (props && fallthroughAttrs2 && inheritAttrs !== false) {    const keys = Object.keys(fallthroughAttrs2).filter(      (key) => key !== "class" && key !== "style"    );    if (!keys.length) {      return;    }    if (propsOptions && keys.some(isModelListener)) {      keys.forEach((key) => {        if (!isModelListener(key) || !(key.slice(9) in propsOptions)) {          props[key] = fallthroughAttrs2[key];        }      });    } else {      keys.forEach((key) => props[key] = fallthroughAttrs2[key]);    }  }}const updateComponentPreRender = (instance) => {  pauseTracking();  flushPreFlushCbs();  resetTracking();};function componentUpdateScopedSlotsFn() {  const scopedSlotsData = this.$scopedSlotsData;  if (!scopedSlotsData || scopedSlotsData.length === 0) {    return;  }  const mpInstance = this.ctx.$scope;  const oldData = mpInstance.data;  const diffData = /* @__PURE__ */ Object.create(null);  scopedSlotsData.forEach(({ path, index: index2, data }) => {    const oldScopedSlotData = getValueByDataPath(oldData, path);    const diffPath = isString$2(index2) ? `${path}.${index2}` : `${path}[${index2}]`;    if (typeof oldScopedSlotData === "undefined" || typeof oldScopedSlotData[index2] === "undefined") {      diffData[diffPath] = data;    } else {      const diffScopedSlotData = diff(        data,        oldScopedSlotData[index2]      );      Object.keys(diffScopedSlotData).forEach((name) => {        diffData[diffPath + "." + name] = diffScopedSlotData[name];      });    }  });  scopedSlotsData.length = 0;  if (Object.keys(diffData).length) {    mpInstance.setData(diffData);  }}function toggleRecurse({ effect: effect2, update }, allowed) {  effect2.allowRecurse = update.allowRecurse = allowed;}function setupRenderEffect(instance) {  const updateScopedSlots = componentUpdateScopedSlotsFn.bind(    instance  );  instance.$updateScopedSlots = () => nextTick$1(() => queueJob(updateScopedSlots));  const componentUpdateFn = () => {    if (!instance.isMounted) {      onBeforeUnmount(() => {        setRef$1(instance, true);      }, instance);      {        startMeasure(instance, `patch`);      }      patch(instance, renderComponentRoot(instance));      {        endMeasure(instance, `patch`);      }      {        devtoolsComponentAdded(instance);      }    } else {      const { next, bu, u } = instance;      {        pushWarningContext(next || instance.vnode);      }      toggleRecurse(instance, false);      updateComponentPreRender();      if (bu) {        invokeArrayFns$1(bu);      }      toggleRecurse(instance, true);      {        startMeasure(instance, `patch`);      }      patch(instance, renderComponentRoot(instance));      {        endMeasure(instance, `patch`);      }      if (u) {        queuePostRenderEffect(u);      }      {        devtoolsComponentUpdated(instance);      }      {        popWarningContext();      }    }  };  const effect2 = instance.effect = new ReactiveEffect(    componentUpdateFn,    NOOP,    () => queueJob(update),    instance.scope    // track it in component's effect scope  );  const update = instance.update = () => {    if (effect2.dirty) {      effect2.run();    }  };  update.id = instance.uid;  toggleRecurse(instance, true);  {    effect2.onTrack = instance.rtc ? (e2) => invokeArrayFns$1(instance.rtc, e2) : void 0;    effect2.onTrigger = instance.rtg ? (e2) => invokeArrayFns$1(instance.rtg, e2) : void 0;    update.ownerInstance = instance;  }  {    update();  }}function unmountComponent(instance) {  const { bum, scope, update, um } = instance;  if (bum) {    invokeArrayFns$1(bum);  }  {    const parentInstance = instance.parent;    if (parentInstance) {      const $children = parentInstance.ctx.$children;      const target = getExposeProxy(instance) || instance.proxy;      const index2 = $children.indexOf(target);      if (index2 > -1) {        $children.splice(index2, 1);      }    }  }  scope.stop();  if (update) {    update.active = false;  }  if (um) {    queuePostRenderEffect(um);  }  queuePostRenderEffect(() => {    instance.isUnmounted = true;  });  {    devtoolsComponentRemoved(instance);  }}const oldCreateApp = createAppAPI();function getTarget() {  if (typeof window !== "undefined") {    return window;  }  if (typeof globalThis !== "undefined") {    return globalThis;  }  if (typeof global !== "undefined") {    return global;  }  if (typeof my !== "undefined") {    return my;  }}function createVueApp(rootComponent, rootProps = null) {  const target = getTarget();  target.__VUE__ = true;  {    setDevtoolsHook(target.__VUE_DEVTOOLS_GLOBAL_HOOK__, target);  }  const app = oldCreateApp(rootComponent, rootProps);  const appContext = app._context;  initAppConfig(appContext.config);  const createVNode2 = (initialVNode) => {    initialVNode.appContext = appContext;    initialVNode.shapeFlag = 6;    return initialVNode;  };  const createComponent2 = function createComponent22(initialVNode, options) {    return mountComponent(createVNode2(initialVNode), options);  };  const destroyComponent = function destroyComponent2(component) {    return component && unmountComponent(component.$);  };  app.mount = function mount() {    rootComponent.render = NOOP;    const instance = mountComponent(      createVNode2({ type: rootComponent }),      {        mpType: "app",        mpInstance: null,        parentComponent: null,        slots: [],        props: null      }    );    app._instance = instance.$;    {      devtoolsInitApp(app, version);    }    instance.$app = app;    instance.$createComponent = createComponent2;    instance.$destroyComponent = destroyComponent;    appContext.$appInstance = instance;    return instance;  };  app.unmount = function unmount() {    warn(`Cannot unmount an app.`);  };  return app;}function injectLifecycleHook(name, hook, publicThis, instance) {  if (isFunction$2(hook)) {    injectHook(name, hook.bind(publicThis), instance);  }}function initHooks$1(options, instance, publicThis) {  const mpType = options.mpType || publicThis.$mpType;  if (!mpType || mpType === "component") {    return;  }  Object.keys(options).forEach((name) => {    if (isUniLifecycleHook(name, options[name], false)) {      const hooks = options[name];      if (isArray$2(hooks)) {        hooks.forEach((hook) => injectLifecycleHook(name, hook, publicThis, instance));      } else {        injectLifecycleHook(name, hooks, publicThis, instance);      }    }  });}function applyOptions$2(options, instance, publicThis) {  initHooks$1(options, instance, publicThis);}function set(target, key, val) {  return target[key] = val;}function $callMethod(method, ...args) {  const fn = this[method];  if (fn) {    return fn(...args);  }  console.error(`method ${method} not found`);  return null;}function createErrorHandler(app) {  const userErrorHandler = app.config.errorHandler;  return function errorHandler(err, instance, info) {    if (userErrorHandler) {      userErrorHandler(err, instance, info);    }    const appInstance = app._instance;    if (!appInstance || !appInstance.proxy) {      throw err;    }    if (appInstance[ON_ERROR]) {      {        appInstance.proxy.$callHook(ON_ERROR, err);      }    } else {      logError(err, info, instance ? instance.$.vnode : null, false);    }  };}function mergeAsArray(to, from) {  return to ? [...new Set([].concat(to, from))] : from;}function initOptionMergeStrategies(optionMergeStrategies) {  UniLifecycleHooks.forEach((name) => {    optionMergeStrategies[name] = mergeAsArray;  });}let realAtob;const b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";const b64re = /^(?:[A-Za-z\d+/]{4})*?(?:[A-Za-z\d+/]{2}(?:==)?|[A-Za-z\d+/]{3}=?)?$/;if (typeof atob !== "function") {  realAtob = function(str) {    str = String(str).replace(/[\t\n\f\r ]+/g, "");    if (!b64re.test(str)) {      throw new Error("Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.");    }    str += "==".slice(2 - (str.length & 3));    var bitmap;    var result = "";    var r1;    var r2;    var i = 0;    for (; i < str.length; ) {      bitmap = b64.indexOf(str.charAt(i++)) << 18 | b64.indexOf(str.charAt(i++)) << 12 | (r1 = b64.indexOf(str.charAt(i++))) << 6 | (r2 = b64.indexOf(str.charAt(i++)));      result += r1 === 64 ? String.fromCharCode(bitmap >> 16 & 255) : r2 === 64 ? String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255) : String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255, bitmap & 255);    }    return result;  };} else {  realAtob = atob;}function b64DecodeUnicode(str) {  return decodeURIComponent(realAtob(str).split("").map(function(c2) {    return "%" + ("00" + c2.charCodeAt(0).toString(16)).slice(-2);  }).join(""));}function getCurrentUserInfo() {  const token = index.getStorageSync("uni_id_token") || "";  const tokenArr = token.split(".");  if (!token || tokenArr.length !== 3) {    return {      uid: null,      role: [],      permission: [],      tokenExpired: 0    };  }  let userInfo;  try {    userInfo = JSON.parse(b64DecodeUnicode(tokenArr[1]));  } catch (error) {    throw new Error("获取当前用户信息出错,详细错误信息为:" + error.message);  }  userInfo.tokenExpired = userInfo.exp * 1e3;  delete userInfo.exp;  delete userInfo.iat;  return userInfo;}function uniIdMixin(globalProperties) {  globalProperties.uniIDHasRole = function(roleId) {    const { role } = getCurrentUserInfo();    return role.indexOf(roleId) > -1;  };  globalProperties.uniIDHasPermission = function(permissionId) {    const { permission } = getCurrentUserInfo();    return this.uniIDHasRole("admin") || permission.indexOf(permissionId) > -1;  };  globalProperties.uniIDTokenValid = function() {    const { tokenExpired } = getCurrentUserInfo();    return tokenExpired > Date.now();  };}function initApp(app) {  const appConfig = app.config;  appConfig.errorHandler = invokeCreateErrorHandler(app, createErrorHandler);  initOptionMergeStrategies(appConfig.optionMergeStrategies);  const globalProperties = appConfig.globalProperties;  {    uniIdMixin(globalProperties);  }  {    globalProperties.$set = set;    globalProperties.$applyOptions = applyOptions$2;    globalProperties.$callMethod = $callMethod;  }  {    index.invokeCreateVueAppHook(app);  }}const propsCaches = /* @__PURE__ */ Object.create(null);function renderProps(props) {  const { uid: uid2, __counter } = getCurrentInstance();  const propsId = (propsCaches[uid2] || (propsCaches[uid2] = [])).push(guardReactiveProps(props)) - 1;  return uid2 + "," + propsId + "," + __counter;}function pruneComponentPropsCache(uid2) {  delete propsCaches[uid2];}function findComponentPropsData(up) {  if (!up) {    return;  }  const [uid2, propsId] = up.split(",");  if (!propsCaches[uid2]) {    return;  }  return propsCaches[uid2][parseInt(propsId)];}var plugin = {  install(app) {    initApp(app);    app.config.globalProperties.pruneComponentPropsCache = pruneComponentPropsCache;    const oldMount = app.mount;    app.mount = function mount(rootContainer) {      const instance = oldMount.call(app, rootContainer);      const createApp2 = getCreateApp();      if (createApp2) {        createApp2(instance);      } else {        if (typeof createMiniProgramApp !== "undefined") {          createMiniProgramApp(instance);        }      }      return instance;    };  }};function getCreateApp() {  const method = "createApp";  if (typeof global !== "undefined" && typeof global[method] !== "undefined") {    return global[method];  } else if (typeof my !== "undefined") {    return my[method];  }}const t = (val) => toDisplayString(val);const p = (props) => renderProps(props);function createApp$1(rootComponent, rootProps = null) {  rootComponent && (rootComponent.mpType = "app");  return createVueApp(rootComponent, rootProps).use(plugin);}const createSSRApp = createApp$1;function getLocaleLanguage$1() {  var _a;  let localeLanguage = "";  {    const appBaseInfo = ((_a = wx.getAppBaseInfo) === null || _a === void 0 ? void 0 : _a.call(wx)) || wx.getSystemInfoSync();    const language = appBaseInfo && appBaseInfo.language ? appBaseInfo.language : LOCALE_EN;    localeLanguage = normalizeLocale(language) || LOCALE_EN;  }  return localeLanguage;}function validateProtocolFail(name, msg) {  console.warn(`${name}: ${msg}`);}function validateProtocol(name, data, protocol, onFail) {  if (!onFail) {    onFail = validateProtocolFail;  }  for (const key in protocol) {    const errMsg = validateProp(key, data[key], protocol[key], !hasOwn(data, key));    if (isString$2(errMsg)) {      onFail(name, errMsg);    }  }}function validateProtocols(name, args, protocol, onFail) {  if (!protocol) {    return;  }  if (!isArray$2(protocol)) {    return validateProtocol(name, args[0] || /* @__PURE__ */ Object.create(null), protocol, onFail);  }  const len = protocol.length;  const argsLen = args.length;  for (let i = 0; i < len; i++) {    const opts = protocol[i];    const data = /* @__PURE__ */ Object.create(null);    if (argsLen > i) {      data[opts.name] = args[i];    }    validateProtocol(name, data, { [opts.name]: opts }, onFail);  }}function validateProp(name, value, prop, isAbsent) {  if (!isPlainObject$1(prop)) {    prop = { type: prop };  }  const { type, required, validator: validator2 } = prop;  if (required && isAbsent) {    return 'Missing required args: "' + name + '"';  }  if (value == null && !required) {    return;  }  if (type != null) {    let isValid = false;    const types = isArray$2(type) ? type : [type];    const expectedTypes = [];    for (let i = 0; i < types.length && !isValid; i++) {      const { valid, expectedType } = assertType(value, types[i]);      expectedTypes.push(expectedType || "");      isValid = valid;    }    if (!isValid) {      return getInvalidTypeMessage(name, value, expectedTypes);    }  }  if (validator2) {    return validator2(value);  }}const isSimpleType = /* @__PURE__ */ makeMap("String,Number,Boolean,Function,Symbol");function assertType(value, type) {  let valid;  const expectedType = getType(type);  if (isSimpleType(expectedType)) {    const t2 = typeof value;    valid = t2 === expectedType.toLowerCase();    if (!valid && t2 === "object") {      valid = value instanceof type;    }  } else if (expectedType === "Object") {    valid = isObject$2(value);  } else if (expectedType === "Array") {    valid = isArray$2(value);  } else {    {      valid = value instanceof type;    }  }  return {    valid,    expectedType  };}function getInvalidTypeMessage(name, value, expectedTypes) {  let message = `Invalid args: type check failed for args "${name}". Expected ${expectedTypes.map(capitalize).join(", ")}`;  const expectedType = expectedTypes[0];  const receivedType = toRawType(value);  const expectedValue = styleValue(value, expectedType);  const receivedValue = styleValue(value, receivedType);  if (expectedTypes.length === 1 && isExplicable(expectedType) && !isBoolean$1(expectedType, receivedType)) {    message += ` with value ${expectedValue}`;  }  message += `, got ${receivedType} `;  if (isExplicable(receivedType)) {    message += `with value ${receivedValue}.`;  }  return message;}function getType(ctor) {  const match = ctor && ctor.toString().match(/^\s*function (\w+)/);  return match ? match[1] : "";}function styleValue(value, type) {  if (type === "String") {    return `"${value}"`;  } else if (type === "Number") {    return `${Number(value)}`;  } else {    return `${value}`;  }}function isExplicable(type) {  const explicitTypes = ["string", "number", "boolean"];  return explicitTypes.some((elem) => type.toLowerCase() === elem);}function isBoolean$1(...args) {  return args.some((elem) => elem.toLowerCase() === "boolean");}function tryCatch(fn) {  return function() {    try {      return fn.apply(fn, arguments);    } catch (e) {      console.error(e);    }  };}let invokeCallbackId = 1;const invokeCallbacks = {};function addInvokeCallback(id, name, callback, keepAlive = false) {  invokeCallbacks[id] = {    name,    keepAlive,    callback  };  return id;}function invokeCallback(id, res, extras) {  if (typeof id === "number") {    const opts = invokeCallbacks[id];    if (opts) {      if (!opts.keepAlive) {        delete invokeCallbacks[id];      }      return opts.callback(res, extras);    }  }  return res;}const API_SUCCESS = "success";const API_FAIL = "fail";const API_COMPLETE = "complete";function getApiCallbacks(args) {  const apiCallbacks = {};  for (const name in args) {    const fn = args[name];    if (isFunction$2(fn)) {      apiCallbacks[name] = tryCatch(fn);      delete args[name];    }  }  return apiCallbacks;}function normalizeErrMsg(errMsg, name) {  if (!errMsg || errMsg.indexOf(":fail") === -1) {    return name + ":ok";  }  return name + errMsg.substring(errMsg.indexOf(":fail"));}function createAsyncApiCallback(name, args = {}, { beforeAll, beforeSuccess } = {}) {  if (!isPlainObject$1(args)) {    args = {};  }  const { success, fail, complete } = getApiCallbacks(args);  const hasSuccess = isFunction$2(success);  const hasFail = isFunction$2(fail);  const hasComplete = isFunction$2(complete);  const callbackId = invokeCallbackId++;  addInvokeCallback(callbackId, name, (res) => {    res = res || {};    res.errMsg = normalizeErrMsg(res.errMsg, name);    isFunction$2(beforeAll) && beforeAll(res);    if (res.errMsg === name + ":ok") {      isFunction$2(beforeSuccess) && beforeSuccess(res, args);      hasSuccess && success(res);    } else {      hasFail && fail(res);    }    hasComplete && complete(res);  });  return callbackId;}const HOOK_SUCCESS = "success";const HOOK_FAIL = "fail";const HOOK_COMPLETE = "complete";const globalInterceptors = {};const scopedInterceptors = {};function wrapperHook(hook, params) {  return function(data) {    return hook(data, params) || data;  };}function queue(hooks, data, params) {  let promise = false;  for (let i = 0; i < hooks.length; i++) {    const hook = hooks[i];    if (promise) {      promise = Promise.resolve(wrapperHook(hook, params));    } else {      const res = hook(data, params);      if (isPromise(res)) {        promise = Promise.resolve(res);      }      if (res === false) {        return {          then() {          },          catch() {          }        };      }    }  }  return promise || {    then(callback) {      return callback(data);    },    catch() {    }  };}function wrapperOptions(interceptors2, options = {}) {  [HOOK_SUCCESS, HOOK_FAIL, HOOK_COMPLETE].forEach((name) => {    const hooks = interceptors2[name];    if (!isArray$2(hooks)) {      return;    }    const oldCallback = options[name];    options[name] = function callbackInterceptor(res) {      queue(hooks, res, options).then((res2) => {        return isFunction$2(oldCallback) && oldCallback(res2) || res2;      });    };  });  return options;}function wrapperReturnValue(method, returnValue) {  const returnValueHooks = [];  if (isArray$2(globalInterceptors.returnValue)) {    returnValueHooks.push(...globalInterceptors.returnValue);  }  const interceptor = scopedInterceptors[method];  if (interceptor && isArray$2(interceptor.returnValue)) {    returnValueHooks.push(...interceptor.returnValue);  }  returnValueHooks.forEach((hook) => {    returnValue = hook(returnValue) || returnValue;  });  return returnValue;}function getApiInterceptorHooks(method) {  const interceptor = /* @__PURE__ */ Object.create(null);  Object.keys(globalInterceptors).forEach((hook) => {    if (hook !== "returnValue") {      interceptor[hook] = globalInterceptors[hook].slice();    }  });  const scopedInterceptor = scopedInterceptors[method];  if (scopedInterceptor) {    Object.keys(scopedInterceptor).forEach((hook) => {      if (hook !== "returnValue") {        interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);      }    });  }  return interceptor;}function invokeApi(method, api, options, params) {  const interceptor = getApiInterceptorHooks(method);  if (interceptor && Object.keys(interceptor).length) {    if (isArray$2(interceptor.invoke)) {      const res = queue(interceptor.invoke, options);      return res.then((options2) => {        return api(wrapperOptions(getApiInterceptorHooks(method), options2), ...params);      });    } else {      return api(wrapperOptions(interceptor, options), ...params);    }  }  return api(options, ...params);}function hasCallback(args) {  if (isPlainObject$1(args) && [API_SUCCESS, API_FAIL, API_COMPLETE].find((cb) => isFunction$2(args[cb]))) {    return true;  }  return false;}function handlePromise(promise) {  return promise;}function promisify$1(name, fn) {  return (args = {}, ...rest) => {    if (hasCallback(args)) {      return wrapperReturnValue(name, invokeApi(name, fn, args, rest));    }    return wrapperReturnValue(name, handlePromise(new Promise((resolve, reject) => {      invokeApi(name, fn, extend$2(args, { success: resolve, fail: reject }), rest);    })));  };}function formatApiArgs(args, options) {  args[0];  {    return;  }}function invokeSuccess(id, name, res) {  const result = {    errMsg: name + ":ok"  };  return invokeCallback(id, extend$2(res || {}, result));}function invokeFail(id, name, errMsg, errRes = {}) {  const errMsgPrefix = name + ":fail";  let apiErrMsg = "";  if (!errMsg) {    apiErrMsg = errMsgPrefix;  } else if (errMsg.indexOf(errMsgPrefix) === 0) {    apiErrMsg = errMsg;  } else {    apiErrMsg = errMsgPrefix + " " + errMsg;  }  {    delete errRes.errCode;  }  let res = extend$2({ errMsg: apiErrMsg }, errRes);  return invokeCallback(id, res);}function beforeInvokeApi(name, args, protocol, options) {  {    validateProtocols(name, args, protocol);  }  const errMsg = formatApiArgs(args);  if (errMsg) {    return errMsg;  }}function parseErrMsg(errMsg) {  if (!errMsg || isString$2(errMsg)) {    return errMsg;  }  if (errMsg.stack) {    if (typeof globalThis === "undefined" || !globalThis.harmonyChannel) {      console.error(errMsg.message + "\n" + errMsg.stack);    }    return errMsg.message;  }  return errMsg;}function wrapperTaskApi(name, fn, protocol, options) {  return (args) => {    const id = createAsyncApiCallback(name, args, options);    const errMsg = beforeInvokeApi(name, [args], protocol);    if (errMsg) {      return invokeFail(id, name, errMsg);    }    return fn(args, {      resolve: (res) => invokeSuccess(id, name, res),      reject: (errMsg2, errRes) => invokeFail(id, name, parseErrMsg(errMsg2), errRes)    });  };}function wrapperSyncApi(name, fn, protocol, options) {  return (...args) => {    const errMsg = beforeInvokeApi(name, args, protocol);    if (errMsg) {      throw new Error(errMsg);    }    return fn.apply(null, args);  };}function wrapperAsyncApi(name, fn, protocol, options) {  return wrapperTaskApi(name, fn, protocol, options);}function defineSyncApi(name, fn, protocol, options) {  return wrapperSyncApi(name, fn, protocol);}function defineAsyncApi(name, fn, protocol, options) {  return promisify$1(name, wrapperAsyncApi(name, fn, protocol, options));}const API_UPX2PX = "upx2px";const Upx2pxProtocol = [  {    name: "upx",    type: [Number, String],    required: true  }];const EPS = 1e-4;const BASE_DEVICE_WIDTH = 750;let isIOS = false;let deviceWidth = 0;let deviceDPR = 0;function checkDeviceWidth() {  var _a, _b;  let windowWidth, pixelRatio, platform2;  {    const windowInfo = ((_a = wx.getWindowInfo) === null || _a === void 0 ? void 0 : _a.call(wx)) || wx.getSystemInfoSync();    const deviceInfo = ((_b = wx.getDeviceInfo) === null || _b === void 0 ? void 0 : _b.call(wx)) || wx.getSystemInfoSync();    windowWidth = windowInfo.windowWidth;    pixelRatio = windowInfo.pixelRatio;    platform2 = deviceInfo.platform;  }  deviceWidth = windowWidth;  deviceDPR = pixelRatio;  isIOS = platform2 === "ios";}const upx2px = defineSyncApi(API_UPX2PX, (number, newDeviceWidth) => {  if (deviceWidth === 0) {    checkDeviceWidth();  }  number = Number(number);  if (number === 0) {    return 0;  }  let width = newDeviceWidth || deviceWidth;  let result = number / BASE_DEVICE_WIDTH * width;  if (result < 0) {    result = -result;  }  result = Math.floor(result + EPS);  if (result === 0) {    if (deviceDPR === 1 || !isIOS) {      result = 1;    } else {      result = 0.5;    }  }  return number < 0 ? -result : result;}, Upx2pxProtocol);function __f__(type, filename, ...args) {  if (filename) {    args.push(filename);  }  console[type].apply(console, args);}const API_ADD_INTERCEPTOR = "addInterceptor";const API_REMOVE_INTERCEPTOR = "removeInterceptor";const AddInterceptorProtocol = [  {    name: "method",    type: [String, Object],    required: true  }];const RemoveInterceptorProtocol = AddInterceptorProtocol;function mergeInterceptorHook(interceptors2, interceptor) {  Object.keys(interceptor).forEach((hook) => {    if (isFunction$2(interceptor[hook])) {      interceptors2[hook] = mergeHook(interceptors2[hook], interceptor[hook]);    }  });}function removeInterceptorHook(interceptors2, interceptor) {  if (!interceptors2 || !interceptor) {    return;  }  Object.keys(interceptor).forEach((name) => {    const hooks = interceptors2[name];    const hook = interceptor[name];    if (isArray$2(hooks) && isFunction$2(hook)) {      remove(hooks, hook);    }  });}function mergeHook(parentVal, childVal) {  const res = childVal ? parentVal ? parentVal.concat(childVal) : isArray$2(childVal) ? childVal : [childVal] : parentVal;  return res ? dedupeHooks(res) : res;}function dedupeHooks(hooks) {  const res = [];  for (let i = 0; i < hooks.length; i++) {    if (res.indexOf(hooks[i]) === -1) {      res.push(hooks[i]);    }  }  return res;}const addInterceptor = defineSyncApi(API_ADD_INTERCEPTOR, (method, interceptor) => {  if (isString$2(method) && isPlainObject$1(interceptor)) {    mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), interceptor);  } else if (isPlainObject$1(method)) {    mergeInterceptorHook(globalInterceptors, method);  }}, AddInterceptorProtocol);const removeInterceptor = defineSyncApi(API_REMOVE_INTERCEPTOR, (method, interceptor) => {  if (isString$2(method)) {    if (isPlainObject$1(interceptor)) {      removeInterceptorHook(scopedInterceptors[method], interceptor);    } else {      delete scopedInterceptors[method];    }  } else if (isPlainObject$1(method)) {    removeInterceptorHook(globalInterceptors, method);  }}, RemoveInterceptorProtocol);const interceptors = {};const API_ON = "$on";const OnProtocol = [  {    name: "event",    type: String,    required: true  },  {    name: "callback",    type: Function,    required: true  }];const API_ONCE = "$once";const OnceProtocol = OnProtocol;const API_OFF = "$off";const OffProtocol = [  {    name: "event",    type: [String, Array]  },  {    name: "callback",    type: [Function, Number]  }];const API_EMIT = "$emit";const EmitProtocol = [  {    name: "event",    type: String,    required: true  }];class EventBus {  constructor() {    this.$emitter = new E$1();  }  on(name, callback) {    return this.$emitter.on(name, callback);  }  once(name, callback) {    return this.$emitter.once(name, callback);  }  off(name, callback) {    if (!name) {      this.$emitter.e = {};      return;    }    this.$emitter.off(name, callback);  }  emit(name, ...args) {    this.$emitter.emit(name, ...args);  }}const eventBus = new EventBus();const $on = defineSyncApi(API_ON, (name, callback) => {  eventBus.on(name, callback);  return () => eventBus.off(name, callback);}, OnProtocol);const $once = defineSyncApi(API_ONCE, (name, callback) => {  eventBus.once(name, callback);  return () => eventBus.off(name, callback);}, OnceProtocol);const $off = defineSyncApi(API_OFF, (name, callback) => {  if (!isArray$2(name))    name = name ? [name] : [];  name.forEach((n) => {    eventBus.off(n, callback);  });}, OffProtocol);const $emit = defineSyncApi(API_EMIT, (name, ...args) => {  eventBus.emit(name, ...args);}, EmitProtocol);let cid;let cidErrMsg;let enabled;function normalizePushMessage(message) {  try {    return JSON.parse(message);  } catch (e) {  }  return message;}function invokePushCallback(args) {  if (args.type === "enabled") {    enabled = true;  } else if (args.type === "clientId") {    cid = args.cid;    cidErrMsg = args.errMsg;    invokeGetPushCidCallbacks(cid, args.errMsg);  } else if (args.type === "pushMsg") {    const message = {      type: "receive",      data: normalizePushMessage(args.message)    };    for (let i = 0; i < onPushMessageCallbacks.length; i++) {      const callback = onPushMessageCallbacks[i];      callback(message);      if (message.stopped) {        break;      }    }  } else if (args.type === "click") {    onPushMessageCallbacks.forEach((callback) => {      callback({        type: "click",        data: normalizePushMessage(args.message)      });    });  }}const getPushCidCallbacks = [];function invokeGetPushCidCallbacks(cid2, errMsg) {  getPushCidCallbacks.forEach((callback) => {    callback(cid2, errMsg);  });  getPushCidCallbacks.length = 0;}const API_GET_PUSH_CLIENT_ID = "getPushClientId";const getPushClientId = defineAsyncApi(API_GET_PUSH_CLIENT_ID, (_, { resolve, reject }) => {  Promise.resolve().then(() => {    if (typeof enabled === "undefined") {      enabled = false;      cid = "";      cidErrMsg = "uniPush is not enabled";    }    getPushCidCallbacks.push((cid2, errMsg) => {      if (cid2) {        resolve({ cid: cid2 });      } else {        reject(errMsg);      }    });    if (typeof cid !== "undefined") {      invokeGetPushCidCallbacks(cid, cidErrMsg);    }  });});const onPushMessageCallbacks = [];const onPushMessage = (fn) => {  if (onPushMessageCallbacks.indexOf(fn) === -1) {    onPushMessageCallbacks.push(fn);  }};const offPushMessage = (fn) => {  if (!fn) {    onPushMessageCallbacks.length = 0;  } else {    const index2 = onPushMessageCallbacks.indexOf(fn);    if (index2 > -1) {      onPushMessageCallbacks.splice(index2, 1);    }  }};const SYNC_API_RE = /^\$|__f__|getLocale|setLocale|sendNativeEvent|restoreGlobal|requireGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|rpx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64|getDeviceInfo|getAppBaseInfo|getWindowInfo|getSystemSetting|getAppAuthorizeSetting/;const CONTEXT_API_RE = /^create|Manager$/;const CONTEXT_API_RE_EXC = ["createBLEConnection"];const TASK_APIS = ["request", "downloadFile", "uploadFile", "connectSocket"];const ASYNC_API = ["createBLEConnection"];const CALLBACK_API_RE = /^on|^off/;function isContextApi(name) {  return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1;}function isSyncApi(name) {  return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1;}function isCallbackApi(name) {  return CALLBACK_API_RE.test(name) && name !== "onPush";}function isTaskApi(name) {  return TASK_APIS.indexOf(name) !== -1;}function shouldPromise(name) {  if (isContextApi(name) || isSyncApi(name) || isCallbackApi(name)) {    return false;  }  return true;}if (!Promise.prototype.finally) {  Promise.prototype.finally = function(onfinally) {    const promise = this.constructor;    return this.then((value) => promise.resolve(onfinally && onfinally()).then(() => value), (reason) => promise.resolve(onfinally && onfinally()).then(() => {      throw reason;    }));  };}function promisify(name, api) {  if (!shouldPromise(name)) {    return api;  }  if (!isFunction$2(api)) {    return api;  }  return function promiseApi(options = {}, ...rest) {    if (isFunction$2(options.success) || isFunction$2(options.fail) || isFunction$2(options.complete)) {      return wrapperReturnValue(name, invokeApi(name, api, options, rest));    }    return wrapperReturnValue(name, handlePromise(new Promise((resolve, reject) => {      invokeApi(name, api, extend$2({}, options, {        success: resolve,        fail: reject      }), rest);    })));  };}const CALLBACKS = ["success", "fail", "cancel", "complete"];function initWrapper(protocols2) {  function processCallback(methodName, method, returnValue) {    return function(res) {      return method(processReturnValue(methodName, res, returnValue));    };  }  function processArgs(methodName, fromArgs, argsOption = {}, returnValue = {}, keepFromArgs = false) {    if (isPlainObject$1(fromArgs)) {      const toArgs = keepFromArgs === true ? fromArgs : {};      if (isFunction$2(argsOption)) {        argsOption = argsOption(fromArgs, toArgs) || {};      }      for (const key in fromArgs) {        if (hasOwn(argsOption, key)) {          let keyOption = argsOption[key];          if (isFunction$2(keyOption)) {            keyOption = keyOption(fromArgs[key], fromArgs, toArgs);          }          if (!keyOption) {            console.warn(`微信小程序 ${methodName} 暂不支持 ${key}`);          } else if (isString$2(keyOption)) {            toArgs[keyOption] = fromArgs[key];          } else if (isPlainObject$1(keyOption)) {            toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;          }        } else if (CALLBACKS.indexOf(key) !== -1) {          const callback = fromArgs[key];          if (isFunction$2(callback)) {            toArgs[key] = processCallback(methodName, callback, returnValue);          }        } else {          if (!keepFromArgs && !hasOwn(toArgs, key)) {            toArgs[key] = fromArgs[key];          }        }      }      return toArgs;    } else if (isFunction$2(fromArgs)) {      if (isFunction$2(argsOption)) {        argsOption(fromArgs, {});      }      fromArgs = processCallback(methodName, fromArgs, returnValue);    }    return fromArgs;  }  function processReturnValue(methodName, res, returnValue, keepReturnValue = false) {    if (isFunction$2(protocols2.returnValue)) {      res = protocols2.returnValue(methodName, res);    }    const realKeepReturnValue = keepReturnValue || false;    return processArgs(methodName, res, returnValue, {}, realKeepReturnValue);  }  return function wrapper(methodName, method) {    const hasProtocol = hasOwn(protocols2, methodName);    if (!hasProtocol && typeof wx[methodName] !== "function") {      return method;    }    const needWrapper = hasProtocol || isFunction$2(protocols2.returnValue) || isContextApi(methodName) || isTaskApi(methodName);    const hasMethod = hasProtocol || isFunction$2(method);    if (!hasProtocol && !method) {      return function() {        console.error(`微信小程序 暂不支持${methodName}`);      };    }    if (!needWrapper || !hasMethod) {      return method;    }    const protocol = protocols2[methodName];    return function(arg1, arg2) {      let options = protocol || {};      if (isFunction$2(protocol)) {        options = protocol(arg1);      }      arg1 = processArgs(methodName, arg1, options.args, options.returnValue);      const args = [arg1];      if (typeof arg2 !== "undefined") {        args.push(arg2);      }      const returnValue = wx[options.name || methodName].apply(wx, args);      if (isContextApi(methodName) || isTaskApi(methodName)) {        if (returnValue && !returnValue.__v_skip) {          returnValue.__v_skip = true;        }      }      if (isSyncApi(methodName)) {        return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName));      }      return returnValue;    };  };}const getLocale = () => {  const app = isFunction$2(getApp) && getApp({ allowDefault: true });  if (app && app.$vm) {    return app.$vm.$locale;  }  return getLocaleLanguage$1();};const setLocale = (locale) => {  const app = isFunction$2(getApp) && getApp();  if (!app) {    return false;  }  const oldLocale = app.$vm.$locale;  if (oldLocale !== locale) {    app.$vm.$locale = locale;    onLocaleChangeCallbacks.forEach((fn) => fn({ locale }));    return true;  }  return false;};const onLocaleChangeCallbacks = [];const onLocaleChange = (fn) => {  if (onLocaleChangeCallbacks.indexOf(fn) === -1) {    onLocaleChangeCallbacks.push(fn);  }};if (typeof global !== "undefined") {  global.getLocale = getLocale;}const UUID_KEY = "__DC_STAT_UUID";let deviceId;function useDeviceId(global2 = wx) {  return function addDeviceId(_, toRes) {    deviceId = deviceId || global2.getStorageSync(UUID_KEY);    if (!deviceId) {      deviceId = Date.now() + "" + Math.floor(Math.random() * 1e7);      wx.setStorage({        key: UUID_KEY,        data: deviceId      });    }    toRes.deviceId = deviceId;  };}function addSafeAreaInsets(fromRes, toRes) {  if (fromRes.safeArea) {    const safeArea = fromRes.safeArea;    toRes.safeAreaInsets = {      top: safeArea.top,      left: safeArea.left,      right: fromRes.windowWidth - safeArea.right,      bottom: fromRes.screenHeight - safeArea.bottom    };  }}function getOSInfo(system, platform2) {  let osName = "";  let osVersion = "";  if (platform2 && false) {    osName = platform2;    osVersion = system;  } else {    osName = system.split(" ")[0] || platform2;    osVersion = system.split(" ")[1] || "";  }  osName = osName.toLocaleLowerCase();  switch (osName) {    case "harmony":    case "ohos":    case "openharmony":      osName = "harmonyos";      break;    case "iphone os":      osName = "ios";      break;    case "mac":    case "darwin":      osName = "macos";      break;    case "windows_nt":      osName = "windows";      break;  }  return {    osName,    osVersion  };}function populateParameters(fromRes, toRes) {  const { brand = "", model = "", system = "", language = "", theme, version: version2, platform: platform2, fontSizeSetting, SDKVersion, pixelRatio, deviceOrientation } = fromRes;  const { osName, osVersion } = getOSInfo(system, platform2);  let hostVersion = version2;  let deviceType = getGetDeviceType(fromRes, model);  let deviceBrand = getDeviceBrand(brand);  let _hostName = getHostName(fromRes);  let _deviceOrientation = deviceOrientation;  let _devicePixelRatio = pixelRatio;  let _SDKVersion = SDKVersion;  const hostLanguage = (language || "").replace(/_/g, "-");  const parameters = {    appId: "",    appName: "project2",    appVersion: "1.0.0",    appVersionCode: "100",    appLanguage: getAppLanguage(hostLanguage),    uniCompileVersion: "4.66",    uniCompilerVersion: "4.66",    uniRuntimeVersion: "4.66",    uniPlatform: "mp-weixin",    deviceBrand,    deviceModel: model,    deviceType,    devicePixelRatio: _devicePixelRatio,    deviceOrientation: _deviceOrientation,    osName,    osVersion,    hostTheme: theme,    hostVersion,    hostLanguage,    hostName: _hostName,    hostSDKVersion: _SDKVersion,    hostFontSizeSetting: fontSizeSetting,    windowTop: 0,    windowBottom: 0,    // TODO    osLanguage: void 0,    osTheme: void 0,    ua: void 0,    hostPackageName: void 0,    browserName: void 0,    browserVersion: void 0,    isUniAppX: false  };  extend$2(toRes, parameters);}function getGetDeviceType(fromRes, model) {  let deviceType = fromRes.deviceType || "phone";  {    const deviceTypeMaps = {      ipad: "pad",      windows: "pc",      mac: "pc"    };    const deviceTypeMapsKeys = Object.keys(deviceTypeMaps);    const _model = model.toLocaleLowerCase();    for (let index2 = 0; index2 < deviceTypeMapsKeys.length; index2++) {      const _m = deviceTypeMapsKeys[index2];      if (_model.indexOf(_m) !== -1) {        deviceType = deviceTypeMaps[_m];        break;      }    }  }  return deviceType;}function getDeviceBrand(brand) {  let deviceBrand = brand;  if (deviceBrand) {    deviceBrand = deviceBrand.toLocaleLowerCase();  }  return deviceBrand;}function getAppLanguage(defaultLanguage) {  return getLocale ? getLocale() : defaultLanguage;}function getHostName(fromRes) {  const _platform = "WeChat";  let _hostName = fromRes.hostName || _platform;  {    if (fromRes.environment) {      _hostName = fromRes.environment;    } else if (fromRes.host && fromRes.host.env) {      _hostName = fromRes.host.env;    }  }  return _hostName;}const getSystemInfo = {  returnValue: (fromRes, toRes) => {    addSafeAreaInsets(fromRes, toRes);    useDeviceId()(fromRes, toRes);    populateParameters(fromRes, toRes);  }};const getSystemInfoSync = getSystemInfo;const redirectTo = {};const previewImage = {  args(fromArgs, toArgs) {    let currentIndex = parseInt(fromArgs.current);    if (isNaN(currentIndex)) {      return;    }    const urls = fromArgs.urls;    if (!isArray$2(urls)) {      return;    }    const len = urls.length;    if (!len) {      return;    }    if (currentIndex < 0) {      currentIndex = 0;    } else if (currentIndex >= len) {      currentIndex = len - 1;    }    if (currentIndex > 0) {      toArgs.current = urls[currentIndex];      toArgs.urls = urls.filter((item, index2) => index2 < currentIndex ? item !== urls[currentIndex] : true);    } else {      toArgs.current = urls[0];    }    return {      indicator: false,      loop: false    };  }};const showActionSheet = {  args(fromArgs, toArgs) {    toArgs.alertText = fromArgs.title;  }};const getDeviceInfo = {  returnValue: (fromRes, toRes) => {    const { brand, model, system = "", platform: platform2 = "" } = fromRes;    let deviceType = getGetDeviceType(fromRes, model);    let deviceBrand = getDeviceBrand(brand);    useDeviceId()(fromRes, toRes);    const { osName, osVersion } = getOSInfo(system, platform2);    toRes = sortObject(extend$2(toRes, {      deviceType,      deviceBrand,      deviceModel: model,      osName,      osVersion    }));  }};const getAppBaseInfo = {  returnValue: (fromRes, toRes) => {    const { version: version2, language, SDKVersion, theme } = fromRes;    let _hostName = getHostName(fromRes);    let hostLanguage = (language || "").replace(/_/g, "-");    const parameters = {      hostVersion: version2,      hostLanguage,      hostName: _hostName,      hostSDKVersion: SDKVersion,      hostTheme: theme,      appId: "",      appName: "project2",      appVersion: "1.0.0",      appVersionCode: "100",      appLanguage: getAppLanguage(hostLanguage),      isUniAppX: false,      uniPlatform: "mp-weixin",      uniCompileVersion: "4.66",      uniCompilerVersion: "4.66",      uniRuntimeVersion: "4.66"    };    extend$2(toRes, parameters);  }};const getWindowInfo = {  returnValue: (fromRes, toRes) => {    addSafeAreaInsets(fromRes, toRes);    toRes = sortObject(extend$2(toRes, {      windowTop: 0,      windowBottom: 0    }));  }};const getAppAuthorizeSetting = {  returnValue: function(fromRes, toRes) {    const { locationReducedAccuracy } = fromRes;    toRes.locationAccuracy = "unsupported";    if (locationReducedAccuracy === true) {      toRes.locationAccuracy = "reduced";    } else if (locationReducedAccuracy === false) {      toRes.locationAccuracy = "full";    }  }};const onError = {  args(fromArgs) {    const app = getApp({ allowDefault: true }) || {};    if (!app.$vm) {      if (!wx.$onErrorHandlers) {        wx.$onErrorHandlers = [];      }      wx.$onErrorHandlers.push(fromArgs);    } else {      injectHook(ON_ERROR, fromArgs, app.$vm.$);    }  }};const offError = {  args(fromArgs) {    const app = getApp({ allowDefault: true }) || {};    if (!app.$vm) {      if (!wx.$onErrorHandlers) {        return;      }      const index2 = wx.$onErrorHandlers.findIndex((fn) => fn === fromArgs);      if (index2 !== -1) {        wx.$onErrorHandlers.splice(index2, 1);      }    } else if (fromArgs.__weh) {      const onErrors = app.$vm.$[ON_ERROR];      if (onErrors) {        const index2 = onErrors.indexOf(fromArgs.__weh);        if (index2 > -1) {          onErrors.splice(index2, 1);        }      }    }  }};const onSocketOpen = {  args() {    if (wx.__uni_console__) {      if (wx.__uni_console_warned__) {        return;      }      wx.__uni_console_warned__ = true;      console.warn(`开发模式下小程序日志回显会使用 socket 连接,为了避免冲突,建议使用 SocketTask 的方式去管理 WebSocket 或手动关闭日志回显功能。[详情](https://uniapp.dcloud.net.cn/tutorial/run/mp-log.html)`);    }  }};const onSocketMessage = onSocketOpen;const baseApis = {  $on,  $off,  $once,  $emit,  upx2px,  rpx2px: upx2px,  interceptors,  addInterceptor,  removeInterceptor,  onCreateVueApp,  invokeCreateVueAppHook,  getLocale,  setLocale,  onLocaleChange,  getPushClientId,  onPushMessage,  offPushMessage,  invokePushCallback,  __f__};function initUni(api, protocols2, platform2 = wx) {  const wrapper = initWrapper(protocols2);  const UniProxyHandlers = {    get(target, key) {      if (hasOwn(target, key)) {        return target[key];      }      if (hasOwn(api, key)) {        return promisify(key, api[key]);      }      if (hasOwn(baseApis, key)) {        return promisify(key, baseApis[key]);      }      return promisify(key, wrapper(key, platform2[key]));    }  };  return new Proxy({}, UniProxyHandlers);}function initGetProvider(providers) {  return function getProvider2({ service, success, fail, complete }) {    let res;    if (providers[service]) {      res = {        errMsg: "getProvider:ok",        service,        provider: providers[service]      };      isFunction$2(success) && success(res);    } else {      res = {        errMsg: "getProvider:fail:服务[" + service + "]不存在"      };      isFunction$2(fail) && fail(res);    }    isFunction$2(complete) && complete(res);  };}const objectKeys = [  "qy",  "env",  "error",  "version",  "lanDebug",  "cloud",  "serviceMarket",  "router",  "worklet",  "__webpack_require_UNI_MP_PLUGIN__"];const singlePageDisableKey = ["lanDebug", "router", "worklet"];const launchOption = wx.getLaunchOptionsSync ? wx.getLaunchOptionsSync() : null;function isWxKey(key) {  if (launchOption && launchOption.scene === 1154 && singlePageDisableKey.includes(key)) {    return false;  }  return objectKeys.indexOf(key) > -1 || typeof wx[key] === "function";}function initWx() {  const newWx = {};  for (const key in wx) {    if (isWxKey(key)) {      newWx[key] = wx[key];    }  }  if (typeof globalThis !== "undefined" && typeof requireMiniProgram === "undefined") {    globalThis.wx = newWx;  }  return newWx;}const mocks$1 = ["__route__", "__wxExparserNodeId__", "__wxWebviewId__"];const getProvider = initGetProvider({  oauth: ["weixin"],  share: ["weixin"],  payment: ["wxpay"],  push: ["weixin"]});function initComponentMocks(component) {  const res = /* @__PURE__ */ Object.create(null);  mocks$1.forEach((name) => {    res[name] = component[name];  });  return res;}function createSelectorQuery() {  const query = wx$2.createSelectorQuery();  const oldIn = query.in;  query.in = function newIn(component) {    if (component.$scope) {      return oldIn.call(this, component.$scope);    }    return oldIn.call(this, initComponentMocks(component));  };  return query;}const wx$2 = initWx();if (!wx$2.canIUse("getAppBaseInfo")) {  wx$2.getAppBaseInfo = wx$2.getSystemInfoSync;}if (!wx$2.canIUse("getWindowInfo")) {  wx$2.getWindowInfo = wx$2.getSystemInfoSync;}if (!wx$2.canIUse("getDeviceInfo")) {  wx$2.getDeviceInfo = wx$2.getSystemInfoSync;}let baseInfo = wx$2.getAppBaseInfo && wx$2.getAppBaseInfo();if (!baseInfo) {  baseInfo = wx$2.getSystemInfoSync();}const host = baseInfo ? baseInfo.host : null;const shareVideoMessage = host && host.env === "SAAASDK" ? wx$2.miniapp.shareVideoMessage : wx$2.shareVideoMessage;var shims = /* @__PURE__ */ Object.freeze({  __proto__: null,  createSelectorQuery,  getProvider,  shareVideoMessage});const compressImage = {  args(fromArgs, toArgs) {    if (fromArgs.compressedHeight && !toArgs.compressHeight) {      toArgs.compressHeight = fromArgs.compressedHeight;    }    if (fromArgs.compressedWidth && !toArgs.compressWidth) {      toArgs.compressWidth = fromArgs.compressedWidth;    }  }};var protocols = /* @__PURE__ */ Object.freeze({  __proto__: null,  compressImage,  getAppAuthorizeSetting,  getAppBaseInfo,  getDeviceInfo,  getSystemInfo,  getSystemInfoSync,  getWindowInfo,  offError,  onError,  onSocketMessage,  onSocketOpen,  previewImage,  redirectTo,  showActionSheet});const wx$1 = initWx();var index = initUni(shims, protocols, wx$1);function initRuntimeSocket(hosts, port, id) {  if (hosts == "" || port == "" || id == "")    return Promise.resolve(null);  return hosts.split(",").reduce((promise, host2) => {    return promise.then((socket) => {      if (socket != null)        return Promise.resolve(socket);      return tryConnectSocket(host2, port, id);    });  }, Promise.resolve(null));}const SOCKET_TIMEOUT = 500;function tryConnectSocket(host2, port, id) {  return new Promise((resolve, reject) => {    const socket = index.connectSocket({      url: `ws://${host2}:${port}/${id}`,      multiple: true,      // 支付宝小程序 是否开启多实例      fail() {        resolve(null);      }    });    const timer = setTimeout(() => {      socket.close({        code: 1006,        reason: "connect timeout"      });      resolve(null);    }, SOCKET_TIMEOUT);    socket.onOpen((e) => {      clearTimeout(timer);      resolve(socket);    });    socket.onClose((e) => {      clearTimeout(timer);      resolve(null);    });    socket.onError((e) => {      clearTimeout(timer);      resolve(null);    });  });}const CONSOLE_TYPES = ["log", "warn", "error", "info", "debug"];const originalConsole = /* @__PURE__ */ CONSOLE_TYPES.reduce((methods, type) => {  methods[type] = console[type].bind(console);  return methods;}, {});let sendError = null;const errorQueue = /* @__PURE__ */ new Set();const errorExtra = {};function sendErrorMessages(errors) {  if (sendError == null) {    errors.forEach((error) => {      errorQueue.add(error);    });    return;  }  const data = errors.map((err) => {    if (typeof err === "string") {      return err;    }    const isPromiseRejection = err && "promise" in err && "reason" in err;    const prefix = isPromiseRejection ? "UnhandledPromiseRejection: " : "";    if (isPromiseRejection) {      err = err.reason;    }    if (err instanceof Error && err.stack) {      if (err.message && !err.stack.includes(err.message)) {        return `${prefix}${err.message}${err.stack}`;      }      return `${prefix}${err.stack}`;    }    if (typeof err === "object" && err !== null) {      try {        return prefix + JSON.stringify(err);      } catch (err2) {        return prefix + String(err2);      }    }    return prefix + String(err);  }).filter(Boolean);  if (data.length > 0) {    sendError(JSON.stringify(Object.assign({      type: "error",      data    }, errorExtra)));  }}function setSendError(value, extra = {}) {  sendError = value;  Object.assign(errorExtra, extra);  if (value != null && errorQueue.size > 0) {    const errors = Array.from(errorQueue);    errorQueue.clear();    sendErrorMessages(errors);  }}function initOnError() {  function onError2(error) {    try {      if (typeof PromiseRejectionEvent !== "undefined" && error instanceof PromiseRejectionEvent && error.reason instanceof Error && error.reason.message && error.reason.message.includes(`Cannot create property 'errMsg' on string 'taskId`)) {        return;      }      if (true) {        originalConsole.error(error);      }      sendErrorMessages([error]);    } catch (err) {      originalConsole.error(err);    }  }  if (typeof index.onError === "function") {    index.onError(onError2);  }  if (typeof index.onUnhandledRejection === "function") {    index.onUnhandledRejection(onError2);  }  return function offError2() {    if (typeof index.offError === "function") {      index.offError(onError2);    }    if (typeof index.offUnhandledRejection === "function") {      index.offUnhandledRejection(onError2);    }  };}function formatMessage(type, args) {  try {    return {      type,      args: formatArgs(args)    };  } catch (e) {  }  return {    type,    args: []  };}function formatArgs(args) {  return args.map((arg) => formatArg(arg));}function formatArg(arg, depth = 0) {  if (depth >= 7) {    return {      type: "object",      value: "[Maximum depth reached]"    };  }  const type = typeof arg;  switch (type) {    case "string":      return formatString(arg);    case "number":      return formatNumber(arg);    case "boolean":      return formatBoolean(arg);    case "object":      try {        return formatObject(arg, depth);      } catch (e) {        return {          type: "object",          value: {            properties: []          }        };      }    case "undefined":      return formatUndefined();    case "function":      return formatFunction(arg);    case "symbol": {      return formatSymbol(arg);    }    case "bigint":      return formatBigInt(arg);  }}function formatFunction(value) {  return {    type: "function",    value: `function ${value.name}() {}`  };}function formatUndefined() {  return {    type: "undefined"  };}function formatBoolean(value) {  return {    type: "boolean",    value: String(value)  };}function formatNumber(value) {  return {    type: "number",    value: String(value)  };}function formatBigInt(value) {  return {    type: "bigint",    value: String(value)  };}function formatString(value) {  return {    type: "string",    value  };}function formatSymbol(value) {  return {    type: "symbol",    value: value.description  };}function formatObject(value, depth) {  if (value === null) {    return {      type: "null"    };  }  {    if (isComponentPublicInstance(value)) {      return formatComponentPublicInstance(value, depth);    }    if (isComponentInternalInstance(value)) {      return formatComponentInternalInstance(value, depth);    }    if (isUniElement(value)) {      return formatUniElement(value, depth);    }    if (isCSSStyleDeclaration(value)) {      return formatCSSStyleDeclaration(value, depth);    }  }  if (Array.isArray(value)) {    return {      type: "object",      subType: "array",      value: {        properties: value.map((v, i) => formatArrayElement(v, i, depth + 1))      }    };  }  if (value instanceof Set) {    return {      type: "object",      subType: "set",      className: "Set",      description: `Set(${value.size})`,      value: {        entries: Array.from(value).map((v) => formatSetEntry(v, depth + 1))      }    };  }  if (value instanceof Map) {    return {      type: "object",      subType: "map",      className: "Map",      description: `Map(${value.size})`,      value: {        entries: Array.from(value.entries()).map((v) => formatMapEntry(v, depth + 1))      }    };  }  if (value instanceof Promise) {    return {      type: "object",      subType: "promise",      value: {        properties: []      }    };  }  if (value instanceof RegExp) {    return {      type: "object",      subType: "regexp",      value: String(value),      className: "Regexp"    };  }  if (value instanceof Date) {    return {      type: "object",      subType: "date",      value: String(value),      className: "Date"    };  }  if (value instanceof Error) {    return {      type: "object",      subType: "error",      value: value.message || String(value),      className: value.name || "Error"    };  }  let className = void 0;  {    const constructor = value.constructor;    if (constructor) {      if (constructor.get$UTSMetadata$) {        className = constructor.get$UTSMetadata$().name;      }    }  }  let entries = Object.entries(value);  if (isHarmonyBuilderParams(value)) {    entries = entries.filter(([key]) => key !== "modifier" && key !== "nodeContent");  }  return {    type: "object",    className,    value: {      properties: entries.map((entry) => formatObjectProperty(entry[0], entry[1], depth + 1))    }  };}function isHarmonyBuilderParams(value) {  return value.modifier && value.modifier._attribute && value.nodeContent;}function isComponentPublicInstance(value) {  return value.$ && isComponentInternalInstance(value.$);}function isComponentInternalInstance(value) {  return value.type && value.uid != null && value.appContext;}function formatComponentPublicInstance(value, depth) {  return {    type: "object",    className: "ComponentPublicInstance",    value: {      properties: Object.entries(value.$.type).map(([name, value2]) => formatObjectProperty(name, value2, depth + 1))    }  };}function formatComponentInternalInstance(value, depth) {  return {    type: "object",    className: "ComponentInternalInstance",    value: {      properties: Object.entries(value.type).map(([name, value2]) => formatObjectProperty(name, value2, depth + 1))    }  };}function isUniElement(value) {  return value.style && value.tagName != null && value.nodeName != null;}function formatUniElement(value, depth) {  return {    type: "object",    // 非 x 没有 UniElement 的概念    // className: 'UniElement',    value: {      properties: Object.entries(value).filter(([name]) => [        "id",        "tagName",        "nodeName",        "dataset",        "offsetTop",        "offsetLeft",        "style"      ].includes(name)).map(([name, value2]) => formatObjectProperty(name, value2, depth + 1))    }  };}function isCSSStyleDeclaration(value) {  return typeof value.getPropertyValue === "function" && typeof value.setProperty === "function" && value.$styles;}function formatCSSStyleDeclaration(style, depth) {  return {    type: "object",    value: {      properties: Object.entries(style.$styles).map(([name, value]) => formatObjectProperty(name, value, depth + 1))    }  };}function formatObjectProperty(name, value, depth) {  const result = formatArg(value, depth);  result.name = name;  return result;}function formatArrayElement(value, index2, depth) {  const result = formatArg(value, depth);  result.name = `${index2}`;  return result;}function formatSetEntry(value, depth) {  return {    value: formatArg(value, depth)  };}function formatMapEntry(value, depth) {  return {    key: formatArg(value[0], depth),    value: formatArg(value[1], depth)  };}let sendConsole = null;const messageQueue = [];const messageExtra = {};const EXCEPTION_BEGIN_MARK = "---BEGIN:EXCEPTION---";const EXCEPTION_END_MARK = "---END:EXCEPTION---";function sendConsoleMessages(messages) {  if (sendConsole == null) {    messageQueue.push(...messages);    return;  }  sendConsole(JSON.stringify(Object.assign({    type: "console",    data: messages  }, messageExtra)));}function setSendConsole(value, extra = {}) {  sendConsole = value;  Object.assign(messageExtra, extra);  if (value != null && messageQueue.length > 0) {    const messages = messageQueue.slice();    messageQueue.length = 0;    sendConsoleMessages(messages);  }}const atFileRegex = /^\s*at\s+[\w/./-]+:\d+$/;function rewriteConsole() {  function wrapConsole(type) {    return function(...args) {      const originalArgs = [...args];      if (originalArgs.length) {        const maybeAtFile = originalArgs[originalArgs.length - 1];        if (typeof maybeAtFile === "string" && atFileRegex.test(maybeAtFile)) {          originalArgs.pop();        }      }      {        originalConsole[type](...originalArgs);      }      if (type === "error" && args.length === 1) {        const arg = args[0];        if (typeof arg === "string" && arg.startsWith(EXCEPTION_BEGIN_MARK)) {          const startIndex = EXCEPTION_BEGIN_MARK.length;          const endIndex = arg.length - EXCEPTION_END_MARK.length;          sendErrorMessages([arg.slice(startIndex, endIndex)]);          return;        } else if (arg instanceof Error) {          sendErrorMessages([arg]);          return;        }      }      sendConsoleMessages([formatMessage(type, args)]);    };  }  if (isConsoleWritable()) {    CONSOLE_TYPES.forEach((type) => {      console[type] = wrapConsole(type);    });    return function restoreConsole() {      CONSOLE_TYPES.forEach((type) => {        console[type] = originalConsole[type];      });    };  } else {    {      if (typeof index !== "undefined" && index.__f__) {        const oldLog = index.__f__;        if (oldLog) {          index.__f__ = function(...args) {            const [type, filename, ...rest] = args;            oldLog(type, "", ...rest);            sendConsoleMessages([formatMessage(type, [...rest, filename])]);          };          return function restoreConsole() {            index.__f__ = oldLog;          };        }      }    }  }  return function restoreConsole() {  };}function isConsoleWritable() {  const value = console.log;  const sym = Symbol();  try {    console.log = sym;  } catch (ex) {    return false;  }  const isWritable = console.log === sym;  console.log = value;  return isWritable;}function initRuntimeSocketService() {  const hosts = "127.0.0.1,172.20.10.2";  const port = "8090";  const id = "mp-weixin_gClqBU";  const lazy = typeof swan !== "undefined";  let restoreError = lazy ? () => {  } : initOnError();  let restoreConsole = lazy ? () => {  } : rewriteConsole();  return Promise.resolve().then(() => {    if (lazy) {      restoreError = initOnError();      restoreConsole = rewriteConsole();    }    return initRuntimeSocket(hosts, port, id).then((socket) => {      if (!socket) {        restoreError();        restoreConsole();        originalConsole.error(wrapError("开发模式下日志通道建立 socket 连接失败。"));        {          originalConsole.error(wrapError("小程序平台,请勾选不校验合法域名配置。"));        }        originalConsole.error(wrapError("如果是运行到真机,请确认手机与电脑处于同一网络。"));        return false;      }      {        initMiniProgramGlobalFlag();      }      socket.onClose(() => {        {          originalConsole.error(wrapError("开发模式下日志通道 socket 连接关闭,请在 HBuilderX 中重新运行。"));        }        restoreError();        restoreConsole();      });      setSendConsole((data) => {        socket.send({          data        });      });      setSendError((data) => {        socket.send({          data        });      });      return true;    });  });}const ERROR_CHAR = "";function wrapError(error) {  return `${ERROR_CHAR}${error}${ERROR_CHAR}`;}function initMiniProgramGlobalFlag() {  if (typeof wx$1 !== "undefined") {    wx$1.__uni_console__ = true;  } else if (typeof my !== "undefined") {    my.__uni_console__ = true;  } else if (typeof tt !== "undefined") {    tt.__uni_console__ = true;  } else if (typeof swan !== "undefined") {    swan.__uni_console__ = true;  } else if (typeof qq !== "undefined") {    qq.__uni_console__ = true;  } else if (typeof ks !== "undefined") {    ks.__uni_console__ = true;  } else if (typeof jd !== "undefined") {    jd.__uni_console__ = true;  } else if (typeof xhs !== "undefined") {    xhs.__uni_console__ = true;  } else if (typeof has !== "undefined") {    has.__uni_console__ = true;  } else if (typeof qa !== "undefined") {    qa.__uni_console__ = true;  }}initRuntimeSocketService();const _export_sfc = (sfc, props) => {  const target = sfc.__vccOpts || sfc;  for (const [key, val] of props) {    target[key] = val;  }  return target;};function initVueIds(vueIds, mpInstance) {  if (!vueIds) {    return;  }  const ids = vueIds.split(",");  const len = ids.length;  if (len === 1) {    mpInstance._$vueId = ids[0];  } else if (len === 2) {    mpInstance._$vueId = ids[0];    mpInstance._$vuePid = ids[1];  }}const EXTRAS = ["externalClasses"];function initExtraOptions(miniProgramComponentOptions, vueOptions) {  EXTRAS.forEach((name) => {    if (hasOwn(vueOptions, name)) {      miniProgramComponentOptions[name] = vueOptions[name];    }  });}const WORKLET_RE = /_(.*)_worklet_factory_/;function initWorkletMethods(mpMethods, vueMethods) {  if (vueMethods) {    Object.keys(vueMethods).forEach((name) => {      const matches = name.match(WORKLET_RE);      if (matches) {        const workletName = matches[1];        mpMethods[name] = vueMethods[name];        mpMethods[workletName] = vueMethods[workletName];      }    });  }}function initWxsCallMethods(methods, wxsCallMethods) {  if (!isArray$2(wxsCallMethods)) {    return;  }  wxsCallMethods.forEach((callMethod) => {    methods[callMethod] = function(args) {      return this.$vm[callMethod](args);    };  });}function selectAllComponents(mpInstance, selector, $refs) {  const components = mpInstance.selectAllComponents(selector);  components.forEach((component) => {    const ref2 = component.properties.uR;    $refs[ref2] = component.$vm || component;  });}function initRefs(instance, mpInstance) {  Object.defineProperty(instance, "refs", {    get() {      const $refs = {};      selectAllComponents(mpInstance, ".r", $refs);      const forComponents = mpInstance.selectAllComponents(".r-i-f");      forComponents.forEach((component) => {        const ref2 = component.properties.uR;        if (!ref2) {          return;        }        if (!$refs[ref2]) {          $refs[ref2] = [];        }        $refs[ref2].push(component.$vm || component);      });      return $refs;    }  });}function findVmByVueId(instance, vuePid) {  const $children = instance.$children;  for (let i = $children.length - 1; i >= 0; i--) {    const childVm = $children[i];    if (childVm.$scope._$vueId === vuePid) {      return childVm;    }  }  let parentVm;  for (let i = $children.length - 1; i >= 0; i--) {    parentVm = findVmByVueId($children[i], vuePid);    if (parentVm) {      return parentVm;    }  }}function getLocaleLanguage() {  var _a;  let localeLanguage = "";  {    const appBaseInfo = ((_a = wx.getAppBaseInfo) === null || _a === void 0 ? void 0 : _a.call(wx)) || wx.getSystemInfoSync();    const language = appBaseInfo && appBaseInfo.language ? appBaseInfo.language : LOCALE_EN;    localeLanguage = normalizeLocale(language) || LOCALE_EN;  }  return localeLanguage;}const MP_METHODS = [  "createSelectorQuery",  "createIntersectionObserver",  "selectAllComponents",  "selectComponent"];function createEmitFn(oldEmit, ctx) {  return function emit2(event, ...args) {    const scope = ctx.$scope;    if (scope && event) {      const detail = { __args__: args };      {        scope.triggerEvent(event, detail);      }    }    return oldEmit.apply(this, [event, ...args]);  };}function initBaseInstance(instance, options) {  const ctx = instance.ctx;  ctx.mpType = options.mpType;  ctx.$mpType = options.mpType;  ctx.$mpPlatform = "mp-weixin";  ctx.$scope = options.mpInstance;  {    Object.defineProperties(ctx, {      // only id      [VIRTUAL_HOST_ID]: {        get() {          const id = this.$scope.data[VIRTUAL_HOST_ID];          return id === void 0 ? "" : id;        }      }    });  }  ctx.$mp = {};  {    ctx._self = {};  }  instance.slots = {};  if (isArray$2(options.slots) && options.slots.length) {    options.slots.forEach((name) => {      instance.slots[name] = true;    });    if (instance.slots[SLOT_DEFAULT_NAME]) {      instance.slots.default = true;    }  }  ctx.getOpenerEventChannel = function() {    {      return options.mpInstance.getOpenerEventChannel();    }  };  ctx.$hasHook = hasHook;  ctx.$callHook = callHook;  instance.emit = createEmitFn(instance.emit, ctx);}function initComponentInstance(instance, options) {  initBaseInstance(instance, options);  const ctx = instance.ctx;  MP_METHODS.forEach((method) => {    ctx[method] = function(...args) {      const mpInstance = ctx.$scope;      if (mpInstance && mpInstance[method]) {        return mpInstance[method].apply(mpInstance, args);      }    };  });}function initMocks(instance, mpInstance, mocks2) {  const ctx = instance.ctx;  mocks2.forEach((mock) => {    if (hasOwn(mpInstance, mock)) {      instance[mock] = ctx[mock] = mpInstance[mock];    }  });}function hasHook(name) {  const hooks = this.$[name];  if (hooks && hooks.length) {    return true;  }  return false;}function callHook(name, args) {  if (name === "mounted") {    callHook.call(this, "bm");    this.$.isMounted = true;    name = "m";  }  const hooks = this.$[name];  return hooks && invokeArrayFns(hooks, args);}const PAGE_INIT_HOOKS = [  ON_LOAD,  ON_SHOW,  ON_HIDE,  ON_UNLOAD,  ON_RESIZE,  ON_TAB_ITEM_TAP,  ON_REACH_BOTTOM,  ON_PULL_DOWN_REFRESH,  ON_ADD_TO_FAVORITES  // 'onReady', // lifetimes.ready  // 'onPageScroll', // 影响性能,开发者手动注册  // 'onShareTimeline', // 右上角菜单,开发者手动注册  // 'onShareAppMessage' // 右上角菜单,开发者手动注册];function findHooks(vueOptions, hooks = /* @__PURE__ */ new Set()) {  if (vueOptions) {    Object.keys(vueOptions).forEach((name) => {      if (isUniLifecycleHook(name, vueOptions[name])) {        hooks.add(name);      }    });    {      const { extends: extendsOptions, mixins } = vueOptions;      if (mixins) {        mixins.forEach((mixin) => findHooks(mixin, hooks));      }      if (extendsOptions) {        findHooks(extendsOptions, hooks);      }    }  }  return hooks;}function initHook(mpOptions, hook, excludes) {  if (excludes.indexOf(hook) === -1 && !hasOwn(mpOptions, hook)) {    mpOptions[hook] = function(args) {      return this.$vm && this.$vm.$callHook(hook, args);    };  }}const EXCLUDE_HOOKS = [ON_READY];function initHooks(mpOptions, hooks, excludes = EXCLUDE_HOOKS) {  hooks.forEach((hook) => initHook(mpOptions, hook, excludes));}function initUnknownHooks(mpOptions, vueOptions, excludes = EXCLUDE_HOOKS) {  findHooks(vueOptions).forEach((hook) => initHook(mpOptions, hook, excludes));}function initRuntimeHooks(mpOptions, runtimeHooks) {  if (!runtimeHooks) {    return;  }  const hooks = Object.keys(MINI_PROGRAM_PAGE_RUNTIME_HOOKS);  hooks.forEach((hook) => {    if (runtimeHooks & MINI_PROGRAM_PAGE_RUNTIME_HOOKS[hook]) {      initHook(mpOptions, hook, []);    }  });}const findMixinRuntimeHooks = /* @__PURE__ */ once(() => {  const runtimeHooks = [];  const app = isFunction$2(getApp) && getApp({ allowDefault: true });  if (app && app.$vm && app.$vm.$) {    const mixins = app.$vm.$.appContext.mixins;    if (isArray$2(mixins)) {      const hooks = Object.keys(MINI_PROGRAM_PAGE_RUNTIME_HOOKS);      mixins.forEach((mixin) => {        hooks.forEach((hook) => {          if (hasOwn(mixin, hook) && !runtimeHooks.includes(hook)) {            runtimeHooks.push(hook);          }        });      });    }  }  return runtimeHooks;});function initMixinRuntimeHooks(mpOptions) {  initHooks(mpOptions, findMixinRuntimeHooks());}const HOOKS = [  ON_SHOW,  ON_HIDE,  ON_ERROR,  ON_THEME_CHANGE,  ON_PAGE_NOT_FOUND,  ON_UNHANDLE_REJECTION];function parseApp(instance, parseAppOptions) {  const internalInstance = instance.$;  const appOptions = {    globalData: instance.$options && instance.$options.globalData || {},    $vm: instance,    // mp-alipay 组件 data 初始化比 onLaunch 早,提前挂载    onLaunch(options) {      this.$vm = instance;      const ctx = internalInstance.ctx;      if (this.$vm && ctx.$scope && ctx.$callHook) {        return;      }      initBaseInstance(internalInstance, {        mpType: "app",        mpInstance: this,        slots: []      });      ctx.globalData = this.globalData;      instance.$callHook(ON_LAUNCH, options);    }  };  const onErrorHandlers = wx.$onErrorHandlers;  if (onErrorHandlers) {    onErrorHandlers.forEach((fn) => {      injectHook(ON_ERROR, fn, internalInstance);    });    onErrorHandlers.length = 0;  }  initLocale(instance);  const vueOptions = instance.$.type;  initHooks(appOptions, HOOKS);  initUnknownHooks(appOptions, vueOptions);  {    const methods = vueOptions.methods;    methods && extend$2(appOptions, methods);  }  return appOptions;}function initCreateApp(parseAppOptions) {  return function createApp2(vm) {    return App(parseApp(vm));  };}function initCreateSubpackageApp(parseAppOptions) {  return function createApp2(vm) {    const appOptions = parseApp(vm);    const app = isFunction$2(getApp) && getApp({      allowDefault: true    });    if (!app)      return;    vm.$.ctx.$scope = app;    const globalData = app.globalData;    if (globalData) {      Object.keys(appOptions.globalData).forEach((name) => {        if (!hasOwn(globalData, name)) {          globalData[name] = appOptions.globalData[name];        }      });    }    Object.keys(appOptions).forEach((name) => {      if (!hasOwn(app, name)) {        app[name] = appOptions[name];      }    });    initAppLifecycle(appOptions, vm);  };}function initAppLifecycle(appOptions, vm) {  if (isFunction$2(appOptions.onLaunch)) {    const args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();    appOptions.onLaunch(args);  }  if (isFunction$2(appOptions.onShow) && wx.onAppShow) {    wx.onAppShow((args) => {      vm.$callHook("onShow", args);    });  }  if (isFunction$2(appOptions.onHide) && wx.onAppHide) {    wx.onAppHide((args) => {      vm.$callHook("onHide", args);    });  }}function initLocale(appVm) {  const locale = ref(getLocaleLanguage());  Object.defineProperty(appVm, "$locale", {    get() {      return locale.value;    },    set(v) {      locale.value = v;    }  });}const builtInProps = [  // 百度小程序,快手小程序自定义组件不支持绑定动态事件,动态dataset,故通过props传递事件信息  // event-opts  "eO",  // 组件 ref  "uR",  // 组件 ref-in-for  "uRIF",  // 组件 id  "uI",  // 组件类型 m: 小程序组件  "uT",  // 组件 props  "uP",  // 小程序不能直接定义 $slots 的 props,所以通过 vueSlots 转换到 $slots  "uS"];function initDefaultProps(options, isBehavior = false) {  const properties = {};  if (!isBehavior) {    let observerSlots = function(newVal) {      const $slots = /* @__PURE__ */ Object.create(null);      newVal && newVal.forEach((slotName) => {        $slots[slotName] = true;      });      this.setData({        $slots      });    };    builtInProps.forEach((name) => {      properties[name] = {        type: null,        value: ""      };    });    properties.uS = {      type: null,      value: []    };    {      properties.uS.observer = observerSlots;    }  }  if (options.behaviors) {    if (options.behaviors.includes("wx://form-field")) {      if (!options.properties || !options.properties.name) {        properties.name = {          type: null,          value: ""        };      }      if (!options.properties || !options.properties.value) {        properties.value = {          type: null,          value: ""        };      }    }  }  return properties;}function initVirtualHostProps(options) {  const properties = {};  {    if (options && options.virtualHost) {      properties[VIRTUAL_HOST_STYLE] = {        type: null,        value: ""      };      properties[VIRTUAL_HOST_CLASS] = {        type: null,        value: ""      };      properties[VIRTUAL_HOST_HIDDEN] = {        type: null,        value: ""      };      properties[VIRTUAL_HOST_ID] = {        type: null,        value: ""      };    }  }  return properties;}function initProps(mpComponentOptions) {  if (!mpComponentOptions.properties) {    mpComponentOptions.properties = {};  }  extend$2(mpComponentOptions.properties, initDefaultProps(mpComponentOptions), initVirtualHostProps(mpComponentOptions.options));}const PROP_TYPES = [String, Number, Boolean, Object, Array, null];function parsePropType(type, defaultValue) {  if (isArray$2(type) && type.length === 1) {    return type[0];  }  return type;}function normalizePropType(type, defaultValue) {  const res = parsePropType(type);  return PROP_TYPES.indexOf(res) !== -1 ? res : null;}function initPageProps({ properties }, rawProps) {  if (isArray$2(rawProps)) {    rawProps.forEach((key) => {      properties[key] = {        type: String,        value: ""      };    });  } else if (isPlainObject$1(rawProps)) {    Object.keys(rawProps).forEach((key) => {      const opts = rawProps[key];      if (isPlainObject$1(opts)) {        let value = opts.default;        if (isFunction$2(value)) {          value = value();        }        const type = opts.type;        opts.type = normalizePropType(type);        properties[key] = {          type: opts.type,          value        };      } else {        properties[key] = {          type: normalizePropType(opts)        };      }    });  }}function findPropsData(properties, isPage2) {  return (isPage2 ? findPagePropsData(properties) : findComponentPropsData(resolvePropValue(properties.uP))) || {};}function findPagePropsData(properties) {  const propsData = {};  if (isPlainObject$1(properties)) {    Object.keys(properties).forEach((name) => {      if (builtInProps.indexOf(name) === -1) {        propsData[name] = resolvePropValue(properties[name]);      }    });  }  return propsData;}function initFormField(vm) {  const vueOptions = vm.$options;  if (isArray$2(vueOptions.behaviors) && vueOptions.behaviors.includes("uni://form-field")) {    vm.$watch("modelValue", () => {      vm.$scope && vm.$scope.setData({        name: vm.name,        value: vm.modelValue      });    }, {      immediate: true    });  }}function resolvePropValue(prop) {  return prop;}function initData(_) {  return {};}function initPropsObserver(componentOptions) {  const observe = function observe2() {    const up = this.properties.uP;    if (!up) {      return;    }    if (this.$vm) {      updateComponentProps(resolvePropValue(up), this.$vm.$);    } else if (resolvePropValue(this.properties.uT) === "m") {      updateMiniProgramComponentProperties(resolvePropValue(up), this);    }  };  {    if (!componentOptions.observers) {      componentOptions.observers = {};    }    componentOptions.observers.uP = observe;  }}function updateMiniProgramComponentProperties(up, mpInstance) {  const prevProps = mpInstance.properties;  const nextProps = findComponentPropsData(up) || {};  if (hasPropsChanged(prevProps, nextProps, false)) {    mpInstance.setData(nextProps);  }}function updateComponentProps(up, instance) {  const prevProps = toRaw(instance.props);  const nextProps = findComponentPropsData(up) || {};  if (hasPropsChanged(prevProps, nextProps)) {    updateProps(instance, nextProps, prevProps, false);    if (hasQueueJob(instance.update)) {      invalidateJob(instance.update);    }    {      instance.update();    }  }}function hasPropsChanged(prevProps, nextProps, checkLen = true) {  const nextKeys = Object.keys(nextProps);  if (checkLen && nextKeys.length !== Object.keys(prevProps).length) {    return true;  }  for (let i = 0; i < nextKeys.length; i++) {    const key = nextKeys[i];    if (nextProps[key] !== prevProps[key]) {      return true;    }  }  return false;}function initBehaviors(vueOptions) {  const vueBehaviors = vueOptions.behaviors;  let vueProps = vueOptions.props;  if (!vueProps) {    vueOptions.props = vueProps = [];  }  const behaviors = [];  if (isArray$2(vueBehaviors)) {    vueBehaviors.forEach((behavior) => {      behaviors.push(behavior.replace("uni://", "wx://"));      if (behavior === "uni://form-field") {        if (isArray$2(vueProps)) {          vueProps.push("name");          vueProps.push("modelValue");        } else {          vueProps.name = {            type: String,            default: ""          };          vueProps.modelValue = {            type: [String, Number, Boolean, Array, Object, Date],            default: ""          };        }      }    });  }  return behaviors;}function applyOptions(componentOptions, vueOptions) {  componentOptions.data = initData();  componentOptions.behaviors = initBehaviors(vueOptions);}function parseComponent(vueOptions, { parse, mocks: mocks2, isPage: isPage2, isPageInProject, initRelation: initRelation2, handleLink: handleLink2, initLifetimes: initLifetimes2 }) {  vueOptions = vueOptions.default || vueOptions;  const options = {    multipleSlots: true,    // styleIsolation: 'apply-shared',    addGlobalClass: true,    pureDataPattern: /^uP$/  };  if (isArray$2(vueOptions.mixins)) {    vueOptions.mixins.forEach((item) => {      if (isObject$2(item.options)) {        extend$2(options, item.options);      }    });  }  if (vueOptions.options) {    extend$2(options, vueOptions.options);  }  const mpComponentOptions = {    options,    lifetimes: initLifetimes2({ mocks: mocks2, isPage: isPage2, initRelation: initRelation2, vueOptions }),    pageLifetimes: {      show() {        this.$vm && this.$vm.$callHook("onPageShow");      },      hide() {        this.$vm && this.$vm.$callHook("onPageHide");      },      resize(size2) {        this.$vm && this.$vm.$callHook("onPageResize", size2);      }    },    methods: {      __l: handleLink2    }  };  {    applyOptions(mpComponentOptions, vueOptions);  }  initProps(mpComponentOptions);  initPropsObserver(mpComponentOptions);  initExtraOptions(mpComponentOptions, vueOptions);  initWxsCallMethods(mpComponentOptions.methods, vueOptions.wxsCallMethods);  {    initWorkletMethods(mpComponentOptions.methods, vueOptions.methods);  }  if (parse) {    parse(mpComponentOptions, { handleLink: handleLink2 });  }  return mpComponentOptions;}function initCreateComponent(parseOptions2) {  return function createComponent2(vueComponentOptions) {    return Component(parseComponent(vueComponentOptions, parseOptions2));  };}let $createComponentFn;let $destroyComponentFn;function getAppVm() {  return getApp().$vm;}function $createComponent(initialVNode, options) {  if (!$createComponentFn) {    $createComponentFn = getAppVm().$createComponent;  }  const proxy = $createComponentFn(initialVNode, options);  return getExposeProxy(proxy.$) || proxy;}function $destroyComponent(instance) {  if (!$destroyComponentFn) {    $destroyComponentFn = getAppVm().$destroyComponent;  }  return $destroyComponentFn(instance);}function parsePage(vueOptions, parseOptions2) {  const { parse, mocks: mocks2, isPage: isPage2, initRelation: initRelation2, handleLink: handleLink2, initLifetimes: initLifetimes2 } = parseOptions2;  const miniProgramPageOptions = parseComponent(vueOptions, {    mocks: mocks2,    isPage: isPage2,    isPageInProject: true,    initRelation: initRelation2,    handleLink: handleLink2,    initLifetimes: initLifetimes2  });  initPageProps(miniProgramPageOptions, (vueOptions.default || vueOptions).props);  const methods = miniProgramPageOptions.methods;  methods.onLoad = function(query) {    {      this.options = query;    }    this.$page = {      fullPath: addLeadingSlash(this.route + stringifyQuery(query))    };    return this.$vm && this.$vm.$callHook(ON_LOAD, query);  };  initHooks(methods, PAGE_INIT_HOOKS);  {    initUnknownHooks(methods, vueOptions);  }  initRuntimeHooks(methods, vueOptions.__runtimeHooks);  initMixinRuntimeHooks(methods);  parse && parse(miniProgramPageOptions, { handleLink: handleLink2 });  return miniProgramPageOptions;}function initCreatePage(parseOptions2) {  return function createPage2(vuePageOptions) {    return Component(parsePage(vuePageOptions, parseOptions2));  };}function initCreatePluginApp(parseAppOptions) {  return function createApp2(vm) {    initAppLifecycle(parseApp(vm), vm);  };}const MPPage = Page;const MPComponent = Component;function initTriggerEvent(mpInstance) {  const oldTriggerEvent = mpInstance.triggerEvent;  const newTriggerEvent = function(event, ...args) {    return oldTriggerEvent.apply(mpInstance, [      customizeEvent(event),      ...args    ]);  };  try {    mpInstance.triggerEvent = newTriggerEvent;  } catch (error) {    mpInstance._triggerEvent = newTriggerEvent;  }}function initMiniProgramHook(name, options, isComponent) {  const oldHook = options[name];  if (!oldHook) {    options[name] = function() {      initTriggerEvent(this);    };  } else {    options[name] = function(...args) {      initTriggerEvent(this);      return oldHook.apply(this, args);    };  }}Page = function(options) {  initMiniProgramHook(ON_LOAD, options);  return MPPage(options);};Component = function(options) {  initMiniProgramHook("created", options);  const isVueComponent = options.properties && options.properties.uP;  if (!isVueComponent) {    initProps(options);    initPropsObserver(options);  }  return MPComponent(options);};function initLifetimes({ mocks: mocks2, isPage: isPage2, initRelation: initRelation2, vueOptions }) {  return {    attached() {      let properties = this.properties;      initVueIds(properties.uI, this);      const relationOptions = {        vuePid: this._$vuePid      };      initRelation2(this, relationOptions);      const mpInstance = this;      const isMiniProgramPage = isPage2(mpInstance);      let propsData = properties;      this.$vm = $createComponent({        type: vueOptions,        props: findPropsData(propsData, isMiniProgramPage)      }, {        mpType: isMiniProgramPage ? "page" : "component",        mpInstance,        slots: properties.uS || {},        // vueSlots        parentComponent: relationOptions.parent && relationOptions.parent.$,        onBeforeSetup(instance, options) {          initRefs(instance, mpInstance);          initMocks(instance, mpInstance, mocks2);          initComponentInstance(instance, options);        }      });      if (!isMiniProgramPage) {        initFormField(this.$vm);      }    },    ready() {      if (this.$vm) {        {          this.$vm.$callHook("mounted");          this.$vm.$callHook(ON_READY);        }      }    },    detached() {      if (this.$vm) {        pruneComponentPropsCache(this.$vm.$.uid);        $destroyComponent(this.$vm);      }    }  };}const mocks = ["__route__", "__wxExparserNodeId__", "__wxWebviewId__"];function isPage(mpInstance) {  return !!mpInstance.route;}function initRelation(mpInstance, detail) {  mpInstance.triggerEvent("__l", detail);}function handleLink(event) {  const detail = event.detail || event.value;  const vuePid = detail.vuePid;  let parentVm;  if (vuePid) {    parentVm = findVmByVueId(this.$vm, vuePid);  }  if (!parentVm) {    parentVm = this.$vm;  }  detail.parent = parentVm;}var parseOptions = /* @__PURE__ */ Object.freeze({  __proto__: null,  handleLink,  initLifetimes,  initRelation,  isPage,  mocks});const createApp = initCreateApp();const createPage = initCreatePage(parseOptions);const createComponent = initCreateComponent(parseOptions);const createPluginApp = initCreatePluginApp();const createSubpackageApp = initCreateSubpackageApp();{  wx.createApp = global.createApp = createApp;  wx.createPage = createPage;  wx.createComponent = createComponent;  wx.createPluginApp = global.createPluginApp = createPluginApp;  wx.createSubpackageApp = global.createSubpackageApp = createSubpackageApp;}function bind$2(fn, thisArg) {  return function wrap() {    return fn.apply(thisArg, arguments);  };}const { toString: toString$1 } = Object.prototype;const { getPrototypeOf } = Object;const { iterator, toStringTag } = Symbol;const kindOf = /* @__PURE__ */ ((cache) => (thing) => {  const str = toString$1.call(thing);  return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());})(/* @__PURE__ */ Object.create(null));const kindOfTest = (type) => {  type = type.toLowerCase();  return (thing) => kindOf(thing) === type;};const typeOfTest = (type) => (thing) => typeof thing === type;const { isArray: isArray$1 } = Array;const isUndefined$1 = typeOfTest("undefined");function isBuffer$1(val) {  return val !== null && !isUndefined$1(val) && val.constructor !== null && !isUndefined$1(val.constructor) && isFunction$1(val.constructor.isBuffer) && val.constructor.isBuffer(val);}const isArrayBuffer$1 = kindOfTest("ArrayBuffer");function isArrayBufferView$1(val) {  let result;  if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) {    result = ArrayBuffer.isView(val);  } else {    result = val && val.buffer && isArrayBuffer$1(val.buffer);  }  return result;}const isString$1 = typeOfTest("string");const isFunction$1 = typeOfTest("function");const isNumber$1 = typeOfTest("number");const isObject$1 = (thing) => thing !== null && typeof thing === "object";const isBoolean = (thing) => thing === true || thing === false;const isPlainObject = (val) => {  if (kindOf(val) !== "object") {    return false;  }  const prototype2 = getPrototypeOf(val);  return (prototype2 === null || prototype2 === Object.prototype || Object.getPrototypeOf(prototype2) === null) && !(toStringTag in val) && !(iterator in val);};const isDate$1 = kindOfTest("Date");const isFile$1 = kindOfTest("File");const isBlob$1 = kindOfTest("Blob");const isFileList = kindOfTest("FileList");const isStream$1 = (val) => isObject$1(val) && isFunction$1(val.pipe);const isFormData$1 = (thing) => {  let kind;  return thing && (typeof FormData === "function" && thing instanceof FormData || isFunction$1(thing.append) && ((kind = kindOf(thing)) === "formdata" || // detect form-data instance  kind === "object" && isFunction$1(thing.toString) && thing.toString() === "[object FormData]"));};const isURLSearchParams$1 = kindOfTest("URLSearchParams");const [isReadableStream, isRequest, isResponse, isHeaders] = ["ReadableStream", "Request", "Response", "Headers"].map(kindOfTest);const trim$1 = (str) => str.trim ? str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, "");function forEach$1(obj, fn, { allOwnKeys = false } = {}) {  if (obj === null || typeof obj === "undefined") {    return;  }  let i;  let l;  if (typeof obj !== "object") {    obj = [obj];  }  if (isArray$1(obj)) {    for (i = 0, l = obj.length; i < l; i++) {      fn.call(null, obj[i], i, obj);    }  } else {    const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);    const len = keys.length;    let key;    for (i = 0; i < len; i++) {      key = keys[i];      fn.call(null, obj[key], key, obj);    }  }}function findKey(obj, key) {  key = key.toLowerCase();  const keys = Object.keys(obj);  let i = keys.length;  let _key;  while (i-- > 0) {    _key = keys[i];    if (key === _key.toLowerCase()) {      return _key;    }  }  return null;}const _global = (() => {  if (typeof globalThis !== "undefined")    return globalThis;  return typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : global;})();const isContextDefined = (context) => !isUndefined$1(context) && context !== _global;function merge$1() {  const { caseless } = isContextDefined(this) && this || {};  const result = {};  const assignValue = (val, key) => {    const targetKey = caseless && findKey(result, key) || key;    if (isPlainObject(result[targetKey]) && isPlainObject(val)) {      result[targetKey] = merge$1(result[targetKey], val);    } else if (isPlainObject(val)) {      result[targetKey] = merge$1({}, val);    } else if (isArray$1(val)) {      result[targetKey] = val.slice();    } else {      result[targetKey] = val;    }  };  for (let i = 0, l = arguments.length; i < l; i++) {    arguments[i] && forEach$1(arguments[i], assignValue);  }  return result;}const extend$1 = (a, b, thisArg, { allOwnKeys } = {}) => {  forEach$1(b, (val, key) => {    if (thisArg && isFunction$1(val)) {      a[key] = bind$2(val, thisArg);    } else {      a[key] = val;    }  }, { allOwnKeys });  return a;};const stripBOM = (content) => {  if (content.charCodeAt(0) === 65279) {    content = content.slice(1);  }  return content;};const inherits = (constructor, superConstructor, props, descriptors2) => {  constructor.prototype = Object.create(superConstructor.prototype, descriptors2);  constructor.prototype.constructor = constructor;  Object.defineProperty(constructor, "super", {    value: superConstructor.prototype  });  props && Object.assign(constructor.prototype, props);};const toFlatObject = (sourceObj, destObj, filter2, propFilter) => {  let props;  let i;  let prop;  const merged = {};  destObj = destObj || {};  if (sourceObj == null)    return destObj;  do {    props = Object.getOwnPropertyNames(sourceObj);    i = props.length;    while (i-- > 0) {      prop = props[i];      if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {        destObj[prop] = sourceObj[prop];        merged[prop] = true;      }    }    sourceObj = filter2 !== false && getPrototypeOf(sourceObj);  } while (sourceObj && (!filter2 || filter2(sourceObj, destObj)) && sourceObj !== Object.prototype);  return destObj;};const endsWith = (str, searchString, position) => {  str = String(str);  if (position === void 0 || position > str.length) {    position = str.length;  }  position -= searchString.length;  const lastIndex = str.indexOf(searchString, position);  return lastIndex !== -1 && lastIndex === position;};const toArray = (thing) => {  if (!thing)    return null;  if (isArray$1(thing))    return thing;  let i = thing.length;  if (!isNumber$1(i))    return null;  const arr = new Array(i);  while (i-- > 0) {    arr[i] = thing[i];  }  return arr;};const isTypedArray = /* @__PURE__ */ ((TypedArray) => {  return (thing) => {    return TypedArray && thing instanceof TypedArray;  };})(typeof Uint8Array !== "undefined" && getPrototypeOf(Uint8Array));const forEachEntry = (obj, fn) => {  const generator = obj && obj[iterator];  const _iterator = generator.call(obj);  let result;  while ((result = _iterator.next()) && !result.done) {    const pair = result.value;    fn.call(obj, pair[0], pair[1]);  }};const matchAll = (regExp, str) => {  let matches;  const arr = [];  while ((matches = regExp.exec(str)) !== null) {    arr.push(matches);  }  return arr;};const isHTMLForm = kindOfTest("HTMLFormElement");const toCamelCase = (str) => {  return str.toLowerCase().replace(    /[-_\s]([a-z\d])(\w*)/g,    function replacer2(m, p1, p2) {      return p1.toUpperCase() + p2;    }  );};const hasOwnProperty = (({ hasOwnProperty: hasOwnProperty2 }) => (obj, prop) => hasOwnProperty2.call(obj, prop))(Object.prototype);const isRegExp = kindOfTest("RegExp");const reduceDescriptors = (obj, reducer) => {  const descriptors2 = Object.getOwnPropertyDescriptors(obj);  const reducedDescriptors = {};  forEach$1(descriptors2, (descriptor, name) => {    let ret;    if ((ret = reducer(descriptor, name, obj)) !== false) {      reducedDescriptors[name] = ret || descriptor;    }  });  Object.defineProperties(obj, reducedDescriptors);};const freezeMethods = (obj) => {  reduceDescriptors(obj, (descriptor, name) => {    if (isFunction$1(obj) && ["arguments", "caller", "callee"].indexOf(name) !== -1) {      return false;    }    const value = obj[name];    if (!isFunction$1(value))      return;    descriptor.enumerable = false;    if ("writable" in descriptor) {      descriptor.writable = false;      return;    }    if (!descriptor.set) {      descriptor.set = () => {        throw Error("Can not rewrite read-only method '" + name + "'");      };    }  });};const toObjectSet = (arrayOrString, delimiter) => {  const obj = {};  const define = (arr) => {    arr.forEach((value) => {      obj[value] = true;    });  };  isArray$1(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));  return obj;};const noop = () => {};const toFiniteNumber = (value, defaultValue) => {  return value != null && Number.isFinite(value = +value) ? value : defaultValue;};function isSpecCompliantForm(thing) {  return !!(thing && isFunction$1(thing.append) && thing[toStringTag] === "FormData" && thing[iterator]);}const toJSONObject = (obj) => {  const stack2 = new Array(10);  const visit = (source, i) => {    if (isObject$1(source)) {      if (stack2.indexOf(source) >= 0) {        return;      }      if (!("toJSON" in source)) {        stack2[i] = source;        const target = isArray$1(source) ? [] : {};        forEach$1(source, (value, key) => {          const reducedValue = visit(value, i + 1);          !isUndefined$1(reducedValue) && (target[key] = reducedValue);        });        stack2[i] = void 0;        return target;      }    }    return source;  };  return visit(obj, 0);};const isAsyncFn = kindOfTest("AsyncFunction");const isThenable = (thing) => thing && (isObject$1(thing) || isFunction$1(thing)) && isFunction$1(thing.then) && isFunction$1(thing.catch);const _setImmediate = ((setImmediateSupported, postMessageSupported) => {  if (setImmediateSupported) {    return setImmediate;  }  return postMessageSupported ? ((token, callbacks) => {    _global.addEventListener("message", ({ source, data }) => {      if (source === _global && data === token) {        callbacks.length && callbacks.shift()();      }    }, false);    return (cb) => {      callbacks.push(cb);      _global.postMessage(token, "*");    };  })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);})(  typeof setImmediate === "function",  isFunction$1(_global.postMessage));const asap = typeof queueMicrotask !== "undefined" ? queueMicrotask.bind(_global) : typeof process !== "undefined" && process.nextTick || _setImmediate;const isIterable = (thing) => thing != null && isFunction$1(thing[iterator]);const utils$4 = {  isArray: isArray$1,  isArrayBuffer: isArrayBuffer$1,  isBuffer: isBuffer$1,  isFormData: isFormData$1,  isArrayBufferView: isArrayBufferView$1,  isString: isString$1,  isNumber: isNumber$1,  isBoolean,  isObject: isObject$1,  isPlainObject,  isReadableStream,  isRequest,  isResponse,  isHeaders,  isUndefined: isUndefined$1,  isDate: isDate$1,  isFile: isFile$1,  isBlob: isBlob$1,  isRegExp,  isFunction: isFunction$1,  isStream: isStream$1,  isURLSearchParams: isURLSearchParams$1,  isTypedArray,  isFileList,  forEach: forEach$1,  merge: merge$1,  extend: extend$1,  trim: trim$1,  stripBOM,  inherits,  toFlatObject,  kindOf,  kindOfTest,  endsWith,  toArray,  forEachEntry,  matchAll,  isHTMLForm,  hasOwnProperty,  hasOwnProp: hasOwnProperty,  // an alias to avoid ESLint no-prototype-builtins detection  reduceDescriptors,  freezeMethods,  toObjectSet,  toCamelCase,  noop,  toFiniteNumber,  findKey,  global: _global,  isContextDefined,  isSpecCompliantForm,  toJSONObject,  isAsyncFn,  isThenable,  setImmediate: _setImmediate,  asap,  isIterable};function AxiosError(message, code, config, request, response) {  Error.call(this);  if (Error.captureStackTrace) {    Error.captureStackTrace(this, this.constructor);  } else {    this.stack = new Error().stack;  }  this.message = message;  this.name = "AxiosError";  code && (this.code = code);  config && (this.config = config);  request && (this.request = request);  if (response) {    this.response = response;    this.status = response.status ? response.status : null;  }}utils$4.inherits(AxiosError, Error, {  toJSON: function toJSON() {    return {      // Standard      message: this.message,      name: this.name,      // Microsoft      description: this.description,      number: this.number,      // Mozilla      fileName: this.fileName,      lineNumber: this.lineNumber,      columnNumber: this.columnNumber,      stack: this.stack,      // Axios      config: utils$4.toJSONObject(this.config),      code: this.code,      status: this.status    };  }});const prototype$1 = AxiosError.prototype;const descriptors = {};[  "ERR_BAD_OPTION_VALUE",  "ERR_BAD_OPTION",  "ECONNABORTED",  "ETIMEDOUT",  "ERR_NETWORK",  "ERR_FR_TOO_MANY_REDIRECTS",  "ERR_DEPRECATED",  "ERR_BAD_RESPONSE",  "ERR_BAD_REQUEST",  "ERR_CANCELED",  "ERR_NOT_SUPPORT",  "ERR_INVALID_URL"  // eslint-disable-next-line func-names].forEach((code) => {  descriptors[code] = { value: code };});Object.defineProperties(AxiosError, descriptors);Object.defineProperty(prototype$1, "isAxiosError", { value: true });AxiosError.from = (error, code, config, request, response, customProps) => {  const axiosError = Object.create(prototype$1);  utils$4.toFlatObject(error, axiosError, function filter2(obj) {    return obj !== Error.prototype;  }, (prop) => {    return prop !== "isAxiosError";  });  AxiosError.call(axiosError, error.message, code, config, request, response);  axiosError.cause = error;  axiosError.name = error.name;  customProps && Object.assign(axiosError, customProps);  return axiosError;};const httpAdapter = null;function isVisitable(thing) {  return utils$4.isPlainObject(thing) || utils$4.isArray(thing);}function removeBrackets(key) {  return utils$4.endsWith(key, "[]") ? key.slice(0, -2) : key;}function renderKey(path, key, dots) {  if (!path)    return key;  return path.concat(key).map(function each(token, i) {    token = removeBrackets(token);    return !dots && i ? "[" + token + "]" : token;  }).join(dots ? "." : "");}function isFlatArray(arr) {  return utils$4.isArray(arr) && !arr.some(isVisitable);}const predicates = utils$4.toFlatObject(utils$4, {}, null, function filter(prop) {  return /^is[A-Z]/.test(prop);});function toFormData(obj, formData, options) {  if (!utils$4.isObject(obj)) {    throw new TypeError("target must be an object");  }  formData = formData || new FormData();  options = utils$4.toFlatObject(options, {    metaTokens: true,    dots: false,    indexes: false  }, false, function defined(option, source) {    return !utils$4.isUndefined(source[option]);  });  const metaTokens = options.metaTokens;  const visitor = options.visitor || defaultVisitor;  const dots = options.dots;  const indexes = options.indexes;  const _Blob = options.Blob || typeof Blob !== "undefined" && Blob;  const useBlob = _Blob && utils$4.isSpecCompliantForm(formData);  if (!utils$4.isFunction(visitor)) {    throw new TypeError("visitor must be a function");  }  function convertValue(value) {    if (value === null)      return "";    if (utils$4.isDate(value)) {      return value.toISOString();    }    if (utils$4.isBoolean(value)) {      return value.toString();    }    if (!useBlob && utils$4.isBlob(value)) {      throw new AxiosError("Blob is not supported. Use a Buffer instead.");    }    if (utils$4.isArrayBuffer(value) || utils$4.isTypedArray(value)) {      return useBlob && typeof Blob === "function" ? new Blob([value]) : Buffer.from(value);    }    return value;  }  function defaultVisitor(value, key, path) {    let arr = value;    if (value && !path && typeof value === "object") {      if (utils$4.endsWith(key, "{}")) {        key = metaTokens ? key : key.slice(0, -2);        value = JSON.stringify(value);      } else if (utils$4.isArray(value) && isFlatArray(value) || (utils$4.isFileList(value) || utils$4.endsWith(key, "[]")) && (arr = utils$4.toArray(value))) {        key = removeBrackets(key);        arr.forEach(function each(el, index2) {          !(utils$4.isUndefined(el) || el === null) && formData.append(            // eslint-disable-next-line no-nested-ternary            indexes === true ? renderKey([key], index2, dots) : indexes === null ? key : key + "[]",            convertValue(el)          );        });        return false;      }    }    if (isVisitable(value)) {      return true;    }    formData.append(renderKey(path, key, dots), convertValue(value));    return false;  }  const stack2 = [];  const exposedHelpers = Object.assign(predicates, {    defaultVisitor,    convertValue,    isVisitable  });  function build(value, path) {    if (utils$4.isUndefined(value))      return;    if (stack2.indexOf(value) !== -1) {      throw Error("Circular reference detected in " + path.join("."));    }    stack2.push(value);    utils$4.forEach(value, function each(el, key) {      const result = !(utils$4.isUndefined(el) || el === null) && visitor.call(        formData,        el,        utils$4.isString(key) ? key.trim() : key,        path,        exposedHelpers      );      if (result === true) {        build(el, path ? path.concat(key) : [key]);      }    });    stack2.pop();  }  if (!utils$4.isObject(obj)) {    throw new TypeError("data must be an object");  }  build(obj);  return formData;}function encode$2(str) {  const charMap = {    "!": "%21",    "'": "%27",    "(": "%28",    ")": "%29",    "~": "%7E",    "%20": "+",    "%00": "\0"  };  return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer2(match) {    return charMap[match];  });}function AxiosURLSearchParams(params, options) {  this._pairs = [];  params && toFormData(params, this, options);}const prototype = AxiosURLSearchParams.prototype;prototype.append = function append(name, value) {  this._pairs.push([name, value]);};prototype.toString = function toString(encoder2) {  const _encode = encoder2 ? function(value) {    return encoder2.call(this, value, encode$2);  } : encode$2;  return this._pairs.map(function each(pair) {    return _encode(pair[0]) + "=" + _encode(pair[1]);  }, "").join("&");};function encode$1(val) {  return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]");}function buildURL$2(url, params, options) {  if (!params) {    return url;  }  const _encode = options && options.encode || encode$1;  if (utils$4.isFunction(options)) {    options = {      serialize: options    };  }  const serializeFn = options && options.serialize;  let serializedParams;  if (serializeFn) {    serializedParams = serializeFn(params, options);  } else {    serializedParams = utils$4.isURLSearchParams(params) ? params.toString() : new AxiosURLSearchParams(params, options).toString(_encode);  }  if (serializedParams) {    const hashmarkIndex = url.indexOf("#");    if (hashmarkIndex !== -1) {      url = url.slice(0, hashmarkIndex);    }    url += (url.indexOf("?") === -1 ? "?" : "&") + serializedParams;  }  return url;}class InterceptorManager {  constructor() {    this.handlers = [];  }  /**   * Add a new interceptor to the stack   *   * @param {Function} fulfilled The function to handle `then` for a `Promise`   * @param {Function} rejected The function to handle `reject` for a `Promise`   *   * @return {Number} An ID used to remove interceptor later   */  use(fulfilled, rejected, options) {    this.handlers.push({      fulfilled,      rejected,      synchronous: options ? options.synchronous : false,      runWhen: options ? options.runWhen : null    });    return this.handlers.length - 1;  }  /**   * Remove an interceptor from the stack   *   * @param {Number} id The ID that was returned by `use`   *   * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise   */  eject(id) {    if (this.handlers[id]) {      this.handlers[id] = null;    }  }  /**   * Clear all interceptors from the stack   *   * @returns {void}   */  clear() {    if (this.handlers) {      this.handlers = [];    }  }  /**   * Iterate over all the registered interceptors   *   * This method is particularly useful for skipping over any   * interceptors that may have become `null` calling `eject`.   *   * @param {Function} fn The function to call for each interceptor   *   * @returns {void}   */  forEach(fn) {    utils$4.forEach(this.handlers, function forEachHandler(h) {      if (h !== null) {        fn(h);      }    });  }}const transitionalDefaults = {  silentJSONParsing: true,  forcedJSONParsing: true,  clarifyTimeoutError: false};const URLSearchParams$1 = typeof URLSearchParams !== "undefined" ? URLSearchParams : AxiosURLSearchParams;const FormData$1 = typeof FormData !== "undefined" ? FormData : null;const Blob$1 = typeof Blob !== "undefined" ? Blob : null;const platform$1 = {  isBrowser: true,  classes: {    URLSearchParams: URLSearchParams$1,    FormData: FormData$1,    Blob: Blob$1  },  protocols: ["http", "https", "file", "blob", "url", "data"]};const hasBrowserEnv = typeof window !== "undefined" && typeof document !== "undefined";const _navigator = typeof navigator === "object" && navigator || void 0;const hasStandardBrowserEnv = hasBrowserEnv && (!_navigator || ["ReactNative", "NativeScript", "NS"].indexOf(_navigator.product) < 0);const hasStandardBrowserWebWorkerEnv = (() => {  return typeof WorkerGlobalScope !== "undefined" && // eslint-disable-next-line no-undef  self instanceof WorkerGlobalScope && typeof self.importScripts === "function";})();const origin = hasBrowserEnv && window.location.href || "http://localhost";const utils$3 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({  __proto__: null,  hasBrowserEnv,  hasStandardBrowserEnv,  hasStandardBrowserWebWorkerEnv,  navigator: _navigator,  origin}, Symbol.toStringTag, { value: "Module" }));const platform = {  ...utils$3,  ...platform$1};function toURLEncodedForm(data, options) {  return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({    visitor: function(value, key, path, helpers) {      if (platform.isNode && utils$4.isBuffer(value)) {        this.append(key, value.toString("base64"));        return false;      }      return helpers.defaultVisitor.apply(this, arguments);    }  }, options));}function parsePropPath(name) {  return utils$4.matchAll(/\w+|\[(\w*)]/g, name).map((match) => {    return match[0] === "[]" ? "" : match[1] || match[0];  });}function arrayToObject(arr) {  const obj = {};  const keys = Object.keys(arr);  let i;  const len = keys.length;  let key;  for (i = 0; i < len; i++) {    key = keys[i];    obj[key] = arr[key];  }  return obj;}function formDataToJSON(formData) {  function buildPath(path, value, target, index2) {    let name = path[index2++];    if (name === "__proto__")      return true;    const isNumericKey = Number.isFinite(+name);    const isLast = index2 >= path.length;    name = !name && utils$4.isArray(target) ? target.length : name;    if (isLast) {      if (utils$4.hasOwnProp(target, name)) {        target[name] = [target[name], value];      } else {        target[name] = value;      }      return !isNumericKey;    }    if (!target[name] || !utils$4.isObject(target[name])) {      target[name] = [];    }    const result = buildPath(path, value, target[name], index2);    if (result && utils$4.isArray(target[name])) {      target[name] = arrayToObject(target[name]);    }    return !isNumericKey;  }  if (utils$4.isFormData(formData) && utils$4.isFunction(formData.entries)) {    const obj = {};    utils$4.forEachEntry(formData, (name, value) => {      buildPath(parsePropPath(name), value, obj, 0);    });    return obj;  }  return null;}function stringifySafely(rawValue, parser, encoder2) {  if (utils$4.isString(rawValue)) {    try {      (parser || JSON.parse)(rawValue);      return utils$4.trim(rawValue);    } catch (e) {      if (e.name !== "SyntaxError") {        throw e;      }    }  }  return (encoder2 || JSON.stringify)(rawValue);}const defaults = {  transitional: transitionalDefaults,  adapter: ["xhr", "http", "fetch"],  transformRequest: [function transformRequest(data, headers) {    const contentType = headers.getContentType() || "";    const hasJSONContentType = contentType.indexOf("application/json") > -1;    const isObjectPayload = utils$4.isObject(data);    if (isObjectPayload && utils$4.isHTMLForm(data)) {      data = new FormData(data);    }    const isFormData2 = utils$4.isFormData(data);    if (isFormData2) {      return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;    }    if (utils$4.isArrayBuffer(data) || utils$4.isBuffer(data) || utils$4.isStream(data) || utils$4.isFile(data) || utils$4.isBlob(data) || utils$4.isReadableStream(data)) {      return data;    }    if (utils$4.isArrayBufferView(data)) {      return data.buffer;    }    if (utils$4.isURLSearchParams(data)) {      headers.setContentType("application/x-www-form-urlencoded;charset=utf-8", false);      return data.toString();    }    let isFileList2;    if (isObjectPayload) {      if (contentType.indexOf("application/x-www-form-urlencoded") > -1) {        return toURLEncodedForm(data, this.formSerializer).toString();      }      if ((isFileList2 = utils$4.isFileList(data)) || contentType.indexOf("multipart/form-data") > -1) {        const _FormData = this.env && this.env.FormData;        return toFormData(          isFileList2 ? { "files[]": data } : data,          _FormData && new _FormData(),          this.formSerializer        );      }    }    if (isObjectPayload || hasJSONContentType) {      headers.setContentType("application/json", false);      return stringifySafely(data);    }    return data;  }],  transformResponse: [function transformResponse(data) {    const transitional2 = this.transitional || defaults.transitional;    const forcedJSONParsing = transitional2 && transitional2.forcedJSONParsing;    const JSONRequested = this.responseType === "json";    if (utils$4.isResponse(data) || utils$4.isReadableStream(data)) {      return data;    }    if (data && utils$4.isString(data) && (forcedJSONParsing && !this.responseType || JSONRequested)) {      const silentJSONParsing = transitional2 && transitional2.silentJSONParsing;      const strictJSONParsing = !silentJSONParsing && JSONRequested;      try {        return JSON.parse(data);      } catch (e) {        if (strictJSONParsing) {          if (e.name === "SyntaxError") {            throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);          }          throw e;        }      }    }    return data;  }],  /**   * A timeout in milliseconds to abort a request. If set to 0 (default) a   * timeout is not created.   */  timeout: 0,  xsrfCookieName: "XSRF-TOKEN",  xsrfHeaderName: "X-XSRF-TOKEN",  maxContentLength: -1,  maxBodyLength: -1,  env: {    FormData: platform.classes.FormData,    Blob: platform.classes.Blob  },  validateStatus: function validateStatus(status) {    return status >= 200 && status < 300;  },  headers: {    common: {      "Accept": "application/json, text/plain, */*",      "Content-Type": void 0    }  }};utils$4.forEach(["delete", "get", "head", "post", "put", "patch"], (method) => {  defaults.headers[method] = {};});const defaults$1 = defaults;const ignoreDuplicateOf = utils$4.toObjectSet([  "age",  "authorization",  "content-length",  "content-type",  "etag",  "expires",  "from",  "host",  "if-modified-since",  "if-unmodified-since",  "last-modified",  "location",  "max-forwards",  "proxy-authorization",  "referer",  "retry-after",  "user-agent"]);const parseHeaders = (rawHeaders) => {  const parsed = {};  let key;  let val;  let i;  rawHeaders && rawHeaders.split("\n").forEach(function parser(line) {    i = line.indexOf(":");    key = line.substring(0, i).trim().toLowerCase();    val = line.substring(i + 1).trim();    if (!key || parsed[key] && ignoreDuplicateOf[key]) {      return;    }    if (key === "set-cookie") {      if (parsed[key]) {        parsed[key].push(val);      } else {        parsed[key] = [val];      }    } else {      parsed[key] = parsed[key] ? parsed[key] + ", " + val : val;    }  });  return parsed;};const $internals = Symbol("internals");function normalizeHeader(header) {  return header && String(header).trim().toLowerCase();}function normalizeValue(value) {  if (value === false || value == null) {    return value;  }  return utils$4.isArray(value) ? value.map(normalizeValue) : String(value);}function parseTokens(str) {  const tokens = /* @__PURE__ */ Object.create(null);  const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;  let match;  while (match = tokensRE.exec(str)) {    tokens[match[1]] = match[2];  }  return tokens;}const isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());function matchHeaderValue(context, value, header, filter2, isHeaderNameFilter) {  if (utils$4.isFunction(filter2)) {    return filter2.call(this, value, header);  }  if (isHeaderNameFilter) {    value = header;  }  if (!utils$4.isString(value))    return;  if (utils$4.isString(filter2)) {    return value.indexOf(filter2) !== -1;  }  if (utils$4.isRegExp(filter2)) {    return filter2.test(value);  }}function formatHeader(header) {  return header.trim().toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => {    return char.toUpperCase() + str;  });}function buildAccessors(obj, header) {  const accessorName = utils$4.toCamelCase(" " + header);  ["get", "set", "has"].forEach((methodName) => {    Object.defineProperty(obj, methodName + accessorName, {      value: function(arg1, arg2, arg3) {        return this[methodName].call(this, header, arg1, arg2, arg3);      },      configurable: true    });  });}class AxiosHeaders {  constructor(headers) {    headers && this.set(headers);  }  set(header, valueOrRewrite, rewrite) {    const self2 = this;    function setHeader(_value, _header, _rewrite) {      const lHeader = normalizeHeader(_header);      if (!lHeader) {        throw new Error("header name must be a non-empty string");      }      const key = utils$4.findKey(self2, lHeader);      if (!key || self2[key] === void 0 || _rewrite === true || _rewrite === void 0 && self2[key] !== false) {        self2[key || _header] = normalizeValue(_value);      }    }    const setHeaders = (headers, _rewrite) => utils$4.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));    if (utils$4.isPlainObject(header) || header instanceof this.constructor) {      setHeaders(header, valueOrRewrite);    } else if (utils$4.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {      setHeaders(parseHeaders(header), valueOrRewrite);    } else if (utils$4.isObject(header) && utils$4.isIterable(header)) {      let obj = {}, dest, key;      for (const entry of header) {        if (!utils$4.isArray(entry)) {          throw TypeError("Object iterator must return a key-value pair");        }        obj[key = entry[0]] = (dest = obj[key]) ? utils$4.isArray(dest) ? [...dest, entry[1]] : [dest, entry[1]] : entry[1];      }      setHeaders(obj, valueOrRewrite);    } else {      header != null && setHeader(valueOrRewrite, header, rewrite);    }    return this;  }  get(header, parser) {    header = normalizeHeader(header);    if (header) {      const key = utils$4.findKey(this, header);      if (key) {        const value = this[key];        if (!parser) {          return value;        }        if (parser === true) {          return parseTokens(value);        }        if (utils$4.isFunction(parser)) {          return parser.call(this, value, key);        }        if (utils$4.isRegExp(parser)) {          return parser.exec(value);        }        throw new TypeError("parser must be boolean|regexp|function");      }    }  }  has(header, matcher) {    header = normalizeHeader(header);    if (header) {      const key = utils$4.findKey(this, header);      return !!(key && this[key] !== void 0 && (!matcher || matchHeaderValue(this, this[key], key, matcher)));    }    return false;  }  delete(header, matcher) {    const self2 = this;    let deleted = false;    function deleteHeader(_header) {      _header = normalizeHeader(_header);      if (_header) {        const key = utils$4.findKey(self2, _header);        if (key && (!matcher || matchHeaderValue(self2, self2[key], key, matcher))) {          delete self2[key];          deleted = true;        }      }    }    if (utils$4.isArray(header)) {      header.forEach(deleteHeader);    } else {      deleteHeader(header);    }    return deleted;  }  clear(matcher) {    const keys = Object.keys(this);    let i = keys.length;    let deleted = false;    while (i--) {      const key = keys[i];      if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {        delete this[key];        deleted = true;      }    }    return deleted;  }  normalize(format) {    const self2 = this;    const headers = {};    utils$4.forEach(this, (value, header) => {      const key = utils$4.findKey(headers, header);      if (key) {        self2[key] = normalizeValue(value);        delete self2[header];        return;      }      const normalized = format ? formatHeader(header) : String(header).trim();      if (normalized !== header) {        delete self2[header];      }      self2[normalized] = normalizeValue(value);      headers[normalized] = true;    });    return this;  }  concat(...targets) {    return this.constructor.concat(this, ...targets);  }  toJSON(asStrings) {    const obj = /* @__PURE__ */ Object.create(null);    utils$4.forEach(this, (value, header) => {      value != null && value !== false && (obj[header] = asStrings && utils$4.isArray(value) ? value.join(", ") : value);    });    return obj;  }  [Symbol.iterator]() {    return Object.entries(this.toJSON())[Symbol.iterator]();  }  toString() {    return Object.entries(this.toJSON()).map(([header, value]) => header + ": " + value).join("\n");  }  getSetCookie() {    return this.get("set-cookie") || [];  }  get [Symbol.toStringTag]() {    return "AxiosHeaders";  }  static from(thing) {    return thing instanceof this ? thing : new this(thing);  }  static concat(first, ...targets) {    const computed2 = new this(first);    targets.forEach((target) => computed2.set(target));    return computed2;  }  static accessor(header) {    const internals = this[$internals] = this[$internals] = {      accessors: {}    };    const accessors = internals.accessors;    const prototype2 = this.prototype;    function defineAccessor(_header) {      const lHeader = normalizeHeader(_header);      if (!accessors[lHeader]) {        buildAccessors(prototype2, _header);        accessors[lHeader] = true;      }    }    utils$4.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);    return this;  }}AxiosHeaders.accessor(["Content-Type", "Content-Length", "Accept", "Accept-Encoding", "User-Agent", "Authorization"]);utils$4.reduceDescriptors(AxiosHeaders.prototype, ({ value }, key) => {  let mapped = key[0].toUpperCase() + key.slice(1);  return {    get: () => value,    set(headerValue) {      this[mapped] = headerValue;    }  };});utils$4.freezeMethods(AxiosHeaders);const AxiosHeaders$1 = AxiosHeaders;function transformData(fns, response) {  const config = this || defaults$1;  const context = response || config;  const headers = AxiosHeaders$1.from(context.headers);  let data = context.data;  utils$4.forEach(fns, function transform(fn) {    data = fn.call(config, data, headers.normalize(), response ? response.status : void 0);  });  headers.normalize();  return data;}function isCancel(value) {  return !!(value && value.__CANCEL__);}function CanceledError(message, config, request) {  AxiosError.call(this, message == null ? "canceled" : message, AxiosError.ERR_CANCELED, config, request);  this.name = "CanceledError";}utils$4.inherits(CanceledError, AxiosError, {  __CANCEL__: true});function settle$2(resolve, reject, response) {  const validateStatus2 = response.config.validateStatus;  if (!response.status || !validateStatus2 || validateStatus2(response.status)) {    resolve(response);  } else {    reject(new AxiosError(      "Request failed with status code " + response.status,      [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],      response.config,      response.request,      response    ));  }}function parseProtocol(url) {  const match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url);  return match && match[1] || "";}function speedometer(samplesCount, min) {  samplesCount = samplesCount || 10;  const bytes = new Array(samplesCount);  const timestamps = new Array(samplesCount);  let head = 0;  let tail = 0;  let firstSampleTS;  min = min !== void 0 ? min : 1e3;  return function push(chunkLength) {    const now = Date.now();    const startedAt = timestamps[tail];    if (!firstSampleTS) {      firstSampleTS = now;    }    bytes[head] = chunkLength;    timestamps[head] = now;    let i = tail;    let bytesCount = 0;    while (i !== head) {      bytesCount += bytes[i++];      i = i % samplesCount;    }    head = (head + 1) % samplesCount;    if (head === tail) {      tail = (tail + 1) % samplesCount;    }    if (now - firstSampleTS < min) {      return;    }    const passed = startedAt && now - startedAt;    return passed ? Math.round(bytesCount * 1e3 / passed) : void 0;  };}function throttle(fn, freq) {  let timestamp = 0;  let threshold = 1e3 / freq;  let lastArgs;  let timer;  const invoke = (args, now = Date.now()) => {    timestamp = now;    lastArgs = null;    if (timer) {      clearTimeout(timer);      timer = null;    }    fn.apply(null, args);  };  const throttled = (...args) => {    const now = Date.now();    const passed = now - timestamp;    if (passed >= threshold) {      invoke(args, now);    } else {      lastArgs = args;      if (!timer) {        timer = setTimeout(() => {          timer = null;          invoke(lastArgs);        }, threshold - passed);      }    }  };  const flush = () => lastArgs && invoke(lastArgs);  return [throttled, flush];}const progressEventReducer = (listener, isDownloadStream, freq = 3) => {  let bytesNotified = 0;  const _speedometer = speedometer(50, 250);  return throttle((e) => {    const loaded = e.loaded;    const total = e.lengthComputable ? e.total : void 0;    const progressBytes = loaded - bytesNotified;    const rate = _speedometer(progressBytes);    const inRange = loaded <= total;    bytesNotified = loaded;    const data = {      loaded,      total,      progress: total ? loaded / total : void 0,      bytes: progressBytes,      rate: rate ? rate : void 0,      estimated: rate && total && inRange ? (total - loaded) / rate : void 0,      event: e,      lengthComputable: total != null,      [isDownloadStream ? "download" : "upload"]: true    };    listener(data);  }, freq);};const progressEventDecorator = (total, throttled) => {  const lengthComputable = total != null;  return [(loaded) => throttled[0]({    lengthComputable,    total,    loaded  }), throttled[1]];};const asyncDecorator = (fn) => (...args) => utils$4.asap(() => fn(...args));const isURLSameOrigin = platform.hasStandardBrowserEnv ? /* @__PURE__ */ ((origin2, isMSIE) => (url) => {  url = new URL(url, platform.origin);  return origin2.protocol === url.protocol && origin2.host === url.host && (isMSIE || origin2.port === url.port);})(  new URL(platform.origin),  platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)) : () => true;const cookies = platform.hasStandardBrowserEnv ? (  // Standard browser envs support document.cookie  {    write(name, value, expires, path, domain, secure) {      const cookie = [name + "=" + encodeURIComponent(value)];      utils$4.isNumber(expires) && cookie.push("expires=" + new Date(expires).toGMTString());      utils$4.isString(path) && cookie.push("path=" + path);      utils$4.isString(domain) && cookie.push("domain=" + domain);      secure === true && cookie.push("secure");      document.cookie = cookie.join("; ");    },    read(name) {      const match = document.cookie.match(new RegExp("(^|;\\s*)(" + name + ")=([^;]*)"));      return match ? decodeURIComponent(match[3]) : null;    },    remove(name) {      this.write(name, "", Date.now() - 864e5);    }  }) : (  // Non-standard browser env (web workers, react-native) lack needed support.  {    write() {    },    read() {      return null;    },    remove() {    }  });function isAbsoluteURL$2(url) {  return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url);}function combineURLs$2(baseURL, relativeURL) {  return relativeURL ? baseURL.replace(/\/?\/$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL;}function buildFullPath$2(baseURL, requestedURL, allowAbsoluteUrls) {  let isRelativeUrl = !isAbsoluteURL$2(requestedURL);  if (baseURL && (isRelativeUrl || allowAbsoluteUrls == false)) {    return combineURLs$2(baseURL, requestedURL);  }  return requestedURL;}const headersToObject = (thing) => thing instanceof AxiosHeaders$1 ? { ...thing } : thing;function mergeConfig(config1, config2) {  config2 = config2 || {};  const config = {};  function getMergedValue(target, source, prop, caseless) {    if (utils$4.isPlainObject(target) && utils$4.isPlainObject(source)) {      return utils$4.merge.call({ caseless }, target, source);    } else if (utils$4.isPlainObject(source)) {      return utils$4.merge({}, source);    } else if (utils$4.isArray(source)) {      return source.slice();    }    return source;  }  function mergeDeepProperties(a, b, prop, caseless) {    if (!utils$4.isUndefined(b)) {      return getMergedValue(a, b, prop, caseless);    } else if (!utils$4.isUndefined(a)) {      return getMergedValue(void 0, a, prop, caseless);    }  }  function valueFromConfig2(a, b) {    if (!utils$4.isUndefined(b)) {      return getMergedValue(void 0, b);    }  }  function defaultToConfig2(a, b) {    if (!utils$4.isUndefined(b)) {      return getMergedValue(void 0, b);    } else if (!utils$4.isUndefined(a)) {      return getMergedValue(void 0, a);    }  }  function mergeDirectKeys(a, b, prop) {    if (prop in config2) {      return getMergedValue(a, b);    } else if (prop in config1) {      return getMergedValue(void 0, a);    }  }  const mergeMap = {    url: valueFromConfig2,    method: valueFromConfig2,    data: valueFromConfig2,    baseURL: defaultToConfig2,    transformRequest: defaultToConfig2,    transformResponse: defaultToConfig2,    paramsSerializer: defaultToConfig2,    timeout: defaultToConfig2,    timeoutMessage: defaultToConfig2,    withCredentials: defaultToConfig2,    withXSRFToken: defaultToConfig2,    adapter: defaultToConfig2,    responseType: defaultToConfig2,    xsrfCookieName: defaultToConfig2,    xsrfHeaderName: defaultToConfig2,    onUploadProgress: defaultToConfig2,    onDownloadProgress: defaultToConfig2,    decompress: defaultToConfig2,    maxContentLength: defaultToConfig2,    maxBodyLength: defaultToConfig2,    beforeRedirect: defaultToConfig2,    transport: defaultToConfig2,    httpAgent: defaultToConfig2,    httpsAgent: defaultToConfig2,    cancelToken: defaultToConfig2,    socketPath: defaultToConfig2,    responseEncoding: defaultToConfig2,    validateStatus: mergeDirectKeys,    headers: (a, b, prop) => mergeDeepProperties(headersToObject(a), headersToObject(b), prop, true)  };  utils$4.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {    const merge2 = mergeMap[prop] || mergeDeepProperties;    const configValue = merge2(config1[prop], config2[prop], prop);    utils$4.isUndefined(configValue) && merge2 !== mergeDirectKeys || (config[prop] = configValue);  });  return config;}const resolveConfig = (config) => {  const newConfig = mergeConfig({}, config);  let { data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth } = newConfig;  newConfig.headers = headers = AxiosHeaders$1.from(headers);  newConfig.url = buildURL$2(buildFullPath$2(newConfig.baseURL, newConfig.url, newConfig.allowAbsoluteUrls), config.params, config.paramsSerializer);  if (auth) {    headers.set(      "Authorization",      "Basic " + btoa((auth.username || "") + ":" + (auth.password ? unescape(encodeURIComponent(auth.password)) : ""))    );  }  let contentType;  if (utils$4.isFormData(data)) {    if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {      headers.setContentType(void 0);    } else if ((contentType = headers.getContentType()) !== false) {      const [type, ...tokens] = contentType ? contentType.split(";").map((token) => token.trim()).filter(Boolean) : [];      headers.setContentType([type || "multipart/form-data", ...tokens].join("; "));    }  }  if (platform.hasStandardBrowserEnv) {    withXSRFToken && utils$4.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));    if (withXSRFToken || withXSRFToken !== false && isURLSameOrigin(newConfig.url)) {      const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);      if (xsrfValue) {        headers.set(xsrfHeaderName, xsrfValue);      }    }  }  return newConfig;};const isXHRAdapterSupported = typeof XMLHttpRequest !== "undefined";const xhrAdapter = isXHRAdapterSupported && function(config) {  return new Promise(function dispatchXhrRequest(resolve, reject) {    const _config = resolveConfig(config);    let requestData = _config.data;    const requestHeaders = AxiosHeaders$1.from(_config.headers).normalize();    let { responseType, onUploadProgress, onDownloadProgress } = _config;    let onCanceled;    let uploadThrottled, downloadThrottled;    let flushUpload, flushDownload;    function done() {      flushUpload && flushUpload();      flushDownload && flushDownload();      _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);      _config.signal && _config.signal.removeEventListener("abort", onCanceled);    }    let request = new XMLHttpRequest();    request.open(_config.method.toUpperCase(), _config.url, true);    request.timeout = _config.timeout;    function onloadend() {      if (!request) {        return;      }      const responseHeaders = AxiosHeaders$1.from(        "getAllResponseHeaders" in request && request.getAllResponseHeaders()      );      const responseData = !responseType || responseType === "text" || responseType === "json" ? request.responseText : request.response;      const response = {        data: responseData,        status: request.status,        statusText: request.statusText,        headers: responseHeaders,        config,        request      };      settle$2(function _resolve(value) {        resolve(value);        done();      }, function _reject(err) {        reject(err);        done();      }, response);      request = null;    }    if ("onloadend" in request) {      request.onloadend = onloadend;    } else {      request.onreadystatechange = function handleLoad() {        if (!request || request.readyState !== 4) {          return;        }        if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf("file:") === 0)) {          return;        }        setTimeout(onloadend);      };    }    request.onabort = function handleAbort() {      if (!request) {        return;      }      reject(new AxiosError("Request aborted", AxiosError.ECONNABORTED, config, request));      request = null;    };    request.onerror = function handleError2() {      reject(new AxiosError("Network Error", AxiosError.ERR_NETWORK, config, request));      request = null;    };    request.ontimeout = function handleTimeout() {      let timeoutErrorMessage = _config.timeout ? "timeout of " + _config.timeout + "ms exceeded" : "timeout exceeded";      const transitional2 = _config.transitional || transitionalDefaults;      if (_config.timeoutErrorMessage) {        timeoutErrorMessage = _config.timeoutErrorMessage;      }      reject(new AxiosError(        timeoutErrorMessage,        transitional2.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,        config,        request      ));      request = null;    };    requestData === void 0 && requestHeaders.setContentType(null);    if ("setRequestHeader" in request) {      utils$4.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {        request.setRequestHeader(key, val);      });    }    if (!utils$4.isUndefined(_config.withCredentials)) {      request.withCredentials = !!_config.withCredentials;    }    if (responseType && responseType !== "json") {      request.responseType = _config.responseType;    }    if (onDownloadProgress) {      [downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true);      request.addEventListener("progress", downloadThrottled);    }    if (onUploadProgress && request.upload) {      [uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress);      request.upload.addEventListener("progress", uploadThrottled);      request.upload.addEventListener("loadend", flushUpload);    }    if (_config.cancelToken || _config.signal) {      onCanceled = (cancel) => {        if (!request) {          return;        }        reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);        request.abort();        request = null;      };      _config.cancelToken && _config.cancelToken.subscribe(onCanceled);      if (_config.signal) {        _config.signal.aborted ? onCanceled() : _config.signal.addEventListener("abort", onCanceled);      }    }    const protocol = parseProtocol(_config.url);    if (protocol && platform.protocols.indexOf(protocol) === -1) {      reject(new AxiosError("Unsupported protocol " + protocol + ":", AxiosError.ERR_BAD_REQUEST, config));      return;    }    request.send(requestData || null);  });};const composeSignals = (signals, timeout) => {  const { length } = signals = signals ? signals.filter(Boolean) : [];  if (timeout || length) {    let controller = new AbortController();    let aborted;    const onabort = function(reason) {      if (!aborted) {        aborted = true;        unsubscribe();        const err = reason instanceof Error ? reason : this.reason;        controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));      }    };    let timer = timeout && setTimeout(() => {      timer = null;      onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT));    }, timeout);    const unsubscribe = () => {      if (signals) {        timer && clearTimeout(timer);        timer = null;        signals.forEach((signal2) => {          signal2.unsubscribe ? signal2.unsubscribe(onabort) : signal2.removeEventListener("abort", onabort);        });        signals = null;      }    };    signals.forEach((signal2) => signal2.addEventListener("abort", onabort));    const { signal } = controller;    signal.unsubscribe = () => utils$4.asap(unsubscribe);    return signal;  }};const composeSignals$1 = composeSignals;const streamChunk = function* (chunk, chunkSize) {  let len = chunk.byteLength;  if (!chunkSize || len < chunkSize) {    yield chunk;    return;  }  let pos = 0;  let end;  while (pos < len) {    end = pos + chunkSize;    yield chunk.slice(pos, end);    pos = end;  }};const readBytes = async function* (iterable, chunkSize) {  for await (const chunk of readStream(iterable)) {    yield* streamChunk(chunk, chunkSize);  }};const readStream = async function* (stream) {  if (stream[Symbol.asyncIterator]) {    yield* stream;    return;  }  const reader = stream.getReader();  try {    for (; ; ) {      const { done, value } = await reader.read();      if (done) {        break;      }      yield value;    }  } finally {    await reader.cancel();  }};const trackStream = (stream, chunkSize, onProgress, onFinish) => {  const iterator2 = readBytes(stream, chunkSize);  let bytes = 0;  let done;  let _onFinish = (e) => {    if (!done) {      done = true;      onFinish && onFinish(e);    }  };  return new ReadableStream({    async pull(controller) {      try {        const { done: done2, value } = await iterator2.next();        if (done2) {          _onFinish();          controller.close();          return;        }        let len = value.byteLength;        if (onProgress) {          let loadedBytes = bytes += len;          onProgress(loadedBytes);        }        controller.enqueue(new Uint8Array(value));      } catch (err) {        _onFinish(err);        throw err;      }    },    cancel(reason) {      _onFinish(reason);      return iterator2.return();    }  }, {    highWaterMark: 2  });};const isFetchSupported = typeof fetch === "function" && typeof Request === "function" && typeof Response === "function";const isReadableStreamSupported = isFetchSupported && typeof ReadableStream === "function";const encodeText = isFetchSupported && (typeof TextEncoder === "function" ? /* @__PURE__ */ ((encoder2) => (str) => encoder2.encode(str))(new TextEncoder()) : async (str) => new Uint8Array(await new Response(str).arrayBuffer()));const test = (fn, ...args) => {  try {    return !!fn(...args);  } catch (e) {    return false;  }};const supportsRequestStream = isReadableStreamSupported && test(() => {  let duplexAccessed = false;  const hasContentType = new Request(platform.origin, {    body: new ReadableStream(),    method: "POST",    get duplex() {      duplexAccessed = true;      return "half";    }  }).headers.has("Content-Type");  return duplexAccessed && !hasContentType;});const DEFAULT_CHUNK_SIZE = 64 * 1024;const supportsResponseStream = isReadableStreamSupported && test(() => utils$4.isReadableStream(new Response("").body));const resolvers = {  stream: supportsResponseStream && ((res) => res.body)};isFetchSupported && ((res) => {  ["text", "arrayBuffer", "blob", "formData", "stream"].forEach((type) => {    !resolvers[type] && (resolvers[type] = utils$4.isFunction(res[type]) ? (res2) => res2[type]() : (_, config) => {      throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);    });  });})(new Response());const getBodyLength = async (body) => {  if (body == null) {    return 0;  }  if (utils$4.isBlob(body)) {    return body.size;  }  if (utils$4.isSpecCompliantForm(body)) {    const _request = new Request(platform.origin, {      method: "POST",      body    });    return (await _request.arrayBuffer()).byteLength;  }  if (utils$4.isArrayBufferView(body) || utils$4.isArrayBuffer(body)) {    return body.byteLength;  }  if (utils$4.isURLSearchParams(body)) {    body = body + "";  }  if (utils$4.isString(body)) {    return (await encodeText(body)).byteLength;  }};const resolveBodyLength = async (headers, body) => {  const length = utils$4.toFiniteNumber(headers.getContentLength());  return length == null ? getBodyLength(body) : length;};const fetchAdapter = isFetchSupported && (async (config) => {  let {    url,    method,    data,    signal,    cancelToken,    timeout,    onDownloadProgress,    onUploadProgress,    responseType,    headers,    withCredentials = "same-origin",    fetchOptions  } = resolveConfig(config);  responseType = responseType ? (responseType + "").toLowerCase() : "text";  let composedSignal = composeSignals$1([signal, cancelToken && cancelToken.toAbortSignal()], timeout);  let request;  const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {    composedSignal.unsubscribe();  });  let requestContentLength;  try {    if (onUploadProgress && supportsRequestStream && method !== "get" && method !== "head" && (requestContentLength = await resolveBodyLength(headers, data)) !== 0) {      let _request = new Request(url, {        method: "POST",        body: data,        duplex: "half"      });      let contentTypeHeader;      if (utils$4.isFormData(data) && (contentTypeHeader = _request.headers.get("content-type"))) {        headers.setContentType(contentTypeHeader);      }      if (_request.body) {        const [onProgress, flush] = progressEventDecorator(          requestContentLength,          progressEventReducer(asyncDecorator(onUploadProgress))        );        data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);      }    }    if (!utils$4.isString(withCredentials)) {      withCredentials = withCredentials ? "include" : "omit";    }    const isCredentialsSupported = "credentials" in Request.prototype;    request = new Request(url, {      ...fetchOptions,      signal: composedSignal,      method: method.toUpperCase(),      headers: headers.normalize().toJSON(),      body: data,      duplex: "half",      credentials: isCredentialsSupported ? withCredentials : void 0    });    let response = await fetch(request, fetchOptions);    const isStreamResponse = supportsResponseStream && (responseType === "stream" || responseType === "response");    if (supportsResponseStream && (onDownloadProgress || isStreamResponse && unsubscribe)) {      const options = {};      ["status", "statusText", "headers"].forEach((prop) => {        options[prop] = response[prop];      });      const responseContentLength = utils$4.toFiniteNumber(response.headers.get("content-length"));      const [onProgress, flush] = onDownloadProgress && progressEventDecorator(        responseContentLength,        progressEventReducer(asyncDecorator(onDownloadProgress), true)      ) || [];      response = new Response(        trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {          flush && flush();          unsubscribe && unsubscribe();        }),        options      );    }    responseType = responseType || "text";    let responseData = await resolvers[utils$4.findKey(resolvers, responseType) || "text"](response, config);    !isStreamResponse && unsubscribe && unsubscribe();    return await new Promise((resolve, reject) => {      settle$2(resolve, reject, {        data: responseData,        headers: AxiosHeaders$1.from(response.headers),        status: response.status,        statusText: response.statusText,        config,        request      });    });  } catch (err) {    unsubscribe && unsubscribe();    if (err && err.name === "TypeError" && /Load failed|fetch/i.test(err.message)) {      throw Object.assign(        new AxiosError("Network Error", AxiosError.ERR_NETWORK, config, request),        {          cause: err.cause || err        }      );    }    throw AxiosError.from(err, err && err.code, config, request);  }});const knownAdapters = {  http: httpAdapter,  xhr: xhrAdapter,  fetch: fetchAdapter};utils$4.forEach(knownAdapters, (fn, value) => {  if (fn) {    try {      Object.defineProperty(fn, "name", { value });    } catch (e) {    }    Object.defineProperty(fn, "adapterName", { value });  }});const renderReason = (reason) => `- ${reason}`;const isResolvedHandle = (adapter) => utils$4.isFunction(adapter) || adapter === null || adapter === false;const adapters = {  getAdapter: (adapters2) => {    adapters2 = utils$4.isArray(adapters2) ? adapters2 : [adapters2];    const { length } = adapters2;    let nameOrAdapter;    let adapter;    const rejectedReasons = {};    for (let i = 0; i < length; i++) {      nameOrAdapter = adapters2[i];      let id;      adapter = nameOrAdapter;      if (!isResolvedHandle(nameOrAdapter)) {        adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];        if (adapter === void 0) {          throw new AxiosError(`Unknown adapter '${id}'`);        }      }      if (adapter) {        break;      }      rejectedReasons[id || "#" + i] = adapter;    }    if (!adapter) {      const reasons = Object.entries(rejectedReasons).map(        ([id, state]) => `adapter ${id} ` + (state === false ? "is not supported by the environment" : "is not available in the build")      );      let s = length ? reasons.length > 1 ? "since :\n" + reasons.map(renderReason).join("\n") : " " + renderReason(reasons[0]) : "as no adapter specified";      throw new AxiosError(        `There is no suitable adapter to dispatch the request ` + s,        "ERR_NOT_SUPPORT"      );    }    return adapter;  },  adapters: knownAdapters};function throwIfCancellationRequested(config) {  if (config.cancelToken) {    config.cancelToken.throwIfRequested();  }  if (config.signal && config.signal.aborted) {    throw new CanceledError(null, config);  }}function dispatchRequest(config) {  throwIfCancellationRequested(config);  config.headers = AxiosHeaders$1.from(config.headers);  config.data = transformData.call(    config,    config.transformRequest  );  if (["post", "put", "patch"].indexOf(config.method) !== -1) {    config.headers.setContentType("application/x-www-form-urlencoded", false);  }  const adapter = adapters.getAdapter(config.adapter || defaults$1.adapter);  return adapter(config).then(function onAdapterResolution(response) {    throwIfCancellationRequested(config);    response.data = transformData.call(      config,      config.transformResponse,      response    );    response.headers = AxiosHeaders$1.from(response.headers);    return response;  }, function onAdapterRejection(reason) {    if (!isCancel(reason)) {      throwIfCancellationRequested(config);      if (reason && reason.response) {        reason.response.data = transformData.call(          config,          config.transformResponse,          reason.response        );        reason.response.headers = AxiosHeaders$1.from(reason.response.headers);      }    }    return Promise.reject(reason);  });}const VERSION = "1.10.0";const validators$1 = {};["object", "boolean", "number", "function", "string", "symbol"].forEach((type, i) => {  validators$1[type] = function validator2(thing) {    return typeof thing === type || "a" + (i < 1 ? "n " : " ") + type;  };});const deprecatedWarnings = {};validators$1.transitional = function transitional(validator2, version2, message) {  function formatMessage2(opt, desc) {    return "[Axios v" + VERSION + "] Transitional option '" + opt + "'" + desc + (message ? ". " + message : "");  }  return (value, opt, opts) => {    if (validator2 === false) {      throw new AxiosError(        formatMessage2(opt, " has been removed" + (version2 ? " in " + version2 : "")),        AxiosError.ERR_DEPRECATED      );    }    if (version2 && !deprecatedWarnings[opt]) {      deprecatedWarnings[opt] = true;      index.__f__(        "warn",        "at node_modules/axios/lib/helpers/validator.js:43",        formatMessage2(          opt,          " has been deprecated since v" + version2 + " and will be removed in the near future"        )      );    }    return validator2 ? validator2(value, opt, opts) : true;  };};validators$1.spelling = function spelling(correctSpelling) {  return (value, opt) => {    index.__f__("warn", "at node_modules/axios/lib/helpers/validator.js:58", `${opt} is likely a misspelling of ${correctSpelling}`);    return true;  };};function assertOptions(options, schema, allowUnknown) {  if (typeof options !== "object") {    throw new AxiosError("options must be an object", AxiosError.ERR_BAD_OPTION_VALUE);  }  const keys = Object.keys(options);  let i = keys.length;  while (i-- > 0) {    const opt = keys[i];    const validator2 = schema[opt];    if (validator2) {      const value = options[opt];      const result = value === void 0 || validator2(value, opt, options);      if (result !== true) {        throw new AxiosError("option " + opt + " must be " + result, AxiosError.ERR_BAD_OPTION_VALUE);      }      continue;    }    if (allowUnknown !== true) {      throw new AxiosError("Unknown option " + opt, AxiosError.ERR_BAD_OPTION);    }  }}const validator = {  assertOptions,  validators: validators$1};const validators = validator.validators;class Axios {  constructor(instanceConfig) {    this.defaults = instanceConfig || {};    this.interceptors = {      request: new InterceptorManager(),      response: new InterceptorManager()    };  }  /**   * Dispatch a request   *   * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)   * @param {?Object} config   *   * @returns {Promise} The Promise to be fulfilled   */  async request(configOrUrl, config) {    try {      return await this._request(configOrUrl, config);    } catch (err) {      if (err instanceof Error) {        let dummy = {};        Error.captureStackTrace ? Error.captureStackTrace(dummy) : dummy = new Error();        const stack2 = dummy.stack ? dummy.stack.replace(/^.+\n/, "") : "";        try {          if (!err.stack) {            err.stack = stack2;          } else if (stack2 && !String(err.stack).endsWith(stack2.replace(/^.+\n.+\n/, ""))) {            err.stack += "\n" + stack2;          }        } catch (e) {        }      }      throw err;    }  }  _request(configOrUrl, config) {    if (typeof configOrUrl === "string") {      config = config || {};      config.url = configOrUrl;    } else {      config = configOrUrl || {};    }    config = mergeConfig(this.defaults, config);    const { transitional: transitional2, paramsSerializer, headers } = config;    if (transitional2 !== void 0) {      validator.assertOptions(transitional2, {        silentJSONParsing: validators.transitional(validators.boolean),        forcedJSONParsing: validators.transitional(validators.boolean),        clarifyTimeoutError: validators.transitional(validators.boolean)      }, false);    }    if (paramsSerializer != null) {      if (utils$4.isFunction(paramsSerializer)) {        config.paramsSerializer = {          serialize: paramsSerializer        };      } else {        validator.assertOptions(paramsSerializer, {          encode: validators.function,          serialize: validators.function        }, true);      }    }    if (config.allowAbsoluteUrls !== void 0)      ;    else if (this.defaults.allowAbsoluteUrls !== void 0) {      config.allowAbsoluteUrls = this.defaults.allowAbsoluteUrls;    } else {      config.allowAbsoluteUrls = true;    }    validator.assertOptions(config, {      baseUrl: validators.spelling("baseURL"),      withXsrfToken: validators.spelling("withXSRFToken")    }, true);    config.method = (config.method || this.defaults.method || "get").toLowerCase();    let contextHeaders = headers && utils$4.merge(      headers.common,      headers[config.method]    );    headers && utils$4.forEach(      ["delete", "get", "head", "post", "put", "patch", "common"],      (method) => {        delete headers[method];      }    );    config.headers = AxiosHeaders$1.concat(contextHeaders, headers);    const requestInterceptorChain = [];    let synchronousRequestInterceptors = true;    this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {      if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config) === false) {        return;      }      synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;      requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);    });    const responseInterceptorChain = [];    this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {      responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);    });    let promise;    let i = 0;    let len;    if (!synchronousRequestInterceptors) {      const chain = [dispatchRequest.bind(this), void 0];      chain.unshift.apply(chain, requestInterceptorChain);      chain.push.apply(chain, responseInterceptorChain);      len = chain.length;      promise = Promise.resolve(config);      while (i < len) {        promise = promise.then(chain[i++], chain[i++]);      }      return promise;    }    len = requestInterceptorChain.length;    let newConfig = config;    i = 0;    while (i < len) {      const onFulfilled = requestInterceptorChain[i++];      const onRejected = requestInterceptorChain[i++];      try {        newConfig = onFulfilled(newConfig);      } catch (error) {        onRejected.call(this, error);        break;      }    }    try {      promise = dispatchRequest.call(this, newConfig);    } catch (error) {      return Promise.reject(error);    }    i = 0;    len = responseInterceptorChain.length;    while (i < len) {      promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);    }    return promise;  }  getUri(config) {    config = mergeConfig(this.defaults, config);    const fullPath = buildFullPath$2(config.baseURL, config.url, config.allowAbsoluteUrls);    return buildURL$2(fullPath, config.params, config.paramsSerializer);  }}utils$4.forEach(["delete", "get", "head", "options"], function forEachMethodNoData(method) {  Axios.prototype[method] = function(url, config) {    return this.request(mergeConfig(config || {}, {      method,      url,      data: (config || {}).data    }));  };});utils$4.forEach(["post", "put", "patch"], function forEachMethodWithData(method) {  function generateHTTPMethod(isForm) {    return function httpMethod(url, data, config) {      return this.request(mergeConfig(config || {}, {        method,        headers: isForm ? {          "Content-Type": "multipart/form-data"        } : {},        url,        data      }));    };  }  Axios.prototype[method] = generateHTTPMethod();  Axios.prototype[method + "Form"] = generateHTTPMethod(true);});const Axios$1 = Axios;class CancelToken {  constructor(executor) {    if (typeof executor !== "function") {      throw new TypeError("executor must be a function.");    }    let resolvePromise;    this.promise = new Promise(function promiseExecutor(resolve) {      resolvePromise = resolve;    });    const token = this;    this.promise.then((cancel) => {      if (!token._listeners)        return;      let i = token._listeners.length;      while (i-- > 0) {        token._listeners[i](cancel);      }      token._listeners = null;    });    this.promise.then = (onfulfilled) => {      let _resolve;      const promise = new Promise((resolve) => {        token.subscribe(resolve);        _resolve = resolve;      }).then(onfulfilled);      promise.cancel = function reject() {        token.unsubscribe(_resolve);      };      return promise;    };    executor(function cancel(message, config, request) {      if (token.reason) {        return;      }      token.reason = new CanceledError(message, config, request);      resolvePromise(token.reason);    });  }  /**   * Throws a `CanceledError` if cancellation has been requested.   */  throwIfRequested() {    if (this.reason) {      throw this.reason;    }  }  /**   * Subscribe to the cancel signal   */  subscribe(listener) {    if (this.reason) {      listener(this.reason);      return;    }    if (this._listeners) {      this._listeners.push(listener);    } else {      this._listeners = [listener];    }  }  /**   * Unsubscribe from the cancel signal   */  unsubscribe(listener) {    if (!this._listeners) {      return;    }    const index2 = this._listeners.indexOf(listener);    if (index2 !== -1) {      this._listeners.splice(index2, 1);    }  }  toAbortSignal() {    const controller = new AbortController();    const abort = (err) => {      controller.abort(err);    };    this.subscribe(abort);    controller.signal.unsubscribe = () => this.unsubscribe(abort);    return controller.signal;  }  /**   * Returns an object that contains a new `CancelToken` and a function that, when called,   * cancels the `CancelToken`.   */  static source() {    let cancel;    const token = new CancelToken(function executor(c) {      cancel = c;    });    return {      token,      cancel    };  }}const CancelToken$1 = CancelToken;function spread(callback) {  return function wrap(arr) {    return callback.apply(null, arr);  };}function isAxiosError(payload) {  return utils$4.isObject(payload) && payload.isAxiosError === true;}const HttpStatusCode = {  Continue: 100,  SwitchingProtocols: 101,  Processing: 102,  EarlyHints: 103,  Ok: 200,  Created: 201,  Accepted: 202,  NonAuthoritativeInformation: 203,  NoContent: 204,  ResetContent: 205,  PartialContent: 206,  MultiStatus: 207,  AlreadyReported: 208,  ImUsed: 226,  MultipleChoices: 300,  MovedPermanently: 301,  Found: 302,  SeeOther: 303,  NotModified: 304,  UseProxy: 305,  Unused: 306,  TemporaryRedirect: 307,  PermanentRedirect: 308,  BadRequest: 400,  Unauthorized: 401,  PaymentRequired: 402,  Forbidden: 403,  NotFound: 404,  MethodNotAllowed: 405,  NotAcceptable: 406,  ProxyAuthenticationRequired: 407,  RequestTimeout: 408,  Conflict: 409,  Gone: 410,  LengthRequired: 411,  PreconditionFailed: 412,  PayloadTooLarge: 413,  UriTooLong: 414,  UnsupportedMediaType: 415,  RangeNotSatisfiable: 416,  ExpectationFailed: 417,  ImATeapot: 418,  MisdirectedRequest: 421,  UnprocessableEntity: 422,  Locked: 423,  FailedDependency: 424,  TooEarly: 425,  UpgradeRequired: 426,  PreconditionRequired: 428,  TooManyRequests: 429,  RequestHeaderFieldsTooLarge: 431,  UnavailableForLegalReasons: 451,  InternalServerError: 500,  NotImplemented: 501,  BadGateway: 502,  ServiceUnavailable: 503,  GatewayTimeout: 504,  HttpVersionNotSupported: 505,  VariantAlsoNegotiates: 506,  InsufficientStorage: 507,  LoopDetected: 508,  NotExtended: 510,  NetworkAuthenticationRequired: 511};Object.entries(HttpStatusCode).forEach(([key, value]) => {  HttpStatusCode[value] = key;});const HttpStatusCode$1 = HttpStatusCode;function createInstance(defaultConfig) {  const context = new Axios$1(defaultConfig);  const instance = bind$2(Axios$1.prototype.request, context);  utils$4.extend(instance, Axios$1.prototype, context, { allOwnKeys: true });  utils$4.extend(instance, context, null, { allOwnKeys: true });  instance.create = function create(instanceConfig) {    return createInstance(mergeConfig(defaultConfig, instanceConfig));  };  return instance;}const axios = createInstance(defaults$1);axios.Axios = Axios$1;axios.CanceledError = CanceledError;axios.CancelToken = CancelToken$1;axios.isCancel = isCancel;axios.VERSION = VERSION;axios.toFormData = toFormData;axios.AxiosError = AxiosError;axios.Cancel = axios.CanceledError;axios.all = function all(promises) {  return Promise.all(promises);};axios.spread = spread;axios.isAxiosError = isAxiosError;axios.mergeConfig = mergeConfig;axios.AxiosHeaders = AxiosHeaders$1;axios.formToJSON = (thing) => formDataToJSON(utils$4.isHTMLForm(thing) ? new FormData(thing) : thing);axios.getAdapter = adapters.getAdapter;axios.HttpStatusCode = HttpStatusCode$1;axios.default = axios;function getDefaultExportFromCjs(x) {  return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;}var bind$1 = function bind(fn, thisArg) {  return function wrap() {    var args = new Array(arguments.length);    for (var i = 0; i < args.length; i++) {      args[i] = arguments[i];    }    return fn.apply(thisArg, args);  };};var bind2 = bind$1;var toString2 = Object.prototype.toString;function isArray(val) {  return toString2.call(val) === "[object Array]";}function isUndefined(val) {  return typeof val === "undefined";}function isBuffer(val) {  return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && typeof val.constructor.isBuffer === "function" && val.constructor.isBuffer(val);}function isArrayBuffer(val) {  return toString2.call(val) === "[object ArrayBuffer]";}function isFormData(val) {  return typeof FormData !== "undefined" && val instanceof FormData;}function isArrayBufferView(val) {  var result;  if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) {    result = ArrayBuffer.isView(val);  } else {    result = val && val.buffer && val.buffer instanceof ArrayBuffer;  }  return result;}function isString(val) {  return typeof val === "string";}function isNumber(val) {  return typeof val === "number";}function isObject(val) {  return val !== null && typeof val === "object";}function isDate(val) {  return toString2.call(val) === "[object Date]";}function isFile(val) {  return toString2.call(val) === "[object File]";}function isBlob(val) {  return toString2.call(val) === "[object Blob]";}function isFunction(val) {  return toString2.call(val) === "[object Function]";}function isStream(val) {  return isObject(val) && isFunction(val.pipe);}function isURLSearchParams(val) {  return typeof URLSearchParams !== "undefined" && val instanceof URLSearchParams;}function trim(str) {  return str.replace(/^\s*/, "").replace(/\s*$/, "");}function isStandardBrowserEnv() {  if (typeof navigator !== "undefined" && (navigator.product === "ReactNative" || navigator.product === "NativeScript" || navigator.product === "NS")) {    return false;  }  return typeof window !== "undefined" && typeof document !== "undefined";}function forEach(obj, fn) {  if (obj === null || typeof obj === "undefined") {    return;  }  if (typeof obj !== "object") {    obj = [obj];  }  if (isArray(obj)) {    for (var i = 0, l = obj.length; i < l; i++) {      fn.call(null, obj[i], i, obj);    }  } else {    for (var key in obj) {      if (Object.prototype.hasOwnProperty.call(obj, key)) {        fn.call(null, obj[key], key, obj);      }    }  }}function merge() {  var result = {};  function assignValue(val, key) {    if (typeof result[key] === "object" && typeof val === "object") {      result[key] = merge(result[key], val);    } else {      result[key] = val;    }  }  for (var i = 0, l = arguments.length; i < l; i++) {    forEach(arguments[i], assignValue);  }  return result;}function deepMerge() {  var result = {};  function assignValue(val, key) {    if (typeof result[key] === "object" && typeof val === "object") {      result[key] = deepMerge(result[key], val);    } else if (typeof val === "object") {      result[key] = deepMerge({}, val);    } else {      result[key] = val;    }  }  for (var i = 0, l = arguments.length; i < l; i++) {    forEach(arguments[i], assignValue);  }  return result;}function extend(a, b, thisArg) {  forEach(b, function assignValue(val, key) {    if (thisArg && typeof val === "function") {      a[key] = bind2(val, thisArg);    } else {      a[key] = val;    }  });  return a;}var utils$1 = {  isArray,  isArrayBuffer,  isBuffer,  isFormData,  isArrayBufferView,  isString,  isNumber,  isObject,  isUndefined,  isDate,  isFile,  isBlob,  isFunction,  isStream,  isURLSearchParams,  isStandardBrowserEnv,  forEach,  merge,  deepMerge,  extend,  trim};const utils$2 = /* @__PURE__ */ getDefaultExportFromCjs(utils$1);var enhanceError$1 = function enhanceError(error, config, code, request, response) {  error.config = config;  if (code) {    error.code = code;  }  error.request = request;  error.response = response;  error.isAxiosError = true;  error.toJSON = function() {    return {      // Standard      message: this.message,      name: this.name,      // Microsoft      description: this.description,      number: this.number,      // Mozilla      fileName: this.fileName,      lineNumber: this.lineNumber,      columnNumber: this.columnNumber,      stack: this.stack,      // Axios      config: this.config,      code: this.code    };  };  return error;};var enhanceError2 = enhanceError$1;var createError$1 = function createError(message, config, code, request, response) {  var error = new Error(message);  return enhanceError2(error, config, code, request, response);};const createError$2 = /* @__PURE__ */ getDefaultExportFromCjs(createError$1);var createError2 = createError$1;var settle = function settle2(resolve, reject, response) {  var validateStatus2 = response.config.validateStatus;  if (!validateStatus2 || validateStatus2(response.status)) {    resolve(response);  } else {    reject(createError2(      "Request failed with status code " + response.status,      response.config,      null,      response.request,      response    ));  }};const settle$1 = /* @__PURE__ */ getDefaultExportFromCjs(settle);var utils = utils$1;function encode(val) {  return encodeURIComponent(val).replace(/%40/gi, "@").replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]");}var buildURL = function buildURL2(url, params, paramsSerializer) {  if (!params) {    return url;  }  var serializedParams;  if (paramsSerializer) {    serializedParams = paramsSerializer(params);  } else if (utils.isURLSearchParams(params)) {    serializedParams = params.toString();  } else {    var parts = [];    utils.forEach(params, function serialize(val, key) {      if (val === null || typeof val === "undefined") {        return;      }      if (utils.isArray(val)) {        key = key + "[]";      } else {        val = [val];      }      utils.forEach(val, function parseValue(v) {        if (utils.isDate(v)) {          v = v.toISOString();        } else if (utils.isObject(v)) {          v = JSON.stringify(v);        }        parts.push(encode(key) + "=" + encode(v));      });    });    serializedParams = parts.join("&");  }  if (serializedParams) {    var hashmarkIndex = url.indexOf("#");    if (hashmarkIndex !== -1) {      url = url.slice(0, hashmarkIndex);    }    url += (url.indexOf("?") === -1 ? "?" : "&") + serializedParams;  }  return url;};const buildURL$1 = /* @__PURE__ */ getDefaultExportFromCjs(buildURL);var isAbsoluteURL$1 = function isAbsoluteURL(url) {  return /^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(url);};var combineURLs$1 = function combineURLs(baseURL, relativeURL) {  return relativeURL ? baseURL.replace(/\/+$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL;};var isAbsoluteURL2 = isAbsoluteURL$1;var combineURLs2 = combineURLs$1;var buildFullPath = function buildFullPath2(baseURL, requestedURL) {  if (baseURL && !isAbsoluteURL2(requestedURL)) {    return combineURLs2(baseURL, requestedURL);  }  return requestedURL;};const buildFullPath$1 = /* @__PURE__ */ getDefaultExportFromCjs(buildFullPath);var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function encoder(input) {  var str = String(input);  var block;  var charCode;  var idx = 0;  var map = chars;  var output = "";  for (    ;    // if the next str index does not exist:    //   change the mapping table to "="    //   check if d has no fractional digits    str.charAt(idx | 0) || (map = "=", idx % 1);    // "8 - idx % 1 * 8" generates the sequence 2, 4, 6, 8    output += map.charAt(63 & block >> 8 - idx % 1 * 8)  ) {    charCode = str.charCodeAt(idx += 3 / 4);    if (charCode > 255) {      throw new Error("'btoa' failed: The string to be encoded contains characters outside of the Latin1 range.");    }    block = block << 8 | charCode;  }  return output;}var platFormName = "wechat";function getRequest() {  switch (true) {    case typeof wx$1 === "object":      platFormName = "wechat";      return wx$1.request.bind(wx$1);    case typeof swan === "object":      platFormName = "baidu";      return swan.request.bind(swan);    case typeof dd === "object":      platFormName = "dd";      return dd.httpRequest.bind(dd);    case typeof my === "object":      platFormName = "alipay";      return (my.request || my.httpRequest).bind(my);    default:      return wx$1.request.bind(wx$1);  }}function transformResponse2(mpResponse, config, mpRequestOption) {  var headers = mpResponse.header || mpResponse.headers;  var status = mpResponse.statusCode || mpResponse.status;  var statusText = "";  if (status === 200) {    statusText = "OK";  } else if (status === 400) {    statusText = "Bad Request";  }  var response = {    data: mpResponse.data,    status,    statusText,    headers,    config,    request: mpRequestOption  };  return response;}function transformError(error, reject, config) {  switch (platFormName) {    case "wechat":      if (error.errMsg.indexOf("request:fail abort") !== -1) {        reject(createError$2("Request aborted", config, "ECONNABORTED", ""));      } else if (error.errMsg.indexOf("timeout") !== -1) {        reject(createError$2("timeout of " + config.timeout + "ms exceeded", config, "ECONNABORTED", ""));      } else {        reject(createError$2("Network Error", config, null, ""));      }      break;    case "dd":    case "alipay":      if ([14, 19].includes(error.error)) {        reject(createError$2("Request aborted", config, "ECONNABORTED", "", error));      } else if ([13].includes(error.error)) {        reject(createError$2("timeout of " + config.timeout + "ms exceeded", config, "ECONNABORTED", "", error));      } else {        reject(createError$2("Network Error", config, null, "", error));      }      break;    case "baidu":      reject(createError$2("Network Error", config, null, ""));      break;  }}function transformConfig(config) {  var _a;  if ([    "alipay",    "dd"    /* 钉钉 */  ].includes(platFormName)) {    config.headers = config.header;    delete config.header;    if ("dd" === platFormName && config.method !== "GET" && ((_a = config.headers) === null || _a === void 0 ? void 0 : _a["Content-Type"]) === "application/json" && Object.prototype.toString.call(config.data) === "[object Object]") {      config.data = JSON.stringify(config.data);    }  }  return config;}var isJSONstr = function(str) {  try {    return typeof str === "string" && str.length && (str = JSON.parse(str)) && Object.prototype.toString.call(str) === "[object Object]";  } catch (error) {    return false;  }};function mpAdapter(config, _a) {  var _b = (_a === void 0 ? {} : _a).transformRequestOption, transformRequestOption = _b === void 0 ? function(requestOption) {    return requestOption;  } : _b;  var request = getRequest();  return new Promise(function(resolve, reject) {    var requestTask;    var requestData = config.data;    var requestHeaders = config.headers;    var requestMethod = config.method && config.method.toUpperCase() || "GET";    var mpRequestOption = {      method: requestMethod,      url: buildURL$1(buildFullPath$1(config.baseURL, config.url), config.params, config.paramsSerializer),      timeout: config.timeout,      // Listen for success      success: function(mpResponse) {        var response = transformResponse2(mpResponse, config, mpRequestOption);        settle$1(resolve, reject, response);      },      // Handle request Exception      fail: function(error) {        transformError(error, reject, config);      },      complete: function() {        requestTask = void 0;      }    };    if (config.auth) {      var _a2 = [config.auth.username || "", config.auth.password || ""], username = _a2[0], password = _a2[1];      requestHeaders.Authorization = "Basic " + encoder(username + ":" + password);    }    utils$2.forEach(requestHeaders, function setRequestHeader(val, key) {      var _header = key.toLowerCase();      if (typeof requestData === "undefined" && _header === "content-type" || _header === "referer") {        delete requestHeaders[key];      }    });    mpRequestOption.header = requestHeaders;    if (config.responseType) {      mpRequestOption.responseType = config.responseType;    }    if (config.cancelToken) {      config.cancelToken.promise.then(function onCanceled(cancel) {        if (!requestTask) {          return;        }        requestTask.abort();        reject(cancel);        requestTask = void 0;      });    }    if (isJSONstr(requestData)) {      requestData = JSON.parse(requestData);    }    if (requestData !== void 0) {      mpRequestOption.data = requestData;    }    requestTask = request(transformRequestOption(transformConfig(mpRequestOption)));  });}exports._export_sfc = _export_sfc;exports.axios = axios;exports.createSSRApp = createSSRApp;exports.index = index;exports.mpAdapter = mpAdapter;exports.onMounted = onMounted;exports.p = p;exports.ref = ref;exports.t = t;exports.unref = unref;//# sourceMappingURL=../../.sourcemap/mp-weixin/common/vendor.js.map
 |