From 18884af6053906d3aecf67ddb867ac711d10b515 Mon Sep 17 00:00:00 2001 From: pulsejet Date: Fri, 10 May 2024 20:58:37 +0000 Subject: [PATCH] deploy: 2071ed927bb42fb77ede21e9d0bbf315068e33f3 --- .nojekyll | 0 assets/index-BDnbSTn3.css | 1 + assets/index-FOdkV_68.js | 19 +++++++++++++++++++ index.html | 13 +++++++++++++ 4 files changed, 33 insertions(+) create mode 100644 .nojekyll create mode 100644 assets/index-BDnbSTn3.css create mode 100644 assets/index-FOdkV_68.js create mode 100644 index.html diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/assets/index-BDnbSTn3.css b/assets/index-BDnbSTn3.css new file mode 100644 index 0000000..2535162 --- /dev/null +++ b/assets/index-BDnbSTn3.css @@ -0,0 +1 @@ +html,body{margin:0;padding:0;font-family:Roboto,sans-serif;overflow:hidden}div.outer[data-v-04abd1f9]{width:100%;height:100vh;overflow:auto}table[data-v-04abd1f9]{border-collapse:collapse;font-family:monospace;white-space:nowrap;margin:0;border-collapse:separate;border-spacing:0;table-layout:fixed}th[data-v-04abd1f9],td[data-v-04abd1f9]{border:1px solid #888;padding:6px 8px}table thead th[data-v-04abd1f9]:first-child,table tbody td[data-v-04abd1f9]:first-child{position:sticky;left:0;z-index:2}table thead th[data-v-04abd1f9]{position:sticky;top:0;background-color:#fff;z-index:1}td[data-v-04abd1f9]{background-color:#fff;max-width:360px;text-overflow:ellipsis;overflow:hidden}td.error[data-v-04abd1f9],td[data-v-04abd1f9]:has(.error){background-color:#faa!important}td.okay[data-v-04abd1f9]{background-color:#afa}td.warning[data-v-04abd1f9]{background-color:#ffa}td.blue[data-v-04abd1f9]{background-color:#aaf}a[data-v-04abd1f9]{color:#00f;text-decoration:none} diff --git a/assets/index-FOdkV_68.js b/assets/index-FOdkV_68.js new file mode 100644 index 0000000..27ad217 --- /dev/null +++ b/assets/index-FOdkV_68.js @@ -0,0 +1,19 @@ +var hc=Object.defineProperty;var dc=(t,e,n)=>e in t?hc(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var l=(t,e,n)=>(dc(t,typeof e!="symbol"?e+"":e,n),n);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const i of s)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&r(o)}).observe(document,{childList:!0,subtree:!0});function n(s){const i={};return s.integrity&&(i.integrity=s.integrity),s.referrerPolicy&&(i.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?i.credentials="include":s.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function r(s){if(s.ep)return;s.ep=!0;const i=n(s);fetch(s.href,i)}})();/** +* @vue/shared v3.4.27 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Hr(t,e){const n=new Set(t.split(","));return r=>n.has(r)}const Y={},Ut=[],Re=()=>{},pc=()=>!1,Kn=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&(t.charCodeAt(2)>122||t.charCodeAt(2)<97),Wr=t=>t.startsWith("onUpdate:"),oe=Object.assign,zr=(t,e)=>{const n=t.indexOf(e);n>-1&&t.splice(n,1)},mc=Object.prototype.hasOwnProperty,U=(t,e)=>mc.call(t,e),L=Array.isArray,Bt=t=>Qn(t)==="[object Map]",Ri=t=>Qn(t)==="[object Set]",k=t=>typeof t=="function",te=t=>typeof t=="string",Lt=t=>typeof t=="symbol",Z=t=>t!==null&&typeof t=="object",Fi=t=>(Z(t)||k(t))&&k(t.then)&&k(t.catch),Ci=Object.prototype.toString,Qn=t=>Ci.call(t),gc=t=>Qn(t).slice(8,-1),Li=t=>Qn(t)==="[object Object]",jr=t=>te(t)&&t!=="NaN"&&t[0]!=="-"&&""+parseInt(t,10)===t,sn=Hr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Gn=t=>{const e=Object.create(null);return n=>e[n]||(e[n]=t(n))},yc=/-(\w)/g,Wt=Gn(t=>t.replace(yc,(e,n)=>n?n.toUpperCase():"")),wc=/\B([A-Z])/g,Gt=Gn(t=>t.replace(wc,"-$1").toLowerCase()),ki=Gn(t=>t.charAt(0).toUpperCase()+t.slice(1)),lr=Gn(t=>t?`on${ki(t)}`:""),At=(t,e)=>!Object.is(t,e),ur=(t,e)=>{for(let n=0;n{Object.defineProperty(t,e,{configurable:!0,enumerable:!1,writable:r,value:n})},xc=t=>{const e=parseFloat(t);return isNaN(e)?t:e};let vs;const Mi=()=>vs||(vs=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function qr(t){if(L(t)){const e={};for(let n=0;n{if(n){const r=n.split(vc);r.length>1&&(e[r[0].trim()]=r[1].trim())}}),e}function Ge(t){let e="";if(te(t))e=t;else if(L(t))for(let n=0;nte(t)?t:t==null?"":L(t)||Z(t)&&(t.toString===Ci||!k(t.toString))?JSON.stringify(t,$i,2):String(t),$i=(t,e)=>e&&e.__v_isRef?$i(t,e.value):Bt(e)?{[`Map(${e.size})`]:[...e.entries()].reduce((n,[r,s],i)=>(n[fr(r,i)+" =>"]=s,n),{})}:Ri(e)?{[`Set(${e.size})`]:[...e.values()].map(n=>fr(n))}:Lt(e)?fr(e):Z(e)&&!L(e)&&!Li(e)?String(e):e,fr=(t,e="")=>{var n;return Lt(t)?`Symbol(${(n=t.description)!=null?n:e})`:t};/** +* @vue/reactivity v3.4.27 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let Le;class Ic{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this.parent=Le,!e&&Le&&(this.index=(Le.scopes||(Le.scopes=[])).push(this)-1)}get active(){return this._active}run(e){if(this._active){const n=Le;try{return Le=this,e()}finally{Le=n}}}on(){Le=this}off(){Le=this.parent}stop(e){if(this._active){let n,r;for(n=0,r=this.effects.length;n=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),gt()}return this._dirtyLevel>=4}set dirty(e){this._dirtyLevel=e?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let e=lt,n=Tt;try{return lt=!0,Tt=this,this._runnings++,Es(this),this.fn()}finally{_s(this),this._runnings--,Tt=n,lt=e}}stop(){this.active&&(Es(this),_s(this),this.onStop&&this.onStop(),this.active=!1)}}function Nc(t){return t.value}function Es(t){t._trackId++,t._depsLength=0}function _s(t){if(t.deps.length>t._depsLength){for(let e=t._depsLength;e{const n=new Map;return n.cleanup=t,n.computed=e,n},Tr=new WeakMap,St=Symbol(""),Sr=Symbol("");function be(t,e,n){if(lt&&Tt){let r=Tr.get(t);r||Tr.set(t,r=new Map);let s=r.get(n);s||r.set(n,s=Wi(()=>r.delete(n))),Vi(Tt,s)}}function Ye(t,e,n,r,s,i){const o=Tr.get(t);if(!o)return;let c=[];if(e==="clear")c=[...o.values()];else if(n==="length"&&L(t)){const a=Number(r);o.forEach((f,h)=>{(h==="length"||!Lt(h)&&h>=a)&&c.push(f)})}else switch(n!==void 0&&c.push(o.get(n)),e){case"add":L(t)?jr(n)&&c.push(o.get("length")):(c.push(o.get(St)),Bt(t)&&c.push(o.get(Sr)));break;case"delete":L(t)||(c.push(o.get(St)),Bt(t)&&c.push(o.get(Sr)));break;case"set":Bt(t)&&c.push(o.get(St));break}Qr();for(const a of c)a&&Hi(a,4);Gr()}const Rc=Hr("__proto__,__v_isRef,__isVue"),zi=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(Lt)),Ts=Fc();function Fc(){const t={};return["includes","indexOf","lastIndexOf"].forEach(e=>{t[e]=function(...n){const r=W(this);for(let i=0,o=this.length;i{t[e]=function(...n){mt(),Qr();const r=W(this)[e].apply(this,n);return Gr(),gt(),r}}),t}function Cc(t){Lt(t)||(t=String(t));const e=W(this);return be(e,"has",t),e.hasOwnProperty(t)}class ji{constructor(e=!1,n=!1){this._isReadonly=e,this._isShallow=n}get(e,n,r){const s=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return i;if(n==="__v_raw")return r===(s?i?jc:Gi:i?Qi:Ki).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(r)?e:void 0;const o=L(e);if(!s){if(o&&U(Ts,n))return Reflect.get(Ts,n,r);if(n==="hasOwnProperty")return Cc}const c=Reflect.get(e,n,r);return(Lt(n)?zi.has(n):Rc(n))||(s||be(e,"get",n),i)?c:Pe(c)?o&&jr(n)?c:c.value:Z(c)?s?Yi(c):Jr(c):c}}class qi extends ji{constructor(e=!1){super(!1,e)}set(e,n,r,s){let i=e[n];if(!this._isShallow){const a=On(i);if(!Ir(r)&&!On(r)&&(i=W(i),r=W(r)),!L(e)&&Pe(i)&&!Pe(r))return a?!1:(i.value=r,!0)}const o=L(e)&&jr(n)?Number(n)t,Yn=t=>Reflect.getPrototypeOf(t);function En(t,e,n=!1,r=!1){t=t.__v_raw;const s=W(t),i=W(e);n||(At(e,i)&&be(s,"get",e),be(s,"get",i));const{has:o}=Yn(s),c=r?Yr:n?ts:es;if(o.call(s,e))return c(t.get(e));if(o.call(s,i))return c(t.get(i));t!==s&&t.get(e)}function _n(t,e=!1){const n=this.__v_raw,r=W(n),s=W(t);return e||(At(t,s)&&be(r,"has",t),be(r,"has",s)),t===s?n.has(t):n.has(t)||n.has(s)}function Tn(t,e=!1){return t=t.__v_raw,!e&&be(W(t),"iterate",St),Reflect.get(t,"size",t)}function Ss(t){t=W(t);const e=W(this);return Yn(e).has.call(e,t)||(e.add(t),Ye(e,"add",t,t)),this}function Is(t,e){e=W(e);const n=W(this),{has:r,get:s}=Yn(n);let i=r.call(n,t);i||(t=W(t),i=r.call(n,t));const o=s.call(n,t);return n.set(t,e),i?At(e,o)&&Ye(n,"set",t,e):Ye(n,"add",t,e),this}function Ps(t){const e=W(this),{has:n,get:r}=Yn(e);let s=n.call(e,t);s||(t=W(t),s=n.call(e,t)),r&&r.call(e,t);const i=e.delete(t);return s&&Ye(e,"delete",t,void 0),i}function As(){const t=W(this),e=t.size!==0,n=t.clear();return e&&Ye(t,"clear",void 0,void 0),n}function Sn(t,e){return function(r,s){const i=this,o=i.__v_raw,c=W(o),a=e?Yr:t?ts:es;return!t&&be(c,"iterate",St),o.forEach((f,h)=>r.call(s,a(f),a(h),i))}}function In(t,e,n){return function(...r){const s=this.__v_raw,i=W(s),o=Bt(i),c=t==="entries"||t===Symbol.iterator&&o,a=t==="keys"&&o,f=s[t](...r),h=n?Yr:e?ts:es;return!e&&be(i,"iterate",a?Sr:St),{next(){const{value:p,done:g}=f.next();return g?{value:p,done:g}:{value:c?[h(p[0]),h(p[1])]:h(p),done:g}},[Symbol.iterator](){return this}}}}function st(t){return function(...e){return t==="delete"?!1:t==="clear"?void 0:this}}function Dc(){const t={get(i){return En(this,i)},get size(){return Tn(this)},has:_n,add:Ss,set:Is,delete:Ps,clear:As,forEach:Sn(!1,!1)},e={get(i){return En(this,i,!1,!0)},get size(){return Tn(this)},has:_n,add:Ss,set:Is,delete:Ps,clear:As,forEach:Sn(!1,!0)},n={get(i){return En(this,i,!0)},get size(){return Tn(this,!0)},has(i){return _n.call(this,i,!0)},add:st("add"),set:st("set"),delete:st("delete"),clear:st("clear"),forEach:Sn(!0,!1)},r={get(i){return En(this,i,!0,!0)},get size(){return Tn(this,!0)},has(i){return _n.call(this,i,!0)},add:st("add"),set:st("set"),delete:st("delete"),clear:st("clear"),forEach:Sn(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{t[i]=In(i,!1,!1),n[i]=In(i,!0,!1),e[i]=In(i,!1,!0),r[i]=In(i,!0,!0)}),[t,n,e,r]}const[$c,Uc,Bc,Vc]=Dc();function Xr(t,e){const n=e?t?Vc:Bc:t?Uc:$c;return(r,s,i)=>s==="__v_isReactive"?!t:s==="__v_isReadonly"?t:s==="__v_raw"?r:Reflect.get(U(n,s)&&s in r?n:r,s,i)}const Hc={get:Xr(!1,!1)},Wc={get:Xr(!1,!0)},zc={get:Xr(!0,!1)};const Ki=new WeakMap,Qi=new WeakMap,Gi=new WeakMap,jc=new WeakMap;function qc(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Kc(t){return t.__v_skip||!Object.isExtensible(t)?0:qc(gc(t))}function Jr(t){return On(t)?t:Zr(t,!1,kc,Hc,Ki)}function Qc(t){return Zr(t,!1,Mc,Wc,Qi)}function Yi(t){return Zr(t,!0,Oc,zc,Gi)}function Zr(t,e,n,r,s){if(!Z(t)||t.__v_raw&&!(e&&t.__v_isReactive))return t;const i=s.get(t);if(i)return i;const o=Kc(t);if(o===0)return t;const c=new Proxy(t,o===2?r:n);return s.set(t,c),c}function on(t){return On(t)?on(t.__v_raw):!!(t&&t.__v_isReactive)}function On(t){return!!(t&&t.__v_isReadonly)}function Ir(t){return!!(t&&t.__v_isShallow)}function Xi(t){return t?!!t.__v_raw:!1}function W(t){const e=t&&t.__v_raw;return e?W(e):t}function Gc(t){return Object.isExtensible(t)&&Oi(t,"__v_skip",!0),t}const es=t=>Z(t)?Jr(t):t,ts=t=>Z(t)?Yi(t):t;class Ji{constructor(e,n,r,s){this.getter=e,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Kr(()=>e(this._value),()=>hr(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!s,this.__v_isReadonly=r}get value(){const e=W(this);return(!e._cacheable||e.effect.dirty)&&At(e._value,e._value=e.effect.run())&&hr(e,4),Xc(e),e.effect._dirtyLevel>=2&&hr(e,2),e._value}set value(e){this._setter(e)}get _dirty(){return this.effect.dirty}set _dirty(e){this.effect.dirty=e}}function Yc(t,e,n=!1){let r,s;const i=k(t);return i?(r=t,s=Re):(r=t.get,s=t.set),new Ji(r,s,i||!s,n)}function Xc(t){var e;lt&&Tt&&(t=W(t),Vi(Tt,(e=t.dep)!=null?e:t.dep=Wi(()=>t.dep=void 0,t instanceof Ji?t:void 0)))}function hr(t,e=4,n){t=W(t);const r=t.dep;r&&Hi(r,e)}function Pe(t){return!!(t&&t.__v_isRef===!0)}function Jc(t){return Pe(t)?t.value:t}const Zc={get:(t,e,n)=>Jc(Reflect.get(t,e,n)),set:(t,e,n,r)=>{const s=t[e];return Pe(s)&&!Pe(n)?(s.value=n,!0):Reflect.set(t,e,n,r)}};function Zi(t){return on(t)?t:new Proxy(t,Zc)}/** +* @vue/runtime-core v3.4.27 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function ut(t,e,n,r){try{return r?t(...r):t()}catch(s){Xn(s,e,n)}}function Oe(t,e,n,r){if(k(t)){const s=ut(t,e,n,r);return s&&Fi(s)&&s.catch(i=>{Xn(i,e,n)}),s}if(L(t)){const s=[];for(let i=0;i>>1,s=he[r],i=dn(s);iWe&&he.splice(e,1)}function sa(t){L(t)?Vt.push(...t):(!ot||!ot.includes(t,t.allowRecurse?Et+1:Et))&&Vt.push(t),to()}function Ns(t,e,n=hn?We+1:0){for(;ndn(n)-dn(r));if(Vt.length=0,ot){ot.push(...e);return}for(ot=e,Et=0;Ett.id==null?1/0:t.id,ia=(t,e)=>{const n=dn(t)-dn(e);if(n===0){if(t.pre&&!e.pre)return-1;if(e.pre&&!t.pre)return 1}return n};function ro(t){Pr=!1,hn=!0,he.sort(ia);try{for(We=0;Wete(T)?T.trim():T)),p&&(s=n.map(xc))}let c,a=r[c=lr(e)]||r[c=lr(Wt(e))];!a&&i&&(a=r[c=lr(Gt(e))]),a&&Oe(a,t,6,s);const f=r[c+"Once"];if(f){if(!t.emitted)t.emitted={};else if(t.emitted[c])return;t.emitted[c]=!0,Oe(f,t,6,s)}}function so(t,e,n=!1){const r=e.emitsCache,s=r.get(t);if(s!==void 0)return s;const i=t.emits;let o={},c=!1;if(!k(t)){const a=f=>{const h=so(f,e,!0);h&&(c=!0,oe(o,h))};!n&&e.mixins.length&&e.mixins.forEach(a),t.extends&&a(t.extends),t.mixins&&t.mixins.forEach(a)}return!i&&!c?(Z(t)&&r.set(t,null),null):(L(i)?i.forEach(a=>o[a]=null):oe(o,i),Z(t)&&r.set(t,o),o)}function Jn(t,e){return!t||!Kn(e)?!1:(e=e.slice(2).replace(/Once$/,""),U(t,e[0].toLowerCase()+e.slice(1))||U(t,Gt(e))||U(t,e))}let ze=null,Zn=null;function Mn(t){const e=ze;return ze=t,Zn=t&&t.type.__scopeId||null,e}function ca(t){Zn=t}function aa(){Zn=null}function la(t,e=ze,n){if(!e||t._n)return t;const r=(...s)=>{r._d&&Us(-1);const i=Mn(e);let o;try{o=t(...s)}finally{Mn(i),r._d&&Us(1)}return o};return r._n=!0,r._c=!0,r._d=!0,r}function dr(t){const{type:e,vnode:n,proxy:r,withProxy:s,propsOptions:[i],slots:o,attrs:c,emit:a,render:f,renderCache:h,props:p,data:g,setupState:T,ctx:P,inheritAttrs:F}=t,J=Mn(t);let V,z;try{if(n.shapeFlag&4){const ee=s||r,pe=ee;V=He(f.call(pe,ee,h,p,T,g,P)),z=c}else{const ee=e;V=He(ee.length>1?ee(p,{attrs:c,slots:o,emit:a}):ee(p,null)),z=e.props?c:ua(c)}}catch(ee){ln.length=0,Xn(ee,t,1),V=Xe(Nt)}let B=V;if(z&&F!==!1){const ee=Object.keys(z),{shapeFlag:pe}=B;ee.length&&pe&7&&(i&&ee.some(Wr)&&(z=fa(z,i)),B=zt(B,z,!1,!0))}return n.dirs&&(B=zt(B,null,!1,!0),B.dirs=B.dirs?B.dirs.concat(n.dirs):n.dirs),n.transition&&(B.transition=n.transition),V=B,Mn(J),V}const ua=t=>{let e;for(const n in t)(n==="class"||n==="style"||Kn(n))&&((e||(e={}))[n]=t[n]);return e},fa=(t,e)=>{const n={};for(const r in t)(!Wr(r)||!(r.slice(9)in e))&&(n[r]=t[r]);return n};function ha(t,e,n){const{props:r,children:s,component:i}=t,{props:o,children:c,patchFlag:a}=e,f=i.emitsOptions;if(e.dirs||e.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return r?Rs(r,o,f):!!o;if(a&8){const h=e.dynamicProps;for(let p=0;pt.__isSuspense;function ga(t,e){e&&e.pendingBranch?L(t)?e.effects.push(...t):e.effects.push(t):sa(t)}const ya=Symbol.for("v-scx"),wa=()=>Cn(ya),Pn={};function pr(t,e,n){return io(t,e,n)}function io(t,e,{immediate:n,deep:r,flush:s,once:i,onTrack:o,onTrigger:c}=Y){if(e&&i){const D=e;e=(...Ne)=>{D(...Ne),pe()}}const a=ge,f=D=>r===!0?D:$t(D,r===!1?1:void 0);let h,p=!1,g=!1;if(Pe(t)?(h=()=>t.value,p=Ir(t)):on(t)?(h=()=>f(t),p=!0):L(t)?(g=!0,p=t.some(D=>on(D)||Ir(D)),h=()=>t.map(D=>{if(Pe(D))return D.value;if(on(D))return f(D);if(k(D))return ut(D,a,2)})):k(t)?e?h=()=>ut(t,a,2):h=()=>(T&&T(),Oe(t,a,3,[P])):h=Re,e&&r){const D=h;h=()=>$t(D())}let T,P=D=>{T=B.onStop=()=>{ut(D,a,4),T=B.onStop=void 0}},F;if(nr)if(P=Re,e?n&&Oe(e,a,3,[h(),g?[]:void 0,P]):h(),s==="sync"){const D=wa();F=D.__watcherHandles||(D.__watcherHandles=[])}else return Re;let J=g?new Array(t.length).fill(Pn):Pn;const V=()=>{if(!(!B.active||!B.dirty))if(e){const D=B.run();(r||p||(g?D.some((Ne,ve)=>At(Ne,J[ve])):At(D,J)))&&(T&&T(),Oe(e,a,3,[D,J===Pn?void 0:g&&J[0]===Pn?[]:J,P]),J=D)}else B.run()};V.allowRecurse=!!e;let z;s==="sync"?z=V:s==="post"?z=()=>we(V,a&&a.suspense):(V.pre=!0,a&&(V.id=a.uid),z=()=>rs(V));const B=new Kr(h,Re,z),ee=Ac(),pe=()=>{B.stop(),ee&&zr(ee.effects,B)};return e?n?V():J=B.run():s==="post"?we(B.run.bind(B),a&&a.suspense):B.run(),F&&F.push(pe),pe}function xa(t,e,n){const r=this.proxy,s=te(t)?t.includes(".")?oo(r,t):()=>r[t]:t.bind(r,r);let i;k(e)?i=e:(i=e.handler,n=e);const o=bn(this),c=io(s,i.bind(r),n);return o(),c}function oo(t,e){const n=e.split(".");return()=>{let r=t;for(let s=0;s{$t(r,e,n)});else if(Li(t))for(const r in t)$t(t[r],e,n);return t}function bt(t,e,n,r){const s=t.dirs,i=e&&e.dirs;for(let o=0;o!!t.type.__asyncLoader,co=t=>t.type.__isKeepAlive;function va(t,e){ao(t,"a",e)}function Ea(t,e){ao(t,"da",e)}function ao(t,e,n=ge){const r=t.__wdc||(t.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return t()});if(er(e,r,n),n){let s=n.parent;for(;s&&s.parent;)co(s.parent.vnode)&&_a(r,e,n,s),s=s.parent}}function _a(t,e,n,r){const s=er(e,t,r,!0);lo(()=>{zr(r[e],s)},n)}function er(t,e,n=ge,r=!1){if(n){const s=n[t]||(n[t]=[]),i=e.__weh||(e.__weh=(...o)=>{if(n.isUnmounted)return;mt();const c=bn(n),a=Oe(e,n,t,o);return c(),gt(),a});return r?s.unshift(i):s.push(i),i}}const tt=t=>(e,n=ge)=>(!nr||t==="sp")&&er(t,(...r)=>e(...r),n),Ta=tt("bm"),Sa=tt("m"),Ia=tt("bu"),Pa=tt("u"),Aa=tt("bum"),lo=tt("um"),Na=tt("sp"),Ra=tt("rtg"),Fa=tt("rtc");function Ca(t,e=ge){er("ec",t,e)}function Zt(t,e,n,r){let s;const i=n;if(L(t)||te(t)){s=new Array(t.length);for(let o=0,c=t.length;oe(o,c,void 0,i));else{const o=Object.keys(t);s=new Array(o.length);for(let c=0,a=o.length;ct?So(t)?cs(t)||t.proxy:Ar(t.parent):null,cn=oe(Object.create(null),{$:t=>t,$el:t=>t.vnode.el,$data:t=>t.data,$props:t=>t.props,$attrs:t=>t.attrs,$slots:t=>t.slots,$refs:t=>t.refs,$parent:t=>Ar(t.parent),$root:t=>Ar(t.root),$emit:t=>t.emit,$options:t=>ss(t),$forceUpdate:t=>t.f||(t.f=()=>{t.effect.dirty=!0,rs(t.update)}),$nextTick:t=>t.n||(t.n=ta.bind(t.proxy)),$watch:t=>xa.bind(t)}),mr=(t,e)=>t!==Y&&!t.__isScriptSetup&&U(t,e),La={get({_:t},e){if(e==="__v_skip")return!0;const{ctx:n,setupState:r,data:s,props:i,accessCache:o,type:c,appContext:a}=t;let f;if(e[0]!=="$"){const T=o[e];if(T!==void 0)switch(T){case 1:return r[e];case 2:return s[e];case 4:return n[e];case 3:return i[e]}else{if(mr(r,e))return o[e]=1,r[e];if(s!==Y&&U(s,e))return o[e]=2,s[e];if((f=t.propsOptions[0])&&U(f,e))return o[e]=3,i[e];if(n!==Y&&U(n,e))return o[e]=4,n[e];Nr&&(o[e]=0)}}const h=cn[e];let p,g;if(h)return e==="$attrs"&&be(t.attrs,"get",""),h(t);if((p=c.__cssModules)&&(p=p[e]))return p;if(n!==Y&&U(n,e))return o[e]=4,n[e];if(g=a.config.globalProperties,U(g,e))return g[e]},set({_:t},e,n){const{data:r,setupState:s,ctx:i}=t;return mr(s,e)?(s[e]=n,!0):r!==Y&&U(r,e)?(r[e]=n,!0):U(t.props,e)||e[0]==="$"&&e.slice(1)in t?!1:(i[e]=n,!0)},has({_:{data:t,setupState:e,accessCache:n,ctx:r,appContext:s,propsOptions:i}},o){let c;return!!n[o]||t!==Y&&U(t,o)||mr(e,o)||(c=i[0])&&U(c,o)||U(r,o)||U(cn,o)||U(s.config.globalProperties,o)},defineProperty(t,e,n){return n.get!=null?t._.accessCache[e]=0:U(n,"value")&&this.set(t,e,n.value,null),Reflect.defineProperty(t,e,n)}};function Fs(t){return L(t)?t.reduce((e,n)=>(e[n]=null,e),{}):t}let Nr=!0;function ka(t){const e=ss(t),n=t.proxy,r=t.ctx;Nr=!1,e.beforeCreate&&Cs(e.beforeCreate,t,"bc");const{data:s,computed:i,methods:o,watch:c,provide:a,inject:f,created:h,beforeMount:p,mounted:g,beforeUpdate:T,updated:P,activated:F,deactivated:J,beforeDestroy:V,beforeUnmount:z,destroyed:B,unmounted:ee,render:pe,renderTracked:D,renderTriggered:Ne,errorCaptured:ve,serverPrefetch:Ot,expose:De,inheritAttrs:rt,components:yt,directives:wt,filters:Mt}=e;if(f&&Oa(f,r,null),o)for(const K in o){const O=o[K];k(O)&&(r[K]=O.bind(n))}if(s){const K=s.call(n,n);Z(K)&&(t.data=Jr(K))}if(Nr=!0,i)for(const K in i){const O=i[K],Ee=k(O)?O.bind(n,n):k(O.get)?O.get.bind(n,n):Re,xt=!k(O)&&k(O.set)?O.set.bind(n):Re,$e=dl({get:Ee,set:xt});Object.defineProperty(r,K,{enumerable:!0,configurable:!0,get:()=>$e.value,set:Ue=>$e.value=Ue})}if(c)for(const K in c)uo(c[K],r,n,K);if(a){const K=k(a)?a.call(n):a;Reflect.ownKeys(K).forEach(O=>{Va(O,K[O])})}h&&Cs(h,t,"c");function ne(K,O){L(O)?O.forEach(Ee=>K(Ee.bind(n))):O&&K(O.bind(n))}if(ne(Ta,p),ne(Sa,g),ne(Ia,T),ne(Pa,P),ne(va,F),ne(Ea,J),ne(Ca,ve),ne(Fa,D),ne(Ra,Ne),ne(Aa,z),ne(lo,ee),ne(Na,Ot),L(De))if(De.length){const K=t.exposed||(t.exposed={});De.forEach(O=>{Object.defineProperty(K,O,{get:()=>n[O],set:Ee=>n[O]=Ee})})}else t.exposed||(t.exposed={});pe&&t.render===Re&&(t.render=pe),rt!=null&&(t.inheritAttrs=rt),yt&&(t.components=yt),wt&&(t.directives=wt)}function Oa(t,e,n=Re){L(t)&&(t=Rr(t));for(const r in t){const s=t[r];let i;Z(s)?"default"in s?i=Cn(s.from||r,s.default,!0):i=Cn(s.from||r):i=Cn(s),Pe(i)?Object.defineProperty(e,r,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):e[r]=i}}function Cs(t,e,n){Oe(L(t)?t.map(r=>r.bind(e.proxy)):t.bind(e.proxy),e,n)}function uo(t,e,n,r){const s=r.includes(".")?oo(n,r):()=>n[r];if(te(t)){const i=e[t];k(i)&&pr(s,i)}else if(k(t))pr(s,t.bind(n));else if(Z(t))if(L(t))t.forEach(i=>uo(i,e,n,r));else{const i=k(t.handler)?t.handler.bind(n):e[t.handler];k(i)&&pr(s,i,t)}}function ss(t){const e=t.type,{mixins:n,extends:r}=e,{mixins:s,optionsCache:i,config:{optionMergeStrategies:o}}=t.appContext,c=i.get(e);let a;return c?a=c:!s.length&&!n&&!r?a=e:(a={},s.length&&s.forEach(f=>Dn(a,f,o,!0)),Dn(a,e,o)),Z(e)&&i.set(e,a),a}function Dn(t,e,n,r=!1){const{mixins:s,extends:i}=e;i&&Dn(t,i,n,!0),s&&s.forEach(o=>Dn(t,o,n,!0));for(const o in e)if(!(r&&o==="expose")){const c=Ma[o]||n&&n[o];t[o]=c?c(t[o],e[o]):e[o]}return t}const Ma={data:Ls,props:ks,emits:ks,methods:nn,computed:nn,beforeCreate:me,created:me,beforeMount:me,mounted:me,beforeUpdate:me,updated:me,beforeDestroy:me,beforeUnmount:me,destroyed:me,unmounted:me,activated:me,deactivated:me,errorCaptured:me,serverPrefetch:me,components:nn,directives:nn,watch:$a,provide:Ls,inject:Da};function Ls(t,e){return e?t?function(){return oe(k(t)?t.call(this,this):t,k(e)?e.call(this,this):e)}:e:t}function Da(t,e){return nn(Rr(t),Rr(e))}function Rr(t){if(L(t)){const e={};for(let n=0;n1)return n&&k(e)?e.call(r&&r.proxy):e}}const ho={},po=()=>Object.create(ho),mo=t=>Object.getPrototypeOf(t)===ho;function Ha(t,e,n,r=!1){const s={},i=po();t.propsDefaults=Object.create(null),go(t,e,s,i);for(const o in t.propsOptions[0])o in s||(s[o]=void 0);n?t.props=r?s:Qc(s):t.type.props?t.props=s:t.props=i,t.attrs=i}function Wa(t,e,n,r){const{props:s,attrs:i,vnode:{patchFlag:o}}=t,c=W(s),[a]=t.propsOptions;let f=!1;if((r||o>0)&&!(o&16)){if(o&8){const h=t.vnode.dynamicProps;for(let p=0;p{a=!0;const[g,T]=yo(p,e,!0);oe(o,g),T&&c.push(...T)};!n&&e.mixins.length&&e.mixins.forEach(h),t.extends&&h(t.extends),t.mixins&&t.mixins.forEach(h)}if(!i&&!a)return Z(t)&&r.set(t,Ut),Ut;if(L(i))for(let h=0;h-1,T[1]=F<0||P-1||U(T,"default"))&&c.push(p)}}}const f=[o,c];return Z(t)&&r.set(t,f),f}function Os(t){return t[0]!=="$"&&!sn(t)}function Ms(t){return t===null?"null":typeof t=="function"?t.name||"":typeof t=="object"&&t.constructor&&t.constructor.name||""}function Ds(t,e){return Ms(t)===Ms(e)}function $s(t,e){return L(e)?e.findIndex(n=>Ds(n,t)):k(e)&&Ds(e,t)?0:-1}const wo=t=>t[0]==="_"||t==="$stable",is=t=>L(t)?t.map(He):[He(t)],za=(t,e,n)=>{if(e._n)return e;const r=la((...s)=>is(e(...s)),n);return r._c=!1,r},xo=(t,e,n)=>{const r=t._ctx;for(const s in t){if(wo(s))continue;const i=t[s];if(k(i))e[s]=za(s,i,r);else if(i!=null){const o=is(i);e[s]=()=>o}}},bo=(t,e)=>{const n=is(e);t.slots.default=()=>n},ja=(t,e)=>{const n=t.slots=po();if(t.vnode.shapeFlag&32){const r=e._;r?(oe(n,e),Oi(n,"_",r,!0)):xo(e,n)}else e&&bo(t,e)},qa=(t,e,n)=>{const{vnode:r,slots:s}=t;let i=!0,o=Y;if(r.shapeFlag&32){const c=e._;c?n&&c===1?i=!1:(oe(s,e),!n&&c===1&&delete s._):(i=!e.$stable,xo(e,s)),o=e}else e&&(bo(t,e),o={default:1});if(i)for(const c in s)!wo(c)&&o[c]==null&&delete s[c]};function Cr(t,e,n,r,s=!1){if(L(t)){t.forEach((g,T)=>Cr(g,e&&(L(e)?e[T]:e),n,r,s));return}if(Fn(r)&&!s)return;const i=r.shapeFlag&4?cs(r.component)||r.component.proxy:r.el,o=s?null:i,{i:c,r:a}=t,f=e&&e.r,h=c.refs===Y?c.refs={}:c.refs,p=c.setupState;if(f!=null&&f!==a&&(te(f)?(h[f]=null,U(p,f)&&(p[f]=null)):Pe(f)&&(f.value=null)),k(a))ut(a,c,12,[o,h]);else{const g=te(a),T=Pe(a);if(g||T){const P=()=>{if(t.f){const F=g?U(p,a)?p[a]:h[a]:a.value;s?L(F)&&zr(F,i):L(F)?F.includes(i)||F.push(i):g?(h[a]=[i],U(p,a)&&(p[a]=h[a])):(a.value=[i],t.k&&(h[t.k]=a.value))}else g?(h[a]=o,U(p,a)&&(p[a]=o)):T&&(a.value=o,t.k&&(h[t.k]=o))};o?(P.id=-1,we(P,n)):P()}}}const we=ga;function Ka(t){return Qa(t)}function Qa(t,e){const n=Mi();n.__VUE__=!0;const{insert:r,remove:s,patchProp:i,createElement:o,createText:c,createComment:a,setText:f,setElementText:h,parentNode:p,nextSibling:g,setScopeId:T=Re,insertStaticContent:P}=t,F=(u,d,m,y=null,w=null,v=null,S=void 0,b=null,_=!!d.dynamicChildren)=>{if(u===d)return;u&&!en(u,d)&&(y=vn(u),Ue(u,w,v,!0),u=null),d.patchFlag===-2&&(_=!1,d.dynamicChildren=null);const{type:x,ref:I,shapeFlag:N}=d;switch(x){case tr:J(u,d,m,y);break;case Nt:V(u,d,m,y);break;case yr:u==null&&z(d,m,y,S);break;case xe:yt(u,d,m,y,w,v,S,b,_);break;default:N&1?pe(u,d,m,y,w,v,S,b,_):N&6?wt(u,d,m,y,w,v,S,b,_):(N&64||N&128)&&x.process(u,d,m,y,w,v,S,b,_,Xt)}I!=null&&w&&Cr(I,u&&u.ref,v,d||u,!d)},J=(u,d,m,y)=>{if(u==null)r(d.el=c(d.children),m,y);else{const w=d.el=u.el;d.children!==u.children&&f(w,d.children)}},V=(u,d,m,y)=>{u==null?r(d.el=a(d.children||""),m,y):d.el=u.el},z=(u,d,m,y)=>{[u.el,u.anchor]=P(u.children,d,m,y,u.el,u.anchor)},B=({el:u,anchor:d},m,y)=>{let w;for(;u&&u!==d;)w=g(u),r(u,m,y),u=w;r(d,m,y)},ee=({el:u,anchor:d})=>{let m;for(;u&&u!==d;)m=g(u),s(u),u=m;s(d)},pe=(u,d,m,y,w,v,S,b,_)=>{d.type==="svg"?S="svg":d.type==="math"&&(S="mathml"),u==null?D(d,m,y,w,v,S,b,_):Ot(u,d,w,v,S,b,_)},D=(u,d,m,y,w,v,S,b)=>{let _,x;const{props:I,shapeFlag:N,transition:A,dirs:C}=u;if(_=u.el=o(u.type,v,I&&I.is,I),N&8?h(_,u.children):N&16&&ve(u.children,_,null,y,w,gr(u,v),S,b),C&&bt(u,null,y,"created"),Ne(_,u,u.scopeId,S,y),I){for(const H in I)H!=="value"&&!sn(H)&&i(_,H,null,I[H],v,u.children,y,w,Ke);"value"in I&&i(_,"value",null,I.value,v),(x=I.onVnodeBeforeMount)&&Ve(x,y,u)}C&&bt(u,null,y,"beforeMount");const M=Ga(w,A);M&&A.beforeEnter(_),r(_,d,m),((x=I&&I.onVnodeMounted)||M||C)&&we(()=>{x&&Ve(x,y,u),M&&A.enter(_),C&&bt(u,null,y,"mounted")},w)},Ne=(u,d,m,y,w)=>{if(m&&T(u,m),y)for(let v=0;v{for(let x=_;x{const b=d.el=u.el;let{patchFlag:_,dynamicChildren:x,dirs:I}=d;_|=u.patchFlag&16;const N=u.props||Y,A=d.props||Y;let C;if(m&&vt(m,!1),(C=A.onVnodeBeforeUpdate)&&Ve(C,m,d,u),I&&bt(d,u,m,"beforeUpdate"),m&&vt(m,!0),x?De(u.dynamicChildren,x,b,m,y,gr(d,w),v):S||O(u,d,b,null,m,y,gr(d,w),v,!1),_>0){if(_&16)rt(b,d,N,A,m,y,w);else if(_&2&&N.class!==A.class&&i(b,"class",null,A.class,w),_&4&&i(b,"style",N.style,A.style,w),_&8){const M=d.dynamicProps;for(let H=0;H{C&&Ve(C,m,d,u),I&&bt(d,u,m,"updated")},y)},De=(u,d,m,y,w,v,S)=>{for(let b=0;b{if(m!==y){if(m!==Y)for(const b in m)!sn(b)&&!(b in y)&&i(u,b,m[b],null,S,d.children,w,v,Ke);for(const b in y){if(sn(b))continue;const _=y[b],x=m[b];_!==x&&b!=="value"&&i(u,b,x,_,S,d.children,w,v,Ke)}"value"in y&&i(u,"value",m.value,y.value,S)}},yt=(u,d,m,y,w,v,S,b,_)=>{const x=d.el=u?u.el:c(""),I=d.anchor=u?u.anchor:c("");let{patchFlag:N,dynamicChildren:A,slotScopeIds:C}=d;C&&(b=b?b.concat(C):C),u==null?(r(x,m,y),r(I,m,y),ve(d.children||[],m,I,w,v,S,b,_)):N>0&&N&64&&A&&u.dynamicChildren?(De(u.dynamicChildren,A,m,w,v,S,b),(d.key!=null||w&&d===w.subTree)&&vo(u,d,!0)):O(u,d,m,I,w,v,S,b,_)},wt=(u,d,m,y,w,v,S,b,_)=>{d.slotScopeIds=b,u==null?d.shapeFlag&512?w.ctx.activate(d,m,y,S,_):Mt(d,m,y,w,v,S,_):Yt(u,d,_)},Mt=(u,d,m,y,w,v,S)=>{const b=u.component=cl(u,y,w);if(co(u)&&(b.ctx.renderer=Xt),al(b),b.asyncDep){if(w&&w.registerDep(b,ne),!u.el){const _=b.subTree=Xe(Nt);V(null,_,d,m)}}else ne(b,u,d,m,w,v,S)},Yt=(u,d,m)=>{const y=d.component=u.component;if(ha(u,d,m))if(y.asyncDep&&!y.asyncResolved){K(y,d,m);return}else y.next=d,ra(y.update),y.effect.dirty=!0,y.update();else d.el=u.el,y.vnode=d},ne=(u,d,m,y,w,v,S)=>{const b=()=>{if(u.isMounted){let{next:I,bu:N,u:A,parent:C,vnode:M}=u;{const Dt=Eo(u);if(Dt){I&&(I.el=M.el,K(u,I,S)),Dt.asyncDep.then(()=>{u.isUnmounted||b()});return}}let H=I,Q;vt(u,!1),I?(I.el=M.el,K(u,I,S)):I=M,N&&ur(N),(Q=I.props&&I.props.onVnodeBeforeUpdate)&&Ve(Q,C,I,M),vt(u,!0);const re=dr(u),Ce=u.subTree;u.subTree=re,F(Ce,re,p(Ce.el),vn(Ce),u,w,v),I.el=re.el,H===null&&da(u,re.el),A&&we(A,w),(Q=I.props&&I.props.onVnodeUpdated)&&we(()=>Ve(Q,C,I,M),w)}else{let I;const{el:N,props:A}=d,{bm:C,m:M,parent:H}=u,Q=Fn(d);if(vt(u,!1),C&&ur(C),!Q&&(I=A&&A.onVnodeBeforeMount)&&Ve(I,H,d),vt(u,!0),N&&ys){const re=()=>{u.subTree=dr(u),ys(N,u.subTree,u,w,null)};Q?d.type.__asyncLoader().then(()=>!u.isUnmounted&&re()):re()}else{const re=u.subTree=dr(u);F(null,re,m,y,u,w,v),d.el=re.el}if(M&&we(M,w),!Q&&(I=A&&A.onVnodeMounted)){const re=d;we(()=>Ve(I,H,re),w)}(d.shapeFlag&256||H&&Fn(H.vnode)&&H.vnode.shapeFlag&256)&&u.a&&we(u.a,w),u.isMounted=!0,d=m=y=null}},_=u.effect=new Kr(b,Re,()=>rs(x),u.scope),x=u.update=()=>{_.dirty&&_.run()};x.id=u.uid,vt(u,!0),x()},K=(u,d,m)=>{d.component=u;const y=u.vnode.props;u.vnode=d,u.next=null,Wa(u,d.props,y,m),qa(u,d.children,m),mt(),Ns(u),gt()},O=(u,d,m,y,w,v,S,b,_=!1)=>{const x=u&&u.children,I=u?u.shapeFlag:0,N=d.children,{patchFlag:A,shapeFlag:C}=d;if(A>0){if(A&128){xt(x,N,m,y,w,v,S,b,_);return}else if(A&256){Ee(x,N,m,y,w,v,S,b,_);return}}C&8?(I&16&&Ke(x,w,v),N!==x&&h(m,N)):I&16?C&16?xt(x,N,m,y,w,v,S,b,_):Ke(x,w,v,!0):(I&8&&h(m,""),C&16&&ve(N,m,y,w,v,S,b,_))},Ee=(u,d,m,y,w,v,S,b,_)=>{u=u||Ut,d=d||Ut;const x=u.length,I=d.length,N=Math.min(x,I);let A;for(A=0;AI?Ke(u,w,v,!0,!1,N):ve(d,m,y,w,v,S,b,_,N)},xt=(u,d,m,y,w,v,S,b,_)=>{let x=0;const I=d.length;let N=u.length-1,A=I-1;for(;x<=N&&x<=A;){const C=u[x],M=d[x]=_?ct(d[x]):He(d[x]);if(en(C,M))F(C,M,m,null,w,v,S,b,_);else break;x++}for(;x<=N&&x<=A;){const C=u[N],M=d[A]=_?ct(d[A]):He(d[A]);if(en(C,M))F(C,M,m,null,w,v,S,b,_);else break;N--,A--}if(x>N){if(x<=A){const C=A+1,M=CA)for(;x<=N;)Ue(u[x],w,v,!0),x++;else{const C=x,M=x,H=new Map;for(x=M;x<=A;x++){const _e=d[x]=_?ct(d[x]):He(d[x]);_e.key!=null&&H.set(_e.key,x)}let Q,re=0;const Ce=A-M+1;let Dt=!1,ws=0;const Jt=new Array(Ce);for(x=0;x=Ce){Ue(_e,w,v,!0);continue}let Be;if(_e.key!=null)Be=H.get(_e.key);else for(Q=M;Q<=A;Q++)if(Jt[Q-M]===0&&en(_e,d[Q])){Be=Q;break}Be===void 0?Ue(_e,w,v,!0):(Jt[Be-M]=x+1,Be>=ws?ws=Be:Dt=!0,F(_e,d[Be],m,null,w,v,S,b,_),re++)}const xs=Dt?Ya(Jt):Ut;for(Q=xs.length-1,x=Ce-1;x>=0;x--){const _e=M+x,Be=d[_e],bs=_e+1{const{el:v,type:S,transition:b,children:_,shapeFlag:x}=u;if(x&6){$e(u.component.subTree,d,m,y);return}if(x&128){u.suspense.move(d,m,y);return}if(x&64){S.move(u,d,m,Xt);return}if(S===xe){r(v,d,m);for(let N=0;N<_.length;N++)$e(_[N],d,m,y);r(u.anchor,d,m);return}if(S===yr){B(u,d,m);return}if(y!==2&&x&1&&b)if(y===0)b.beforeEnter(v),r(v,d,m),we(()=>b.enter(v),w);else{const{leave:N,delayLeave:A,afterLeave:C}=b,M=()=>r(v,d,m),H=()=>{N(v,()=>{M(),C&&C()})};A?A(v,M,H):H()}else r(v,d,m)},Ue=(u,d,m,y=!1,w=!1)=>{const{type:v,props:S,ref:b,children:_,dynamicChildren:x,shapeFlag:I,patchFlag:N,dirs:A}=u;if(b!=null&&Cr(b,null,m,u,!0),I&256){d.ctx.deactivate(u);return}const C=I&1&&A,M=!Fn(u);let H;if(M&&(H=S&&S.onVnodeBeforeUnmount)&&Ve(H,d,u),I&6)fc(u.component,m,y);else{if(I&128){u.suspense.unmount(m,y);return}C&&bt(u,null,d,"beforeUnmount"),I&64?u.type.remove(u,d,m,w,Xt,y):x&&(v!==xe||N>0&&N&64)?Ke(x,d,m,!1,!0):(v===xe&&N&384||!w&&I&16)&&Ke(_,d,m),y&&ps(u)}(M&&(H=S&&S.onVnodeUnmounted)||C)&&we(()=>{H&&Ve(H,d,u),C&&bt(u,null,d,"unmounted")},m)},ps=u=>{const{type:d,el:m,anchor:y,transition:w}=u;if(d===xe){uc(m,y);return}if(d===yr){ee(u);return}const v=()=>{s(m),w&&!w.persisted&&w.afterLeave&&w.afterLeave()};if(u.shapeFlag&1&&w&&!w.persisted){const{leave:S,delayLeave:b}=w,_=()=>S(m,v);b?b(u.el,v,_):_()}else v()},uc=(u,d)=>{let m;for(;u!==d;)m=g(u),s(u),u=m;s(d)},fc=(u,d,m)=>{const{bum:y,scope:w,update:v,subTree:S,um:b}=u;y&&ur(y),w.stop(),v&&(v.active=!1,Ue(S,u,d,m)),b&&we(b,d),we(()=>{u.isUnmounted=!0},d),d&&d.pendingBranch&&!d.isUnmounted&&u.asyncDep&&!u.asyncResolved&&u.suspenseId===d.pendingId&&(d.deps--,d.deps===0&&d.resolve())},Ke=(u,d,m,y=!1,w=!1,v=0)=>{for(let S=v;Su.shapeFlag&6?vn(u.component.subTree):u.shapeFlag&128?u.suspense.next():g(u.anchor||u.el);let ar=!1;const ms=(u,d,m)=>{u==null?d._vnode&&Ue(d._vnode,null,null,!0):F(d._vnode||null,u,d,null,null,null,m),ar||(ar=!0,Ns(),no(),ar=!1),d._vnode=u},Xt={p:F,um:Ue,m:$e,r:ps,mt:Mt,mc:ve,pc:O,pbc:De,n:vn,o:t};let gs,ys;return{render:ms,hydrate:gs,createApp:Ba(ms,gs)}}function gr({type:t,props:e},n){return n==="svg"&&t==="foreignObject"||n==="mathml"&&t==="annotation-xml"&&e&&e.encoding&&e.encoding.includes("html")?void 0:n}function vt({effect:t,update:e},n){t.allowRecurse=e.allowRecurse=n}function Ga(t,e){return(!t||t&&!t.pendingBranch)&&e&&!e.persisted}function vo(t,e,n=!1){const r=t.children,s=e.children;if(L(r)&&L(s))for(let i=0;i>1,t[n[c]]0&&(e[r]=n[i-1]),n[i]=r)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=e[o];return n}function Eo(t){const e=t.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:Eo(e)}const Xa=t=>t.__isTeleport,xe=Symbol.for("v-fgt"),tr=Symbol.for("v-txt"),Nt=Symbol.for("v-cmt"),yr=Symbol.for("v-stc"),ln=[];let ke=null;function ye(t=!1){ln.push(ke=t?null:[])}function Ja(){ln.pop(),ke=ln[ln.length-1]||null}let pn=1;function Us(t){pn+=t}function _o(t){return t.dynamicChildren=pn>0?ke||Ut:null,Ja(),pn>0&&ke&&ke.push(t),t}function Te(t,e,n,r,s,i){return _o($(t,e,n,r,s,i,!0))}function Za(t,e,n,r,s){return _o(Xe(t,e,n,r,s,!0))}function el(t){return t?t.__v_isVNode===!0:!1}function en(t,e){return t.type===e.type&&t.key===e.key}const To=({key:t})=>t??null,Ln=({ref:t,ref_key:e,ref_for:n})=>(typeof t=="number"&&(t=""+t),t!=null?te(t)||Pe(t)||k(t)?{i:ze,r:t,k:e,f:!!n}:t:null);function $(t,e=null,n=null,r=0,s=null,i=t===xe?0:1,o=!1,c=!1){const a={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&To(e),ref:e&&Ln(e),scopeId:Zn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:r,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:ze};return c?(os(a,n),i&128&&t.normalize(a)):n&&(a.shapeFlag|=te(n)?8:16),pn>0&&!o&&ke&&(a.patchFlag>0||i&6)&&a.patchFlag!==32&&ke.push(a),a}const Xe=tl;function tl(t,e=null,n=null,r=0,s=null,i=!1){if((!t||t===pa)&&(t=Nt),el(t)){const c=zt(t,e,!0);return n&&os(c,n),pn>0&&!i&&ke&&(c.shapeFlag&6?ke[ke.indexOf(t)]=c:ke.push(c)),c.patchFlag|=-2,c}if(hl(t)&&(t=t.__vccOpts),e){e=nl(e);let{class:c,style:a}=e;c&&!te(c)&&(e.class=Ge(c)),Z(a)&&(Xi(a)&&!L(a)&&(a=oe({},a)),e.style=qr(a))}const o=te(t)?1:ma(t)?128:Xa(t)?64:Z(t)?4:k(t)?2:0;return $(t,e,n,r,s,o,i,!0)}function nl(t){return t?Xi(t)||mo(t)?oe({},t):t:null}function zt(t,e,n=!1,r=!1){const{props:s,ref:i,patchFlag:o,children:c,transition:a}=t,f=e?sl(s||{},e):s,h={__v_isVNode:!0,__v_skip:!0,type:t.type,props:f,key:f&&To(f),ref:e&&e.ref?n&&i?L(i)?i.concat(Ln(e)):[i,Ln(e)]:Ln(e):i,scopeId:t.scopeId,slotScopeIds:t.slotScopeIds,children:c,target:t.target,targetAnchor:t.targetAnchor,staticCount:t.staticCount,shapeFlag:t.shapeFlag,patchFlag:e&&t.type!==xe?o===-1?16:o|16:o,dynamicProps:t.dynamicProps,dynamicChildren:t.dynamicChildren,appContext:t.appContext,dirs:t.dirs,transition:a,component:t.component,suspense:t.suspense,ssContent:t.ssContent&&zt(t.ssContent),ssFallback:t.ssFallback&&zt(t.ssFallback),el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce};return a&&r&&(h.transition=a.clone(h)),h}function rl(t=" ",e=0){return Xe(tr,null,t,e)}function Bs(t="",e=!1){return e?(ye(),Za(Nt,null,t)):Xe(Nt,null,t)}function He(t){return t==null||typeof t=="boolean"?Xe(Nt):L(t)?Xe(xe,null,t.slice()):typeof t=="object"?ct(t):Xe(tr,null,String(t))}function ct(t){return t.el===null&&t.patchFlag!==-1||t.memo?t:zt(t)}function os(t,e){let n=0;const{shapeFlag:r}=t;if(e==null)e=null;else if(L(e))n=16;else if(typeof e=="object")if(r&65){const s=e.default;s&&(s._c&&(s._d=!1),os(t,s()),s._c&&(s._d=!0));return}else{n=32;const s=e._;!s&&!mo(e)?e._ctx=ze:s===3&&ze&&(ze.slots._===1?e._=1:(e._=2,t.patchFlag|=1024))}else k(e)?(e={default:e,_ctx:ze},n=32):(e=String(e),r&64?(n=16,e=[rl(e)]):n=8);t.children=e,t.shapeFlag|=n}function sl(...t){const e={};for(let n=0;n{let s;return(s=t[n])||(s=t[n]=[]),s.push(r),i=>{s.length>1?s.forEach(o=>o(i)):s[0](i)}};$n=e("__VUE_INSTANCE_SETTERS__",n=>ge=n),Lr=e("__VUE_SSR_SETTERS__",n=>nr=n)}const bn=t=>{const e=ge;return $n(t),t.scope.on(),()=>{t.scope.off(),$n(e)}},Vs=()=>{ge&&ge.scope.off(),$n(null)};function So(t){return t.vnode.shapeFlag&4}let nr=!1;function al(t,e=!1){e&&Lr(e);const{props:n,children:r}=t.vnode,s=So(t);Ha(t,n,s,e),ja(t,r);const i=s?ll(t,e):void 0;return e&&Lr(!1),i}function ll(t,e){const n=t.type;t.accessCache=Object.create(null),t.proxy=new Proxy(t.ctx,La);const{setup:r}=n;if(r){const s=t.setupContext=r.length>1?fl(t):null,i=bn(t);mt();const o=ut(r,t,0,[t.props,s]);if(gt(),i(),Fi(o)){if(o.then(Vs,Vs),e)return o.then(c=>{Hs(t,c,e)}).catch(c=>{Xn(c,t,0)});t.asyncDep=o}else Hs(t,o,e)}else Io(t,e)}function Hs(t,e,n){k(e)?t.type.__ssrInlineRender?t.ssrRender=e:t.render=e:Z(e)&&(t.setupState=Zi(e)),Io(t,n)}let Ws;function Io(t,e,n){const r=t.type;if(!t.render){if(!e&&Ws&&!r.render){const s=r.template||ss(t).template;if(s){const{isCustomElement:i,compilerOptions:o}=t.appContext.config,{delimiters:c,compilerOptions:a}=r,f=oe(oe({isCustomElement:i,delimiters:c},o),a);r.render=Ws(s,f)}}t.render=r.render||Re}{const s=bn(t);mt();try{ka(t)}finally{gt(),s()}}}const ul={get(t,e){return be(t,"get",""),t[e]}};function fl(t){const e=n=>{t.exposed=n||{}};return{attrs:new Proxy(t.attrs,ul),slots:t.slots,emit:t.emit,expose:e}}function cs(t){if(t.exposed)return t.exposeProxy||(t.exposeProxy=new Proxy(Zi(Gc(t.exposed)),{get(e,n){if(n in e)return e[n];if(n in cn)return cn[n](t)},has(e,n){return n in e||n in cn}}))}function hl(t){return k(t)&&"__vccOpts"in t}const dl=(t,e)=>Yc(t,e,nr),pl="3.4.27";/** +* @vue/runtime-dom v3.4.27 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/const ml="http://www.w3.org/2000/svg",gl="http://www.w3.org/1998/Math/MathML",at=typeof document<"u"?document:null,zs=at&&at.createElement("template"),yl={insert:(t,e,n)=>{e.insertBefore(t,n||null)},remove:t=>{const e=t.parentNode;e&&e.removeChild(t)},createElement:(t,e,n,r)=>{const s=e==="svg"?at.createElementNS(ml,t):e==="mathml"?at.createElementNS(gl,t):at.createElement(t,n?{is:n}:void 0);return t==="select"&&r&&r.multiple!=null&&s.setAttribute("multiple",r.multiple),s},createText:t=>at.createTextNode(t),createComment:t=>at.createComment(t),setText:(t,e)=>{t.nodeValue=e},setElementText:(t,e)=>{t.textContent=e},parentNode:t=>t.parentNode,nextSibling:t=>t.nextSibling,querySelector:t=>at.querySelector(t),setScopeId(t,e){t.setAttribute(e,"")},insertStaticContent(t,e,n,r,s,i){const o=n?n.previousSibling:e.lastChild;if(s&&(s===i||s.nextSibling))for(;e.insertBefore(s.cloneNode(!0),n),!(s===i||!(s=s.nextSibling)););else{zs.innerHTML=r==="svg"?`${t}`:r==="mathml"?`${t}`:t;const c=zs.content;if(r==="svg"||r==="mathml"){const a=c.firstChild;for(;a.firstChild;)c.appendChild(a.firstChild);c.removeChild(a)}e.insertBefore(c,n)}return[o?o.nextSibling:e.firstChild,n?n.previousSibling:e.lastChild]}},wl=Symbol("_vtc");function xl(t,e,n){const r=t[wl];r&&(e=(e?[e,...r]:[...r]).join(" ")),e==null?t.removeAttribute("class"):n?t.setAttribute("class",e):t.className=e}const js=Symbol("_vod"),bl=Symbol("_vsh"),vl=Symbol(""),El=/(^|;)\s*display\s*:/;function _l(t,e,n){const r=t.style,s=te(n);let i=!1;if(n&&!s){if(e)if(te(e))for(const o of e.split(";")){const c=o.slice(0,o.indexOf(":")).trim();n[c]==null&&kn(r,c,"")}else for(const o in e)n[o]==null&&kn(r,o,"");for(const o in n)o==="display"&&(i=!0),kn(r,o,n[o])}else if(s){if(e!==n){const o=r[vl];o&&(n+=";"+o),r.cssText=n,i=El.test(n)}}else e&&t.removeAttribute("style");js in t&&(t[js]=i?r.display:"",t[bl]&&(r.display="none"))}const qs=/\s*!important$/;function kn(t,e,n){if(L(n))n.forEach(r=>kn(t,e,r));else if(n==null&&(n=""),e.startsWith("--"))t.setProperty(e,n);else{const r=Tl(t,e);qs.test(n)?t.setProperty(Gt(r),n.replace(qs,""),"important"):t[r]=n}}const Ks=["Webkit","Moz","ms"],wr={};function Tl(t,e){const n=wr[e];if(n)return n;let r=Wt(e);if(r!=="filter"&&r in t)return wr[e]=r;r=ki(r);for(let s=0;sxr||(Fl.then(()=>xr=0),xr=Date.now());function Ll(t,e){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;Oe(kl(r,n.value),e,5,[r])};return n.value=t,n.attached=Cl(),n}function kl(t,e){if(L(e)){const n=t.stopImmediatePropagation;return t.stopImmediatePropagation=()=>{n.call(t),t._stopped=!0},e.map(r=>s=>!s._stopped&&r&&r(s))}else return e}const Xs=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>96&&t.charCodeAt(2)<123,Ol=(t,e,n,r,s,i,o,c,a)=>{const f=s==="svg";e==="class"?xl(t,r,f):e==="style"?_l(t,n,r):Kn(e)?Wr(e)||Nl(t,e,n,r,o):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):Ml(t,e,r,f))?Il(t,e,r,i,o,c,a):(e==="true-value"?t._trueValue=r:e==="false-value"&&(t._falseValue=r),Sl(t,e,r,f))};function Ml(t,e,n,r){if(r)return!!(e==="innerHTML"||e==="textContent"||e in t&&Xs(e)&&k(n));if(e==="spellcheck"||e==="draggable"||e==="translate"||e==="form"||e==="list"&&t.tagName==="INPUT"||e==="type"&&t.tagName==="TEXTAREA")return!1;if(e==="width"||e==="height"){const s=t.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return!1}return Xs(e)&&te(n)?!1:e in t}const Dl=oe({patchProp:Ol},yl);let Js;function $l(){return Js||(Js=Ka(Dl))}const Ul=(...t)=>{const e=$l().createApp(...t),{mount:n}=e;return e.mount=r=>{const s=Vl(r);if(!s)return;const i=e._component;!k(i)&&!i.render&&!i.template&&(i.template=s.innerHTML),s.innerHTML="";const o=n(s,!1,Bl(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),o},e};function Bl(t){if(t instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&t instanceof MathMLElement)return"mathml"}function Vl(t){return te(t)?document.querySelector(t):t}function de(t){return t&&t.__esModule?t:{default:t}}function Po(t){Object.getOwnPropertyDescriptor(Symbol,t)||Object.defineProperty(Symbol,t,{value:Symbol(`@shigen/polyfill-symbol-dispose:Symbol.${t}`),configurable:!1,enumerable:!1,writable:!1})}Po("dispose");Po("asyncDispose");function kt(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Hl=Ao;function Ao(t,e){if(!t)throw new Error(e||"Assertion failed")}Ao.equal=function(e,n,r){if(e!=n)throw new Error(r||"Assertion failed: "+e+" != "+n)};const rr=kt(Hl),Wl=de(rr).default;function No(t,e){e??(e=t.reduce((s,{byteLength:i})=>s+i,0));const n=new Uint8Array(e);let r=0;for(const s of t)n.set(s,r),r+=s.byteLength;return Wl.equal(r,e),n}const zl=globalThis.console,Un=globalThis.crypto;!Un.subtle&&!globalThis.isSecureContext&&Object.defineProperty(Un,"subtle",{configurable:!0,get(){zl.error("NDNts depends on Web Crypto but it is unavailable because this webpage is not delivered securely, see https://mdn.io/SecureContext")}});function jl(t,e){return e instanceof t?e:e instanceof ArrayBuffer?new t(e):new t(e.buffer,e.byteOffset,e.byteLength)}function Je(t){return jl(DataView,t)}async function kr(t){const e=await Un.subtle.digest("SHA-256",t);return new Uint8Array(e)}const ql=de(rr).default;function Kl(t){const e={},n=t.addEventListener;return ql(n),Object.defineProperty(t,"addEventListener",{configurable:!0,value(...r){e[r[0]]=!0,n.call(this,...r)}}),e}var sr={},ir={};Object.defineProperty(ir,"__esModule",{value:!0});class Ql{constructor(){this.pullQueue=[],this.pushQueue=[],this.eventHandlers={},this.isPaused=!1,this.isStopped=!1}push(e){if(this.isStopped)return;const n={value:e,done:!1};if(this.pullQueue.length){const r=this.pullQueue.shift();r&&r.resolve(n)}else this.pushQueue.push(Promise.resolve(n)),this.highWaterMark!==void 0&&this.pushQueue.length>=this.highWaterMark&&!this.isPaused&&(this.isPaused=!0,this.eventHandlers.highWater?this.eventHandlers.highWater():console&&console.warn(`EventIterator queue reached ${this.pushQueue.length} items`))}stop(){if(!this.isStopped){this.isStopped=!0,this.remove();for(const e of this.pullQueue)e.resolve({value:void 0,done:!0});this.pullQueue.length=0}}fail(e){if(!this.isStopped)if(this.isStopped=!0,this.remove(),this.pullQueue.length){for(const n of this.pullQueue)n.reject(e);this.pullQueue.length=0}else{const n=Promise.reject(e);n.catch(()=>{}),this.pushQueue.push(n)}}remove(){Promise.resolve().then(()=>{this.removeCallback&&this.removeCallback()})}[Symbol.asyncIterator](){return{next:e=>{const n=this.pushQueue.shift();return n?(this.lowWaterMark!==void 0&&this.pushQueue.length<=this.lowWaterMark&&this.isPaused&&(this.isPaused=!1,this.eventHandlers.lowWater&&this.eventHandlers.lowWater()),n):this.isStopped?Promise.resolve({value:void 0,done:!0}):new Promise((r,s)=>{this.pullQueue.push({resolve:r,reject:s})})},return:()=>(this.isStopped=!0,this.pushQueue.length=0,this.remove(),Promise.resolve({value:void 0,done:!0}))}}}let Ro=class{constructor(e,{highWaterMark:n=100,lowWaterMark:r=1}={}){const s=new Ql;s.highWaterMark=n,s.lowWaterMark=r,s.removeCallback=e({push:i=>s.push(i),stop:()=>s.stop(),fail:i=>s.fail(i),on:(i,o)=>{s.eventHandlers[i]=o}})||(()=>{}),this[Symbol.asyncIterator]=()=>s[Symbol.asyncIterator](),Object.freeze(this)}};ir.EventIterator=Ro;ir.default=Ro;Object.defineProperty(sr,"__esModule",{value:!0});const as=ir;sr.EventIterator=as.EventIterator;function Gl(t,e,n){return new as.EventIterator(({push:r})=>(this.addEventListener(t,r,e),()=>this.removeEventListener(t,r,e)),n)}sr.subscribe=Gl;var Fo=sr.default=as.EventIterator;const Yl=de(Fo).default,Co=de(rr).default;function Rt(){let t;const n=new Yl(r=>{t=r},{highWaterMark:1/0})[Symbol.asyncIterator]();return Co(!!t),{[Symbol.asyncIterator]:()=>n,push:t.push,stop:t.stop,fail:t.fail}}async function*Lo(t,e){try{yield*t}catch{}}async function*Zs(t,e){for await(const n of e)yield*t(n)}function Xl(t,e){Co(t>=0);for(const n of e.keys()){if(e.size<=t)break;e.delete(n)}}class ls{constructor(e){l(this,"keyOf");l(this,"m",new Map);this.keyOf=e}get size(){return this.m.size}has(e){return this.m.has(this.keyOf(e))}get(e){var n;return(n=this.m.get(this.keyOf(e)))==null?void 0:n[1]}set(e,n){return this.m.set(this.keyOf(e),[e,n]),this}delete(e){return this.m.delete(this.keyOf(e))}[Symbol.iterator](){return this.m.values()}}class ko{constructor(e){l(this,"m");l(this,"size_",0);this.m=new ls(e)}get dimension(){return this.m.size}get size(){return this.size_}count(e){var n;return((n=this.m.get(e))==null?void 0:n.size)??0}list(e){return this.m.get(e)??new Set}add(e,n){let r=this.m.get(e);r||(r=new Set,this.m.set(e,r));const s=r.size;return r.add(n),this.size_+=r.size-s,r.size}remove(e,n){const r=this.m.get(e);if(!r)return 0;const s=r.size;return r.delete(n),this.size_+=r.size-s,r.size===0&&this.m.delete(e),r.size}associations(){return this.m[Symbol.iterator]()}*[Symbol.iterator](){for(const[e,n]of this.associations())for(const r of n)yield[e,r]}}class Jl extends ko{constructor(){super(e=>e)}}class Zl{constructor(e){l(this,"m");l(this,"size_",0);this.m=new ls(e)}get dimension(){return this.m.size}get size(){return this.size_}count(e){return this.m.get(e)??0}add(e){const n=this.count(e)+1;return this.m.set(e,n),++this.size_,n}remove(e){let n=this.count(e);return n===0||(--this.size_,--n,n===0?this.m.delete(e):this.m.set(e,n)),n}multiplicities(){return this.m[Symbol.iterator]()}}function It(t,e,n,r){const[s=0,i=Number.MAX_SAFE_INTEGER]=r===void 0?[0,n]:[n,r];if(!(Number.isInteger(t)&&t>=s&&t<=i))throw new RangeError(`${t} is not an integer or out of ${e} valid range`);return t}class eu{constructor(e=0){l(this,"next");l(this,"buffer",new Map);this.next=e}get size(){return this.buffer.size}get empty(){return this.buffer.size===0}push(e,n){e>=this.next&&this.buffer.set(e,n)}shift(){const e=[];for(;this.buffer.has(this.next);)e.push(this.buffer.get(this.next)),this.buffer.delete(this.next),++this.next;return e}}const us={};for(let t=0;t<=255;++t)us[t]=t.toString(16).padStart(2,"0").toUpperCase();const mn={};for(let t=0;t<=15;++t){const e=t.toString(16);mn[e.toLowerCase()]=t,mn[e.toUpperCase()]=t}function ht(t){let e="";for(const n of t)e+=us[n];return e}(function(t){t.TABLE=us})(ht||(ht={}));function gn(t){const e=new Uint8Array(t.length/2);for(let n=0;ne;const n=1-t,r=2*t;return()=>e*(n+r*Math.random())}const ce=de(rr).default;function*su(t,e){const n=[""];let r="";for(const i of t.comps)r+=ht(i.tlv),n.push(r);let s;for(;(s=n.pop())!==void 0;){const i=e(s);i!==void 0&&(yield i)}}const E={Name:7,GenericNameComponent:8,ImplicitSha256DigestComponent:1,ParametersSha256DigestComponent:2,Interest:5,CanBePrefix:33,MustBeFresh:18,ForwardingHint:30,Nonce:10,InterestLifetime:12,HopLimit:34,AppParameters:36,ISigInfo:44,ISigValue:46,Data:6,MetaInfo:20,ContentType:24,FreshnessPeriod:25,FinalBlock:26,Content:21,DSigInfo:22,DSigValue:23,SigType:27,KeyLocator:28,KeyDigest:29,SigNonce:38,SigTime:40,SigSeqNum:42,ValidityPeriod:253,NotBefore:254,NotAfter:255,Nack:800,NackReason:801},Mo={Sha256:0,Sha256WithRsa:1,Sha256WithEcdsa:3,HmacWithSha256:4,Ed25519:5,Null:200},iu={Congestion:50,Duplicate:100,NoRoute:150};class Do{constructor(e){l(this,"n");this.n=e}encodeTo(e){e.prependRoom(1)[0]=this.n}}class $o{constructor(e){l(this,"n");this.n=e}encodeTo(e){Je(e.prependRoom(2)).setUint16(0,this.n)}}class Uo{constructor(e){l(this,"n");this.n=e}encodeTo(e){Je(e.prependRoom(4)).setUint32(0,this.n)}}class Bo{constructor(e){l(this,"n");this.n=e}encodeTo(e){const n=Je(e.prependRoom(8));n.setUint32(0,this.n/4294967296),n.setUint32(4,this.n)}}class ei{constructor(e){l(this,"n");this.n=e}encodeTo(e){Je(e.prependRoom(8)).setBigUint64(0,this.n)}}function ti(t){switch(t.byteLength){case 1:return t.getUint8(0);case 2:return t.getUint16(0);case 4:return t.getUint32(0)}throw new Error("incorrect TLV-LENGTH of NNI")}const Vo={1:Do,2:$o,4:Uo,8:Bo};function X(t,{len:e,unsafe:n=!1}={}){if(e)return e===8&&typeof t=="bigint"?new ei(t):new Vo[e](Number(t));if(typeof t=="bigint")switch(!0){case t<0x100000000n:{t=Number(t);break}case t<=0xffffffffffffffffn:return new ei(t);default:throw new RangeError("NNI is too large")}switch(!0){case t<0:throw new RangeError("NNI cannot be negative");case t<256:return new Do(t);case t<65536:return new $o(t);case t<4294967296:return new Uo(t);case t<=(n?18446744073709552e3:Number.MAX_SAFE_INTEGER):return new Bo(t);default:throw new RangeError("NNI is too large")}}(function(t){function e(r){return!!Vo[r]}t.isValidLength=e;function n(r,{len:s,big:i=!1,unsafe:o=!1}={}){if(s&&r.byteLength!==s)throw new Error(`incorrect TLV-LENGTH of NNI${s}`);const c=Je(r);if(i)return c.byteLength===8?c.getBigUint64(0):BigInt(ti(c));if(c.byteLength===8){const a=c.getUint32(0)*4294967296+c.getUint32(4);if(!o&&!Number.isSafeInteger(a))throw new RangeError(`NNI is too large ${ht(r)}`);return a}return ti(c)}t.decode=n})(X||(X={}));class ou{constructor(e,n,r,s,i){l(this,"type");l(this,"buf");l(this,"offsetT");l(this,"offsetV");l(this,"offsetE");this.type=e,this.buf=n,this.offsetT=r,this.offsetV=s,this.offsetE=i}get length(){return this.offsetE-this.offsetV}get value(){return this.buf.subarray(this.offsetV,this.offsetE)}get tlv(){return this.buf.subarray(this.offsetT,this.offsetE)}get size(){return this.offsetE-this.offsetT}get decoder(){return new Ze(this.tlv)}get vd(){return new Ze(this.value)}get nni(){return X.decode(this.value)}get nniBig(){return X.decode(this.value,{big:!0})}get text(){return Oo(this.value)}get before(){return this.buf.subarray(0,this.offsetT)}get after(){return this.buf.subarray(this.offsetE)}}class Ze{constructor(e){l(this,"input");l(this,"dv");l(this,"offset",0);this.input=e,this.dv=Je(e)}get eof(){return this.offset>=this.input.length}throwUnlessEof(){if(!this.eof)throw new Error("junk after end of TLV")}read(){const e=this.offset,n=this.readVarNum(),r=this.readVarNum(),s=this.offset;if(r===void 0||(this.offset+=r)>this.input.length)throw new Error(`TLV at offset ${e} is incomplete`);return new ou(n,this.input,e,s,this.offset)}decode(e){return e.decodeFrom(this)}readVarNum(){if(!this.eof)switch(this.input[this.offset]){case 253:return this.offset+=3,this.offset>this.input.length?void 0:this.dv.getUint16(this.offset-2);case 254:return this.offset+=5,this.offset>this.input.length?void 0:this.dv.getUint32(this.offset-4);case 255:return;default:return this.offset+=1,this.input[this.offset-1]}}}(function(t){function e(n,r){const s=new t(n),i=r.decodeFrom(s);return s.throwUnlessEof(),i}t.decode=e})(Ze||(Ze={}));function ni(t){if(t<253)return 1;if(t<=65535)return 3;if(t<=4294967295)return 5;throw new Error("VAR-NUMBER is too large")}function ri(t,e,n,r){r<253?t[n++]=r:r<=65535?(t[n++]=253,e.setUint16(n,r)):(t[n++]=254,e.setUint32(n,r))}class j{constructor(e=2048){l(this,"buf");l(this,"off");this.buf=new ArrayBuffer(e),this.off=e}get size(){return this.buf.byteLength-this.off}get output(){return new Uint8Array(this.buf,this.off)}prependRoom(e){return this.off=0;--n)this.encode(e[n])}prependTlv(e,n,...r){const s=n===j.OmitEmpty;s||r.unshift(n);const i=this.size;this.prependValue(...r);const o=this.size-i;(o>0||!s)&&this.prependTypeLength(e,o)}encode(e){e instanceof Uint8Array?this.prependRoom(e.length).set(e):typeof(e==null?void 0:e.encodeTo)=="function"?e.encodeTo(this):Array.isArray(e)?typeof e[0]=="number"?this.prependTlv(...e):this.prependValue(...e):ce(e===void 0||e===!1,"obj is not Encodable")}grow(e){const n=2048+e,r=new ArrayBuffer(n+this.size);new Uint8Array(r,n).set(this.output),this.buf=r,this.off=n}}(function(t){t.OmitEmpty=Symbol("@ndn/tlv#OmitEmpty");function e(r,s){const i=new t(s);return i.encode(r),i.output}t.encode=e;function n(r,s){return{encodeTo(i){const o=i.size;i.encode(r),s(i.output.subarray(0,i.size-o))}}}t.extract=n})(j||(j={}));function rn(t){const e=t.toString(16).toUpperCase();return t<253?`0x${e.padStart(2,"0")}`:t<=65535?`0x${e.padStart(4,"0")}`:`0x${e.padStart(8,"0")}`}const si=100;function cu(t){return(e,{decoder:n})=>{t.decode(e,n)}}function au(t){return t<=31||t%2===1}class le{constructor(e,n=[]){l(this,"typeName");l(this,"topTT");l(this,"rules",new Map);l(this,"requiredTT",new Set);l(this,"nextOrder",si);l(this,"isCritical",au);l(this,"unknownHandler");l(this,"beforeObservers",[]);l(this,"afterObservers",[]);this.typeName=e,this.topTT=Array.isArray(n)?n:[n]}applyDefaultsToRuleOptions({order:e=this.nextOrder+=si,required:n=!1,repeat:r=!1}={}){return{order:e,required:n,repeat:r}}add(e,n,r={}){const s=this.applyDefaultsToRuleOptions(r);return ce(!this.rules.has(e),"duplicate rule for same TLV-TYPE"),this.rules.set(e,{...s,cb:n instanceof le?cu(n):n}),s.required&&this.requiredTT.add(e),this}setIsCritical(e){return this.isCritical=e,this}setUnknown(e){return this.unknownHandler=e,this}decode(e,n){const r=n.read();if(this.topTT.length>0&&!this.topTT.includes(r.type))throw new Error(`TLV-TYPE ${rn(r.type)} is not ${this.typeName}`);return this.decodeV(e,r.vd,r)}decodeValue(e,n){return this.decodeV(e,n)}decodeV(e,n,r){var c;for(const a of this.beforeObservers)a(e,r);let s=0;const i=new Set,o=new Set(this.requiredTT);for(;!n.eof;){const a=n.read(),f=a.type,h=this.rules.get(f);if(!h){(c=this.unknownHandler)!=null&&c.call(this,e,a,s)||this.handleUnrecognized(f,"unknown");continue}if(s>h.order){this.handleUnrecognized(f,"out of order");continue}if(s=h.order,!h.repeat&&i.has(f))throw new Error(`TLV-TYPE ${rn(f)} cannot repeat in ${this.typeName}`);i.add(f),o.delete(f),h.cb(e,a)}if(o.size>0)throw new Error(`TLV-TYPE ${Array.from(o,rn).join(",")} missing in ${this.typeName}`);for(const a of this.afterObservers)a(e,r);return e}handleUnrecognized(e,n){if(this.isCritical(e))throw new Error(`TLV-TYPE ${rn(e)} is ${n} in ${this.typeName}`)}}(function(t){t.neverCritical=()=>!1,t.alwaysCritical=()=>!0})(le||(le={}));function je(t){if(typeof t!="function")throw new Error("mnemonist/DefaultWeakMap.constructor: expecting a function.");this.items=new WeakMap,this.factory=t}je.prototype.clear=function(){this.items=new WeakMap};je.prototype.get=function(t){var e=this.items.get(t);return typeof e>"u"&&(e=this.factory(t),this.items.set(t,e)),e};je.prototype.peek=function(t){return this.items.get(t)};je.prototype.set=function(t,e){return this.items.set(t,e),this};je.prototype.has=function(t){return this.items.has(t)};je.prototype.delete=function(t){return this.items.delete(t)};je.prototype.inspect=function(){return this.items};typeof Symbol<"u"&&(je.prototype[Symbol.for("nodejs.util.inspect.custom")]=je.prototype.inspect);var lu=je;const Ho=kt(lu);function uu(t,e,n,r,s){const i={...r,...s?s.applyDefaultsToRuleOptions(r):{order:t,required:!1,repeat:!1}};s.add(t,i.repeat?(c,a)=>c[e].push(n.decode(a)):(c,a)=>c[e]=n.decode(a),i);const{asString:o=c=>`${c}`}=n;return i.repeat?{...i,tt:t,key:e,newValue:()=>[],*encode(c){for(const a of c)yield n.encode(a)},*asString(c){if(c.length===0)return;let a=` ${e}=[`;for(const f of c)yield`${a}${o(f)}`,a=", ";yield"]"}}:{...i,tt:t,key:e,newValue:i.required?n.newValue:()=>{},*encode(c){c!==void 0&&(yield n.encode(c))},asString:function*(c){c!==void 0&&(yield` ${e}=${o(c)}`)}}}function fu(t){t.sort(({order:e},{order:n})=>e-n)}function hu(t,e){const n=[];for(const{tt:r,key:s,encode:i}of t)for(const o of i(e[s]))n.push([r,o]);return n}const du=de(Ho).default,Pt=new du(()=>({}));var yn;(function(t){t.TAG=Symbol("@ndn/tlv#Extensible");function e(r,s){const i=Pt.peek(s);i!==void 0&&Pt.set(r,i)}t.cloneRecord=e;function n(r,s){for(const[i,o]of Object.entries(s))Object.defineProperty(r.prototype,i,{enumerable:!0,get(){return un.get(this,o)},set(c){c===void 0?un.clear(this,o):un.set(this,o,c)}})}t.defineGettersSetters=n})(yn||(yn={}));var un;(function(t){function e(s,i){var o;return(o=Pt.peek(s))==null?void 0:o[`ext_${i}`]}t.get=e;function n(s,i,o){Pt.get(s)[`ext_${i}`]=o}t.set=n;function r(s,i){var o;(o=Pt.peek(s))==null||delete o[`ext_${i}`]}t.clear=r})(un||(un={}));class pu{constructor(){l(this,"hasUnrecognized",!1);l(this,"evd",new le("ExtensionRegistry").setUnknown(()=>(this.hasUnrecognized=!0,!1)).setIsCritical(le.neverCritical));l(this,"fields",[]);l(this,"register",(e,n,r={})=>{r.order??(r.order=e),this.fields.push(uu(e,`ext_${e}`,n,r,this.evd)),fu(this.fields)});l(this,"decodeUnknown",(e,n)=>{const r=Pt.get(e);return this.hasUnrecognized=!1,this.evd.decodeValue(r,n.decoder),!this.hasUnrecognized})}encode(e){const n=Pt.peek(e);return n?hu(this.fields,n):[]}}var mu=function(t,e){if(typeof t.compare=="function")return t.compare(e);if(t===e)return 0;for(var n=t.length,r=e.length,s=0,i=Math.min(n,r);s=1)try{n=ii(Number.parseInt(e,10)),r=s+1}catch{}const i=e.length-r,o=new j(ci+i),c=o.prependRoom(i);let a=0,f=!1;for(let h=r;h=3&&(a-=3),new ie(n,ai,o,a)}get length(){return this.value.length}get text(){return Oo(this.value)}toString(){let e=`${this.type}=`,n=!1;for(const r of this.value)n||(n=r!==oi),e+=Wo[r];return n||(e+="..."),e}encodeTo(e){e.encode(this.tlv)}is(e){return e.match(this)}as(e){return ce(e.match(this),"component does not follow convention"),e.parse(this)}compare(e){return e=ie.from(e),2*Math.sign(this.type-e.type||this.length-e.length||yu(this.value,e.value))}equals(e){return this.compare(e)===ie.CompareResult.EQUAL}}(function(t){(function(e){e[e.LT=-2]="LT",e[e.EQUAL=0]="EQUAL",e[e.GT=2]="GT"})(t.CompareResult||(t.CompareResult={}))})(ie||(ie={}));const An=32;class zo{constructor(e,n){l(this,"tt");l(this,"altUriPrefix");l(this,"altUriRegex");this.tt=e,this.altUriPrefix=n,this.altUriRegex=new RegExp(`^${n}=([0-9a-fA-F]{${2*An}})$`)}match(e){return e.type===this.tt&&e.length===An}create(e){if(e.length!==An)throw new Error(`digest length must be ${An}`);return new ie(this.tt,e)}parse(e){return e.value}toAltUri(e){return`${this.altUriPrefix}=${ht(e.value).toLowerCase()}`}fromAltUri(e){const n=this.altUriRegex.exec(e);if(n)return new ie(this.tt,gn(n[1]))}}class xu extends zo{strip(e){var n;return(n=e.get(-1))!=null&&n.is(this)?e.getPrefix(-1):e}}const li=new xu(E.ImplicitSha256DigestComponent,"sha256digest");class ui extends ie{}class bu extends zo{constructor(){super(...arguments);l(this,"PLACEHOLDER",new ui(this.tt,"placeholder"))}isPlaceholder(n){return n instanceof ui}findIn(n,r=!0){return n.comps.findIndex(s=>this.match(s)||r&&this.isPlaceholder(s))}}const Qe=new bu(E.ParametersSha256DigestComponent,"params-sha256");class R{constructor(e,n=ie.from){l(this,"comps",[]);l(this,"valueEncoderBufSize");l(this,"value_");l(this,"uri_");l(this,"hex_");if(e===void 0)this.valueEncoderBufSize=0;else if(e instanceof R)this.comps=e.comps,this.value_=e.value_,this.uri_=e.uri_,this.hex_=e.hex_;else if(typeof e=="string"){for(const r of e.replace(/^(?:ndn:)?\/*/,"").split("/"))r!==""&&this.comps.push(n(r));this.valueEncoderBufSize=e.length+4*this.comps.length}else if(Array.isArray(e))this.comps=Array.from(e,ie.from);else if(e instanceof Uint8Array){this.value_=e;const r=new Ze(this.value_);for(;!r.eof;)this.comps.push(r.decode(ie))}}static decodeFrom(e){const{value:n}=e.read();return new R(n)}static from(e){return e instanceof R?e:new R(e)}get length(){return this.comps.length}get value(){return this.value_??(this.value_=j.encode(this.comps,this.valueEncoderBufSize??256)),this.value_}get valueHex(){return this.hex_??(this.hex_=ht(this.value)),this.hex_}get(e){return e=e<0?e+this.length:e,this.comps[e]}at(e){const n=this.get(e);if(!n)throw new RangeError(`component ${e} out of range`);return n}toString(){return this.uri_??(this.uri_=`/${this.comps.map(e=>e.toString()).join("/")}`),this.uri_}slice(e,n){return new R(this.comps.slice(e,n))}getPrefix(e){return this.slice(0,e)}append(...e){let n;return e.length===2&&typeof e[0].create=="function"?n=[e[0].create(e[1])]:n=e,new R([...this.comps,...n])}replaceAt(e,n){const r=[...this.comps];return r.splice(e,1,n),new R(r)}compare(e){e=R.from(e);const n=Math.min(this.length,e.length),r=this.comparePrefix(e,n);return r!==R.CompareResult.EQUAL?r:this.length>n?R.CompareResult.RPREFIX:e.length>n?R.CompareResult.LPREFIX:R.CompareResult.EQUAL}equals(e){return e=R.from(e),this.hex_!==void 0&&e.hex_!==void 0?this.hex_===e.hex_:this.length===e.length&&this.comparePrefix(e,this.length)===R.CompareResult.EQUAL}isPrefixOf(e){return e=R.from(e),this.length<=e.length&&this.comparePrefix(e,this.length)===R.CompareResult.EQUAL}comparePrefix(e,n){for(let r=0;rt.push(e.decode(R)),{repeat:!0});class jt{constructor(e){l(this,"delegations",[]);if(Array.isArray(e))for(const n of e)this.delegations.push(R.from(n));else e instanceof jt?this.delegations=[...e.delegations]:R.isNameLike(e)&&(this.delegations=[R.from(e)])}static decodeValue(e){const n=new jt;return _u.decodeValue(n.delegations,e),n}encodeTo(e){e.prependTlv(E.ForwardingHint,j.OmitEmpty,...this.delegations)}}const G=Symbol("@ndn/packet#FIELDS");function jo(t,e){for(const[n,r]of Object.entries(e))Object.defineProperty(t.prototype,n,{enumerable:!0,get(){return this[G][n]},set(s){const i=this[G];i[n]=s;for(const o of r)i[o]=void 0}})}const Tu=new le("KeyLocator",E.KeyLocator).add(E.Name,(t,{value:e})=>t.name=new R(e)).add(E.KeyDigest,(t,{value:e})=>t.digest=e);class et{constructor(...e){l(this,"name");l(this,"digest");for(const n of e)if(R.isNameLike(n))this.name=R.from(n);else if(n instanceof Uint8Array)this.digest=n;else if(n instanceof et)Object.assign(this,n);else throw new Error("unknown KeyLocator constructor argument")}static decodeFrom(e){return Tu.decode(new et,e)}encodeTo(e){e.prependTlv(E.KeyLocator,j.OmitEmpty,this.name,[E.KeyDigest,j.OmitEmpty,this.digest])}}(function(t){function e(r){return r instanceof t||R.isNameLike(r)||r instanceof Uint8Array}t.isCtorArg=e;function n(r){const s=r==null?void 0:r.name;if(!s)throw new Error("KeyLocator does not have name");return s}t.mustGetName=n})(et||(et={}));const Su=/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2})$/;function hi(t){const e=Su.exec(t);if(!e)throw new Error("invalid ISO8601 compact timestamp");const[n,r,s,i,o,c]=e.slice(1).map(a=>Number.parseInt(a,10));return Date.UTC(n,r-1,s,i,o,c)}function Nn(t){const e=new Date(t),n=(r,s=2,i=0)=>(i+e[`getUTC${r}`]()).toString().padStart(s,"0");return`${n("FullYear",4)}${n("Month",2,1)}${n("Date")}T${n("Hours")}${n("Minutes")}${n("Seconds")}`}const Iu=new le("ValidityPeriod",E.ValidityPeriod).add(E.NotBefore,(t,{text:e})=>t.notBefore=hi(e),{required:!0}).add(E.NotAfter,(t,{text:e})=>t.notAfter=hi(e),{required:!0});class Ft{constructor(e=0,n=0){l(this,"notBefore");l(this,"notAfter");this.notBefore=Number(e),this.notAfter=Number(n)}static decodeFrom(e){return Iu.decode(new Ft,e)}encodeTo(e){return e.prependTlv(E.ValidityPeriod,[E.NotBefore,Or(Nn(this.notBefore))],[E.NotAfter,Or(Nn(this.notAfter))])}includes(e){return e=Number(e),this.notBefore<=e&&e<=this.notAfter}equals({notBefore:e,notAfter:n}){return this.notBefore===e&&this.notAfter===n}intersect(...e){return new Ft(Math.max(this.notBefore,...e.map(({notBefore:n})=>n)),Math.min(this.notAfter,...e.map(({notAfter:n})=>n)))}toString(){return`${Nn(this.notBefore)}-${Nn(this.notAfter)}`}}(function(t){t.MAX=new t(5401098e5,253402300799e3);function e(s){const i=Date.now(),o=new Date(i);return o.setUTCDate(o.getUTCDate()+s),new t(i,o)}t.daysFromNow=e;function n(s){return s.validity}t.get=n;function r(s,i){s.validity=i}t.set=r})(Ft||(Ft={}));const Mr=new pu,Pu=new le("SigInfo",[E.ISigInfo,E.DSigInfo]).add(E.SigType,(t,{nni:e})=>t.type=e,{required:!0}).add(E.KeyLocator,(t,{decoder:e})=>t.keyLocator=e.decode(et)).add(E.SigNonce,(t,{value:e})=>t.nonce=e).add(E.SigTime,(t,{nni:e})=>t.time=e).add(E.SigSeqNum,(t,{nniBig:e})=>t.seqNum=e).add(E.ValidityPeriod,(t,{decoder:e})=>t.validity=e.decode(Ft)).setUnknown(Mr.decodeUnknown);var Uh;const qn=class qn{constructor(...e){l(this,"type",Mo.Null);l(this,"keyLocator");l(this,"nonce");l(this,"time");l(this,"seqNum");l(this,"validity");l(this,Uh,Mr);const n=[];for(const r of e)if(typeof r=="number")this.type=r;else if(et.isCtorArg(r))n.push(r);else if(r instanceof qn)Object.assign(this,r),yn.cloneRecord(this,r);else if(r instanceof Ft)this.validity=r;else if(r[fn])r[fn](this);else throw new Error("unknown SigInfo constructor argument");n.length>0&&(this.keyLocator=new et(...n))}static decodeFrom(e){return Pu.decode(new qn,e)}encodeAs(e){return{encodeTo:n=>this.encodeTo(n,e)}}encodeTo(e,n){e.prependTlv(n,[E.SigType,X(this.type)],this.keyLocator,[E.SigNonce,j.OmitEmpty,this.nonce],this.time!==void 0&&[E.SigTime,X(this.time)],this.seqNum!==void 0&&[E.SigSeqNum,X(this.seqNum)],this.validity,...Mr.encode(this))}};Uh=yn.TAG;let dt=qn;const fn=Symbol("@ndn/packet#SigInfo.ctorAssign");(function(t){function e(i){return{[fn](o){o.nonce=i instanceof Uint8Array?i:n(i)}}}t.Nonce=e;function n(i=8){return ce(i>=1),Un.getRandomValues(new Uint8Array(i))}t.generateNonce=n;function r(i=Date.now()){return{[fn](o){o.time=i}}}t.Time=r;function s(i){return{[fn](o){o.seqNum=i}}}t.SeqNum=s})(dt||(dt={}));var Bn;(function(t){t.OP=Symbol("@ndn/packet#LLSign.OP")})(Bn||(Bn={}));var Vn;(function(t){t.OP=Symbol("@ndn/packet#LLVerify.OP")})(Vn||(Vn={}));var di;(function(t){function e(r,s,i){return r.sigInfo??(r.sigInfo=new dt),s!==void 0&&(r.sigInfo.type=s),i===!1?r.sigInfo.keyLocator=void 0:i!==void 0&&(r.sigInfo.keyLocator=new et(i)),r.sigInfo}t.putSigInfo=e;function n(r){return{async sign(s){(!s.sigInfo||s.sigInfo.type===Mo.Null)&&await r.sign(s)}}}t.onlyIfUnsigned=n})(di||(di={}));var pi;(function(t){function e(r,s){var i;ce(((i=r.sigInfo)==null?void 0:i.type)===s,`packet does not have SigType ${s}`)}t.checkSigType=e;function n(r){ce(r,"bad signature value")}t.throwOnBadSig=n})(pi||(pi={}));const Dr=255;let Au=class{constructor(...e){l(this,"name",new R);l(this,"canBePrefix",!1);l(this,"mustBeFresh",!1);l(this,"fwHint");l(this,"nonce_");l(this,"lifetime_",q.DefaultLifetime);l(this,"hopLimit_",Dr);l(this,"appParameters");l(this,"sigInfo");l(this,"sigValue",new Uint8Array);l(this,"paramsPortion");l(this,"signedPortion");for(const n of e)if(R.isNameLike(n))this.name=R.from(n);else if(n instanceof jt)this.fwHint=new jt(n);else if(n instanceof Uint8Array)this.appParameters=n;else if(n instanceof q)Object.assign(this,n[G]);else if(n[_t])n[_t](this);else throw new Error("unknown Interest constructor argument")}get nonce(){return this.nonce_}set nonce(e){this.nonce_=e&&It(e,"Nonce",4294967295)}get lifetime(){return this.lifetime_}set lifetime(e){this.lifetime_=It(Math.trunc(e),"InterestLifetime")}get hopLimit(){return this.hopLimit_}set hopLimit(e){this.hopLimit_=It(e,"HopLimit",Dr)}};const Nu=new le("Interest",E.Interest).add(E.Name,(t,{decoder:e})=>t.name=e.decode(R),{required:!0}).add(E.CanBePrefix,t=>t.canBePrefix=!0).add(E.MustBeFresh,t=>t.mustBeFresh=!0).add(E.ForwardingHint,(t,{vd:e})=>t.fwHint=jt.decodeValue(e)).add(E.Nonce,(t,{value:e})=>t.nonce=X.decode(e,{len:4})).add(E.InterestLifetime,(t,{nni:e})=>t.lifetime=e).add(E.HopLimit,(t,{value:e})=>t.hopLimit=X.decode(e,{len:1})).add(E.AppParameters,(t,{value:e,tlv:n,after:r})=>{if(Qe.findIn(t.name,!1)<0)throw new Error("ParamsDigest missing in parameterized Interest");t.appParameters=e,ce(n.buffer===r.buffer),t.paramsPortion=new Uint8Array(n.buffer,n.byteOffset,n.byteLength+r.byteLength)}).add(E.ISigInfo,(t,{decoder:e})=>t.sigInfo=e.decode(dt)).add(E.ISigValue,(t,{value:e,tlv:n})=>{var i;if(!((i=t.name.get(-1))!=null&&i.is(Qe)))throw new Error("ParamsDigest missing or out of place in signed Interest");if(!t.paramsPortion)throw new Error("AppParameters missing in signed Interest");if(!t.sigInfo)throw new Error("ISigInfo missing in signed Interest");ce(n.buffer===t.paramsPortion.buffer),t.sigValue=e;const r=t.name.value.subarray(0,-t.name.get(-1).tlv.byteLength),s=new Uint8Array(n.buffer,t.paramsPortion.byteOffset,n.byteOffset-t.paramsPortion.byteOffset);t.signedPortion=new Uint8Array(r.byteLength+s.byteLength),t.signedPortion.set(r,0),t.signedPortion.set(s,r.byteLength)});var Bh;class q{constructor(...e){l(this,Bh);this[G]=new Au(...e)}static decodeFrom(e){const n=new q;return Nu.decode(n[G],e),n}encodeTo(e){const{name:n,canBePrefix:r,mustBeFresh:s,fwHint:i,nonce:o,lifetime:c,hopLimit:a,appParameters:f}=this[G];if(n.length===0)throw new Error("invalid empty Interest name");if(f&&Qe.findIn(n,!1)<0)throw new Error("ParamsDigest missing");e.prependTlv(E.Interest,n,r&&[E.CanBePrefix],s&&[E.MustBeFresh],i,[E.Nonce,X(o??q.generateNonce(),{len:4})],c!==q.DefaultLifetime&&[E.InterestLifetime,X(c)],a!==Dr&&[E.HopLimit,X(a,{len:1})],...this.encodeParamsPortion())}encodeParamsPortion(){const{appParameters:e,sigInfo:n,sigValue:r}=this[G];if(!e)return[];const s=[[E.AppParameters,e]];return n&&s.push(n.encodeAs(E.ISigInfo),[E.ISigValue,r]),s}appendParamsDigestPlaceholder(){const e=this[G];return this.name=e.name.append(Qe.PLACEHOLDER),e.name.length-1}async updateParamsDigest(){const e=this[G];let n=Qe.findIn(e.name);n<0&&(n=this.appendParamsDigestPlaceholder()),e.appParameters??(e.appParameters=new Uint8Array),e.paramsPortion=j.encode(this.encodeParamsPortion());const r=await kr(e.paramsPortion);e.name=e.name.replaceAt(n,Qe.create(r))}async validateParamsDigest(e=!1){const{appParameters:n,paramsPortion:r,name:s}=this[G];if(!n){if(e)throw new Error("AppParameters is missing");return}if(!r)throw new Error("parameters portion is empty");const i=s.at(Qe.findIn(s,!1)),o=await kr(r);if(!i.equals(Qe.create(o)))throw new Error("incorrect ParamsDigest")}async[(Bh=G,Bn.OP)](e){var s;const n=this[G];let r=Qe.findIn(n.name);if(r<0)r=this.appendParamsDigestPlaceholder();else if(r!==n.name.length-1)throw new Error("ParamsDigest out of place for signed Interest");return n.signedPortion=j.encode([...n.name.getPrefix(-1).comps,[E.AppParameters,n.appParameters],(s=n.sigInfo)==null?void 0:s.encodeAs(E.ISigInfo)]),this.sigValue=await e(n.signedPortion),this.updateParamsDigest()}async[Vn.OP](e){const{signedPortion:n,sigValue:r}=this[G];if(await this.validateParamsDigest(),!n)throw new Error("SignedPortion is missing");await e(n,r)}}jo(q,{name:["signedPortion"],canBePrefix:[],mustBeFresh:[],fwHint:[],nonce:[],lifetime:[],hopLimit:[],appParameters:["paramsPortion","signedPortion"],sigInfo:["paramsPortion","signedPortion"],sigValue:["paramsPortion"]});const _t=Symbol("@ndn/packet#Interest.ctorAssign"),Ru=["canBePrefix","mustBeFresh","fwHint","lifetime","hopLimit"];(function(t){function e(){return Math.trunc(Math.random()*4294967296)}t.generateNonce=e,t.DefaultLifetime=4e3,t.CanBePrefix={[_t](o){o.canBePrefix=!0}},t.MustBeFresh={[_t](o){o.mustBeFresh=!0}};function n(o=e()){return{[_t](c){c.nonce=o}}}t.Nonce=n;function r(o){return{[_t](c){c.lifetime=o}}}t.Lifetime=r;function s(o){return{[_t](c){c.hopLimit=o}}}t.HopLimit=s;function i(o=()=>{}){if(typeof o=="function")return o;const c={};for(const a of Ru)o[a]!==void 0&&(c[a]=o[a]);return a=>{Object.assign(a,c)}}t.makeModifyFunc=i})(q||(q={}));class Fu{constructor(...e){l(this,"name",new R);l(this,"contentType_",0);l(this,"freshnessPeriod_",0);l(this,"finalBlockId");l(this,"content",new Uint8Array);l(this,"sigInfo",new dt);l(this,"sigValue",new Uint8Array);l(this,"signedPortion");l(this,"topTlv");l(this,"topTlvDigest");let n=!1;for(const r of e)if(R.isNameLike(r))this.name=R.from(r);else if(r instanceof Uint8Array)this.content=r;else if(r===Me.FinalBlock)n=!0;else if(r instanceof Me)Object.assign(this,r[G]);else if(r[Hn])r[Hn](this);else throw new Error("unknown Data constructor argument");this.isFinalBlock=n}get contentType(){return this.contentType_}set contentType(e){this.contentType_=It(e,"ContentType")}get freshnessPeriod(){return this.freshnessPeriod_}set freshnessPeriod(e){this.freshnessPeriod_=It(Math.trunc(e),"FreshnessPeriod")}get isFinalBlock(){return!!this.finalBlockId&&this.name.length>0&&this.finalBlockId.equals(this.name.get(-1))}set isFinalBlock(e){if(!e){this.finalBlockId=void 0;return}if(this.name.length===0)throw new Error("cannot set FinalBlockId when Name is empty");this.finalBlockId=this.name.get(-1)}}const qo=new le("Data",E.Data).add(E.Name,(t,{decoder:e})=>t.name=e.decode(R),{required:!0}).add(E.MetaInfo,new le("MetaInfo").add(E.ContentType,(t,{nni:e})=>t.contentType=e).add(E.FreshnessPeriod,(t,{nni:e})=>t.freshnessPeriod=e).add(E.FinalBlock,(t,{vd:e})=>t.finalBlockId=e.decode(ie))).add(E.Content,(t,{value:e})=>t.content=e).add(E.DSigInfo,(t,{decoder:e})=>t.sigInfo=e.decode(dt),{required:!0}).add(E.DSigValue,(t,{value:e,before:n})=>{t.sigValue=e,t.signedPortion=n},{required:!0});qo.beforeObservers.push((t,e)=>t.topTlv=e.tlv);var Vh;class Me{constructor(...e){l(this,Vh);this[G]=new Fu(...e)}static decodeFrom(e){const n=new Me;return qo.decode(n[G],e),n}encodeTo(e){const n=this[G];if(n.topTlv){e.encode(n.topTlv);return}e.encode(j.extract([E.Data,j.extract(this.encodeSignedPortion(),r=>n.signedPortion=r),[E.DSigValue,n.sigValue]],r=>n.topTlv=r))}encodeSignedPortion(){const{name:e,contentType:n,freshnessPeriod:r,finalBlockId:s,content:i,sigInfo:o}=this[G];return[e,[E.MetaInfo,j.OmitEmpty,n>0&&[E.ContentType,X(n)],r>0&&[E.FreshnessPeriod,X(r)],s&&[E.FinalBlock,s]],i.length>0&&[E.Content,i],o.encodeAs(E.DSigInfo)]}getImplicitDigest(){return this[G].topTlvDigest}async computeImplicitDigest(){let e=this.getImplicitDigest();if(!e){const n=this[G];n.topTlv||j.encode(this),e=await kr(n.topTlv),n.topTlvDigest=e}return e}getFullName(){const e=this.getImplicitDigest();if(e)return this[G].name.append(li,e)}async computeFullName(){return await this.computeImplicitDigest(),this.getFullName()}async canSatisfy(e,{isCacheLookup:n=!1}={}){if(n&&e.mustBeFresh&&this.freshnessPeriod<=0)return!1;if(e.canBePrefix?e.name.isPrefixOf(this.name):e.name.equals(this.name))return!0;if(e.name.length===this.name.length+1&&e.name.get(-1).is(li)){const r=this.getFullName();return r?e.name.equals(r):e.name.equals(await this.computeFullName())}return!1}async[(Vh=G,Bn.OP)](e){const n=j.encode(this.encodeSignedPortion());this[G].signedPortion=n,this.sigValue=await e(n)}async[Vn.OP](e){const{signedPortion:n,sigValue:r}=this[G];if(!r)throw new Error("SigValue is missing");if(!n)throw new Error("SignedPortion is missing");await e(n,r)}}const it=["topTlv","topTlvDigest","signedPortion"];jo(Me,{name:it,contentType:it,freshnessPeriod:it,finalBlockId:it,isFinalBlock:it,content:it,sigInfo:it,sigValue:it.slice(0,2)});const Hn=Symbol("@ndn/packet#Data.ctorAssign");(function(t){function e(r){return{[Hn](s){return s.contentType=r}}}t.ContentType=e;function n(r){return{[Hn](s){return s.freshnessPeriod=r}}}t.FreshnessPeriod=n,t.FinalBlock=Symbol("@ndn/packet#Data.FinalBlock")})(Me||(Me={}));const Cu=new le("NackHeader",E.Nack).add(E.NackReason,(t,{nni:e})=>t.reason=e);class or{constructor(e=0){l(this,"reason_",0);this.reason=e}get reason(){return this.reason_}set reason(e){this.reason_=It(e,"NackReason")}static decodeFrom(e){return Cu.decode(new or,e)}encodeTo(e){e.prependTlv(E.Nack,this.reason_>0&&[E.NackReason,X(this.reason_)])}}class Wn{constructor(e,n=iu.NoRoute){l(this,"interest");l(this,"header");this.interest=e,typeof n=="number"?this.header=new or(n):this.header=n}get reason(){return this.header.reason}set reason(e){this.header.reason=e}}var Ct;(function(t){function e(r,s,i){return{l3:r,token:s,congestionMark:i}}t.create=e;function n({reject:r,cancel:s}){return!r&&!s}t.isEncodable=n})(Ct||(Ct={}));class mi{constructor(e,n,r){l(this,"reject");l(this,"l3");l(this,"token");this.reject=e,this.l3=n,this.token=r}}class Ko{constructor(e,n){l(this,"l3");l(this,"token");l(this,"cancel",!0);this.l3=e,this.token=n}}var cr=class extends EventTarget{dispatchTypedEvent(e,n){return super.dispatchEvent(n)}};function Qo(t){if(typeof t.next=="function")return t;if(typeof t[Symbol.iterator]=="function")return t[Symbol.iterator]();if(typeof t[Symbol.asyncIterator]=="function")return t[Symbol.asyncIterator]();throw new TypeError('"values" does not to conform to any of the iterator or iterable protocols')}function Lu(){let t,e;return{promise:new Promise((r,s)=>{e=r,t=s}),reject:t,resolve:e}}function ku(t,e){const n=Qo(e),r=[],s=[];let i=!1,o=!1;function c(){for(;s.length>0&&r.length>0;){const p=s.shift(),{error:g,value:T}=r.shift();g?p.reject(g):p.resolve({done:!1,value:T})}for(;s.length>0&&o;){const{resolve:p}=s.shift();p({done:!0,value:void 0})}}async function a(){if(!o&&!i&&!(r.length>=t)){i=!0;try{const{done:p,value:g}=await n.next();p?o=!0:r.push({value:g})}catch(p){o=!0,r.push({error:p})}c(),i=!1,a()}}async function f(){if(r.length>0){const{error:g,value:T}=r.shift();if(g)throw g;return a(),{done:!1,value:T}}if(o)return{done:!0,value:void 0};const p=Lu();return s.push(p),a(),p.promise}const h={next:f,[Symbol.asyncIterator]:()=>h};return h}function*Ou(t,e){const n=[];let r;try{for(const s of e)n.push(s),!(n.length<=t)&&(yield n.shift())}catch(s){r=s}for(const s of n)yield s;if(r)throw r}function $r(t,e){return e===void 0?n=>$r(t,n):t===0?e:e[Symbol.asyncIterator]?ku(t,e):Ou(t,e)}async function Mu(t){const e=[];for await(const n of t)e.push(n);return e}function Du(t){return t[Symbol.asyncIterator]?Mu(t):Array.from(t)}async function $u(t){for await(const e of t);}function Uu(t){if(t[Symbol.asyncIterator])return $u(t);for(const e of t);}async function*gi(t,e){for await(const n of e)await t(n)&&(yield n)}function Ht(t,e){return e===void 0?n=>gi(t,n):gi(t,e)}async function*Go(t){for await(const e of t)e&&typeof e!="string"&&(e[Symbol.iterator]||e[Symbol.asyncIterator])?yield*Go(e):yield e}async function*yi(t,e){for await(const n of e)yield await t(n)}function qt(t,e){return e===void 0?n=>yi(t,n):yi(t,e)}function Yo(t,e){return e===void 0?n=>Yo(t,n):Ht(n=>n!=null,Go(qt(t,e)))}function wn(t,...e){let n=t();for(const r of e)n=r(n);return n}async function*Bu(t,e,n){let r=null;const s=a=>({value:e(a)}),i=async function*(a){for await(const f of a){if(r)return;yield f}},o=wn(()=>n,$r(1),i,qt(s),$r(t-1)),c=Qo(o);for(;;){const{value:a,done:f}=await c.next();if(f)break;try{const h=await a.value;r||(yield h)}catch(h){r=h}}if(r)throw r}function Ur(t,e,n){return e===void 0?(r,s)=>Ur(t,r,s):n===void 0?r=>Ur(t,e,r):Bu(t,e,n)}async function Vu(t,e,n){let r=e;for await(const s of n)r=await t(r,s);return r}function Xo(t,e,n){return n===void 0?r=>Xo(t,e,r):Vu(t,e,n)}async function*Hu(t,e){for await(const n of e)await t(n),yield n}function Br(t,e){return n=>Hu(t,n)}async function wi(t,e){let n=null,r=null,s=null;const i=f=>{n=f,r&&r(f)},o=()=>{s&&s()},c=()=>{t.removeListener("error",i),t.removeListener("drain",o)};t.once("error",i);const a=()=>new Promise((f,h)=>{if(n)return h(n);t.once("drain",o),s=f,r=h});for await(const f of e)if(t.write(f)===!1&&await a(),n)break;if(c(),n)throw n}function Wu(t,e){return e===void 0?n=>wi(t,n):wi(t,e)}function zu(t){return e=>{const n=t;if(typeof n.duplex=="function")return n.duplex(e);const r=t;return r.tx(e),r.rx}}function xi(t,e){switch(typeof e){case"number":return t.getPrefix(e);case"boolean":return e?t:void 0}return R.from(e)}class ju extends cr{constructor(n,r,s){var i,o;super();l(this,"fw");l(this,"rxtx");l(this,"attributes");l(this,"routes",new fi);l(this,"announcements",new fi);l(this,"running",!0);l(this,"txQueue",Rt());l(this,"handleLowerUp",()=>{this.dispatchTypedEvent("up",new Event("up"))});l(this,"handleLowerDown",()=>{this.dispatchTypedEvent("down",new Event("down"))});l(this,"rxLoop",async n=>{for await(const r of Ht(()=>this.running,n))switch(!0){case r.l3 instanceof q:{this.fw[r.cancel?"cancelInterest":"processInterest"](this,r);break}case r.l3 instanceof Me:{this.fw.processData(this,r);break}case r.l3 instanceof Wn:{this.fw.processNack(this,r);break}}this.close()});this.fw=n,this.rxtx=r,this.attributes={local:!1,advertiseFrom:!0,routeCapture:!0,...r.attributes,...s},n.dispatchTypedEvent("faceadd",new Ie.FaceEvent("faceadd",this)),n.faces.add(this),wn(()=>this.txLoop(),Br(c=>n.dispatchPacketEvent("pkttx",this,c)),zu(r),Br(c=>n.dispatchPacketEvent("pktrx",this,c)),this.rxLoop),(i=r.addEventListener)==null||i.call(r,"up",this.handleLowerUp),(o=r.addEventListener)==null||o.call(r,"down",this.handleLowerDown)}close(){var n,r,s,i;if(this.running){this.running=!1,(r=(n=this.rxtx).removeEventListener)==null||r.call(n,"up",this.handleLowerUp),(i=(s=this.rxtx).removeEventListener)==null||i.call(s,"down",this.handleLowerDown),this.fw.faces.delete(this);for(const[o]of this.routes.multiplicities())this.fw.fib.delete(this,o.valueHex);for(const[o]of this.announcements.multiplicities())this.fw.readvertise.removeAnnouncement(this,o);this.txQueue.fail(new Error("close")),this.dispatchTypedEvent("close",new Event("close")),this.fw.dispatchTypedEvent("facerm",new Ie.FaceEvent("facerm",this))}}toString(){return this.attributes.describe??"FwFace"}hasRoute(n){const r=R.from(n);return this.routes.count(r)>0}addRoute(n,r=!0){const s=R.from(n);this.fw.dispatchTypedEvent("prefixadd",new Ie.PrefixEvent("prefixadd",this,s)),this.routes.add(s)===1&&this.fw.fib.insert(this,s.valueHex,this.attributes.routeCapture);const i=xi(s,r);i&&this.addAnnouncement(i)}removeRoute(n,r=!0){const s=R.from(n),i=xi(s,r);i&&this.removeAnnouncement(i),this.routes.remove(s)===0&&this.fw.fib.delete(this,s.valueHex),this.fw.dispatchTypedEvent("prefixrm",new Ie.PrefixEvent("prefixrm",this,s))}addAnnouncement(n){if(!this.attributes.advertiseFrom)return;const r=R.from(n);this.announcements.add(r)===1&&this.fw.readvertise.addAnnouncement(this,r)}removeAnnouncement(n){if(!this.attributes.advertiseFrom)return;const r=R.from(n);this.announcements.remove(r)===0&&this.fw.readvertise.removeAnnouncement(this,r)}send(n){this.running&&this.txQueue.push(n)}txLoop(){return Lo(this.txQueue)}}function ue(t){if(typeof t!="function")throw new Error("mnemonist/DefaultMap.constructor: expecting a function.");this.items=new Map,this.factory=t,this.size=0}ue.prototype.clear=function(){this.items.clear(),this.size=0};ue.prototype.get=function(t){var e=this.items.get(t);return typeof e>"u"&&(e=this.factory(t,this.size),this.items.set(t,e),this.size++),e};ue.prototype.peek=function(t){return this.items.get(t)};ue.prototype.set=function(t,e){return this.items.set(t,e),this.size=this.items.size,this};ue.prototype.has=function(t){return this.items.has(t)};ue.prototype.delete=function(t){var e=this.items.delete(t);return this.size=this.items.size,e};ue.prototype.forEach=function(t,e){e=arguments.length>1?e:this,this.items.forEach(t,e)};ue.prototype.entries=function(){return this.items.entries()};ue.prototype.keys=function(){return this.items.keys()};ue.prototype.values=function(){return this.items.values()};typeof Symbol<"u"&&(ue.prototype[Symbol.iterator]=ue.prototype.entries);ue.prototype.inspect=function(){return this.items};typeof Symbol<"u"&&(ue.prototype[Symbol.for("nodejs.util.inspect.custom")]=ue.prototype.inspect);ue.autoIncrement=function(){var t=0;return function(){return t++}};var qu=ue;const Jo=kt(qu),Ku=de(Jo).default;class Qu{constructor(){l(this,"nexthops",new Map)}}class Gu{constructor(){l(this,"table",new Ku(()=>new Qu))}insert(e,n,r){const s=this.table.get(n);ce(!s.nexthops.has(e)),s.nexthops.set(e,r)}delete(e,n){const r=this.table.peek(n);ce(!!r),r.nexthops.delete(e),r.nexthops.size===0&&this.table.delete(n)}lookup(e){const n=new Set;for(const r of su(e,s=>this.table.peek(s))){let s=!1;for(const[i,o]of r.nexthops)n.add(i),s||(s=o);if(s)break}return n}}var bi=function(t){return 1e3*t[0]+t[1]/1e6},tn=function(t){return Number(t.toFixed(2))},br=function(t,e){var n=function(){return tn(e())};return n.startedAt=function(){return t},n.seconds=n.s=function(){return tn(e()/1e3)},n.milliseconds=n.ms=function(){return tn(e())},n.microseconds=n.us=function(){return tn(1e3*e())},n.nanoseconds=n.ns=function(){return tn(1e6*e())},n},hs=typeof process<"u"&&process.hrtime?function(){var t=process.hrtime();return br(bi(t),function(){return bi(process.hrtime(t))})}:typeof window<"u"&&window.performance?function(){var t=window.performance.now();return br(t,function(){return window.performance.now()-t})}:function(){var t=Date.now();return br(t,function(){return Date.now()-t})};const Yu=de(Jo).default,Rn=hs();class Xu{constructor(e,n,r){l(this,"pit");l(this,"key");l(this,"interest");l(this,"token");l(this,"dnRecords",new Yu(()=>({nRx:0,expire:0,nonce:0,token:void 0})));l(this,"lastExpire",0);l(this,"expireTimer");l(this,"expire",()=>{this.pit.eraseEntry(this);for(const[e,{token:n}]of this.dnRecords)e.send(new mi("expire",this.interest,n))});this.pit=e,this.key=n,this.interest=new q(r)}receiveInterest(e,{l3:n,token:r}){const s=Rn(),i=s+n.lifetime,o=n.nonce??q.generateNonce(),c=this.dnRecords.get(e);++c.nRx,c.expire=i,c.nonce=o,c.token=r,this.updateExpire(s)}cancelInterest(e){const n=this.dnRecords.peek(e);n&&(this.dnRecords.delete(e),this.updateExpire(),e.send(new mi("cancel",this.interest,n.token)))}forwardInterest(e){const n=this.lastExpire-Rn();n<=0||(this.interest.lifetime=n,e.send(Ct.create(this.interest,this.token)))}*returnData(e){clearTimeout(this.expireTimer),this.pit.eraseEntry(this);const n=Rn();for(const[r,{expire:s,token:i}]of this.dnRecords)s>n&&r!==e&&(yield{dn:r,token:i})}updateExpire(e=Rn()){let n=0;for(const{expire:r}of this.dnRecords.values())n=Math.max(n,r);n<=e&&(n=0),this.lastExpire!==n&&(this.lastExpire=n,clearTimeout(this.expireTimer),this.lastExpire===0?this.expire():(this.pit.insertEntry(this),this.expireTimer=setTimeout(this.expire,this.lastExpire-e)))}}class Ju{constructor(e){l(this,"dataNoTokenMatch");l(this,"byName",new Map);l(this,"byToken",new Map);l(this,"lastToken",0);this.dataNoTokenMatch=e}generateToken(){do--this.lastToken,this.lastToken<=0&&(this.lastToken=4294967295);while(this.byToken.has(this.lastToken));return this.lastToken}insertEntry(e){this.byName.set(e.key,e),e.token??(e.token=this.generateToken()),this.byToken.set(e.token,e)}eraseEntry(e){this.byName.delete(e.key),this.byToken.delete(e.token)}close(){for(const e of this.byName.values())clearTimeout(e.expireTimer)}lookup({l3:e},n=!0){const r=`${e.name.valueHex} ${e.canBePrefix?"+":"-"}${e.mustBeFresh?"+":"-"}`;let s=this.byName.get(r);return!s&&n&&(s=new Xu(this,r,e)),s}async satisfy(e,{l3:n,token:r}){return await wn(()=>this.findPotentialMatches(n,r),Ht(({interest:i})=>n.canSatisfy(i)),Yo(i=>i.returnData(e)),Br(({dn:i,token:o})=>i.send(Ct.create(n,o))),Xo(i=>i+1,0))>0}*findPotentialMatches(e,n){if(typeof n=="number"){const s=this.byToken.get(n);s&&(yield s);return}if(!this.dataNoTokenMatch)return;let r=[" ++"," +-"," -+"," --"];for(let s=e.name;s.length>0;s=s.getPrefix(-1)){const i=s.valueHex;for(const o of r){const c=this.byName.get(i+o);c&&(yield c)}r=[" ++"," +-"]}}}var Zo={};function Fe(t,e){typeof e=="boolean"&&(e={forever:e}),this._originalTimeouts=JSON.parse(JSON.stringify(t)),this._timeouts=t,this._options=e||{},this._maxRetryTime=e&&e.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._timer=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}var Zu=Fe;Fe.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts.slice(0)};Fe.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timer&&clearTimeout(this._timer),this._timeouts=[],this._cachedTimeouts=null};Fe.prototype.retry=function(t){if(this._timeout&&clearTimeout(this._timeout),!t)return!1;var e=new Date().getTime();if(t&&e-this._operationStart>=this._maxRetryTime)return this._errors.push(t),this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(t);var n=this._timeouts.shift();if(n===void 0)if(this._cachedTimeouts)this._errors.splice(0,this._errors.length-1),n=this._cachedTimeouts.slice(-1);else return!1;var r=this;return this._timer=setTimeout(function(){r._attempts++,r._operationTimeoutCb&&(r._timeout=setTimeout(function(){r._operationTimeoutCb(r._attempts)},r._operationTimeout),r._options.unref&&r._timeout.unref()),r._fn(r._attempts)},n),this._options.unref&&this._timer.unref(),!0};Fe.prototype.attempt=function(t,e){this._fn=t,e&&(e.timeout&&(this._operationTimeout=e.timeout),e.cb&&(this._operationTimeoutCb=e.cb));var n=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){n._operationTimeoutCb()},n._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};Fe.prototype.try=function(t){console.log("Using RetryOperation.try() is deprecated"),this.attempt(t)};Fe.prototype.start=function(t){console.log("Using RetryOperation.start() is deprecated"),this.attempt(t)};Fe.prototype.start=Fe.prototype.try;Fe.prototype.errors=function(){return this._errors};Fe.prototype.attempts=function(){return this._attempts};Fe.prototype.mainError=function(){if(this._errors.length===0)return null;for(var t={},e=null,n=0,r=0;r=n&&(e=s,n=o)}return e};(function(t){var e=Zu;t.operation=function(n){var r=t.timeouts(n);return new e(r,{forever:n&&(n.forever||n.retries===1/0),unref:n&&n.unref,maxRetryTime:n&&n.maxRetryTime})},t.timeouts=function(n){if(n instanceof Array)return[].concat(n);var r={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var s in n)r[s]=n[s];if(r.minTimeout>r.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var i=[],o=0;o1)){this.fw.dispatchTypedEvent("annadd",new Ie.AnnouncementEvent("annadd",n));for(const r of this.destinations)r.advertise(n)}}removeAnnouncement(e,n){if(!(this.announcements.remove(n,e)>0)){this.fw.dispatchTypedEvent("annrm",new Ie.AnnouncementEvent("annrm",n));for(const r of this.destinations)r.withdraw(n)}}close(){for(const e of this.destinations)e.disable()}}class Se{constructor(e={forever:!0,minTimeout:5e3,maxTimeout:6e4,randomize:!0}){l(this,"retryOptions");l(this,"readvertise");l(this,"table",new vu);l(this,"queue",Rt());l(this,"closed",!1);this.retryOptions=e}enable(e){this.readvertise=e.readvertise,this.readvertise.destinations.add(this);for(const[n]of this.readvertise.announcements.associations())this.advertise(n);this.process()}disable(){var e;(e=this.readvertise)==null||e.destinations.delete(this),this.readvertise=void 0;for(const[n,r]of this.table)this.queue.push(n),r.status=Se.Status.WITHDRAWING;this.queue.stop(),this.closed=!0}advertise(e){let n=this.table.get(e);n||(n={status:Se.Status.ADVERTISING,state:this.makeState(e)},this.table.set(e,n)),n.status=Se.Status.ADVERTISING,this.restart(e,n)}withdraw(e){const n=this.table.get(e);n&&(n.status=Se.Status.WITHDRAWING,this.restart(e,n))}restart(e,n){var r;(r=n.retry)==null||r.stop(),n.retry=tf.operation(this.retryOptions),n.retry.attempt(()=>{this.closed?n.retry.stop():this.queue.push(e)})}async process(){for await(const e of this.queue){const n=this.table.get(e);if(!n)continue;const{status:r,retry:s,state:i}=n;switch(r){case Se.Status.ADVERTISING:{try{await this.doAdvertise(e,i),n.status===Se.Status.ADVERTISING&&(n.status=Se.Status.ADVERTISED,s.stop())}catch(o){s.retry(o)}break}case Se.Status.WITHDRAWING:{try{await this.doWithdraw(e,i),n.status===Se.Status.WITHDRAWING&&(n.status=Se.Status.WITHDRAWN,s.stop(),this.table.delete(e))}catch(o){s.retry(o)}break}}}}makeState(e){return{}}}(function(t){(function(e){e[e.ADVERTISING=0]="ADVERTISING",e[e.ADVERTISED=1]="ADVERTISED",e[e.WITHDRAWING=2]="WITHDRAWING",e[e.WITHDRAWN=3]="WITHDRAWN"})(t.Status||(t.Status={}))})(Se||(Se={}));var Ie;(function(t){t.DefaultOptions={dataNoTokenMatch:!0};function e(h){return new rf({...t.DefaultOptions,...h})}t.create=e;let n;function r(){return n??(n=e()),n}t.getDefault=r;function s(h){n=h}t.replaceDefault=s;function i(){n==null||n.close(),n=void 0}t.deleteDefault=i;class o extends Event{constructor(g,T){super(g);l(this,"face");this.face=T}}t.FaceEvent=o;class c extends Event{constructor(g,T,P){super(g);l(this,"face");l(this,"prefix");this.face=T,this.prefix=P}}t.PrefixEvent=c;class a extends Event{constructor(g,T){super(g);l(this,"name");this.name=T}}t.AnnouncementEvent=a;class f extends Event{constructor(g,T,P){super(g);l(this,"face");l(this,"packet");this.face=T,this.packet=P}}t.PacketEvent=f})(Ie||(Ie={}));class rf extends cr{constructor(n){super();l(this,"opts");l(this,"nodeNames",[]);l(this,"faces",new Set);l(this,"fib",new Gu);l(this,"pit");l(this,"readvertise",new nf(this));l(this,"maybeHaveEventListener",Kl(this));this.opts=n,this.pit=new Ju(n.dataNoTokenMatch)}addFace(n,r={}){return new ju(this,n,r)}pickInterestForwardingName(n){var s;const r=(s=n.fwHint)==null?void 0:s.delegations[0];return r&&this.nodeNames.every(i=>!r.isPrefixOf(i))?r:n.name}processInterest(n,r){const s=this.pit.lookup(r);s.receiveInterest(n,r);const i=this.pickInterestForwardingName(r.l3);for(const o of this.fib.lookup(i))o!==n&&s.forwardInterest(o)}cancelInterest(n,r){const s=this.pit.lookup(r,!1);s==null||s.cancelInterest(n)}processData(n,r){this.pit.satisfy(n,r)}processNack(n,r){}close(){this.pit.close(),this.readvertise.close();for(const n of this.faces)n.close()}dispatchPacketEvent(n,r,s){this.maybeHaveEventListener[n]&&this.dispatchTypedEvent(n,new Ie.PacketEvent(n,r,s))}}const sf=de(Ho).default;class of{constructor(e){l(this,"fw");l(this,"taps",new Jl);l(this,"facerm",e=>{const n=this.taps.list(e.face);for(const{rx:r}of n)r.stop();this.detachIfIdle()});l(this,"pktrx",e=>{const n=this.taps.list(e.face);for(const{rx:r}of n)r.push(e.packet)});this.fw=e,this.fw.addEventListener("pktrx",this.pktrx),this.fw.addEventListener("facerm",this.facerm)}add(e,n){ce.equal(e.fw,this.fw),this.taps.add(e,n)}remove(e,n){this.taps.remove(e,n),this.detachIfIdle()}detachIfIdle(){this.taps.size===0&&(this.fw.removeEventListener("pktrx",this.pktrx),this.fw.removeEventListener("facerm",this.facerm),tc.delete(this.fw))}}const tc=new sf(t=>new of(t));class Vr{constructor(e){l(this,"face");l(this,"ctrl");l(this,"rx",Rt());this.face=e,this.ctrl=tc.get(e.fw),this.ctrl.add(this.face,this)}get attributes(){return{...this.face.attributes,describe:`tap(${this.face})`}}async tx(e){for await(const n of e)this.face.send(n);this.ctrl.remove(this.face,this)}}(function(t){function e(n){return Ie.create().addFace(new t(n))}t.create=e})(Vr||(Vr={}));const fe={LpPacket:100,LpPayload:80,LpSeqNum:81,FragIndex:82,FragCount:83,PitToken:98,Nack:E.Nack,NackReason:E.NackReason,CongestionMark:832};function cf(t){return!(t>=800&&t<=959&&t%4===0)}const af=new le("LpPacket",fe.LpPacket).add(fe.LpSeqNum,(t,{nniBig:e})=>t.fragSeqNum=e).add(fe.FragIndex,(t,{nni:e})=>t.fragIndex=e).add(fe.FragCount,(t,{nni:e})=>t.fragCount=e).add(fe.PitToken,(t,{value:e})=>t.pitToken=e).add(fe.Nack,(t,{decoder:e})=>t.nack=e.decode(or)).add(fe.CongestionMark,(t,{nni:e})=>t.congestionMark=e).add(fe.LpPayload,(t,{value:e})=>t.payload=e).setIsCritical(cf);class pt{constructor(){l(this,"fragSeqNum");l(this,"fragIndex",0);l(this,"fragCount",1);l(this,"payload")}static decodeFrom(e){return af.decode(new pt,e)}get l3(){const e={};for(const n of["pitToken","nack","congestionMark"])e[n]=this[n];return e}encodeTo(e){e.prependTlv(fe.LpPacket,...this.encodeFragHeaders(),...this.encodeL3Headers(),[fe.LpPayload,j.OmitEmpty,this.payload])}encodeFragHeaders(){return ce(this.fragIndex0&&[fe.FragIndex,X(this.fragIndex)],this.fragCount>1&&[fe.FragCount,X(this.fragCount)]]}hasL3Headers(){const{congestionMark:e=0}=this;return!!this.pitToken||!!this.nack||e>0}encodeL3Headers(){const{congestionMark:e=0}=this;return[[fe.PitToken,j.OmitEmpty,this.pitToken],this.nack,e>0&&[fe.CongestionMark,X(e)]]}}class lf{constructor(){l(this,"current",BigInt(Math.trunc(Math.random()*4294967296))<<32n|BigInt(Math.trunc(Math.random()*4294967296)))}next(){return this.current=BigInt.asUintN(64,this.current+1n),this.current}}class uf{constructor(){l(this,"seqNumGen",new lf)}fragment(e,n){var f;const r=n-26,s=j.encode(e.encodeL3Headers()).length,i=((f=e.payload)==null?void 0:f.byteLength)??0,o=Math.min(i,r-s);if(o===i)return[e];if(o<=0)return[];const c=[],a=new pt;Object.assign(a,e.l3),a.fragSeqNum=this.seqNumGen.next(),a.payload=e.payload.subarray(0,o),c.push(a);for(let h=o;h=e.fragCount)return;const n=BigInt.asUintN(64,e.fragSeqNum-BigInt(e.fragIndex)),r=this.getPartial(n),s=r.accept(e);if(s)return s;s!==!1&&this.putPartial(r)}getPartial(e){const n=this.partials.get(e);return n?(this.partials.delete(e),n):new ff(e)}putPartial(e){this.partials.set(e.seqNumBase,e),Xl(this.capacity,this.partials)}}var df=function(e){if(e){if(typeof e[Symbol.iterator]=="function")return e[Symbol.iterator]();if(typeof e[Symbol.asyncIterator]=="function")return e[Symbol.asyncIterator]();if(typeof e.next=="function")return e}throw new Error("argument is not an iterator or iterable")};const pf=df,vi={};var mf=(t,e)=>(e=e||{},n=>{n=pf(n);let r;return{[Symbol.asyncIterator](){return this},async next(){for(;;){r||(r=n.next());let s;const i=new Promise(a=>{s=setTimeout(()=>a({value:vi}),e.timeout||1e3)}),{done:o,value:c}=await Promise.race([i,r]);if(clearTimeout(s),o)return{done:o};if(c===vi){if(!e.shouldKeepAlive||e.shouldKeepAlive())return{value:t()};continue}return r=null,{value:c}}},return(){if(n.return)return n.return()}}});const nc=kt(mf),gf=de(nc).default,yf=j.encode(new pt);class ft{constructor({keepAlive:e=6e4,mtu:n=1/0,reassemblerCapacity:r=16},s){l(this,"transport");l(this,"keepAlive");l(this,"mtu");l(this,"fragmenter",new uf);l(this,"reassembler");l(this,"rx",e=>Zs(n=>this.decode(n),e));l(this,"tx",e=>Zs(n=>this.encode(n),this.keepAlive?gf(()=>!1,{timeout:this.keepAlive})(e):e));this.transport=s,Number.isFinite(e)&&e>0&&(this.keepAlive=Math.ceil(e)),this.mtu=n,this.reassembler=new hf(r)}*decode(e){const{type:n,decoder:r,tlv:s}=e;try{if(n!==fe.LpPacket)return yield this.decodeL3(e);const i=r.decode(pt),o=this.reassembler.accept(i);if(!(o!=null&&o.payload))return;const c=this.decodeL3(new Ze(o.payload).read());o.nack&&(ce(c.l3 instanceof q,"Nack can only appear on Interest"),c.l3=new Wn(c.l3,o.nack)),c.token=o.pitToken,c.congestionMark=o.congestionMark,yield c}catch(i){yield new ft.RxError(i,s)}}decodeL3({type:e,decoder:n}){switch(e){case E.Interest:return{l3:n.decode(q)};case E.Data:return{l3:n.decode(Me)};default:throw new Error(`unrecognized TLV-TYPE ${rn(e)} as L3Pkt`)}}*encode(e){if(e===!1){yield yf;return}const n=Math.min(this.mtu,this.transport.mtu),{l3:r}=e,s=new pt;s.pitToken=e.token,s.congestionMark=e.congestionMark;try{r instanceof Wn?(s.nack=r.header,s.payload=j.encode(r.interest)):s.payload=j.encode(r)}catch(i){return yield new ft.TxError(i,e.l3)}!s.hasL3Headers()&&s.payload.length<=n?yield s.payload:Number.isFinite(n)?yield*this.fragmenter.fragment(s,n).map(i=>j.encode(i,n)):yield j.encode(s)}}(function(t){class e extends Error{constructor(i,o){super(`${i.message} ${ht(o)}`);l(this,"packet");this.packet=o}}t.RxError=e;class n extends Error{constructor(i,o){super(`${i.message} ${o instanceof Wn?o.interest.name:o.name}`);l(this,"packet");this.packet=o}}t.TxError=n})(ft||(ft={}));let zn=class extends Error{constructor(e,n){super(e??"The operation was aborted"),this.type="aborted",this.code=n??"ABORT_ERR"}};function wf(t){if(t!=null){if(typeof t[Symbol.iterator]=="function")return t[Symbol.iterator]();if(typeof t[Symbol.asyncIterator]=="function")return t[Symbol.asyncIterator]();if(typeof t.next=="function")return t}throw new Error("argument is not an iterator or iterable")}function Ei(t,e,n){const r={},s=wf(t);async function*i(){let o;const c=()=>{o!=null&&o()};for(e.addEventListener("abort",c);;){let a;try{if(e.aborted){const{abortMessage:h,abortCode:p}=r;throw new zn(h,p)}const f=new Promise((h,p)=>{o=()=>{const{abortMessage:g,abortCode:T}=r;p(new zn(g,T))}});a=await Promise.race([f,s.next()]),o=null}catch(f){e.removeEventListener("abort",c);const h=f.type==="aborted"&&e.aborted;if(h&&r.onAbort!=null&&r.onAbort(t),typeof s.return=="function")try{const p=s.return();p instanceof Promise&&p.catch(g=>{r.onReturnError!=null&&r.onReturnError(g)})}catch(p){r.onReturnError!=null&&r.onReturnError(p)}if(h&&r.returnOnAbort===!0)return;throw f}if(a.done===!0)break;yield a.value}e.removeEventListener("abort",c)}return i()}const xf=1200;class Kt{constructor(e){l(this,"attributes");this.attributes=e}get mtu(){return xf}reopen(){return Promise.reject(new Kt.ReopenNotSupportedError)}toString(){return this.attributes.describe??this.constructor.name}}(function(t){class e extends Error{constructor(){super("reopen not supported")}}t.ReopenNotSupportedError=e})(Kt||(Kt={}));const bf=de(ec).default;class se extends cr{constructor(n,r={},s={}){super();l(this,"transport");l(this,"attributes");l(this,"lp");l(this,"rx");l(this,"wireTokenPrefix",Math.trunc(Math.random()*65536));l(this,"state_",se.State.UP);l(this,"lastError");l(this,"rxSources",Rt());l(this,"reopenRetry");l(this,"tx",async n=>{var i;const r=this.txTransform(n)[Symbol.asyncIterator](),s={[Symbol.asyncIterator]:()=>({next:()=>r.next()})};for(;this.state!==se.State.CLOSED;){this.state===se.State.DOWN&&this.reopenTransport();const o=new AbortController;this.addEventListener("state",()=>o.abort(),{once:!0,signal:o.signal});try{const c=Ei(s,o.signal);this.state===se.State.UP?(this.rxSources.push(Ei(this.transport.rx,o.signal)),await this.transport.tx(c)):await Uu(c),this.state=se.State.CLOSED}catch(c){c instanceof zn||(this.lastError=c,this.state=se.State.DOWN)}finally{o.abort()}}(i=this.reopenRetry)==null||i.stop(),this.rxSources.stop()});this.transport=n,this.attributes={describe:`L3Face(${n})`,advertiseFrom:!1,...n.attributes,...r},this.lp=new ft(s,n),this.rx=this.makeRx()}get state(){return this.state_}set state(n){if(n===this.state_)return;const r=new se.StateEvent("state",n,this.state_);switch(this.state_=n,this.dispatchTypedEvent("state",r),n){case se.State.UP:{this.dispatchTypedEvent("up",new Event("up"));break}case se.State.DOWN:{const s=this.lastError instanceof Error?this.lastError:new Error(`${this.lastError??"unknown error"}`);this.dispatchTypedEvent("down",new CustomEvent("down",{detail:s})),this.lastError=void 0;break}case se.State.CLOSED:{this.dispatchTypedEvent("close",new Event("close"));break}}}async*makeRx(){for await(const n of this.rxSources)try{yield*this.rxTransform(n),this.lastError=new Error("RX ending"),this.state=se.State.DOWN}catch(r){r instanceof zn||(this.lastError=r,this.state=se.State.DOWN)}}async*rxTransform(n){yield*wn(()=>n,this.lp.rx,Ht(r=>r instanceof ft.RxError?(this.dispatchTypedEvent("rxerror",new CustomEvent("rxerror",{detail:r})),!1):!0),qt(({l3:r,token:s,congestionMark:i})=>{let o;if(r instanceof q)o=s;else if((s==null?void 0:s.length)===6){const c=Je(s);c.getUint16(0)===this.wireTokenPrefix&&(o=c.getUint32(2))}return Ct.create(r,o,i)}))}txTransform(n){return wn(()=>n,Ht(r=>Ct.isEncodable(r)),qt(({l3:r,token:s,congestionMark:i})=>{let o;if(typeof s=="number"){o=new Uint8Array(6);const c=Je(o);c.setUint16(0,this.wireTokenPrefix),c.setUint32(2,s)}else s instanceof Uint8Array&&(o=s);return{l3:r,token:o,congestionMark:i}}),this.lp.tx,Ht(r=>r instanceof ft.TxError?(this.dispatchTypedEvent("txerror",new CustomEvent("txerror",{detail:r})),!1):!0))}reopenTransport(){var n;(n=this.reopenRetry)==null||n.stop(),this.reopenRetry=bf.operation({forever:!0,minTimeout:100,maxTimeout:6e4,randomize:!0}),this.reopenRetry.attempt(async()=>{try{this.transport=await this.transport.reopen()}catch(r){r instanceof Kt.ReopenNotSupportedError||this.reopenRetry.retry(r);return}if(this.state===se.State.CLOSED){this.transport.tx(async function*(){}());return}this.reopenRetry.stop(),this.state=se.State.UP})}}(function(t){(function(s){s[s.UP=0]="UP",s[s.DOWN=1]="DOWN",s[s.CLOSED=2]="CLOSED"})(t.State||(t.State={}));class e extends Event{constructor(o,c,a){super(o);l(this,"state");l(this,"prev");this.state=c,this.prev=a}}t.StateEvent=e;function n(s){return async({fw:i=Ie.getDefault(),addRoutes:o,l3:c,lp:a,callback:f},...h)=>{const p=await s(...h),g=T=>{const P=new t(T,{advertiseFrom:!1,...c},a),F=i.addFace(P);return r(F,o),f==null||f(T,P,F),F};return Array.isArray(p)?p.map(g):g(p)}}t.makeCreateFace=n;function r(s,i=["/"]){for(const o of i)s.addRoute(o)}t.processAddRoutes=r})(se||(se={}));async function*vf(t){for await(const e of Lo(t)){const n=new Ze(e);let r;try{r=n.read()}catch{continue}yield r}}class Ef extends Error{constructor(e){super(e),this.name="TimeoutError"}}class _f extends Error{constructor(e){super(),this.name="AbortError",this.message=e}}const _i=t=>globalThis.DOMException===void 0?new _f(t):new DOMException(t),Ti=t=>{const e=t.reason===void 0?_i("This operation was aborted."):t.reason;return e instanceof Error?e:_i(e)};function Tf(t,e){const{milliseconds:n,fallback:r,message:s,customTimers:i={setTimeout,clearTimeout}}=e;let o;const a=new Promise((f,h)=>{if(typeof n!="number"||Math.sign(n)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${n}\``);if(e.signal){const{signal:g}=e;g.aborted&&h(Ti(g)),g.addEventListener("abort",()=>{h(Ti(g))})}if(n===Number.POSITIVE_INFINITY){t.then(f,h);return}const p=new Ef;o=i.setTimeout.call(void 0,()=>{if(r){try{f(r())}catch(g){h(g)}return}typeof t.cancel=="function"&&t.cancel(),s===!1?f():s instanceof Error?h(s):(p.message=s??`Promise timed out after ${n} milliseconds`,h(p))},n),(async()=>{try{f(await t)}catch(g){h(g)}})()}).finally(()=>{a.clear()});return a.clear=()=>{i.clearTimeout.call(void 0,o),o=void 0},a}const Sf=t=>{const e=t.addEventListener||t.on||t.addListener,n=t.removeEventListener||t.off||t.removeListener;if(!e||!n)throw new TypeError("Emitter is not compatible");return{addListener:e.bind(t),removeListener:n.bind(t)}};function If(t,e,n){let r;const s=new Promise((i,o)=>{var T;if(n={rejectionEvents:["error"],multiArgs:!1,resolveImmediately:!1,...n},!(n.count>=0&&(n.count===Number.POSITIVE_INFINITY||Number.isInteger(n.count))))throw new TypeError("The `count` option should be at least 0 or more");(T=n.signal)==null||T.throwIfAborted();const c=[e].flat(),a=[],{addListener:f,removeListener:h}=Sf(t),p=(...P)=>{const F=n.multiArgs?P:P[0];n.filter&&!n.filter(F)||(a.push(F),n.count===a.length&&(r(),i(a)))},g=P=>{r(),o(P)};r=()=>{for(const P of c)h(P,p);for(const P of n.rejectionEvents)h(P,g)};for(const P of c)f(P,p);for(const P of n.rejectionEvents)f(P,g);n.signal&&n.signal.addEventListener("abort",()=>{g(n.signal.reason)},{once:!0}),n.resolveImmediately&&i(a)});if(s.cancel=r,typeof n.timeout=="number"){const i=Tf(s,{milliseconds:n.timeout});return i.cancel=r,i}return s}function Pf(t,e,n){typeof n=="function"&&(n={filter:n}),n={...n,count:1,resolveImmediately:!1};const r=If(t,e,n),s=r.then(i=>i[0]);return s.cancel=r.cancel,s}function Af(t){return new WebSocket(t,[])}function Nf(t){t.binaryType="arraybuffer"}function Rf(t){return new Uint8Array(t.data)}const Ff=de(Fo).default;class Qt extends Kt{constructor(n,r){super({describe:`WebSocket(${n.url})`});l(this,"sock");l(this,"opts");l(this,"rx");l(this,"highWaterMark");l(this,"lowWaterMark");this.sock=n,this.opts=r,Nf(n),this.rx=vf(new Ff(({push:s,stop:i})=>{const o=c=>{s(Rf(c))};return n.addEventListener("message",o),n.addEventListener("close",i),()=>{n.removeEventListener("message",o),n.removeEventListener("close",i)}})),this.highWaterMark=r.highWaterMark??1024*1024,this.lowWaterMark=r.lowWaterMark??16*1024}static async connect(n,r={}){const s=typeof n=="string"?Af(n):n;if(s.readyState!==s.OPEN)try{await Pf(s,"open",{timeout:r.connectTimeout??1e4})}catch(i){throw s.close(),i}return new Qt(s,r)}get mtu(){return 1/0}async tx(n){try{for await(const r of n){if(this.sock.readyState!==this.sock.OPEN)throw new Error(`unexpected WebSocket.readyState ${this.sock.readyState}`);this.sock.send(r),this.sock.bufferedAmount>this.highWaterMark&&await this.waitForTxBuffer()}}finally{this.close()}}waitForTxBuffer(){return new Promise(n=>{const r=setInterval(()=>{(this.sock.bufferedAmount<=this.lowWaterMark||this.sock.readyState!==this.sock.OPEN)&&(clearInterval(r),n())},100)})}close(){this.sock.close()}reopen(){return Qt.connect(this.sock.url,this.opts)}}(function(t){t.createFace=se.makeCreateFace(t.connect)})(Qt||(Qt={}));const jn={transports({H3Transport:t}={}){const e=["wss"];return t!=null&&t.supported&&e.push("http3"),e}};async function Cf(){throw new Error("no default gateway in browser")}function Lf(t,{fw:e,H3Transport:n,mtu:r=1200,connectTimeout:s,addRoutes:i}){const o=(()=>{try{return new URL(t)}catch{return new URL(`wss://${t}/ws/`)}})();switch(o.protocol){case"ws:":case"wss:":return Qt.createFace({fw:e,addRoutes:i},o.toString(),{connectTimeout:s});case"https:":{if(!n)throw new Error("H3Transport unavailable");return n.createFace({fw:e,addRoutes:i,lp:{mtu:r}},o.toString())}default:throw new Error(`unknown protocol ${o.protocol}`)}}async function kf(t={}){var h;const{server:e="https://fch.ndn.today",ipv4:n=jn.hasIPv4,ipv6:r=jn.hasIPv6,position:s,network:i,signal:o}=t,c=async(p,g)=>{const T=new URL(e),P=T.searchParams;for(const[J,V]of p)P.append("cap",J),P.append("k",`${V}`);if(n!==void 0&&P.set("ipv4",`${Number(n)}`),r!==void 0&&P.set("ipv6",`${Number(r)}`),(s==null?void 0:s.length)===2){const[J,V]=s;P.set("lon",`${J.toFixed(5)}`),P.set("lat",`${V.toFixed(5)}`)}i&&P.set("network",i);const F=await fetch(T.toString(),{headers:{accept:g},signal:o});if(!F.ok)throw new Error(`HTTP ${F.status}`);return F},a=Of(t),f=new Mf;try{const p=await c(a,"application/json, text/plain, */*");if((h=p.headers.get("Content-Type"))!=null&&h.startsWith("application/json"))return await f.setJsonResponse(p),f;if(a.length===1)return await f.addTextResponse(a[0][0],p),f}catch{}return await Promise.all(a.map(async p=>{try{const g=await c([p],"text/plain, */*");await f.addTextResponse(p[0],g)}catch{}})),f}function Of({transport:t,count:e=1,transports:n}){if(n===void 0){if(t)return[[t,e]];n=jn.transports()}return Array.isArray(n)?n.map(r=>[r,e]):Object.entries(n)}class Mf{constructor(){l(this,"updated");l(this,"routers",[])}async setJsonResponse(e){const n=await e.json();this.updated=new Date(n.updated),this.routers=Array.from(n.routers,r=>({transport:String(r.transport),connect:String(r.connect),prefix:r.prefix?new R(r.prefix):void 0}))}async addTextResponse(e,n){const r=(await n.text()).trim();if(r!=="")for(const s of r.split(","))this.routers.push({transport:e,connect:s})}}function Df(t){return t?typeof t=="function"?t:(typeof t=="number"&&(t={limit:t}),function*(e){const{limit:n=0,interval:r=e*.5,randomize:s=.1,backoff:i=1,max:o=e*.9}=t,c=ru(s);let a=r;for(let f=0;f[]}var Si;(function(t){const e=["fw","describe","signal","modifyInterest","retx","verifier"];function n(r={}){return Object.fromEntries(Object.entries(r).filter(([s])=>e.includes(s)))}t.exact=n})(Si||(Si={}));function $f(t,{fw:e=Ie.getDefault(),describe:n=`consume(${t.name})`,signal:r,modifyInterest:s,retx:i,verifier:o}){q.makeModifyFunc(s)(t);let c=-1;const a=Df(i)(t.lifetime)[Symbol.iterator](),f=new Promise((h,p)=>{const g=Rt();let T;const P=()=>{clearTimeout(T),T=void 0},F=()=>{P();const{value:V,done:z}=a.next();z||(T=setTimeout(F,V)),g.push(Ct.create(t)),++c},J=()=>{P(),g.push(new Ko(t))};r==null||r.addEventListener("abort",J),e.addFace({rx:g,async tx(V){for await(const z of V){if(z.l3 instanceof Me){try{await(o==null?void 0:o.verify(z.l3))}catch(B){p(new Error(`Data verify failed: ${B} @${n}`));break}h(z.l3);break}if(z.reject&&!T){p(new Error(`Interest rejected: ${z.reject} @${n}`));break}}P(),r==null||r.removeEventListener("abort",J),g.stop()}},{describe:n,local:!0}),F()});return Object.defineProperties(f,{interest:{value:t},nRetx:{get(){return c}}})}function rc(t,e={}){return $f(t instanceof q?t:new q(t),e)}const Ii=hs();async function Uf(t,e={}){const n=await Lf(t,e),r=Ii();let s,i;try{i=await Bf(n,e),s=Ii()-r}catch(o){throw n.close(),o}return{router:t,face:n,testConnectionDuration:s,testConnectionResult:i}}async function Bf(t,{testConnection:e=new R("/localhop/nfd/rib/list"),testConnectionTimeout:n=2e3}){if(e===!1)return;if(typeof e=="function")return e(t);Array.isArray(e)||(e=[e]);const r=Vr.create(t);r.addRoute("/");const s=new AbortController,i={fw:r.fw,signal:s.signal};try{await Promise.any(e.map(o=>{typeof o=="string"&&o.endsWith("/*")&&(o=new R(o.slice(0,-2)).append(Math.trunc(Math.random()*1e8).toString().padStart(8,"0")));const c=o instanceof q?o:new q(o,q.CanBePrefix,q.Lifetime(n));return rc(c,i)}))}finally{s.abort(),r.close()}}async function Vf(t={}){const{fch:e={count:4},preferH3:n=!1,tryDefaultGateway:r=!0,fallback:s=[],fastest:i=1}=t,o=[],c={};for await(const a of async function*(){const f=[];if(e!==!1){e.transports??(e.transports=jn.transports(t));const h=await kf(e),p=[];for(const g of h.routers)(n&&g.transport==="http3"?p:f).push(g.connect);yield p}if(r)try{f.unshift(await Cf())}catch{}yield f,yield s}())if(await Promise.all(a.map(async f=>{try{o.push(await Uf(f,t))}catch(h){c[f]=h}})),o.length>0)break;if(o.length===0){const a=Object.entries(c).map(([f,h])=>` ${f} ${h}`);throw new AggregateError(Object.values(c),`connect to network failed +${a.join(` +`)}`)}o.sort((a,f)=>a.testConnectionDuration-f.testConnectionDuration);for(const{face:a}of o.splice(i,1/0))a.close();return o.map(({face:a})=>a)}const Hf={k:4,alpha:1/8,beta:1/4,initRto:1e3,minRto:200,maxRto:6e4};class Pi{constructor(e={}){l(this,"params");l(this,"sRtt_",Number.NaN);l(this,"rttVar",Number.NaN);l(this,"rto_");this.params={...Hf,...e},this.rto_=this.params.initRto}get sRtt(){return this.sRtt_}get rto(){return this.rto_}push(e,n=1){if(n=Math.max(n,1),Number.isNaN(this.rttVar))this.sRtt_=e,this.rttVar=e/2;else{const r=this.params.alpha/n,s=this.params.beta/n;this.rttVar=(1-s)*this.rttVar+s*Math.abs(this.sRtt_-e),this.sRtt_=(1-r)*this.sRtt_+r*e}this.rto_=this.clampRto(this.sRtt_+this.params.k*this.rttVar)}backoff(){this.rto_=this.clampRto(this.rto_*2)}clampRto(e){return Math.max(this.params.minRto,Math.min(e,this.params.maxRto))}}class Wf extends cr{constructor(n){super();l(this,"cwnd_");this.cwnd_=n}get cwnd(){return this.cwnd_}updateCwnd(n){ce(n>=0),this.cwnd_=n,this.dispatchTypedEvent("cwndupdate",new Event("cwndupdate"))}}class zf extends Wf{constructor({iw:n=2,c:r=.4,betaCubic:s=.7}={}){super(n);l(this,"c");l(this,"betaCubic");l(this,"alphaAimd");l(this,"t0",0);l(this,"wMax",0);l(this,"wLastMax",0);l(this,"k",Number.NaN);l(this,"ssthresh",1/0);this.c=r,this.betaCubic=s,this.alphaAimd=3*(1-s)/(1+s)}increase(n,r){if(n=e?{done:!0}:{done:!1,value:t[n++]}})};qe.empty=function(){var t=new qe(function(){return{done:!0}});return t};qe.fromSequence=function(t){var e=0,n=t.length;return new qe(function(){return e>=n?{done:!0}:{done:!1,value:t[e++]}})};qe.is=function(t){return t instanceof qe?!0:typeof t=="object"&&t!==null&&typeof t.next=="function"};var jf=qe,ds={};ds.ARRAY_BUFFER_SUPPORT=typeof ArrayBuffer<"u";ds.SYMBOL_SUPPORT=typeof Symbol<"u";var qf=jf,sc=ds,Kf=sc.ARRAY_BUFFER_SUPPORT,Qf=sc.SYMBOL_SUPPORT;function Gf(t){return typeof t=="string"||Array.isArray(t)||Kf&&ArrayBuffer.isView(t)?qf.fromSequence(t):typeof t!="object"||t===null?null:Qf&&typeof t[Symbol.iterator]=="function"?t[Symbol.iterator]():typeof t.next=="function"?t:null}var Yf=function(e){var n=Gf(e);if(!n)throw new Error("obliterator: target is not iterable nor a valid iterator.");return n},Xf=Yf,Jf=function(e,n){for(var r=arguments.length>1?n:1/0,s=r!==1/0?new Array(r):[],i,o=0,c=Xf(e);;){if(o===r)return s;if(i=c.next(),i.done)return o!==n&&(s.length=o),s;s[o++]=i.value}};const Zf=kt(Jf);class ic{constructor(e){l(this,"tt");this.tt=e}get type(){return this.tt}match(e){return e.type===this.tt}}class eh extends ic{create(e){return new ie(this.tt,e)}parse(e){return e.text}}class oc extends ic{constructor(n,r){super(n);l(this,"altUriPrefix");l(this,"altUriRegex");this.altUriPrefix=r,this.altUriRegex=new RegExp(`^${r}(\\d+)$`)}create(n){return new ie(j.encode([this.tt,X(n)],12))}match(n){return super.match(n)&&X.isValidLength(n.length)}toAltUri(n){return this.altUriPrefix+X.decode(n.value,{big:!0})}fromAltUri(n){const r=this.altUriRegex.exec(n);if(r)return this.create(BigInt(r[1]))}}class cc extends oc{parse(e){return X.decode(e.value)}}class th extends oc{parse(e){return X.decode(e.value,{big:!0})}}class nt extends cc{constructor(...n){super(...n);l(this,"big");this.big=new th(...n)}}class Ai extends cc{constructor(n,r,s){super(n,"t=");l(this,"unit");l(this,"max");this.unit=r,this.max=s}create(n){return n instanceof Date?n=n.getTime()*1e3:n=Number(n)*this.unit,this.checkMax(n),super.create(n)}parse(n){const r=super.parse(n);return this.checkMax(r),r/this.unit}checkMax(n){ce(n<=this.max,"timestamp number too large")}}function ac(t){const e=new Ai(t,1e3,8787511468039992),n=new Ai(t,1,Number.MAX_SAFE_INTEGER);return Object.assign(e,{ms:e,us:n})}new nt(E.GenericNameComponent,"");const nh=new eh(32);new nt(33,"seg=");const rh=new nt(50,"seg="),sh=rh;new nt(34,"off=");new nt(52,"off=");new nt(35,"v=");new nt(54,"v=");ac(36);ac(56);new nt(37,"seq=");new nt(58,"seq=");const ih=sh,oh=de(nc).default,ch=de(Zf).default,vr=hs();class ah{constructor(e,{fw:n=Ie.getDefault(),describe:r=`fetch(${e})`,signal:s,segmentRange:[i,o=Number.MAX_SAFE_INTEGER]=[0,void 0],segmentNumConvention:c=ih,modifyInterest:a,lifetimeAfterRto:f=1e3,rtte:h,ca:p=new zf,retxLimit:g=15,acceptContentType:T=[0]}){l(this,"name");l(this,"signal");l(this,"segNext");l(this,"segLast");l(this,"segmentNumConvention");l(this,"modifyInterest");l(this,"lifetimeAfterRto");l(this,"rtte");l(this,"ca");l(this,"retxLimit");l(this,"acceptContentType");l(this,"face");l(this,"count_",0);l(this,"nextCwndDecrease",0);l(this,"pendings",new Map);l(this,"retxQ",new Set);l(this,"txQ",Rt());l(this,"rxQ",Rt());this.name=e,this.signal=s,this.segNext=i,this.segLast=o-1,this.segmentNumConvention=c,this.modifyInterest=q.makeModifyFunc(a),this.lifetimeAfterRto=f,this.rtte=h instanceof Pi?h:new Pi(h),this.ca=p,this.retxLimit=g,this.acceptContentType=T,this.face=n.addFace({rx:this.txQ,tx:async P=>{for await(const F of P)this.rxQ.push(F);this.rxQ.stop()}},{describe:r})}get count(){return this.count_}async*fetch(){try{yield*this.unsafeFetch()}finally{this.txQ.stop(),this.face.close()}}async*unsafeFetch(){var e;for await(const n of oh(()=>!1,{timeout:4})(this.rxQ)){if((e=this.signal)!=null&&e.aborted)throw new Error("fetch aborted");if(n){const{l3:r,token:s,congestionMark:i=0}=n;r instanceof Me&&typeof s=="number"&&this.acceptContentType.includes(r.contentType)&&(yield*this.handleData(r,s,i))}if(this.processRtoExpiry(),this.processTx())return}if(this.pendings.size>0)throw new Error("fetch incomplete")}*handleData(e,n,r){const s=this.pendings.get(n);if(!s)return;const i=vr(),o=i-s.txTime;s.nRetx===0&&this.rtte.push(o,this.pendings.size),r?this.decreaseCwnd(i):this.ca.increase(i,o),e.isFinalBlock&&(this.segLast=n),++this.count_,yield{data:e,seg:n},this.retxQ.delete(n),this.pendings.delete(n)}processRtoExpiry(){const e=vr();for(const[n,r]of this.pendings){if(n>this.segLast){this.pendings.delete(n),this.retxQ.delete(n)||this.txQ.push(new Ko(r.interest,n));continue}if(!this.retxQ.has(n)&&r.rtoExpiry=this.retxLimit)throw new Error(`exceed retx limit on segment ${n}`);this.decreaseCwnd(r.rtoExpiry)&&this.rtte.backoff(),this.retxQ.add(n)}}}processTx(){switch(!0){case this.pendings.size-this.retxQ.size>=this.ca.cwnd:break;case this.retxQ.size>0:{const[e]=ch(this.retxQ,1);this.retxQ.delete(e);const n=this.pendings.get(e);++n.nRetx,this.sendInterest(n);break}case this.segNext<=this.segLast:{const e=this.segNext++,n=new lh(e);this.pendings.set(e,n),this.sendInterest(n);break}case this.pendings.size===0:return!0}return!1}sendInterest(e){const n=this.rtte.rto;e.txTime=vr(),e.rtoExpiry=e.txTime+n,e.interest=new q,e.interest.name=this.name.append(this.segmentNumConvention,e.seg),e.interest.lifetime=n+this.lifetimeAfterRto,this.modifyInterest(e.interest),this.txQ.push({l3:e.interest,token:e.seg})}decreaseCwnd(e){return e{var i;return await((i=e.verifier)==null?void 0:i.verify(s)),{seg:r,data:s}},this.uvf.fetch())}unordered(){return qt(({data:e,seg:n})=>Object.assign(e,{segNum:n}),this.startFetcher())}async*ordered(){var n;const e=new eu((n=this.opts.segmentRange)==null?void 0:n[0]);for await(const{seg:r,data:s}of this.startFetcher())e.push(r,s),yield*e.shift();ce(e.empty,`${e.size} leftover segments`)}chunks(){return qt(e=>e.content,this.ordered())}pipe(e){return Wu(e,this.chunks())}async startPromise(){const e=await Du(this.chunks());return No(e)}then(e,n){return this.promise??(this.promise=this.startPromise()),this.promise.then(e,n)}[Symbol.asyncIterator](){return this.ordered()[Symbol.asyncIterator]()}}function fh(t,e={}){return new uh(R.from(t),e)}const Ni=nh.create("metadata");function lc(t){return new le(t).add(E.Name,(e,{value:n})=>e.name=new R(n),{required:!0}).setIsCritical(le.neverCritical)}const hh=lc("Metadata");class xn{constructor(e=new R){l(this,"name");this.name=e}static decodeFrom(e){return hh.decodeValue(new xn,e)}encodeTo(e){e.prependValue(this.name)}}(function(t){function e(n,r){const s=new n()[yn.TAG],i=lc(n.name).setUnknown(s.decodeUnknown);Object.defineProperty(n,"decodeFrom",{value(o){return i.decodeValue(new n,o)}}),Object.defineProperty(n.prototype,"encodeTo",{value(o){o.prependValue(this.name,...s.encode(this))}})}t.extend=e})(xn||(xn={}));function dh(t){var n;let e=R.from(t);return(n=e.get(-1))!=null&&n.equals(Ni)||(e=e.append(Ni)),new q(e,q.CanBePrefix,q.MustBeFresh)}async function ph(t,e,n){var o;let r=xn;typeof e=="function"?r=e:n=e;const s=dh(t),i=await rc(s,{describe:`RDR-c(${t})`,...(o=n==null?void 0:n.endpoint)==null?void 0:o.cOpts,...n});return Ze.decode(i.content,r)}const mh="/ndn/edu/ucla/file-server/routers.json",gh="/file-server/status.json",yh="https://github.com/UCLA-IRL/testbed",wh=ba({name:"App",data:()=>({connectedFace:"",routers:{},services:[]}),async mounted(){const t=await Vf();if(!t.length){alert("Failed to connect to testbed");return}this.connectedFace=`${t[0]}`,this.start()},methods:{async start(){this.routers=JSON.parse(await this.cat(mh)),this.routers=Object.fromEntries(Object.entries(this.routers).sort(([t],[e])=>t.localeCompare(e)));for(const[t,e]of Object.entries(this.routers))this.refreshRouter(e)},async refreshRouter(t){var e;try{t.fetching=!0,t.status=JSON.parse(await this.cat(t.prefix+gh)),t.error=!1;for(const n of Object.keys(((e=t.status)==null?void 0:e.services)??{}))this.services.includes(n)||this.services.push(n)}catch(n){console.warn(n),t.error=!0,t.status=void 0}finally{t.fetching=!1}},async cat(t){const e=await ph(t,{retx:3}),n=await fh(e.name,{cOpts:{retx:3}});return new TextDecoder().decode(n)},getRevUrl(t){return`${yh}/commit/${t.status.revision}`},getFromNow(t){return t&&t-Date.now()/1e3},getFromNowStr(t,e){if(!t)return"";let n=this.getFromNow(t);switch(e){case"days":n/=60*60*24;break}return new Intl.RelativeTimeFormat("en",{style:"short"}).format(Math.round(n),e)}}}),xh=(t,e)=>{const n=t.__vccOpts||t;for(const[r,s]of e)n[r]=s;return n},Ae=t=>(ca("data-v-04abd1f9"),t=t(),aa(),t),bh={class:"outer"},vh={class:"styled-table"},Eh=Ae(()=>$("th",null,null,-1)),_h=Ae(()=>$("th",null,"Prefix",-1)),Th=Ae(()=>$("th",null,"HTTPS",-1)),Sh=Ae(()=>$("th",null,"Revision",-1)),Ih=Ae(()=>$("th",null,"Status",-1)),Ph=Ae(()=>$("th",null,"TLS Expiry",-1)),Ah=Ae(()=>$("th",null,"WSS",-1)),Nh=Ae(()=>$("th",null,"Host OS",-1)),Rh=Ae(()=>$("th",null,"Kernel",-1)),Fh=Ae(()=>$("th",null,"Arch",-1)),Ch=Ae(()=>$("th",null,"Docker",-1)),Lh=Ae(()=>$("th",null,"NFD Version",-1)),kh=Ae(()=>$("th",null,"NLSR Version",-1)),Oh=["href"],Mh=["href"];function Dh(t,e,n,r,s,i){return ye(),Te("div",bh,[$("table",vh,[$("thead",null,[$("tr",null,[Eh,_h,Th,Sh,Ih,Ph,Ah,Nh,Rh,Fh,Ch,Lh,kh,(ye(!0),Te(xe,null,Zt(t.services,o=>(ye(),Te("th",null,ae(o),1))),256)),(ye(!0),Te(xe,null,Zt(t.routers,o=>(ye(),Te("th",null,ae(o.shortname),1))),256))])]),$("tbody",null,[(ye(!0),Te(xe,null,Zt(t.routers,(o,c)=>{var a,f,h,p,g,T,P,F,J,V,z,B,ee,pe,D,Ne,ve,Ot,De,rt,yt,wt,Mt,Yt,ne,K;return ye(),Te("tr",{key:c},[$("td",{class:Ge({okay:!!o.status,error:o.error,warning:o.fetching})},ae(o.shortname),3),$("td",null,ae(o.prefix),1),$("td",null,[$("a",{href:`https://${o.host}`,target:"_blank"},ae(o.host),9,Oh)]),$("td",null,[(a=o.status)!=null&&a.revision?(ye(),Te("a",{key:0,href:t.getRevUrl(o),target:"_blank"},ae((f=o.status)==null?void 0:f.revision),9,Mh)):Bs("",!0)]),$("td",{class:Ge({warning:t.getFromNow(((h=o.status)==null?void 0:h.timestamp)??0)<-1800})},ae(t.getFromNowStr((p=o.status)==null?void 0:p.timestamp,"seconds")),3),$("td",{class:Ge({warning:(((T=(g=o.status)==null?void 0:g.tls)==null?void 0:T.expiry)??-1)<0,okay:t.getFromNow(((F=(P=o.status)==null?void 0:P.tls)==null?void 0:F.expiry)??-1)>7*86400})},ae(t.getFromNowStr((V=(J=o.status)==null?void 0:J.tls)==null?void 0:V.expiry,"days")||((B=(z=o.status)==null?void 0:z.tls)==null?void 0:B.error)),3),$("td",{class:Ge({okay:(ee=o.status)==null?void 0:ee["ws-tls"]})},ae((pe=o.status)!=null&&pe["ws-tls"]?"OK":""),3),$("td",null,ae((Ne=(D=o.status)==null?void 0:D.host_info)==null?void 0:Ne.os),1),$("td",null,ae((Ot=(ve=o.status)==null?void 0:ve.host_info)==null?void 0:Ot.kernel),1),$("td",null,ae((rt=(De=o.status)==null?void 0:De.host_info)==null?void 0:rt.arch),1),$("td",null,ae((wt=(yt=o.status)==null?void 0:yt.host_info)==null?void 0:wt.docker_version),1),$("td",null,ae((Yt=(Mt=o.status)==null?void 0:Mt.nfd)==null?void 0:Yt.version),1),$("td",null,ae((K=(ne=o.status)==null?void 0:ne.nlsr)==null?void 0:K.version),1),(ye(!0),Te(xe,null,Zt(t.services,O=>{var Ee;return ye(),Te("td",null,[(Ee=o.status)!=null&&Ee.services[O]?(ye(),Te("span",{key:0,class:Ge({error:!o.status.services[O].running})},ae(o.status.services[O].status),3)):Bs("",!0)])}),256)),(ye(!0),Te(xe,null,Zt(t.routers,O=>{var Ee,xt,$e;return ye(),Te("td",{class:Ge({error:!((Ee=o.status)!=null&&Ee.ndnping[O.shortname]),okay:o.shortname!=O.shortname&&(((xt=o.status)==null?void 0:xt.ndnping[O.shortname])??!1),blue:o.shortname==O.shortname})},ae((($e=o.status)==null?void 0:$e.ndnping[O.shortname])||""),3)}),256))])}),128))])])])}const $h=xh(wh,[["render",Dh],["__scopeId","data-v-04abd1f9"]]);Ul($h).mount("#app"); diff --git a/index.html b/index.html new file mode 100644 index 0000000..6a865a4 --- /dev/null +++ b/index.html @@ -0,0 +1,13 @@ + + + + + + NDN Testbed Status + + + + +
+ +