@libp2p/devtools-metrics 1.2.13 → 1.2.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.min.js +2 -2
- package/package.json +7 -7
package/dist/index.min.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.Libp2PDevtoolsMetrics = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
|
2
|
-
"use strict";var Libp2PDevtoolsMetrics=(()=>{var
|
|
3
|
-
`)};function wc(r,t){return r.mean>t.mean?1:r.mean<t.mean?-1:0}function jf(r,t){return r.mean_cumn-t.mean_cumn}rt.prototype.push=function(r,t){t=t||1,r=Array.isArray(r)?r:[r];for(var e=0;e<r.length;e++)this._digest(r[e],t)};rt.prototype.push_centroid=function(r){r=Array.isArray(r)?r:[r];for(var t=0;t<r.length;t++)this._digest(r[t].mean,r[t].n)};rt.prototype._cumulate=function(r){if(!(this.n===this.last_cumulate||!r&&this.CX&&this.CX>this.n/this.last_cumulate)){var t=0;this.centroids.each(function(e){e.mean_cumn=t+e.n/2,t=e.cumn=t+e.n}),this.n=this.last_cumulate=t}};rt.prototype.find_nearest=function(r){if(this.size()===0)return null;var t=this.centroids.lowerBound({mean:r}),e=t.data()===null?t.prev():t.data();if(e.mean===r||this.discrete)return e;var n=t.prev();return n&&Math.abs(n.mean-r)<Math.abs(e.mean-r)?n:e};rt.prototype._new_centroid=function(r,t,e){var n={mean:r,n:t,cumn:e};return this.centroids.insert(n),this.n+=t,n};rt.prototype._addweight=function(r,t,e){t!==r.mean&&(r.mean+=e*(t-r.mean)/(r.n+e)),r.cumn+=e,r.mean_cumn+=e/2,r.n+=e,this.n+=e};rt.prototype._digest=function(r,t){var e=this.centroids.min(),n=this.centroids.max(),o=this.find_nearest(r);if(o&&o.mean===r)this._addweight(o,r,t);else if(o===e)this._new_centroid(r,t,0);else if(o===n)this._new_centroid(r,t,this.n);else if(this.discrete)this._new_centroid(r,t,o.cumn);else{var i=o.mean_cumn/this.n,s=Math.floor(4*this.n*this.delta*i*(1-i));s-o.n>=t?this._addweight(o,r,t):this._new_centroid(r,t,o.cumn)}this._cumulate(!1),!this.discrete&&this.K&&this.size()>this.K/this.delta&&this.compress()};rt.prototype.bound_mean=function(r){var t=this.centroids.upperBound({mean:r}),e=t.prev(),n=e.mean===r?e:t.next();return[e,n]};rt.prototype.p_rank=function(r){var t=Array.isArray(r)?r:[r],e=t.map(this._p_rank,this);return Array.isArray(r)?e:e[0]};rt.prototype._p_rank=function(r){if(this.size()!==0){{if(r<this.centroids.min().mean)return 0;if(r>this.centroids.max().mean)return 1}this._cumulate(!0);var t=this.bound_mean(r),e=t[0],n=t[1];if(this.discrete)return e.cumn/this.n;var o=e.mean_cumn;return e!==n&&(o+=(r-e.mean)*(n.mean_cumn-e.mean_cumn)/(n.mean-e.mean)),o/this.n}};rt.prototype.bound_mean_cumn=function(r){this.centroids._comparator=jf;var t=this.centroids.upperBound({mean_cumn:r});this.centroids._comparator=wc;var e=t.prev(),n=e&&e.mean_cumn===r?e:t.next();return[e,n]};rt.prototype.percentile=function(r){var t=Array.isArray(r)?r:[r],e=t.map(this._percentile,this);return Array.isArray(r)?e:e[0]};rt.prototype._percentile=function(r){if(this.size()!==0){this._cumulate(!0);var t=this.n*r,e=this.bound_mean_cumn(t),n=e[0],o=e[1];return o===n||n===null||o===null?(n||o).mean:this.discrete?t<=n.cumn?n.mean:o.mean:n.mean+(t-n.mean_cumn)*(o.mean-n.mean)/(o.mean_cumn-n.mean_cumn)}};function Zf(r){var t=Math.floor(Math.random()*r.length);return r.splice(t,1)[0]}rt.prototype.compress=function(){if(!this.compressing){var r=this.toArray();for(this.reset(),this.compressing=!0;r.length>0;)this.push_centroid(Zf(r));this._cumulate(!0),this.compressing=!1}};function Ee(r){this.config=r||{},this.mode=this.config.mode||"auto",rt.call(this,this.mode==="cont"?r.delta:!1),this.digest_ratio=this.config.ratio||.9,this.digest_thresh=this.config.thresh||1e3,this.n_unique=0}Ee.prototype=Object.create(rt.prototype);Ee.prototype.constructor=Ee;Ee.prototype.push=function(r){rt.prototype.push.call(this,r),this.check_continuous()};Ee.prototype._new_centroid=function(r,t,e){this.n_unique+=1,rt.prototype._new_centroid.call(this,r,t,e)};Ee.prototype._addweight=function(r,t,e){r.n===1&&(this.n_unique-=1),rt.prototype._addweight.call(this,r,t,e)};Ee.prototype.check_continuous=function(){return this.mode!=="auto"||this.size()<this.digest_thresh?!1:this.n_unique/this.size()>this.digest_ratio?(this.mode="cont",this.discrete=!1,this.delta=this.config.delta||.01,this.compress(),!0):!1};Ec.exports={TDigest:rt,Digest:Ee}});var cm={};Tt(cm,{LIBP2P_DEVTOOLS_METRICS_KEY:()=>Gl,SOURCE_CONTENT_SCRIPT:()=>im,SOURCE_DEVTOOLS:()=>ql,SOURCE_METRICS:()=>$l,SOURCE_SERVICE_WORKER:()=>om,devToolsMetrics:()=>sm,valueCodecs:()=>Ms});var xn=Symbol.for("@libp2p/peer-id");function Zs(r){return!!r?.[xn]}var Ys;(function(r){r.Accept="accept",r.Ignore="ignore",r.Reject="reject"})(Ys||(Ys={}));var uf=Symbol.for("@libp2p/pubsub");function wn(r){return!!r?.[uf]}var zt=class extends Error{static name="InvalidParametersError";constructor(t="Invalid parameters"){super(t),this.name="InvalidParametersError"}},En=class extends Error{static name="InvalidPublicKeyError";constructor(t="Invalid public key"){super(t),this.name="InvalidPublicKeyError"}};var vn=class extends Error{static name="InvalidCIDError";constructor(t="Invalid CID"){super(t),this.name="InvalidCIDError"}},Sn=class extends Error{static name="InvalidMultihashError";constructor(t="Invalid Multihash"){super(t),this.name="InvalidMultihashError"}};var kr=class extends Error{static name="UnsupportedKeyTypeError";constructor(t="Unsupported key type"){super(t),this.name="UnsupportedKeyTypeError"}};function Ws(r){return r!=null&&typeof r.start=="function"&&typeof r.stop=="function"}async function Xs(...r){let t=[];for(let e of r)Ws(e)&&t.push(e);await Promise.all(t.map(async e=>{e.beforeStart!=null&&await e.beforeStart()})),await Promise.all(t.map(async e=>{await e.start()})),await Promise.all(t.map(async e=>{e.afterStart!=null&&await e.afterStart()}))}async function Qs(...r){let t=[];for(let e of r)Ws(e)&&t.push(e);await Promise.all(t.map(async e=>{e.beforeStop!=null&&await e.beforeStop()})),await Promise.all(t.map(async e=>{await e.stop()})),await Promise.all(t.map(async e=>{e.afterStop!=null&&await e.afterStop()}))}var xe=Symbol.for("@libp2p/service-capabilities"),hm=Symbol.for("@libp2p/service-dependencies");var Wo={};Tt(Wo,{base32:()=>jt,base32hex:()=>bf,base32hexpad:()=>wf,base32hexpadupper:()=>Ef,base32hexupper:()=>xf,base32pad:()=>gf,base32padupper:()=>yf,base32upper:()=>mf,base32z:()=>vf});var Rm=new Uint8Array(0);function Js(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function ae(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function tc(r){return new TextEncoder().encode(r)}function ec(r){return new TextDecoder().decode(r)}function lf(r,t){if(r.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),n=0;n<e.length;n++)e[n]=255;for(var o=0;o<r.length;o++){var i=r.charAt(o),s=i.charCodeAt(0);if(e[s]!==255)throw new TypeError(i+" is ambiguous");e[s]=o}var c=r.length,a=r.charAt(0),l=Math.log(c)/Math.log(256),u=Math.log(256)/Math.log(c);function f(x){if(x instanceof Uint8Array||(ArrayBuffer.isView(x)?x=new Uint8Array(x.buffer,x.byteOffset,x.byteLength):Array.isArray(x)&&(x=Uint8Array.from(x))),!(x instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(x.length===0)return"";for(var g=0,d=0,E=0,A=x.length;E!==A&&x[E]===0;)E++,g++;for(var m=(A-E)*u+1>>>0,B=new Uint8Array(m);E!==A;){for(var D=x[E],P=0,k=m-1;(D!==0||P<d)&&k!==-1;k--,P++)D+=256*B[k]>>>0,B[k]=D%c>>>0,D=D/c>>>0;if(D!==0)throw new Error("Non-zero carry");d=P,E++}for(var U=m-d;U!==m&&B[U]===0;)U++;for(var T=a.repeat(g);U<m;++U)T+=r.charAt(B[U]);return T}function h(x){if(typeof x!="string")throw new TypeError("Expected String");if(x.length===0)return new Uint8Array;var g=0;if(x[g]!==" "){for(var d=0,E=0;x[g]===a;)d++,g++;for(var A=(x.length-g)*l+1>>>0,m=new Uint8Array(A);x[g];){var B=e[x.charCodeAt(g)];if(B===255)return;for(var D=0,P=A-1;(B!==0||D<E)&&P!==-1;P--,D++)B+=c*m[P]>>>0,m[P]=B%256>>>0,B=B/256>>>0;if(B!==0)throw new Error("Non-zero carry");E=D,g++}if(x[g]!==" "){for(var k=A-E;k!==A&&m[k]===0;)k++;for(var U=new Uint8Array(d+(A-k)),T=d;k!==A;)U[T++]=m[k++];return U}}}function b(x){var g=h(x);if(g)return g;throw new Error(`Non-${t} character`)}return{encode:f,decodeUnsafe:h,decode:b}}var ff=lf,df=ff,nc=df;var Go=class{name;prefix;baseEncode;constructor(t,e,n){this.name=t,this.prefix=e,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},jo=class{name;prefix;baseDecode;prefixCodePoint;constructor(t,e,n){this.name=t,this.prefix=e;let o=e.codePointAt(0);if(o===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=o,this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return oc(this,t)}},Zo=class{decoders;constructor(t){this.decoders=t}or(t){return oc(this,t)}decode(t){let e=t[0],n=this.decoders[e];if(n!=null)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function oc(r,t){return new Zo({...r.decoders??{[r.prefix]:r},...t.decoders??{[t.prefix]:t}})}var Yo=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,e,n,o){this.name=t,this.prefix=e,this.baseEncode=n,this.baseDecode=o,this.encoder=new Go(t,e,n),this.decoder=new jo(t,e,o)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function Ye({name:r,prefix:t,encode:e,decode:n}){return new Yo(r,t,e,n)}function we({name:r,prefix:t,alphabet:e}){let{encode:n,decode:o}=nc(e,r);return Ye({prefix:t,name:r,encode:n,decode:i=>ae(o(i))})}function hf(r,t,e,n){let o={};for(let u=0;u<t.length;++u)o[t[u]]=u;let i=r.length;for(;r[i-1]==="=";)--i;let s=new Uint8Array(i*e/8|0),c=0,a=0,l=0;for(let u=0;u<i;++u){let f=o[r[u]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<e|f,c+=e,c>=8&&(c-=8,s[l++]=255&a>>c)}if(c>=e||(255&a<<8-c)!==0)throw new SyntaxError("Unexpected end of data");return s}function pf(r,t,e){let n=t[t.length-1]==="=",o=(1<<e)-1,i="",s=0,c=0;for(let a=0;a<r.length;++a)for(c=c<<8|r[a],s+=8;s>e;)s-=e,i+=t[o&c>>s];if(s!==0&&(i+=t[o&c<<e-s]),n)for(;(i.length*e&7)!==0;)i+="=";return i}function st({name:r,prefix:t,bitsPerChar:e,alphabet:n}){return Ye({prefix:t,name:r,encode(o){return pf(o,n,e)},decode(o){return hf(o,n,e,r)}})}var jt=st({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),mf=st({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),gf=st({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),yf=st({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),bf=st({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),xf=st({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),wf=st({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Ef=st({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),vf=st({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Xo={};Tt(Xo,{base58btc:()=>tt,base58flickr:()=>Sf});var tt=we({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Sf=we({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Qo={};Tt(Qo,{base64:()=>oe,base64pad:()=>Af,base64url:()=>_f,base64urlpad:()=>Bf});var oe=st({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Af=st({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),_f=st({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Bf=st({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});function If(r,t){try{if(typeof r=="string"&&r.length>0)return Cf(r);if(typeof r=="number"&&isFinite(r))return t?.long?Tf(r):kf(r);throw new Error("Value is not a string or number.")}catch(e){let n=Uf(e)?`${e.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function Cf(r){if(r=String(r),r.length>100)throw new Error("Value exceeds the maximum length of 100 characters.");let t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(!t)return NaN;let e=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return e*315576e5;case"weeks":case"week":case"w":return e*6048e5;case"days":case"day":case"d":return e*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return e*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return e*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return e*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return e;default:throw new Error(`The unit ${n} was matched, but no matching case exists.`)}}var _n=If;function kf(r){let t=Math.abs(r);return t>=864e5?`${Math.round(r/864e5)}d`:t>=36e5?`${Math.round(r/36e5)}h`:t>=6e4?`${Math.round(r/6e4)}m`:t>=1e3?`${Math.round(r/1e3)}s`:`${r}ms`}function Tf(r){let t=Math.abs(r);return t>=864e5?An(r,t,864e5,"day"):t>=36e5?An(r,t,36e5,"hour"):t>=6e4?An(r,t,6e4,"minute"):t>=1e3?An(r,t,1e3,"second"):`${r} ms`}function An(r,t,e,n){let o=t>=e*1.5;return`${Math.round(r/e)} ${n}${o?"s":""}`}function Uf(r){return typeof r=="object"&&r!==null&&"message"in r}function Jo(r){e.debug=e,e.default=e,e.coerce=a,e.disable=i,e.enable=o,e.enabled=s,e.humanize=_n,e.destroy=l,Object.keys(r).forEach(u=>{e[u]=r[u]}),e.names=[],e.skips=[],e.formatters={};function t(u){let f=0;for(let h=0;h<u.length;h++)f=(f<<5)-f+u.charCodeAt(h),f|=0;return e.colors[Math.abs(f)%e.colors.length]}e.selectColor=t;function e(u){let f,h=null,b,x;function g(...d){if(!g.enabled)return;let E=g,A=Number(new Date),m=A-(f||A);E.diff=m,E.prev=f,E.curr=A,f=A,d[0]=e.coerce(d[0]),typeof d[0]!="string"&&d.unshift("%O");let B=0;d[0]=d[0].replace(/%([a-zA-Z%])/g,(P,k)=>{if(P==="%%")return"%";B++;let U=e.formatters[k];if(typeof U=="function"){let T=d[B];P=U.call(E,T),d.splice(B,1),B--}return P}),e.formatArgs.call(E,d),(E.log||e.log).apply(E,d)}return g.namespace=u,g.useColors=e.useColors(),g.color=e.selectColor(u),g.extend=n,g.destroy=e.destroy,Object.defineProperty(g,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(b!==e.namespaces&&(b=e.namespaces,x=e.enabled(u)),x),set:d=>{h=d}}),typeof e.init=="function"&&e.init(g),g}function n(u,f){let h=e(this.namespace+(typeof f>"u"?":":f)+u);return h.log=this.log,h}function o(u){e.save(u),e.namespaces=u,e.names=[],e.skips=[];let f,h=(typeof u=="string"?u:"").split(/[\s,]+/),b=h.length;for(f=0;f<b;f++)h[f]&&(u=h[f].replace(/\*/g,".*?"),u[0]==="-"?e.skips.push(new RegExp("^"+u.substr(1)+"$")):e.names.push(new RegExp("^"+u+"$")))}function i(){let u=[...e.names.map(c),...e.skips.map(c).map(f=>"-"+f)].join(",");return e.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let f,h;for(f=0,h=e.skips.length;f<h;f++)if(e.skips[f].test(u))return!1;for(f=0,h=e.names.length;f<h;f++)if(e.names[f].test(u))return!0;return!1}function c(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}function a(u){return u instanceof Error?u.stack??u.message:u}function l(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return e.setupFormatters(e.formatters),e.enable(e.load()),e}var Bn=Of(),Lf=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Pf(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/(edge|trident)\/(\d+)/)!=null?!1:typeof document<"u"&&document.documentElement?.style?.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/firefox\/(\d+)/)!=null&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/applewebkit\/(\d+)/)}function Df(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+_n(this.diff),!this.useColors)return;let t="color: "+this.color;r.splice(1,0,t,"color: inherit");let e=0,n=0;r[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(e++,o==="%c"&&(n=e))}),r.splice(n,0,t)}var Nf=console.debug??console.log??(()=>{});function Rf(r){try{r?Bn?.setItem("debug",r):Bn?.removeItem("debug")}catch{}}function Mf(){let r;try{r=Bn?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function Of(){try{return localStorage}catch{}}function Ff(r){r.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}}var ic=Jo({formatArgs:Df,save:Rf,load:Mf,useColors:Pf,setupFormatters:Ff,colors:Lf,storage:Bn,log:Nf});var xt=ic;xt.formatters.b=r=>r==null?"undefined":tt.baseEncode(r);xt.formatters.t=r=>r==null?"undefined":jt.baseEncode(r);xt.formatters.m=r=>r==null?"undefined":oe.baseEncode(r);xt.formatters.p=r=>r==null?"undefined":r.toString();xt.formatters.c=r=>r==null?"undefined":r.toString();xt.formatters.k=r=>r==null?"undefined":r.toString();xt.formatters.a=r=>r==null?"undefined":r.toString();xt.formatters.e=r=>r==null?"undefined":sc(r.stack)??sc(r.message)??r.toString();function Kf(r){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=r,t.destroy=()=>!0,t.extend=()=>t,t}function cc(r){let t=Kf(`${r}:trace`);return xt.enabled(`${r}:trace`)&&xt.names.map(e=>e.toString()).find(e=>e.includes(":trace"))!=null&&(t=xt(`${r}:trace`)),Object.assign(xt(r),{error:xt(`${r}:error`),trace:t})}function ac(){xt.disable()}function uc(r){xt.enable(r)}function sc(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}function Vf(r){let[t,e]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>t.next(),push:o=>{n.push(o)},next:()=>n.length>0?{done:!1,value:n.shift()}:t.next(),[e](){return this}}}var lc=Vf;function zf(r){return r[Symbol.asyncIterator]!=null}function fc(r){return r?.then!=null}function Hf(r,t){let e=0;if(zf(r))return async function*(){for await(let a of r){let l=t(a,e++);fc(l)&&await l,yield a}}();let n=lc(r),{value:o,done:i}=n.next();if(i===!0)return function*(){}();if(typeof t(o,e++)?.then=="function")return async function*(){yield o;for await(let a of n){let l=t(a,e++);fc(l)&&await l,yield a}}();let c=t;return function*(){yield o;for(let a of n)c(a,e++),yield a}()}var ti=Hf;var Sc=cf(vc(),1),Yf=cc("libp2p:simple-metrics"),Lr=class{value=0;update(t){this.value=t}increment(t=1){this.value+=t}decrement(t=1){this.value-=t}reset(){this.value=0}timer(){let t=Date.now();return()=>{this.value=Date.now()-t}}},Pr=class{values={};update(t){Object.entries(t).forEach(([e,n])=>{this.values[e]=n})}increment(t){Object.entries(t).forEach(([e,n])=>{this.values[e]=this.values[e]??0;let o=typeof n=="number"?n:1;this.values[e]+=Number(o)})}decrement(t){Object.entries(t).forEach(([e,n])=>{this.values[e]=this.values[e]??0;let o=typeof n=="number"?n:1;this.values[e]-=Number(o)})}reset(){this.values={}}timer(t){let e=Date.now();return()=>{this.values[t]=Date.now()-e}}},Dr=class{bucketValues=new Map;countValue=0;sumValue=0;constructor(t){let e=[...t.buckets??[.005,.01,.025,.05,.1,.25,.5,1,2.5,5,10],1/0];for(let n of e)this.bucketValues.set(n,0)}observe(t){this.countValue++,this.sumValue+=t;for(let[e,n]of this.bucketValues.entries())t<=e&&this.bucketValues.set(e,n+1)}reset(){this.countValue=0,this.sumValue=0;for(let t of this.bucketValues.keys())this.bucketValues.set(t,0)}timer(){let t=Date.now();return()=>{this.observe(Date.now()-t)}}},kn=class{histograms={};constructor(t){this.histograms={}}observe(t){for(let[e,n]of Object.entries(t))this.histograms[e]===void 0&&(this.histograms[e]=new Dr({})),this.histograms[e].observe(n)}reset(){for(let t of Object.values(this.histograms))t.reset()}timer(t){let e=Date.now();return()=>{this.observe({[t]:Date.now()-e})}}},Nr=class{sumValue=0;countValue=0;percentiles;tdigest=new Sc.TDigest(.01);compressCount;constructor(t){this.percentiles=t.percentiles??[.01,.05,.5,.9,.95,.99,.999],this.compressCount=t.compressCount??1e3}observe(t){this.sumValue+=t,this.countValue++,this.tdigest.push(t),this.tdigest.size()>this.compressCount&&this.tdigest.compress()}reset(){this.sumValue=0,this.countValue=0,this.tdigest.reset()}timer(){let t=Date.now();return()=>{this.observe(Date.now()-t)}}},Tn=class{summaries={};opts;constructor(t){this.summaries={},this.opts=t}observe(t){for(let[e,n]of Object.entries(t))this.summaries[e]===void 0&&(this.summaries[e]=new Nr(this.opts)),this.summaries[e].observe(n)}reset(){for(let t of Object.values(this.summaries))t.reset()}timer(t){let e=Date.now();return()=>{this.observe({[t]:Date.now()-e})}}},ri=class{metrics=new Map;transferStats;started;interval;intervalMs;onMetrics;constructor(t,e){this.started=!1,this._emitMetrics=this._emitMetrics.bind(this),this.intervalMs=e.intervalMs??1e3,this.onMetrics=e.onMetrics,this.transferStats=new Map}[Symbol.toStringTag]="@libp2p/metrics-simple";[xe]=["@libp2p/metrics"];isStarted(){return this.started}start(){this.started=!0,this.interval=setInterval(this._emitMetrics,this.intervalMs)}stop(){this.started=!1,clearInterval(this.interval)}_emitMetrics(){Promise.resolve().then(async()=>{let t={};for(let[e,n]of this.metrics.entries())n instanceof Lr?t[e]=n.value:n instanceof Pr?t[e]=n.values:n instanceof Dr?t[e]={count:n.countValue,sum:n.sumValue,buckets:{...n.bucketValues}}:n instanceof kn?t[e]={...Object.fromEntries(Object.entries(n.histograms).map(([o,i])=>[o,{count:i.countValue,sum:i.sumValue,buckets:{...i.bucketValues}}]))}:n instanceof Nr?t[e]={count:n.countValue,sum:n.sumValue,percentiles:Object.fromEntries(n.percentiles.map(o=>[o,n.tdigest.percentile(o)]))}:n instanceof Tn?t[e]={...Object.fromEntries(Object.entries(n.summaries).map(([o,i])=>[o,{count:i.countValue,sum:i.sumValue,percentiles:Object.fromEntries(i.percentiles.map(s=>[s,i.tdigest.percentile(s)]))}]))}:t[e]=await n();this.onMetrics(structuredClone(t))}).catch(t=>{Yf.error("could not invoke onMetrics callback",t)})}_incrementValue(t,e){let n=this.transferStats.get(t)??0;this.transferStats.set(t,n+e)}_track(t,e){let n=this,o=t.sink;t.sink=async function(c){await o(ti(c,a=>{n._incrementValue(`${e} sent`,a.byteLength)}))};let i=t.source;t.source=ti(i,s=>{n._incrementValue(`${e} received`,s.byteLength)})}trackMultiaddrConnection(t){this._track(t,"global")}trackProtocolStream(t,e){t.protocol!=null&&this._track(t,t.protocol)}registerMetric(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Lr;return this.metrics.set(t,n),n}registerMetricGroup(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Pr;return this.metrics.set(t,n),n}registerCounter(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Lr;return this.metrics.set(t,n),n}registerCounterGroup(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Pr;return this.metrics.set(t,n),n}registerHistogram(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Dr(e);return this.metrics.set(t,n),n}registerHistogramGroup(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new kn(e);return this.metrics.set(t,n),n}registerSummary(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Nr(e);return this.metrics.set(t,n),n}registerSummaryGroup(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Tn(e);return this.metrics.set(t,n),n}createTrace(){}traceFunction(t,e){return e}};function Ac(r){return t=>new ri(t,r)}function wt(){let r={};return r.promise=new Promise((t,e)=>{r.resolve=t,r.reject=e}),r}var Un=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||(t-1&t)!==0)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},Qe=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new Un(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let e=this.head;this.head=e.next=new Un(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let e=this.tail.next;this.tail.next=null,this.tail=e,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};var ni=class extends Error{type;code;constructor(t,e){super(t??"The operation was aborted"),this.type="aborted",this.code=e??"ABORT_ERR"}};function Je(r={}){return Wf(e=>{let n=e.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function Wf(r,t){t=t??{};let e=t.onEnd,n=new Qe,o,i,s,c=wt(),a=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((d,E)=>{i=A=>{i=null,n.push(A);try{d(r(n))}catch(m){E(m)}return o}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{c.resolve(),c=wt()})}},l=d=>i!=null?i(d):(n.push(d),o),u=d=>(n=new Qe,i!=null?i({error:d}):(n.push({error:d}),o)),f=d=>{if(s)return o;if(t?.objectMode!==!0&&d?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return l({done:!1,value:d})},h=d=>s?o:(s=!0,d!=null?u(d):l({done:!0})),b=()=>(n=new Qe,h(),{done:!0}),x=d=>(h(d),{done:!0});if(o={[Symbol.asyncIterator](){return this},next:a,return:b,throw:x,push:f,end:h,get readableLength(){return n.size},onEmpty:async d=>{let E=d?.signal;if(E?.throwIfAborted(),n.isEmpty())return;let A,m;E!=null&&(A=new Promise((B,D)=>{m=()=>{D(new ni)},E.addEventListener("abort",m)}));try{await Promise.race([c.promise,A])}finally{m!=null&&E!=null&&E?.removeEventListener("abort",m)}}},e==null)return o;let g=o;return o={[Symbol.asyncIterator](){return this},next(){return g.next()},throw(d){return g.throw(d),e!=null&&(e(d),e=void 0),{done:!0}},return(){return g.return(),e!=null&&(e(),e=void 0),{done:!0}},push:f,end(d){return g.end(d),e!=null&&(e(d),e=void 0),o},get readableLength(){return g.readableLength},onEmpty:d=>g.onEmpty(d)},o}var Ln=class extends Error{type;code;constructor(t,e,n){super(t??"The operation was aborted"),this.type="aborted",this.name=n??"AbortError",this.code=e??"ABORT_ERR"}};async function _c(r,t,e){if(t==null)return r;if(t.aborted)return r.catch(()=>{}),Promise.reject(new Ln(e?.errorMessage,e?.errorCode,e?.errorName));let n,o=new Ln(e?.errorMessage,e?.errorCode,e?.errorName);try{return await Promise.race([r,new Promise((i,s)=>{n=()=>{s(o)},t.addEventListener("abort",n)})])}finally{n!=null&&t.removeEventListener("abort",n)}}var oi=class{readNext;haveNext;ended;nextResult;error;constructor(){this.ended=!1,this.readNext=wt(),this.haveNext=wt()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("HaveNext promise resolved but nextResult was undefined");let t=this.nextResult;return this.nextResult=void 0,this.readNext.resolve(),this.readNext=wt(),t}async throw(t){return this.ended=!0,this.error=t,t!=null&&(this.haveNext.promise.catch(()=>{}),this.haveNext.reject(t)),{done:!0,value:void 0}}async return(){let t={done:!0,value:void 0};return this.ended=!0,this.nextResult=t,this.haveNext.resolve(),t}async push(t,e){await this._push(t,e)}async end(t,e){t!=null?await this.throw(t):await this._push(void 0,e)}async _push(t,e){if(t!=null&&this.ended)throw this.error??new Error("Cannot push value onto an ended pushable");for(;this.nextResult!=null;)await this.readNext.promise;t!=null?this.nextResult={done:!1,value:t}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=wt(),await _c(this.readNext.promise,e?.signal,e)}};function Bc(){return new oi}function Xf(r){return r[Symbol.asyncIterator]!=null}async function Qf(r,t){try{await Promise.all(r.map(async e=>{for await(let n of e)await t.push(n)})),await t.end()}catch(e){await t.end(e).catch(()=>{})}}async function*Jf(r){let t=Bc();Qf(r,t).catch(()=>{}),yield*t}function*td(r){for(let t of r)yield*t}function ed(...r){let t=[];for(let e of r)Xf(e)||t.push(e);return t.length===r.length?td(t):Jf(r)}var Ic=ed;function Cc(r,...t){if(r==null)throw new Error("Empty pipeline");if(ii(r)){let n=r;r=()=>n.source}else if(Tc(r)||kc(r)){let n=r;r=()=>n}let e=[r,...t];if(e.length>1&&ii(e[e.length-1])&&(e[e.length-1]=e[e.length-1].sink),e.length>2)for(let n=1;n<e.length-1;n++)ii(e[n])&&(e[n]=nd(e[n]));return rd(...e)}var rd=(...r)=>{let t;for(;r.length>0;)t=r.shift()(t);return t},kc=r=>r?.[Symbol.asyncIterator]!=null,Tc=r=>r?.[Symbol.iterator]!=null,ii=r=>r==null?!1:r.sink!=null&&r.source!=null,nd=r=>t=>{let e=r.sink(t);if(e?.then!=null){let n=Je({objectMode:!0});e.then(()=>{n.end()},s=>{n.end(s)});let o,i=r.source;if(kc(i))o=async function*(){yield*i,n.end()};else if(Tc(i))o=function*(){yield*i,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Ic(n,o())}return r.source};function Pn(r){let t=new globalThis.AbortController;function e(){t.abort();for(let i of r)i?.removeEventListener!=null&&i.removeEventListener("abort",e)}for(let i of r){if(i?.aborted===!0){e();break}i?.addEventListener!=null&&i.addEventListener("abort",e)}function n(){for(let i of r)i?.removeEventListener!=null&&i.removeEventListener("abort",e)}let o=t.signal;return o.clear=n,o}function Yt(r=0){return new Uint8Array(r)}function Et(r=0){return new Uint8Array(r)}var od=Math.pow(2,7),id=Math.pow(2,14),sd=Math.pow(2,21),si=Math.pow(2,28),ci=Math.pow(2,35),ai=Math.pow(2,42),ui=Math.pow(2,49),G=128,vt=127;function dt(r){if(r<od)return 1;if(r<id)return 2;if(r<sd)return 3;if(r<si)return 4;if(r<ci)return 5;if(r<ai)return 6;if(r<ui)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function li(r,t,e=0){switch(dt(r)){case 8:t[e++]=r&255|G,r/=128;case 7:t[e++]=r&255|G,r/=128;case 6:t[e++]=r&255|G,r/=128;case 5:t[e++]=r&255|G,r/=128;case 4:t[e++]=r&255|G,r>>>=7;case 3:t[e++]=r&255|G,r>>>=7;case 2:t[e++]=r&255|G,r>>>=7;case 1:{t[e++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return t}function cd(r,t,e=0){switch(dt(r)){case 8:t.set(e++,r&255|G),r/=128;case 7:t.set(e++,r&255|G),r/=128;case 6:t.set(e++,r&255|G),r/=128;case 5:t.set(e++,r&255|G),r/=128;case 4:t.set(e++,r&255|G),r>>>=7;case 3:t.set(e++,r&255|G),r>>>=7;case 2:t.set(e++,r&255|G),r>>>=7;case 1:{t.set(e++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return t}function fi(r,t){let e=r[t],n=0;if(n+=e&vt,e<G||(e=r[t+1],n+=(e&vt)<<7,e<G)||(e=r[t+2],n+=(e&vt)<<14,e<G)||(e=r[t+3],n+=(e&vt)<<21,e<G)||(e=r[t+4],n+=(e&vt)*si,e<G)||(e=r[t+5],n+=(e&vt)*ci,e<G)||(e=r[t+6],n+=(e&vt)*ai,e<G)||(e=r[t+7],n+=(e&vt)*ui,e<G))return n;throw new RangeError("Could not decode varint")}function ad(r,t){let e=r.get(t),n=0;if(n+=e&vt,e<G||(e=r.get(t+1),n+=(e&vt)<<7,e<G)||(e=r.get(t+2),n+=(e&vt)<<14,e<G)||(e=r.get(t+3),n+=(e&vt)<<21,e<G)||(e=r.get(t+4),n+=(e&vt)*si,e<G)||(e=r.get(t+5),n+=(e&vt)*ci,e<G)||(e=r.get(t+6),n+=(e&vt)*ai,e<G)||(e=r.get(t+7),n+=(e&vt)*ui,e<G))return n;throw new RangeError("Could not decode varint")}function ve(r,t,e=0){return t==null&&(t=Et(dt(r))),t instanceof Uint8Array?li(r,t,e):cd(r,t,e)}function ue(r,t=0){return r instanceof Uint8Array?fi(r,t):ad(r,t)}function Dt(r,t){t==null&&(t=r.reduce((o,i)=>o+i.length,0));let e=Et(t),n=0;for(let o of r)e.set(o,n),n+=o.length;return e}function Nt(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}var Lc=Symbol.for("@achingbrain/uint8arraylist");function Uc(r,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let e=0;for(let n of r){let o=e+n.byteLength;if(t<o)return{buf:n,index:t-e};e=o}throw new RangeError("index is out of bounds")}function Nn(r){return!!r?.[Lc]}var gt=class r{bufs;length;[Lc]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let e=0;for(let n of t)if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.push(n);else if(Nn(n))e+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}prepend(...t){this.prependAll(t)}prependAll(t){let e=0;for(let n of t.reverse())if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.unshift(n);else if(Nn(n))e+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}get(t){let e=Uc(this.bufs,t);return e.buf[e.index]}set(t,e){let n=Uc(this.bufs,t);n.buf[n.index]=e}write(t,e=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(e+n,t[n]);else if(Nn(t))for(let n=0;n<t.length;n++)this.set(e+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,e){let{bufs:n,length:o}=this._subList(t,e);return Dt(n,o)}subarray(t,e){let{bufs:n,length:o}=this._subList(t,e);return n.length===1?n[0]:Dt(n,o)}sublist(t,e){let{bufs:n,length:o}=this._subList(t,e),i=new r;return i.length=o,i.bufs=[...n],i}_subList(t,e){if(t=t??0,e=e??this.length,t<0&&(t=this.length+t),e<0&&(e=this.length+e),t<0||e>this.length)throw new RangeError("index is out of bounds");if(t===e)return{bufs:[],length:0};if(t===0&&e===this.length)return{bufs:this.bufs,length:this.length};let n=[],o=0;for(let i=0;i<this.bufs.length;i++){let s=this.bufs[i],c=o,a=c+s.byteLength;if(o=a,t>=a)continue;let l=t>=c&&t<a,u=e>c&&e<=a;if(l&&u){if(t===c&&e===a){n.push(s);break}let f=t-c;n.push(s.subarray(f,f+(e-t)));break}if(l){if(t===0){n.push(s);continue}n.push(s.subarray(t-c));continue}if(u){if(e===a){n.push(s);break}n.push(s.subarray(0,e-c));break}n.push(s)}return{bufs:n,length:e-t}}indexOf(t,e=0){if(!Nn(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(e=Number(e??0),isNaN(e)&&(e=0),e<0&&(e=this.length+e),e<0&&(e=0),t.length===0)return e>this.length?this.length:e;let o=n.byteLength;if(o===0)throw new TypeError("search must be at least 1 byte long");let i=256,s=new Int32Array(i);for(let f=0;f<i;f++)s[f]=-1;for(let f=0;f<o;f++)s[n[f]]=f;let c=s,a=this.byteLength-n.byteLength,l=n.byteLength-1,u;for(let f=e;f<=a;f+=u){u=0;for(let h=l;h>=0;h--){let b=this.get(f+h);if(n[h]!==b){u=Math.max(1,h-c[b]);break}}if(u===0)return f}return-1}getInt8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getInt8(0)}setInt8(t,e){let n=Et(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,e),this.write(n,t)}getInt16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,e)}setInt16(t,e,n){let o=Yt(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt16(0,e,n),this.write(o,t)}getInt32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,e)}setInt32(t,e,n){let o=Yt(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt32(0,e,n),this.write(o,t)}getBigInt64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,e)}setBigInt64(t,e,n){let o=Yt(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigInt64(0,e,n),this.write(o,t)}getUint8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getUint8(0)}setUint8(t,e){let n=Et(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,e),this.write(n,t)}getUint16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,e)}setUint16(t,e,n){let o=Yt(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint16(0,e,n),this.write(o,t)}getUint32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,e)}setUint32(t,e,n){let o=Yt(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint32(0,e,n),this.write(o,t)}getBigUint64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,e)}setBigUint64(t,e,n){let o=Yt(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigUint64(0,e,n),this.write(o,t)}getFloat32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,e)}setFloat32(t,e,n){let o=Yt(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat32(0,e,n),this.write(o,t)}getFloat64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,e)}setFloat64(t,e,n){let o=Yt(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat64(0,e,n),this.write(o,t)}equals(t){if(t==null||!(t instanceof r)||t.bufs.length!==this.bufs.length)return!1;for(let e=0;e<this.bufs.length;e++)if(!Nt(this.bufs[e],t.bufs[e]))return!1;return!0}static fromUint8Arrays(t,e){let n=new r;return n.bufs=t,e==null&&(e=t.reduce((o,i)=>o+i.byteLength,0)),n.length=e,n}};var Rn=class extends Error{name="InvalidMessageLengthError";code="ERR_INVALID_MSG_LENGTH"},tr=class extends Error{name="InvalidDataLengthError";code="ERR_MSG_DATA_TOO_LONG"},Mn=class extends Error{name="InvalidDataLengthLengthError";code="ERR_MSG_LENGTH_TOO_LONG"},Rr=class extends Error{name="UnexpectedEOFError";code="ERR_UNEXPECTED_EOF"};function On(r){return r[Symbol.asyncIterator]!=null}function Pc(r,t){if(r.byteLength>t)throw new tr("Message length too long")}var Kn=r=>{let t=dt(r),e=Et(t);return ve(r,e),Kn.bytes=t,e};Kn.bytes=0;function Vn(r,t){t=t??{};let e=t.lengthEncoder??Kn,n=t?.maxDataLength??4194304;function*o(i){Pc(i,n);let s=e(i.byteLength);s instanceof Uint8Array?yield s:yield*s,i instanceof Uint8Array?yield i:yield*i}return On(r)?async function*(){for await(let i of r)yield*o(i)}():function*(){for(let i of r)yield*o(i)}()}Vn.single=(r,t)=>{t=t??{};let e=t.lengthEncoder??Kn,n=t?.maxDataLength??4194304;return Pc(r,n),new gt(e(r.byteLength),r)};var Ne;(function(r){r[r.LENGTH=0]="LENGTH",r[r.DATA=1]="DATA"})(Ne||(Ne={}));var di=r=>{let t=ue(r);return di.bytes=dt(t),t};di.bytes=0;function Mr(r,t){let e=new gt,n=Ne.LENGTH,o=-1,i=t?.lengthDecoder??di,s=t?.maxLengthLength??8,c=t?.maxDataLength??4194304;function*a(){for(;e.byteLength>0;){if(n===Ne.LENGTH)try{if(o=i(e),o<0)throw new Rn("Invalid message length");if(o>c)throw new tr("Message length too long");let l=i.bytes;e.consume(l),t?.onLength!=null&&t.onLength(o),n=Ne.DATA}catch(l){if(l instanceof RangeError){if(e.byteLength>s)throw new Mn("Message length length too long");break}throw l}if(n===Ne.DATA){if(e.byteLength<o)break;let l=e.sublist(0,o);e.consume(o),t?.onData!=null&&t.onData(l),yield l,n=Ne.LENGTH}}}return On(r)?async function*(){for await(let l of r)e.append(l),yield*a();if(e.byteLength>0)throw new Rr("Unexpected end of input")}():function*(){for(let l of r)e.append(l),yield*a();if(e.byteLength>0)throw new Rr("Unexpected end of input")}()}Mr.fromReader=(r,t)=>{let e=1,n=async function*(){for(;;)try{let{done:i,value:s}=await r.next(e);if(i===!0)return;s!=null&&(yield s)}catch(i){if(i.code==="ERR_UNDER_READ")return{done:!0,value:null};throw i}finally{e=1}}();return Mr(n,{...t??{},onLength:i=>{e=i}})};var Dc="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var er=(r=21)=>{let t="",e=crypto.getRandomValues(new Uint8Array(r|=0));for(;r--;)t+=Dc[e[r]&63];return t};var zn=class extends Error{constructor(t="Method not found"){super(t),this.name="MethodNotFoundError"}},Hn=class extends Error{constructor(t="Invocation target was not a function"){super(t),this.name="InvalidMethodError"}},Or=class extends Error{constructor(t="Unsupported value type"){super(t),this.name="UnsupportedValueTypeError"}},qn=class extends Error{constructor(t="Cannot reuse RPC target name"){super(t),this.name="DuplicateTargetNameError"}},Fr=class extends Error{constructor(t="Duplicate scope"){super(t),this.name="DuplicateScopeError"}},$n=class extends Error{constructor(t="Invalid return type"){super(t),this.name="InvalidReturnTypeError"}},Kr=class extends Error{constructor(t="Invocation target was not a function"){super(t),this.name="InvalidInvocationTypeError"}},rr=class extends Error{constructor(t="Parent invocation scope not found"){super(t),this.name="MissingParentScopeError"}},Gn=class extends Error{constructor(t="Invocation not found"){super(t),this.name="MissingInvocationError"}},jn=class extends Error{constructor(t="Callback not found"){super(t),this.name="MissingCallbackError"}};var hi=new Float32Array([-0]),Se=new Uint8Array(hi.buffer);function Nc(r,t,e){hi[0]=r,t[e]=Se[0],t[e+1]=Se[1],t[e+2]=Se[2],t[e+3]=Se[3]}function Rc(r,t){return Se[0]=r[t],Se[1]=r[t+1],Se[2]=r[t+2],Se[3]=r[t+3],hi[0]}var pi=new Float64Array([-0]),St=new Uint8Array(pi.buffer);function Mc(r,t,e){pi[0]=r,t[e]=St[0],t[e+1]=St[1],t[e+2]=St[2],t[e+3]=St[3],t[e+4]=St[4],t[e+5]=St[5],t[e+6]=St[6],t[e+7]=St[7]}function Oc(r,t){return St[0]=r[t],St[1]=r[t+1],St[2]=r[t+2],St[3]=r[t+3],St[4]=r[t+4],St[5]=r[t+5],St[6]=r[t+6],St[7]=r[t+7],pi[0]}var ld=BigInt(Number.MAX_SAFE_INTEGER),fd=BigInt(Number.MIN_SAFE_INTEGER),Rt=class r{lo;hi;constructor(t,e){this.lo=t|0,this.hi=e|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(e+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(BigInt(e)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?e===0?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return Re;if(t<ld&&t>fd)return this.fromNumber(Number(t));let e=t<0n;e&&(t=-t);let n=t>>32n,o=t-(n<<32n);return e&&(n=~n|0n,o=~o|0n,++o>Fc&&(o=0n,++n>Fc&&(n=0n))),new r(Number(o),Number(n))}static fromNumber(t){if(t===0)return Re;let e=t<0;e&&(t=-t);let n=t>>>0,o=(t-n)/4294967296>>>0;return e&&(o=~o>>>0,n=~n>>>0,++n>4294967295&&(n=0,++o>4294967295&&(o=0))),new r(n,o)}static from(t){return typeof t=="number"?r.fromNumber(t):typeof t=="bigint"?r.fromBigInt(t):typeof t=="string"?r.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new r(t.low>>>0,t.high>>>0):Re}},Re=new Rt(0,0);Re.toBigInt=function(){return 0n};Re.zzEncode=Re.zzDecode=function(){return this};Re.length=function(){return 1};var Fc=4294967296n;function Kc(r){let t=0,e=0;for(let n=0;n<r.length;++n)e=r.charCodeAt(n),e<128?t+=1:e<2048?t+=2:(e&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function Vc(r,t,e){if(e-t<1)return"";let o,i=[],s=0,c;for(;t<e;)c=r[t++],c<128?i[s++]=c:c>191&&c<224?i[s++]=(c&31)<<6|r[t++]&63:c>239&&c<365?(c=((c&7)<<18|(r[t++]&63)<<12|(r[t++]&63)<<6|r[t++]&63)-65536,i[s++]=55296+(c>>10),i[s++]=56320+(c&1023)):i[s++]=(c&15)<<12|(r[t++]&63)<<6|r[t++]&63,s>8191&&((o??(o=[])).push(String.fromCharCode.apply(String,i)),s=0);return o!=null?(s>0&&o.push(String.fromCharCode.apply(String,i.slice(0,s))),o.join("")):String.fromCharCode.apply(String,i.slice(0,s))}function mi(r,t,e){let n=e,o,i;for(let s=0;s<r.length;++s)o=r.charCodeAt(s),o<128?t[e++]=o:o<2048?(t[e++]=o>>6|192,t[e++]=o&63|128):(o&64512)===55296&&((i=r.charCodeAt(s+1))&64512)===56320?(o=65536+((o&1023)<<10)+(i&1023),++s,t[e++]=o>>18|240,t[e++]=o>>12&63|128,t[e++]=o>>6&63|128,t[e++]=o&63|128):(t[e++]=o>>12|224,t[e++]=o>>6&63|128,t[e++]=o&63|128);return e-n}function Wt(r,t){return RangeError(`index out of range: ${r.pos} + ${t??1} > ${r.len}`)}function Zn(r,t){return(r[t-4]|r[t-3]<<8|r[t-2]<<16|r[t-1]<<24)>>>0}var gi=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,Wt(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw Wt(this,4);return Zn(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Wt(this,4);return Zn(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Wt(this,4);let t=Rc(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw Wt(this,4);let t=Oc(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),e=this.pos,n=this.pos+t;if(n>this.len)throw Wt(this,t);return this.pos+=t,e===n?new Uint8Array(0):this.buf.subarray(e,n)}string(){let t=this.bytes();return Vc(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw Wt(this,t);this.pos+=t}else do if(this.pos>=this.len)throw Wt(this);while((this.buf[this.pos++]&128)!==0);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new Rt(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw Wt(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<e*7)>>>0,t}if(this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw Wt(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw Wt(this,8);let t=Zn(this.buf,this.pos+=4),e=Zn(this.buf,this.pos+=4);return new Rt(t,e)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let t=fi(this.buf,this.pos);return this.pos+=dt(t),t}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function yi(r){return new gi(r instanceof Uint8Array?r:r.subarray())}function _t(r,t,e){let n=yi(r);return t.decode(n,void 0,e)}var bi={};Tt(bi,{base10:()=>dd});var dd=we({prefix:"9",name:"base10",alphabet:"0123456789"});var xi={};Tt(xi,{base16:()=>hd,base16upper:()=>pd});var hd=st({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),pd=st({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var wi={};Tt(wi,{base2:()=>md});var md=st({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ei={};Tt(Ei,{base256emoji:()=>wd});var Hc=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),gd=Hc.reduce((r,t,e)=>(r[e]=t,r),[]),yd=Hc.reduce((r,t,e)=>{let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);return r[n]=e,r},[]);function bd(r){return r.reduce((t,e)=>(t+=gd[e],t),"")}function xd(r){let t=[];for(let e of r){let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);let o=yd[n];if(o==null)throw new Error(`Non-base256emoji character: ${e}`);t.push(o)}return new Uint8Array(t)}var wd=Ye({prefix:"\u{1F680}",name:"base256emoji",encode:bd,decode:xd});var vi={};Tt(vi,{base36:()=>Vr,base36upper:()=>Ed});var Vr=we({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Ed=we({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Si={};Tt(Si,{base8:()=>vd});var vd=st({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Ai={};Tt(Ai,{identity:()=>Sd});var Sd=Ye({prefix:"\0",name:"identity",encode:r=>ec(r),decode:r=>tc(r)});var _y=new TextEncoder,By=new TextDecoder;var Bi={};Tt(Bi,{identity:()=>Xt});var Bd=Gc,qc=128,Id=127,Cd=~Id,kd=Math.pow(2,31);function Gc(r,t,e){t=t||[],e=e||0;for(var n=e;r>=kd;)t[e++]=r&255|qc,r/=128;for(;r&Cd;)t[e++]=r&255|qc,r>>>=7;return t[e]=r|0,Gc.bytes=e-n+1,t}var Td=_i,Ud=128,$c=127;function _i(r,n){var e=0,n=n||0,o=0,i=n,s,c=r.length;do{if(i>=c)throw _i.bytes=0,new RangeError("Could not decode varint");s=r[i++],e+=o<28?(s&$c)<<o:(s&$c)*Math.pow(2,o),o+=7}while(s>=Ud);return _i.bytes=i-n,e}var Ld=Math.pow(2,7),Pd=Math.pow(2,14),Dd=Math.pow(2,21),Nd=Math.pow(2,28),Rd=Math.pow(2,35),Md=Math.pow(2,42),Od=Math.pow(2,49),Fd=Math.pow(2,56),Kd=Math.pow(2,63),Vd=function(r){return r<Ld?1:r<Pd?2:r<Dd?3:r<Nd?4:r<Rd?5:r<Md?6:r<Od?7:r<Fd?8:r<Kd?9:10},zd={encode:Bd,decode:Td,encodingLength:Vd},Hd=zd,zr=Hd;function Hr(r,t=0){return[zr.decode(r,t),zr.decode.bytes]}function nr(r,t,e=0){return zr.encode(r,t,e),t}function or(r){return zr.encodingLength(r)}function Me(r,t){let e=t.byteLength,n=or(r),o=n+or(e),i=new Uint8Array(o+e);return nr(r,i,0),nr(e,i,n),i.set(t,o),new ir(r,e,t,i)}function le(r){let t=ae(r),[e,n]=Hr(t),[o,i]=Hr(t.subarray(n)),s=t.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new ir(e,o,s,t)}function jc(r,t){if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&Js(r.bytes,e.bytes)}}var ir=class{code;size;digest;bytes;constructor(t,e,n,o){this.code=t,this.size=e,this.digest=n,this.bytes=o}};var Zc=0,qd="identity",Yc=ae;function $d(r){return Me(Zc,Yc(r))}var Xt={code:Zc,name:qd,encode:Yc,digest:$d};var ki={};Tt(ki,{sha256:()=>qr,sha512:()=>Gd});function Ci({name:r,code:t,encode:e}){return new Ii(r,t,e)}var Ii=class{name;code;encode;constructor(t,e,n){this.name=t,this.code=e,this.encode=n}digest(t){if(t instanceof Uint8Array){let e=this.encode(t);return e instanceof Uint8Array?Me(this.code,e):e.then(n=>Me(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Xc(r){return async t=>new Uint8Array(await crypto.subtle.digest(r,t))}var qr=Ci({name:"sha2-256",code:18,encode:Xc("SHA-256")}),Gd=Ci({name:"sha2-512",code:19,encode:Xc("SHA-512")});function Qc(r,t){let{bytes:e,version:n}=r;switch(n){case 0:return Zd(e,Ti(r),t??tt.encoder);default:return Yd(e,Ti(r),t??jt.encoder)}}var Jc=new WeakMap;function Ti(r){let t=Jc.get(r);if(t==null){let e=new Map;return Jc.set(r,e),e}return t}var ct=class r{code;version;multihash;bytes;"/";constructor(t,e,n,o){this.code=e,this.version=t,this.multihash=n,this.bytes=o,this["/"]=o}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:e}=this;if(t!==$r)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==Wd)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(e)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:e}=this.multihash,n=Me(t,e);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return r.equals(this,t)}static equals(t,e){let n=e;return n!=null&&t.code===n.code&&t.version===n.version&&jc(t.multihash,n.multihash)}toString(t){return Qc(this,t)}toJSON(){return{"/":Qc(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let e=t;if(e instanceof r)return e;if(e["/"]!=null&&e["/"]===e.bytes||e.asCID===e){let{version:n,code:o,multihash:i,bytes:s}=e;return new r(n,o,i,s??ta(n,o,i.bytes))}else if(e[Xd]===!0){let{version:n,multihash:o,code:i}=e,s=le(o);return r.create(n,i,s)}else return null}static create(t,e,n){if(typeof e!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(e!==$r)throw new Error(`Version 0 CID must use dag-pb (code: ${$r}) block encoding`);return new r(t,e,n,n.bytes)}case 1:{let o=ta(t,e,n.bytes);return new r(t,e,n,o)}default:throw new Error("Invalid version")}}static createV0(t){return r.create(0,$r,t)}static createV1(t,e){return r.create(1,t,e)}static decode(t){let[e,n]=r.decodeFirst(t);if(n.length!==0)throw new Error("Incorrect length");return e}static decodeFirst(t){let e=r.inspectBytes(t),n=e.size-e.multihashSize,o=ae(t.subarray(n,n+e.multihashSize));if(o.byteLength!==e.multihashSize)throw new Error("Incorrect length");let i=o.subarray(e.multihashSize-e.digestSize),s=new ir(e.multihashCode,e.digestSize,i,o);return[e.version===0?r.createV0(s):r.createV1(e.codec,s),t.subarray(e.size)]}static inspectBytes(t){let e=0,n=()=>{let[f,h]=Hr(t.subarray(e));return e+=h,f},o=n(),i=$r;if(o===18?(o=0,e=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=e,c=n(),a=n(),l=e+a,u=l-s;return{version:o,codec:i,multihashCode:c,digestSize:a,multihashSize:u,size:l}}static parse(t,e){let[n,o]=jd(t,e),i=r.decode(o);if(i.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Ti(i).set(n,t),i}};function jd(r,t){switch(r[0]){case"Q":{let e=t??tt;return[tt.prefix,e.decode(`${tt.prefix}${r}`)]}case tt.prefix:{let e=t??tt;return[tt.prefix,e.decode(r)]}case jt.prefix:{let e=t??jt;return[jt.prefix,e.decode(r)]}case Vr.prefix:{let e=t??Vr;return[Vr.prefix,e.decode(r)]}default:{if(t==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],t.decode(r)]}}}function Zd(r,t,e){let{prefix:n}=e;if(n!==tt.prefix)throw Error(`Cannot string encode V0 in ${e.name} encoding`);let o=t.get(n);if(o==null){let i=e.encode(r).slice(1);return t.set(n,i),i}else return o}function Yd(r,t,e){let{prefix:n}=e,o=t.get(n);if(o==null){let i=e.encode(r);return t.set(n,i),i}else return o}var $r=112,Wd=18;function ta(r,t,e){let n=or(r),o=n+or(t),i=new Uint8Array(o+e.byteLength);return nr(r,i,0),nr(t,i,n),i.set(e,o),i}var Xd=Symbol.for("@ipld/js-cid/CID");var Gr={...Ai,...wi,...Si,...bi,...xi,...Wo,...vi,...Xo,...Qo,...Ei},Zy={...ki,...Bi};function ra(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var ea=ra("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Ui=ra("ascii","a",r=>{let t="a";for(let e=0;e<r.length;e++)t+=String.fromCharCode(r[e]);return t},r=>{r=r.substring(1);let t=Et(r.length);for(let e=0;e<r.length;e++)t[e]=r.charCodeAt(e);return t}),Qd={utf8:ea,"utf-8":ea,hex:Gr.base16,latin1:Ui,ascii:Ui,binary:Ui,...Gr},Wn=Qd;function qt(r,t="utf8"){let e=Wn[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.decoder.decode(`${e.prefix}${r}`)}function Li(r){let t=r??8192,e=t>>>1,n,o=t;return function(s){if(s<1||s>e)return Et(s);o+s>t&&(n=Et(t),o=0);let c=n.subarray(o,o+=s);return(o&7)!==0&&(o=(o|7)+1),c}}var Oe=class{fn;len;next;val;constructor(t,e,n){this.fn=t,this.len=e,this.next=void 0,this.val=n}};function Pi(){}var Ni=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},Jd=Li();function th(r){return globalThis.Buffer!=null?Et(r):Jd(r)}var Zr=class{len;head;tail;states;constructor(){this.len=0,this.head=new Oe(Pi,0,0),this.tail=this.head,this.states=null}_push(t,e,n){return this.tail=this.tail.next=new Oe(t,e,n),this.len+=e,this}uint32(t){return this.len+=(this.tail=this.tail.next=new Ri((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(Xn,10,Rt.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let e=Rt.fromBigInt(t);return this._push(Xn,e.length(),e)}uint64Number(t){return this._push(li,dt(t),t)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let e=Rt.fromBigInt(t).zzEncode();return this._push(Xn,e.length(),e)}sint64Number(t){let e=Rt.fromNumber(t).zzEncode();return this._push(Xn,e.length(),e)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(Di,1,t?1:0)}fixed32(t){return this._push(jr,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let e=Rt.fromBigInt(t);return this._push(jr,4,e.lo)._push(jr,4,e.hi)}fixed64Number(t){let e=Rt.fromNumber(t);return this._push(jr,4,e.lo)._push(jr,4,e.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(Nc,4,t)}double(t){return this._push(Mc,8,t)}bytes(t){let e=t.length>>>0;return e===0?this._push(Di,1,0):this.uint32(e)._push(rh,e,t)}string(t){let e=Kc(t);return e!==0?this.uint32(e)._push(mi,e,t):this._push(Di,1,0)}fork(){return this.states=new Ni(this),this.head=this.tail=new Oe(Pi,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Oe(Pi,0,0),this.len=0),this}ldelim(){let t=this.head,e=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=e,this.len+=n),this}finish(){let t=this.head.next,e=th(this.len),n=0;for(;t!=null;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e}};function Di(r,t,e){t[e]=r&255}function eh(r,t,e){for(;r>127;)t[e++]=r&127|128,r>>>=7;t[e]=r}var Ri=class extends Oe{next;constructor(t,e){super(eh,t,e),this.next=void 0}};function Xn(r,t,e){for(;r.hi!==0;)t[e++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)t[e++]=r.lo&127|128,r.lo=r.lo>>>7;t[e++]=r.lo}function jr(r,t,e){t[e]=r&255,t[e+1]=r>>>8&255,t[e+2]=r>>>16&255,t[e+3]=r>>>24}function rh(r,t,e){t.set(r,e)}globalThis.Buffer!=null&&(Zr.prototype.bytes=function(r){let t=r.length>>>0;return this.uint32(t),t>0&&this._push(nh,t,r),this},Zr.prototype.string=function(r){let t=globalThis.Buffer.byteLength(r);return this.uint32(t),t>0&&this._push(oh,t,r),this});function nh(r,t,e){t.set(r,e)}function oh(r,t,e){r.length<40?mi(r,t,e):t.utf8Write!=null?t.utf8Write(r,e):t.set(qt(r),e)}function Mi(){return new Zr}function Bt(r,t){let e=Mi();return t.encode(r,e,{lengthDelimited:!1}),e.finish()}var sr;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(sr||(sr={}));function Qn(r,t,e,n){return{name:r,type:t,encode:e,decode:n}}function Yr(r){function t(o){if(r[o.toString()]==null)throw new Error("Invalid enum value");return r[o]}let e=function(i,s){let c=t(i);s.int32(c)},n=function(i){let s=i.int32();return t(s)};return Qn("enum",sr.VARINT,e,n)}function It(r,t){return Qn("message",sr.LENGTH_DELIMITED,r,t)}var fe=class extends Error{code="ERR_MAX_LENGTH";name="MaxLengthError"};var q;(function(r){r.invokeMethod="invokeMethod",r.methodResolved="methodResolved",r.methodRejected="methodRejected",r.invokeGeneratorMethod="invokeGeneratorMethod",r.abortMethodInvocation="abortMethodInvocation",r.invokeCallback="invokeCallback",r.callbackResolved="callbackResolved",r.callbackRejected="callbackRejected",r.abortCallbackInvocation="abortCallbackInvocation"})(q||(q={}));var Jn;(function(r){r[r.invokeMethod=0]="invokeMethod",r[r.methodResolved=1]="methodResolved",r[r.methodRejected=2]="methodRejected",r[r.invokeGeneratorMethod=3]="invokeGeneratorMethod",r[r.abortMethodInvocation=4]="abortMethodInvocation",r[r.invokeCallback=5]="invokeCallback",r[r.callbackResolved=6]="callbackResolved",r[r.callbackRejected=7]="callbackRejected",r[r.abortCallbackInvocation=8]="abortCallbackInvocation"})(Jn||(Jn={}));(function(r){r.codec=()=>Yr(Jn)})(q||(q={}));var Ut;(function(r){let t;r.codec=()=>(t==null&&(t=It((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.type!=null&&e.type!==0&&(n.uint32(8),n.uint32(e.type)),e.value!=null&&(n.uint32(18),n.bytes(e.value)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={type:0},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.type=e.uint32();break}case 2:{i.value=e.bytes();break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Bt(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Ut||(Ut={}));var Ct;(function(r){let t;r.codec=()=>(t==null&&(t=It((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.type!=null&&Jn[e.type]!==0&&(n.uint32(8),q.codec().encode(e.type,n)),e.message!=null&&e.message.byteLength>0&&(n.uint32(18),n.bytes(e.message)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={type:q.invokeMethod,message:Yt(0)},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.type=q.codec().decode(e);break}case 2:{i.message=e.bytes();break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Bt(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Ct||(Ct={}));var Fe;(function(r){let t;r.codec=()=>(t==null&&(t=It((e,n,o={})=>{if(o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.path!=null&&e.path!==""&&(n.uint32(18),n.string(e.path)),e.args!=null)for(let i of e.args)n.uint32(26),Ut.codec().encode(i,n);o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:"",path:"",args:[]},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{i.path=e.string();break}case 3:{if(o.limits?.args!=null&&i.args.length===o.limits.args)throw new fe('Decode error - map field "args" had too many elements');i.args.push(Ut.codec().decode(e,e.uint32(),{limits:o.limits?.args$}));break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Bt(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Fe||(Fe={}));var Wr;(function(r){let t;r.codec=()=>(t==null&&(t=It((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:""},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Bt(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Wr||(Wr={}));var cr;(function(r){let t;r.codec=()=>(t==null&&(t=It((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.value!=null&&(n.uint32(18),Ut.codec().encode(e.value,n)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:""},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{i.value=Ut.codec().decode(e,e.uint32(),{limits:o.limits?.value});break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Bt(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(cr||(cr={}));var Xr;(function(r){let t;r.codec=()=>(t==null&&(t=It((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.error!=null&&(n.uint32(18),Ut.codec().encode(e.error,n)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:""},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{i.error=Ut.codec().decode(e,e.uint32(),{limits:o.limits?.error});break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Bt(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Xr||(Xr={}));var ar;(function(r){let t;r.codec=()=>(t==null&&(t=It((e,n,o={})=>{if(o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.parents!=null)for(let i of e.parents)n.uint32(18),n.string(i);if(e.callback!=null&&e.callback!==""&&(n.uint32(26),n.string(e.callback)),e.args!=null)for(let i of e.args)n.uint32(34),Ut.codec().encode(i,n);o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:"",parents:[],callback:"",args:[]},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{if(o.limits?.parents!=null&&i.parents.length===o.limits.parents)throw new fe('Decode error - map field "parents" had too many elements');i.parents.push(e.string());break}case 3:{i.callback=e.string();break}case 4:{if(o.limits?.args!=null&&i.args.length===o.limits.args)throw new fe('Decode error - map field "args" had too many elements');i.args.push(Ut.codec().decode(e,e.uint32(),{limits:o.limits?.args$}));break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Bt(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(ar||(ar={}));var ur;(function(r){let t;r.codec=()=>(t==null&&(t=It((e,n,o={})=>{if(o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.parents!=null)for(let i of e.parents)n.uint32(18),n.string(i);o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:"",parents:[]},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{if(o.limits?.parents!=null&&i.parents.length===o.limits.parents)throw new fe('Decode error - map field "parents" had too many elements');i.parents.push(e.string());break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Bt(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(ur||(ur={}));var Qr;(function(r){let t;r.codec=()=>(t==null&&(t=It((e,n,o={})=>{if(o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.parents!=null)for(let i of e.parents)n.uint32(18),n.string(i);e.value!=null&&(n.uint32(26),Ut.codec().encode(e.value,n)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:"",parents:[]},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{if(o.limits?.parents!=null&&i.parents.length===o.limits.parents)throw new fe('Decode error - map field "parents" had too many elements');i.parents.push(e.string());break}case 3:{i.value=Ut.codec().decode(e,e.uint32(),{limits:o.limits?.value});break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Bt(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Qr||(Qr={}));var Jr;(function(r){let t;r.codec=()=>(t==null&&(t=It((e,n,o={})=>{if(o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.parents!=null)for(let i of e.parents)n.uint32(18),n.string(i);e.error!=null&&(n.uint32(26),Ut.codec().encode(e.error,n)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:"",parents:[]},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{if(o.limits?.parents!=null&&i.parents.length===o.limits.parents)throw new fe('Decode error - map field "parents" had too many elements');i.parents.push(e.string());break}case 3:{i.error=Ut.codec().decode(e,e.uint32(),{limits:o.limits?.error});break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Bt(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Jr||(Jr={}));function ih(r){return r.parents!=null}function na(r,t){if(ih(r))return sh(r.parents,t);let e=t.get(r.scope);if(e==null)throw new Gn;return e}function sh(r,t){let e;for(let n of r){if(e==null){if(e=t.get(n),e==null)throw new rr;continue}if(e=e.children.get(n),e==null)throw new rr}if(e==null)throw new rr;return e}var ch={type:1024,canEncode:r=>r===void 0,decode:()=>{}},oa=ch;var ah={type:1025,canEncode:r=>r===null,decode:()=>null},ia=ah;var uh=["string","number","bigint","symbol"],lh=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function sa(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let t=typeof r;if(uh.includes(t))return t;if(t==="function")return"Function";if(Array.isArray(r))return"Array";if(fh(r))return"Buffer";let e=dh(r);return e||"Object"}function fh(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function dh(r){let t=Object.prototype.toString.call(r).slice(8,-1);if(lh.includes(t))return t}var p=class{constructor(t,e,n){this.major=t,this.majorEncoded=t<<5,this.name=e,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(t){return this.major<t.major?-1:this.major>t.major?1:0}};p.uint=new p(0,"uint",!0);p.negint=new p(1,"negint",!0);p.bytes=new p(2,"bytes",!0);p.string=new p(3,"string",!0);p.array=new p(4,"array",!1);p.map=new p(5,"map",!1);p.tag=new p(6,"tag",!1);p.float=new p(7,"float",!0);p.false=new p(7,"false",!0);p.true=new p(7,"true",!0);p.null=new p(7,"null",!0);p.undefined=new p(7,"undefined",!0);p.break=new p(7,"break",!0);var I=class{constructor(t,e,n){this.type=t,this.value=e,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var lr=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",hh=new TextDecoder,ph=new TextEncoder;function to(r){return lr&&globalThis.Buffer.isBuffer(r)}function Oi(r){return r instanceof Uint8Array?to(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var la=lr?(r,t,e)=>e-t>64?globalThis.Buffer.from(r.subarray(t,e)).toString("utf8"):aa(r,t,e):(r,t,e)=>e-t>64?hh.decode(r.subarray(t,e)):aa(r,t,e),fa=lr?r=>r.length>64?globalThis.Buffer.from(r):ca(r):r=>r.length>64?ph.encode(r):ca(r),ie=r=>Uint8Array.from(r),fr=lr?(r,t,e)=>to(r)?new Uint8Array(r.subarray(t,e)):r.slice(t,e):(r,t,e)=>r.slice(t,e),da=lr?(r,t)=>(r=r.map(e=>e instanceof Uint8Array?e:globalThis.Buffer.from(e)),Oi(globalThis.Buffer.concat(r,t))):(r,t)=>{let e=new Uint8Array(t),n=0;for(let o of r)n+o.length>e.length&&(o=o.subarray(0,e.length-n)),e.set(o,n),n+=o.length;return e},ha=lr?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function pa(r,t){if(to(r)&&to(t))return r.compare(t);for(let e=0;e<r.length;e++)if(r[e]!==t[e])return r[e]<t[e]?-1:1;return 0}function ca(r){let t=[],e=0;for(let n=0;n<r.length;n++){let o=r.charCodeAt(n);o<128?t[e++]=o:o<2048?(t[e++]=o>>6|192,t[e++]=o&63|128):(o&64512)===55296&&n+1<r.length&&(r.charCodeAt(n+1)&64512)===56320?(o=65536+((o&1023)<<10)+(r.charCodeAt(++n)&1023),t[e++]=o>>18|240,t[e++]=o>>12&63|128,t[e++]=o>>6&63|128,t[e++]=o&63|128):(t[e++]=o>>12|224,t[e++]=o>>6&63|128,t[e++]=o&63|128)}return t}function aa(r,t,e){let n=[];for(;t<e;){let o=r[t],i=null,s=o>239?4:o>223?3:o>191?2:1;if(t+s<=e){let c,a,l,u;switch(s){case 1:o<128&&(i=o);break;case 2:c=r[t+1],(c&192)===128&&(u=(o&31)<<6|c&63,u>127&&(i=u));break;case 3:c=r[t+1],a=r[t+2],(c&192)===128&&(a&192)===128&&(u=(o&15)<<12|(c&63)<<6|a&63,u>2047&&(u<55296||u>57343)&&(i=u));break;case 4:c=r[t+1],a=r[t+2],l=r[t+3],(c&192)===128&&(a&192)===128&&(l&192)===128&&(u=(o&15)<<18|(c&63)<<12|(a&63)<<6|l&63,u>65535&&u<1114112&&(i=u))}}i===null?(i=65533,s=1):i>65535&&(i-=65536,n.push(i>>>10&1023|55296),i=56320|i&1023),n.push(i),t+=s}return mh(n)}var ua=4096;function mh(r){let t=r.length;if(t<=ua)return String.fromCharCode.apply(String,r);let e="",n=0;for(;n<t;)e+=String.fromCharCode.apply(String,r.slice(n,n+=ua));return e}var gh=256,tn=class{constructor(t=gh){this.chunkSize=t,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(t){let e=this.chunks[this.chunks.length-1];if(this.cursor+t.length<=this.maxCursor+1){let o=e.length-(this.maxCursor-this.cursor)-1;e.set(t,o)}else{if(e){let o=e.length-(this.maxCursor-this.cursor)-1;o<e.length&&(this.chunks[this.chunks.length-1]=e.subarray(0,o),this.maxCursor=this.cursor-1)}t.length<64&&t.length<this.chunkSize?(e=ha(this.chunkSize),this.chunks.push(e),this.maxCursor+=e.length,this._initReuseChunk===null&&(this._initReuseChunk=e),e.set(t,0)):(this.chunks.push(t),this.maxCursor+=t.length)}this.cursor+=t.length}toBytes(t=!1){let e;if(this.chunks.length===1){let n=this.chunks[0];t&&this.cursor>n.length/2?(e=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):e=fr(n,0,this.cursor)}else e=da(this.chunks,this.cursor);return t&&this.reset(),e}};var M="CBOR decode error:",Fi="CBOR encode error:",en=[];en[23]=1;en[24]=2;en[25]=3;en[26]=5;en[27]=9;function de(r,t,e){if(r.length-t<e)throw new Error(`${M} not enough data for type`)}var ht=[24,256,65536,4294967296,BigInt("18446744073709551616")];function Mt(r,t,e){de(r,t,1);let n=r[t];if(e.strict===!0&&n<ht[0])throw new Error(`${M} integer encoded in more bytes than necessary (strict decode)`);return n}function Ot(r,t,e){de(r,t,2);let n=r[t]<<8|r[t+1];if(e.strict===!0&&n<ht[1])throw new Error(`${M} integer encoded in more bytes than necessary (strict decode)`);return n}function Ft(r,t,e){de(r,t,4);let n=r[t]*16777216+(r[t+1]<<16)+(r[t+2]<<8)+r[t+3];if(e.strict===!0&&n<ht[2])throw new Error(`${M} integer encoded in more bytes than necessary (strict decode)`);return n}function Kt(r,t,e){de(r,t,8);let n=r[t]*16777216+(r[t+1]<<16)+(r[t+2]<<8)+r[t+3],o=r[t+4]*16777216+(r[t+5]<<16)+(r[t+6]<<8)+r[t+7],i=(BigInt(n)<<BigInt(32))+BigInt(o);if(e.strict===!0&&i<ht[3])throw new Error(`${M} integer encoded in more bytes than necessary (strict decode)`);if(i<=Number.MAX_SAFE_INTEGER)return Number(i);if(e.allowBigInt===!0)return i;throw new Error(`${M} integers outside of the safe integer range are not supported`)}function ma(r,t,e,n){return new I(p.uint,Mt(r,t+1,n),2)}function ga(r,t,e,n){return new I(p.uint,Ot(r,t+1,n),3)}function ya(r,t,e,n){return new I(p.uint,Ft(r,t+1,n),5)}function ba(r,t,e,n){return new I(p.uint,Kt(r,t+1,n),9)}function $t(r,t){return yt(r,0,t.value)}function yt(r,t,e){if(e<ht[0]){let n=Number(e);r.push([t|n])}else if(e<ht[1]){let n=Number(e);r.push([t|24,n])}else if(e<ht[2]){let n=Number(e);r.push([t|25,n>>>8,n&255])}else if(e<ht[3]){let n=Number(e);r.push([t|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(e);if(n<ht[4]){let o=[t|27,0,0,0,0,0,0,0],i=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));o[8]=i&255,i=i>>8,o[7]=i&255,i=i>>8,o[6]=i&255,i=i>>8,o[5]=i&255,o[4]=s&255,s=s>>8,o[3]=s&255,s=s>>8,o[2]=s&255,s=s>>8,o[1]=s&255,r.push(o)}else throw new Error(`${M} encountered BigInt larger than allowable range`)}}$t.encodedSize=function(t){return yt.encodedSize(t.value)};yt.encodedSize=function(t){return t<ht[0]?1:t<ht[1]?2:t<ht[2]?3:t<ht[3]?5:9};$t.compareTokens=function(t,e){return t.value<e.value?-1:t.value>e.value?1:0};function xa(r,t,e,n){return new I(p.negint,-1-Mt(r,t+1,n),2)}function wa(r,t,e,n){return new I(p.negint,-1-Ot(r,t+1,n),3)}function Ea(r,t,e,n){return new I(p.negint,-1-Ft(r,t+1,n),5)}var Ki=BigInt(-1),va=BigInt(1);function Sa(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o!="bigint"){let i=-1-o;if(i>=Number.MIN_SAFE_INTEGER)return new I(p.negint,i,9)}if(n.allowBigInt!==!0)throw new Error(`${M} integers outside of the safe integer range are not supported`);return new I(p.negint,Ki-BigInt(o),9)}function eo(r,t){let e=t.value,n=typeof e=="bigint"?e*Ki-va:e*-1-1;yt(r,t.type.majorEncoded,n)}eo.encodedSize=function(t){let e=t.value,n=typeof e=="bigint"?e*Ki-va:e*-1-1;return n<ht[0]?1:n<ht[1]?2:n<ht[2]?3:n<ht[3]?5:9};eo.compareTokens=function(t,e){return t.value<e.value?1:t.value>e.value?-1:0};function rn(r,t,e,n){de(r,t,e+n);let o=fr(r,t+e,t+e+n);return new I(p.bytes,o,e+n)}function Aa(r,t,e,n){return rn(r,t,1,e)}function _a(r,t,e,n){return rn(r,t,2,Mt(r,t+1,n))}function Ba(r,t,e,n){return rn(r,t,3,Ot(r,t+1,n))}function Ia(r,t,e,n){return rn(r,t,5,Ft(r,t+1,n))}function Ca(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o=="bigint")throw new Error(`${M} 64-bit integer bytes lengths not supported`);return rn(r,t,9,o)}function ro(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?fa(r.value):r.value),r.encodedBytes}function dr(r,t){let e=ro(t);yt(r,t.type.majorEncoded,e.length),r.push(e)}dr.encodedSize=function(t){let e=ro(t);return yt.encodedSize(e.length)+e.length};dr.compareTokens=function(t,e){return bh(ro(t),ro(e))};function bh(r,t){return r.length<t.length?-1:r.length>t.length?1:pa(r,t)}function nn(r,t,e,n,o){let i=e+n;de(r,t,i);let s=new I(p.string,la(r,t+e,t+i),i);return o.retainStringBytes===!0&&(s.byteValue=fr(r,t+e,t+i)),s}function ka(r,t,e,n){return nn(r,t,1,e,n)}function Ta(r,t,e,n){return nn(r,t,2,Mt(r,t+1,n),n)}function Ua(r,t,e,n){return nn(r,t,3,Ot(r,t+1,n),n)}function La(r,t,e,n){return nn(r,t,5,Ft(r,t+1,n),n)}function Pa(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o=="bigint")throw new Error(`${M} 64-bit integer string lengths not supported`);return nn(r,t,9,o,n)}var Da=dr;function hr(r,t,e,n){return new I(p.array,n,e)}function Na(r,t,e,n){return hr(r,t,1,e)}function Ra(r,t,e,n){return hr(r,t,2,Mt(r,t+1,n))}function Ma(r,t,e,n){return hr(r,t,3,Ot(r,t+1,n))}function Oa(r,t,e,n){return hr(r,t,5,Ft(r,t+1,n))}function Fa(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o=="bigint")throw new Error(`${M} 64-bit integer array lengths not supported`);return hr(r,t,9,o)}function Ka(r,t,e,n){if(n.allowIndefinite===!1)throw new Error(`${M} indefinite length items not allowed`);return hr(r,t,1,1/0)}function no(r,t){yt(r,p.array.majorEncoded,t.value)}no.compareTokens=$t.compareTokens;no.encodedSize=function(t){return yt.encodedSize(t.value)};function pr(r,t,e,n){return new I(p.map,n,e)}function Va(r,t,e,n){return pr(r,t,1,e)}function za(r,t,e,n){return pr(r,t,2,Mt(r,t+1,n))}function Ha(r,t,e,n){return pr(r,t,3,Ot(r,t+1,n))}function qa(r,t,e,n){return pr(r,t,5,Ft(r,t+1,n))}function $a(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o=="bigint")throw new Error(`${M} 64-bit integer map lengths not supported`);return pr(r,t,9,o)}function Ga(r,t,e,n){if(n.allowIndefinite===!1)throw new Error(`${M} indefinite length items not allowed`);return pr(r,t,1,1/0)}function oo(r,t){yt(r,p.map.majorEncoded,t.value)}oo.compareTokens=$t.compareTokens;oo.encodedSize=function(t){return yt.encodedSize(t.value)};function ja(r,t,e,n){return new I(p.tag,e,1)}function Za(r,t,e,n){return new I(p.tag,Mt(r,t+1,n),2)}function Ya(r,t,e,n){return new I(p.tag,Ot(r,t+1,n),3)}function Wa(r,t,e,n){return new I(p.tag,Ft(r,t+1,n),5)}function Xa(r,t,e,n){return new I(p.tag,Kt(r,t+1,n),9)}function io(r,t){yt(r,p.tag.majorEncoded,t.value)}io.compareTokens=$t.compareTokens;io.encodedSize=function(t){return yt.encodedSize(t.value)};var Ah=20,_h=21,Bh=22,Ih=23;function Qa(r,t,e,n){if(n.allowUndefined===!1)throw new Error(`${M} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new I(p.null,null,1):new I(p.undefined,void 0,1)}function Ja(r,t,e,n){if(n.allowIndefinite===!1)throw new Error(`${M} indefinite length items not allowed`);return new I(p.break,void 0,1)}function Vi(r,t,e){if(e){if(e.allowNaN===!1&&Number.isNaN(r))throw new Error(`${M} NaN values are not supported`);if(e.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${M} Infinity values are not supported`)}return new I(p.float,r,t)}function tu(r,t,e,n){return Vi(zi(r,t+1),3,n)}function eu(r,t,e,n){return Vi(Hi(r,t+1),5,n)}function ru(r,t,e,n){return Vi(su(r,t+1),9,n)}function so(r,t,e){let n=t.value;if(n===!1)r.push([p.float.majorEncoded|Ah]);else if(n===!0)r.push([p.float.majorEncoded|_h]);else if(n===null)r.push([p.float.majorEncoded|Bh]);else if(n===void 0)r.push([p.float.majorEncoded|Ih]);else{let o,i=!1;(!e||e.float64!==!0)&&(ou(n),o=zi(Qt,1),n===o||Number.isNaN(n)?(Qt[0]=249,r.push(Qt.slice(0,3)),i=!0):(iu(n),o=Hi(Qt,1),n===o&&(Qt[0]=250,r.push(Qt.slice(0,5)),i=!0))),i||(Ch(n),o=su(Qt,1),Qt[0]=251,r.push(Qt.slice(0,9)))}}so.encodedSize=function(t,e){let n=t.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!e||e.float64!==!0){ou(n);let o=zi(Qt,1);if(n===o||Number.isNaN(n))return 3;if(iu(n),o=Hi(Qt,1),n===o)return 5}return 9};var nu=new ArrayBuffer(9),Gt=new DataView(nu,1),Qt=new Uint8Array(nu,0);function ou(r){if(r===1/0)Gt.setUint16(0,31744,!1);else if(r===-1/0)Gt.setUint16(0,64512,!1);else if(Number.isNaN(r))Gt.setUint16(0,32256,!1);else{Gt.setFloat32(0,r);let t=Gt.getUint32(0),e=(t&2139095040)>>23,n=t&8388607;if(e===255)Gt.setUint16(0,31744,!1);else if(e===0)Gt.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let o=e-127;o<-24?Gt.setUint16(0,0):o<-14?Gt.setUint16(0,(t&2147483648)>>16|1<<24+o,!1):Gt.setUint16(0,(t&2147483648)>>16|o+15<<10|n>>13,!1)}}}function zi(r,t){if(r.length-t<2)throw new Error(`${M} not enough data for float16`);let e=(r[t]<<8)+r[t+1];if(e===31744)return 1/0;if(e===64512)return-1/0;if(e===32256)return NaN;let n=e>>10&31,o=e&1023,i;return n===0?i=o*2**-24:n!==31?i=(o+1024)*2**(n-25):i=o===0?1/0:NaN,e&32768?-i:i}function iu(r){Gt.setFloat32(0,r,!1)}function Hi(r,t){if(r.length-t<4)throw new Error(`${M} not enough data for float32`);let e=(r.byteOffset||0)+t;return new DataView(r.buffer,e,4).getFloat32(0,!1)}function Ch(r){Gt.setFloat64(0,r,!1)}function su(r,t){if(r.length-t<8)throw new Error(`${M} not enough data for float64`);let e=(r.byteOffset||0)+t;return new DataView(r.buffer,e,8).getFloat64(0,!1)}so.compareTokens=$t.compareTokens;function $(r,t,e){throw new Error(`${M} encountered invalid minor (${e}) for major ${r[t]>>>5}`)}function co(r){return()=>{throw new Error(`${M} ${r}`)}}var S=[];for(let r=0;r<=23;r++)S[r]=$;S[24]=ma;S[25]=ga;S[26]=ya;S[27]=ba;S[28]=$;S[29]=$;S[30]=$;S[31]=$;for(let r=32;r<=55;r++)S[r]=$;S[56]=xa;S[57]=wa;S[58]=Ea;S[59]=Sa;S[60]=$;S[61]=$;S[62]=$;S[63]=$;for(let r=64;r<=87;r++)S[r]=Aa;S[88]=_a;S[89]=Ba;S[90]=Ia;S[91]=Ca;S[92]=$;S[93]=$;S[94]=$;S[95]=co("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)S[r]=ka;S[120]=Ta;S[121]=Ua;S[122]=La;S[123]=Pa;S[124]=$;S[125]=$;S[126]=$;S[127]=co("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)S[r]=Na;S[152]=Ra;S[153]=Ma;S[154]=Oa;S[155]=Fa;S[156]=$;S[157]=$;S[158]=$;S[159]=Ka;for(let r=160;r<=183;r++)S[r]=Va;S[184]=za;S[185]=Ha;S[186]=qa;S[187]=$a;S[188]=$;S[189]=$;S[190]=$;S[191]=Ga;for(let r=192;r<=215;r++)S[r]=ja;S[216]=Za;S[217]=Ya;S[218]=Wa;S[219]=Xa;S[220]=$;S[221]=$;S[222]=$;S[223]=$;for(let r=224;r<=243;r++)S[r]=co("simple values are not supported");S[244]=$;S[245]=$;S[246]=$;S[247]=Qa;S[248]=co("simple values are not supported");S[249]=tu;S[250]=eu;S[251]=ru;S[252]=$;S[253]=$;S[254]=$;S[255]=Ja;var Jt=[];for(let r=0;r<24;r++)Jt[r]=new I(p.uint,r,1);for(let r=-1;r>=-24;r--)Jt[31-r]=new I(p.negint,r,1);Jt[64]=new I(p.bytes,new Uint8Array(0),1);Jt[96]=new I(p.string,"",1);Jt[128]=new I(p.array,0,1);Jt[160]=new I(p.map,0,1);Jt[244]=new I(p.false,!1,1);Jt[245]=new I(p.true,!0,1);Jt[246]=new I(p.null,null,1);function cu(r){switch(r.type){case p.false:return ie([244]);case p.true:return ie([245]);case p.null:return ie([246]);case p.bytes:return r.value.length?void 0:ie([64]);case p.string:return r.value===""?ie([96]):void 0;case p.array:return r.value===0?ie([128]):void 0;case p.map:return r.value===0?ie([160]):void 0;case p.uint:return r.value<24?ie([Number(r.value)]):void 0;case p.negint:if(r.value>=-24)return ie([31-Number(r.value)])}}var Th={float64:!1,mapSorter:Ph,quickEncodeToken:cu};function Uh(){let r=[];return r[p.uint.major]=$t,r[p.negint.major]=eo,r[p.bytes.major]=dr,r[p.string.major]=Da,r[p.array.major]=no,r[p.map.major]=oo,r[p.tag.major]=io,r[p.float.major]=so,r}var au=Uh(),qi=new tn,uo=class r{constructor(t,e){this.obj=t,this.parent=e}includes(t){let e=this;do if(e.obj===t)return!0;while(e=e.parent);return!1}static createCheck(t,e){if(t&&t.includes(e))throw new Error(`${Fi} object contains circular references`);return new r(e,t)}},_e={null:new I(p.null,null),undefined:new I(p.undefined,void 0),true:new I(p.true,!0),false:new I(p.false,!1),emptyArray:new I(p.array,0),emptyMap:new I(p.map,0)},Be={number(r,t,e,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new I(p.float,r):r>=0?new I(p.uint,r):new I(p.negint,r)},bigint(r,t,e,n){return r>=BigInt(0)?new I(p.uint,r):new I(p.negint,r)},Uint8Array(r,t,e,n){return new I(p.bytes,r)},string(r,t,e,n){return new I(p.string,r)},boolean(r,t,e,n){return r?_e.true:_e.false},null(r,t,e,n){return _e.null},undefined(r,t,e,n){return _e.undefined},ArrayBuffer(r,t,e,n){return new I(p.bytes,new Uint8Array(r))},DataView(r,t,e,n){return new I(p.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,t,e,n){if(!r.length)return e.addBreakTokens===!0?[_e.emptyArray,new I(p.break)]:_e.emptyArray;n=uo.createCheck(n,r);let o=[],i=0;for(let s of r)o[i++]=ao(s,e,n);return e.addBreakTokens?[new I(p.array,r.length),o,new I(p.break)]:[new I(p.array,r.length),o]},Object(r,t,e,n){let o=t!=="Object",i=o?r.keys():Object.keys(r),s=o?r.size:i.length;if(!s)return e.addBreakTokens===!0?[_e.emptyMap,new I(p.break)]:_e.emptyMap;n=uo.createCheck(n,r);let c=[],a=0;for(let l of i)c[a++]=[ao(l,e,n),ao(o?r.get(l):r[l],e,n)];return Lh(c,e),e.addBreakTokens?[new I(p.map,s),c,new I(p.break)]:[new I(p.map,s),c]}};Be.Map=Be.Object;Be.Buffer=Be.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))Be[`${r}Array`]=Be.DataView;function ao(r,t={},e){let n=sa(r),o=t&&t.typeEncoders&&t.typeEncoders[n]||Be[n];if(typeof o=="function"){let s=o(r,n,t,e);if(s!=null)return s}let i=Be[n];if(!i)throw new Error(`${Fi} unsupported type: ${n}`);return i(r,n,t,e)}function Lh(r,t){t.mapSorter&&r.sort(t.mapSorter)}function Ph(r,t){let e=Array.isArray(r[0])?r[0][0]:r[0],n=Array.isArray(t[0])?t[0][0]:t[0];if(e.type!==n.type)return e.type.compare(n.type);let o=e.type.major,i=au[o].compareTokens(e,n);return i===0&&console.warn("WARNING: complex key types used, CBOR key sorting guarantees are gone"),i}function uu(r,t,e,n){if(Array.isArray(t))for(let o of t)uu(r,o,e,n);else e[t.type.major](r,t,n)}function Dh(r,t,e){let n=ao(r,e);if(!Array.isArray(n)&&e.quickEncodeToken){let o=e.quickEncodeToken(n);if(o)return o;let i=t[n.type.major];if(i.encodedSize){let s=i.encodedSize(n,e),c=new tn(s);if(i(c,n,e),c.chunks.length!==1)throw new Error(`Unexpected error: pre-calculated length for ${n} was wrong`);return Oi(c.chunks[0])}}return qi.reset(),uu(qi,n,t,e),qi.toBytes(!0)}function Y(r,t){return t=Object.assign({},Th,t),Dh(r,au,t)}var Nh={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},lo=class{constructor(t,e={}){this._pos=0,this.data=t,this.options=e}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let t=this.data[this._pos],e=Jt[t];if(e===void 0){let n=S[t];if(!n)throw new Error(`${M} no decoder for major type ${t>>>5} (byte 0x${t.toString(16).padStart(2,"0")})`);let o=t&31;e=n(this.data,this._pos,o,this.options)}return this._pos+=e.encodedLength,e}},on=Symbol.for("DONE"),fo=Symbol.for("BREAK");function Rh(r,t,e){let n=[];for(let o=0;o<r.value;o++){let i=mr(t,e);if(i===fo){if(r.value===1/0)break;throw new Error(`${M} got unexpected break to lengthed array`)}if(i===on)throw new Error(`${M} found array but not enough entries (got ${o}, expected ${r.value})`);n[o]=i}return n}function Mh(r,t,e){let n=e.useMaps===!0,o=n?void 0:{},i=n?new Map:void 0;for(let s=0;s<r.value;s++){let c=mr(t,e);if(c===fo){if(r.value===1/0)break;throw new Error(`${M} got unexpected break to lengthed map`)}if(c===on)throw new Error(`${M} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof c!="string")throw new Error(`${M} non-string keys not supported (got ${typeof c})`);if(e.rejectDuplicateMapKeys===!0&&(n&&i.has(c)||!n&&c in o))throw new Error(`${M} found repeat map key "${c}"`);let a=mr(t,e);if(a===on)throw new Error(`${M} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?i.set(c,a):o[c]=a}return n?i:o}function mr(r,t){if(r.done())return on;let e=r.next();if(e.type===p.break)return fo;if(e.type.terminal)return e.value;if(e.type===p.array)return Rh(e,r,t);if(e.type===p.map)return Mh(e,r,t);if(e.type===p.tag){if(t.tags&&typeof t.tags[e.value]=="function"){let n=mr(r,t);return t.tags[e.value](n)}throw new Error(`${M} tag not supported (${e.value})`)}throw new Error("unsupported")}function lu(r,t){if(!(r instanceof Uint8Array))throw new Error(`${M} data to decode must be a Uint8Array`);t=Object.assign({},Nh,t);let e=t.tokenizer||new lo(r,t),n=mr(e,t);if(n===on)throw new Error(`${M} did not find any content to decode`);if(n===fo)throw new Error(`${M} got unexpected break`);return[n,r.subarray(e.pos())]}function W(r,t){let[e,n]=lu(r,t);if(n.length>0)throw new Error(`${M} too many terminals, data makes no sense`);return e}var Oh={type:1026,canEncode:r=>r===!0||r===!1,encode:r=>Y(r),decode:r=>W(r)},fu=Oh;var Fh={type:1027,canEncode:r=>typeof r=="number"&&!isNaN(r),encode:r=>Y(r),decode:r=>W(r)},du=Fh;var Kh={type:1028,canEncode:r=>typeof r=="string",encode:r=>Y(r),decode:r=>W(r)},hu=Kh;var Vh={type:1029,canEncode:r=>Array.isArray(r),encode:(r,t,e,n)=>Y(r.map(o=>t.toValue(o,e,n))),decode:(r,t,e,n)=>W(r).map(o=>t.fromValue(o,e,n))},pu=Vh;var zh={type:1030,canEncode:r=>typeof r=="function",encode:(r,t,e,n)=>{let o=er();return n?.callbacks.set(o,{context:e,fn:r}),Y(o)},decode:(r,t,e,n)=>async(...o)=>new Promise((i,s)=>{let c=W(r),a=er(),l={scope:a,result:wt(),callbacks:new Map,children:new Map,parents:[...n.parents,n.scope],abortControllers:[],abortSignals:[]};n.children.set(a,l),o=o.map(f=>t.toValue(f,null,l));let u=Pn(l.abortSignals);u.addEventListener("abort",()=>{e.push(Ct.encode({type:q.abortCallbackInvocation,message:ur.encode({scope:a,parents:l.parents})}))}),e.push(Ct.encode({type:q.invokeCallback,message:ar.encode({scope:a,parents:l.parents,callback:c,args:o})})),l.result.promise.then(f=>{i(f)},f=>{s(f)}).finally(()=>{n.children.delete(a),u.clear()})})},mu=zh;var Hh={type:1031,canEncode:r=>r.toString()==="NaN"&&isNaN(r),decode:()=>NaN},gu=Hh;var qh={type:1032,canEncode:r=>r instanceof Error,encode:r=>Y({message:r.message,name:r.name,code:r.code,type:r.type,stack:r.stack}),decode:r=>{let t=W(r),e=new Error(t.message);return e.name=t.name,e.stack=t.stack,e.code=t.code,e.type=t.type,e}},yu=qh;var $h={type:1033,canEncode:r=>Array.isArray(r),encode:(r,t,e,n)=>{throw new Error("Promises are not supported")},decode:(r,t,e,n)=>{throw new Error("Promises are not supported")}},bu=$h;var xu=["__defineGetter__","__defineSetter__","hasOwnProperty","__lookupGetter__","__lookupSetter__","isPrototypeOf","propertyIsEnumerable","toString","valueOf","__proto__","toLocaleString","constructor"],Gh={type:2147483647,canEncode:r=>typeof r=="object",encode:(r,t,e,n)=>{let o={};for(let i in r)xu.includes(i)||Object.hasOwn(r,i)&&(o[i]=r[i]);for(let i of Object.getOwnPropertyNames(Object.getPrototypeOf(r)))xu.includes(i)||(o[i]=r[i]);return Y([...Object.entries(o)].map(([i,s])=>[t.toValue(i,r,n),t.toValue(s,r,n)]))},decode:(r,t,e,n)=>{let o={};return W(r).forEach(([s,c])=>{o[t.fromValue(s,e,n)]=t.fromValue(c,e,n)}),o}},sn=Gh;var jh={type:1034,canEncode:r=>typeof r.next=="function"&&typeof r.throw=="function"&&typeof r.return=="function",encode:(r,t,e,n)=>sn.encode({next:r.next.bind(r),throw:r.throw.bind(r),return:r.return.bind(r)},t,e,n),decode:(r,t,e,n)=>{let o=sn.decode(r,t,e,n);return o[Symbol.asyncIterator]=()=>o,o}},wu=jh;var Zh={type:1035,canEncode:r=>typeof r=="bigint",encode:r=>Y(r),decode:r=>BigInt(W(r))},Eu=Zh;var Yh={type:1036,canEncode:r=>r instanceof Map,encode:(r,t,e,n)=>Y([...r.entries()].map(([o,i])=>[t.toValue(o,e,n),t.toValue(i,e,n)])),decode:(r,t,e,n)=>{let o=new Map;return W(r).forEach(([s,c])=>{let a=t.fromValue(s,e,n),l=t.fromValue(c,e,n);o.set(a,l)}),o}},vu=Yh;var Wh={type:1037,canEncode:r=>r instanceof Set,encode:(r,t,e,n)=>Y([...r.values()].map(o=>t.toValue(o,e,n))),decode:(r,t,e,n)=>{let o=new Set;return W(r).forEach(s=>{o.add(t.fromValue(s,e,n))}),o}},Su=Wh;var Xh={type:1038,canEncode:r=>r instanceof Uint8Array,encode:r=>r,decode:r=>r},Au=Xh;var Qh={type:1039,canEncode:r=>r instanceof AbortSignal,encode:(r,t,e,n)=>(n?.abortSignals.push(r),new Uint8Array(0)),decode:(r,t,e,n)=>{let o=new AbortController;return n.abortControllers.push(o),o.signal}},_u=Qh;var Jh={type:1040,canEncode:r=>r instanceof Date,encode:r=>Y(r.toString()),decode:r=>new Date(W(r))},Bu=Jh;var tp={type:1041,canEncode:r=>r instanceof RegExp,encode:r=>Y({source:r.source,flags:r.flags}),decode:r=>{let{source:t,flags:e}=W(r);return new RegExp(t,e)}},Iu=tp;var Cu=[oa,ia,fu,du,hu,pu,mu,gu,yu,bu,wu,Eu,vu,Su,Au,_u,Bu,Iu,sn];var ho=class{transformersMap;transformersList;constructor(t){this.transformersList=[...Cu,...t?.valueCodecs??[]].sort((e,n)=>e.type<n.type?-1:e.type>n.type?1:0),this.transformersMap={},this.transformersList.forEach(e=>{if(this.transformersMap[e.type]!=null)throw new Error(`Duplicate transformer type ${e.type}`);this.transformersMap[e.type]=e})}toValue(t,e,n){for(let o=0;o<this.transformersList.length;o++){let i=this.transformersList[o];if(i.canEncode(t))return{type:i.type,value:i.encode?.(t,this,e,n)}}throw new Or(`Unsupported value type "${t}"`)}fromValue(t,e,n){let o=this.transformersMap[t.type];if(o==null)throw new Or(`Unsupported value type "${t.type}"`);return o.decode(t.value??new Uint8Array(0),this,e,n)}};function ep(r){return r.isScope===!0}function rp(r){return r.type===q.invokeMethod||r.type===q.invokeGeneratorMethod||r.type===q.invokeCallback}var $i=class{source;output;targets;invocations;values;messageHandlers;constructor(t){this.output=Je(),this.source=Vn(this.output),this.targets=new Map,this.invocations=new Map,this.values=new ho(t),this.sink=this.sink.bind(this),this.messageHandlers={[q.invokeMethod]:{decoder:Fe,handler:this.handleInvokeMethod.bind(this)},[q.invokeGeneratorMethod]:{decoder:Fe,handler:this.handleInvokeGeneratorMethod.bind(this)},[q.abortMethodInvocation]:{decoder:Wr,handler:this.handleAbortMethod.bind(this),isScope:!0},[q.methodResolved]:{decoder:cr,handler:this.handleMethodResolved.bind(this),isScope:!0},[q.methodRejected]:{decoder:Xr,handler:this.handleMethodRejected.bind(this),isScope:!0,isError:!0},[q.invokeCallback]:{decoder:ar,handler:this.handleInvokeCallback.bind(this),isScope:!0},[q.abortCallbackInvocation]:{decoder:ur,handler:this.handleAbortCallback.bind(this),isScope:!0},[q.callbackResolved]:{decoder:Qr,handler:this.handleCallbackResolved.bind(this),isScope:!0},[q.callbackRejected]:{decoder:Jr,handler:this.handleCallbackRejected.bind(this),isScope:!0,isError:!0}}}async sink(t){for await(let e of Mr(t))try{let n=Ct.decode(e),o=this.messageHandlers[n.type];if(o==null)continue;let i=o.decoder.decode(n.message),s;if(ep(o))try{s=na(i,this.invocations)}catch{continue}o.handler(i,s).catch(c=>{rp(n)&&this.sendError(i,c),this.invocations.delete(i.scope)}).finally(()=>{n.type===q.invokeMethod&&this.invocations.delete(i.scope)})}catch{continue}}sendError(t,e){t.parents!=null?this.output.push(Ct.encode({type:q.callbackRejected,message:Jr.encode({scope:t.scope,parents:t.parents,error:this.values.toValue(e)})})):this.output.push(Ct.encode({type:q.methodRejected,message:Xr.encode({scope:t.scope,error:this.values.toValue(e)})}))}createClient(t){return this.proxy(t)}createTarget(t,e){if(this.targets.has(t))throw new qn(`Cannot reuse RPC target name "${t}"`);this.targets.set(t,e)}async handleInvokeMethod(t){if(this.invocations.has(t.scope))throw new Fr;let e=new Map,n=new Map,o={scope:t.scope,result:wt(),callbacks:e,children:n,parents:[],abortControllers:[],abortSignals:[]};this.invocations.set(t.scope,o);let i=this.lookupInvocationTarget(t.path),s=await i.fn.apply(i.context,t.args.map(c=>this.values.fromValue(c,this.output,o)));this.output.push(Ct.encode({type:q.methodResolved,message:cr.encode({scope:t.scope,value:this.values.toValue(s)})}))}async handleAbortMethod(t,e){e.abortControllers.forEach(n=>{n.abort()})}async handleInvokeGeneratorMethod(t){if(this.invocations.has(t.scope))throw new Fr;let e=new Map,n=new Map,o={scope:t.scope,result:wt(),callbacks:e,children:n,parents:[],abortControllers:[],abortSignals:[]};this.invocations.set(t.scope,o);let i=this.lookupInvocationTarget(t.path),s=i.fn.apply(i.context,t.args.map(a=>this.values.fromValue(a,this.output,o)));if(typeof s.next!="function")throw new $n(`${t.path} did not return an async generator`);let c={next:async()=>{let a=await s.next();return a.done===!0&&this.invocations.delete(t.scope),a},throw:async a=>{try{let l=await s.throw(a);return l.done===!0&&this.invocations.delete(t.scope),l}catch(l){throw this.invocations.delete(t.scope),l}},return:async a=>{let l=await s.return(a);return l.done===!0&&this.invocations.delete(t.scope),l},[Symbol.asyncIterator]:()=>c};this.output.push(Ct.encode({type:q.methodResolved,message:cr.encode({scope:t.scope,value:this.values.toValue(c,null,o)})}))}lookupInvocationTarget(t){let e=t.split("."),n=this.targets.get(e[0]),o=n;for(let i=1;i<e.length;i++)o=n,n=n?.[e[i]];if(n==null)throw o!=null&&t.endsWith(".then")?new Hn(`"${t.substring(0,t.length-5)}" was not a function`):new zn(`Could not find "${t}" on target`);if(typeof n!="function")throw new Kr("Invocation target was not a function");return{context:o,fn:n}}async handleMethodResolved(t,e){let n;t.value!=null&&(n=this.values.fromValue(t.value,this.output,e)),e.result.resolve(n)}async handleMethodRejected(t,e){let n;t.error!=null&&(n=this.values.fromValue(t.error,this.output,e)),e.result.reject(n)}async handleInvokeCallback(t,e){let n=e.callbacks.get(t.callback);if(n==null)throw new jn;let o=await n.fn.apply(n.context,t.args.map(i=>this.values.fromValue(i,this.output,e)));this.output.push(Ct.encode({type:q.callbackResolved,message:Qr.encode({scope:t.scope,parents:t.parents,value:this.values.toValue(o)})}))}async handleAbortCallback(t,e){e.abortControllers.forEach(n=>{n.abort()})}async handleCallbackResolved(t,e){let n;t.value!=null&&(n=this.values.fromValue(t.value,this.output,e)),e.children.get(t.scope)?.result.resolve(n),e.children.delete(t.scope)}async handleCallbackRejected(t,e){let n;t.error!=null&&(n=this.values.fromValue(t.error,this.output,e)),e.children.get(t.scope)?.result.reject(n),e.children.delete(t.scope)}proxy(t){let e=()=>{},n=this;return new Proxy(e,{get(o,i,s){return n.proxy(`${t==null?"":`${t}.`}${i.toString()}`)},apply(o,i,s){let c,a;function l(){return a==null&&(a=new Promise((f,h)=>{let b=er(),x={scope:b,result:wt(),callbacks:new Map,children:new Map,parents:[],abortControllers:[],abortSignals:[]};n.invocations.set(b,x),n.output.push(Ct.encode({type:q.invokeMethod,message:Fe.encode({scope:b,path:t,args:s.map(d=>n.values.toValue(d,null,x))})}));let g=Pn(x.abortSignals);g.addEventListener("abort",()=>{n.output.push(Ct.encode({type:q.abortMethodInvocation,message:Wr.encode({scope:b})}))}),x.result.promise.then(d=>{f(d)},d=>{h(d)}).finally(()=>{n.invocations.delete(b),g.clear()})})),a}function u(){if(c==null){let f=er(),h={scope:f,result:wt(),callbacks:new Map,children:new Map,parents:[],abortControllers:[],abortSignals:[]};n.invocations.set(f,h),n.output.push(Ct.encode({type:q.invokeGeneratorMethod,message:Fe.encode({scope:f,path:t,args:s.map(x=>n.values.toValue(x,null,h))})}));let b;c={async next(){if(b!=null)throw b;let g=await(await h.result.promise).next();return g.done===!0&&n.invocations.delete(f),g},async throw(x){if(b!=null)throw b;try{let d=await(await h.result.promise).throw(x);return d.done===!0&&n.invocations.delete(f),d}catch(g){throw n.invocations.delete(f),b=x,g}},async return(x){if(b!=null)throw b;let d=await(await h.result.promise).return(x);return d.done===!0&&n.invocations.delete(f),d},[Symbol.asyncIterator]:()=>c}}return c}return new Proxy(e,{get(f,h,b){if(h==="then")return l().then.bind(a);if(h==="catch")return l().catch.bind(a);if(h==="finally")return l().finally.bind(a);if(h===Symbol.asyncIterator)return()=>u();if(h==="next")return u().next.bind(c);if(h==="return")return u().return.bind(c);if(h==="throw")return u().throw.bind(c);if(h===Symbol.toStringTag)return"[object Object]";if(h==="constructor")return()=>{};throw new Kr(`Property ${h.toString()} was not used as a promise or async generator`)}})}})}};function ku(r){return new $i(r)}var Tu={type:4096,canEncode:r=>r.code!=null&&r.version!=null&&r.multihash!=null&&r["/"]!=null,encode:r=>r.bytes,decode:r=>ct.decode(r)};var cn=class extends Event{type;detail;constructor(t,e){super(t),this.type=t,this.detail=e}};var Uu={type:4099,canEncode:r=>r instanceof cn,encode:(r,t,e,n)=>Y({type:r.type,detail:t.toValue(r.detail,e,n)}),decode:(r,t,e,n)=>{let{type:o,detail:i}=W(r);return new cn(o,t.fromValue(i,e,n))}};function X(r,t="utf8"){let e=Wn[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.encoder.encode(r).substring(1)}var po=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let e=this.index,n=t();return n===void 0&&(this.index=e),n}parseWith(t){let e=t();if(this.index===this.input.length)return e}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let e=this.readChar();if(e===t)return e})}readSeparator(t,e,n){return this.readAtomically(()=>{if(!(e>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,e,n,o){return this.readAtomically(()=>{let i=0,s=0,c=this.peekChar();if(c===void 0)return;let a=c==="0",l=2**(8*o)-1;for(;;){let u=this.readAtomically(()=>{let f=this.readChar();if(f===void 0)return;let h=Number.parseInt(f,t);if(!Number.isNaN(h))return h});if(u===void 0)break;if(i*=t,i+=u,i>l||(s+=1,e!==void 0&&s>e))return}if(s!==0)return!n&&a&&s>1?void 0:i})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let e=0;e<t.length;e++){let n=this.readSeparator(".",e,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[e]=n}return t})}readIPv6Addr(){let t=e=>{for(let n=0;n<e.length/2;n++){let o=n*2;if(n<e.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return e[o]=s[0],e[o+1]=s[1],e[o+2]=s[2],e[o+3]=s[3],[o+4,!0]}let i=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(i===void 0)return[o,!1];e[o]=i>>8,e[o+1]=i&255}return[e.length,!1]};return this.readAtomically(()=>{let e=new Uint8Array(16),[n,o]=t(e);if(n===16)return e;if(o||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let i=new Uint8Array(14),s=16-(n+2),[c]=t(i.subarray(0,s));return e.set(i.subarray(0,c),16-c),e})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Lu=45,np=15,gr=new po;function Gi(r){if(!(r.length>np))return gr.new(r).parseWith(()=>gr.readIPv4Addr())}function ji(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>Lu))return gr.new(r).parseWith(()=>gr.readIPv6Addr())}function mo(r,t=!1){if(r.includes("%")&&(r=r.split("%")[0]),r.length>Lu)return;let e=gr.new(r).parseWith(()=>gr.readIPAddr());if(e)return t&&e.length===4?Uint8Array.from([0,0,0,0,0,0,0,0,0,0,255,255,e[0],e[1],e[2],e[3]]):e}var i1=parseInt("0xFFFF",16),s1=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function Nu(r){return!!Gi(r)}function Ru(r){return!!ji(r)}function go(r){return!!mo(r)}var Mu=Nu,ap=Ru,Zi=function(r){let t=0;if(r=r.toString().trim(),Mu(r)){let e=new Uint8Array(t+4);return r.split(/\./g).forEach(n=>{e[t++]=parseInt(n,10)&255}),e}if(ap(r)){let e=r.split(":",8),n;for(n=0;n<e.length;n++){let i=Mu(e[n]),s;i&&(s=Zi(e[n]),e[n]=X(s.slice(0,2),"base16")),s!=null&&++n<8&&e.splice(n,0,X(s.slice(2,4),"base16"))}if(e[0]==="")for(;e.length<8;)e.unshift("0");else if(e[e.length-1]==="")for(;e.length<8;)e.push("0");else if(e.length<8){for(n=0;n<e.length&&e[n]!=="";n++);let i=[n,1];for(n=9-e.length;n>0;n--)i.push("0");e.splice.apply(e,i)}let o=new Uint8Array(t+16);for(n=0;n<e.length;n++){let i=parseInt(e[n],16);o[t++]=i>>8&255,o[t++]=i&255}return o}throw new Error("invalid ip address")},Ou=function(r,t=0,e){t=~~t,e=e??r.length-t;let n=new DataView(r.buffer);if(e===4){let o=[];for(let i=0;i<e;i++)o.push(r[t+i]);return o.join(".")}if(e===16){let o=[];for(let i=0;i<e;i+=2)o.push(n.getUint16(t+i).toString(16));return o.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var yr={},Yi={},lp=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,-1,"ip6zone"],[43,8,"ipcidr"],[53,-1,"dns",!0],[54,-1,"dns4",!0],[55,-1,"dns6",!0],[56,-1,"dnsaddr",!0],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[280,0,"webrtc-direct"],[281,0,"webrtc"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,-1,"unix",!1,!0],[421,-1,"ipfs"],[421,-1,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,-1,"garlic64"],[448,0,"tls"],[449,-1,"sni"],[460,0,"quic"],[461,0,"quic-v1"],[465,0,"webtransport"],[466,-1,"certhash"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[481,-1,"http-path"],[777,-1,"memory"]];lp.forEach(r=>{let t=fp(...r);Yi[t.code]=t,yr[t.name]=t});function fp(r,t,e,n,o){return{code:r,size:t,name:e,resolvable:!!n,path:!!o}}function Q(r){if(typeof r=="number"){if(Yi[r]!=null)return Yi[r];throw new Error(`no protocol with code: ${r}`)}else if(typeof r=="string"){if(yr[r]!=null)return yr[r];throw new Error(`no protocol with name: ${r}`)}throw new Error(`invalid protocol id type: ${typeof r}`)}var H1=Q("ip4"),q1=Q("ip6"),$1=Q("ipcidr");function Ji(r,t){switch(Q(r).code){case 4:case 41:return hp(t);case 42:return Qi(t);case 43:return X(t,"base10");case 6:case 273:case 33:case 132:return Vu(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Qi(t);case 421:return yp(t);case 444:return Ku(t);case 445:return Ku(t);case 466:return gp(t);case 481:return globalThis.encodeURIComponent(Qi(t));default:return X(t,"base16")}}function ts(r,t){switch(Q(r).code){case 4:return Fu(t);case 41:return Fu(t);case 42:return Xi(t);case 43:return qt(t,"base10");case 6:case 273:case 33:case 132:return es(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Xi(t);case 421:return pp(t);case 444:return bp(t);case 445:return xp(t);case 466:return mp(t);case 481:return Xi(globalThis.decodeURIComponent(t));default:return qt(t,"base16")}}var Wi=Object.values(Gr).map(r=>r.decoder),dp=function(){let r=Wi[0].or(Wi[1]);return Wi.slice(2).forEach(t=>r=r.or(t)),r}();function Fu(r){if(!go(r))throw new Error("invalid ip address");return Zi(r)}function hp(r){let t=Ou(r,0,r.length);if(t==null)throw new Error("ipBuff is required");if(!go(t))throw new Error("invalid ip address");return t}function es(r){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,r),new Uint8Array(t)}function Vu(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function Xi(r){let t=qt(r),e=Uint8Array.from(ve(t.length));return Dt([e,t],e.length+t.length)}function Qi(r){let t=ue(r);if(r=r.slice(dt(t)),r.length!==t)throw new Error("inconsistent lengths");return X(r)}function pp(r){let t;r[0]==="Q"||r[0]==="1"?t=le(tt.decode(`z${r}`)).bytes:t=ct.parse(r).multihash.bytes;let e=Uint8Array.from(ve(t.length));return Dt([e,t],e.length+t.length)}function mp(r){let t=dp.decode(r),e=Uint8Array.from(ve(t.length));return Dt([e,t],e.length+t.length)}function gp(r){let t=ue(r),e=r.slice(dt(t));if(e.length!==t)throw new Error("inconsistent lengths");return"u"+X(e,"base64url")}function yp(r){let t=ue(r),e=r.slice(dt(t));if(e.length!==t)throw new Error("inconsistent lengths");return X(e,"base58btc")}function bp(r){let t=r.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let e=jt.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let o=es(n);return Dt([e,o],e.length+o.length)}function xp(r){let t=r.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let e=jt.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let o=es(n);return Dt([e,o],e.length+o.length)}function Ku(r){let t=r.slice(0,r.length-2),e=r.slice(r.length-2),n=X(t,"base32"),o=Vu(e);return`${n}:${o}`}function zu(r){r=rs(r);let t=[],e=[],n=null,o=r.split("/").slice(1);if(o.length===1&&o[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let i=0;i<o.length;i++){let s=o[i],c=Q(s);if(c.size===0){t.push([c.code]),e.push([c.code]);continue}if(i++,i>=o.length)throw new yo("invalid address: "+r);if(c.path===!0){n=rs(o.slice(i).join("/")),t.push([c.code,ts(c.code,n)]),e.push([c.code,n]);break}let a=ts(c.code,o[i]);t.push([c.code,a]),e.push([c.code,Ji(c.code,a)])}return{string:Hu(e),bytes:bo(t),tuples:t,stringTuples:e,path:n}}function ns(r){let t=[],e=[],n=null,o=0;for(;o<r.length;){let i=ue(r,o),s=dt(i),c=Q(i),a=wp(c,r.slice(o+s));if(a===0){t.push([i]),e.push([i]),o+=s;continue}let l=r.slice(o+s,o+s+a);if(o+=a+s,o>r.length)throw new yo("Invalid address Uint8Array: "+X(r,"base16"));t.push([i,l]);let u=Ji(i,l);if(e.push([i,u]),c.path===!0){n=u;break}}return{bytes:Uint8Array.from(r),string:Hu(e),tuples:t,stringTuples:e,path:n}}function Hu(r){let t=[];return r.map(e=>{let n=Q(e[0]);return t.push(n.name),e.length>1&&e[1]!=null&&t.push(e[1]),null}),rs(t.join("/"))}function bo(r){return Dt(r.map(t=>{let e=Q(t[0]),n=Uint8Array.from(ve(e.code));return t.length>1&&t[1]!=null&&(n=Dt([n,t[1]])),n}))}function wp(r,t){if(r.size>0)return r.size/8;if(r.size===0)return 0;{let e=ue(t instanceof Uint8Array?t:Uint8Array.from(t));return e+dt(e)}}function rs(r){return"/"+r.trim().split("/").filter(t=>t).join("/")}var yo=class extends Error{static name="ParseError";name="ParseError";constructor(t){super(`Error parsing address: ${t}`)}};var Ep=Symbol.for("nodejs.util.inspect.custom"),is=Symbol.for("@multiformats/js-multiaddr/multiaddr"),vp=[Q("dns").code,Q("dns4").code,Q("dns6").code,Q("dnsaddr").code],os=class extends Error{constructor(t="No available resolver"){super(t),this.name="NoAvailableResolverError"}},xo=class r{bytes;#e;#t;#r;#n;[is]=!0;constructor(t){t==null&&(t="");let e;if(t instanceof Uint8Array)e=ns(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);e=zu(t)}else if(wo(t))e=ns(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=e.bytes,this.#e=e.string,this.#t=e.tuples,this.#r=e.stringTuples,this.#n=e.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let t,e,n,o,i="",s=Q("tcp"),c=Q("udp"),a=Q("ip4"),l=Q("ip6"),u=Q("dns6"),f=Q("ip6zone");for(let[b,x]of this.stringTuples())b===f.code&&(i=`%${x??""}`),vp.includes(b)&&(e=s.name==="tcp"?"tcp":"udp",o=443,n=`${x??""}${i}`,t=b===u.code?6:4),(b===s.code||b===c.code)&&(e=Q(b).name==="tcp"?"tcp":"udp",o=parseInt(x??"")),(b===a.code||b===l.code)&&(e=Q(b).name==="tcp"?"tcp":"udp",n=`${x??""}${i}`,t=b===l.code?6:4);if(t==null||e==null||n==null||o==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:e,port:o}}protos(){return this.#t.map(([t])=>Object.assign({},Q(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>Q(t).name)}tuples(){return this.#t.map(([t,e])=>e==null?[t]:[t,e])}stringTuples(){return this.#r.map(([t,e])=>e==null?[t]:[t,e])}encapsulate(t){return t=new r(t),new r(this.toString()+t.toString())}decapsulate(t){let e=t.toString(),n=this.toString(),o=n.lastIndexOf(e);if(o<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new r(n.slice(0,o))}decapsulateCode(t){let e=this.tuples();for(let n=e.length-1;n>=0;n--)if(e[n][0]===t)return new r(bo(e.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,o])=>{n===yr.p2p.code&&t.push([n,o]),n===yr["p2p-circuit"].code&&(t=[])});let e=t.pop();if(e?.[1]!=null){let n=e[1];return n[0]==="Q"||n[0]==="1"?X(tt.decode(`z${n}`),"base58btc"):X(ct.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return Nt(this.bytes,t.bytes)}async resolve(t){let e=this.protos().find(i=>i.resolvable);if(e==null)return[this];let n=qu.get(e.name);if(n==null)throw new os(`no available resolver for ${e.name}`);return(await n(this,t)).map(i=>Ve(i))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let e=(t??this).protos();return!(e.length!==2||e[0].code!==4&&e[0].code!==41||e[1].code!==6&&e[1].code!==273)}[Ep](){return`Multiaddr(${this.#e})`}};var qu=new Map;function wo(r){return!!r?.[is]}function Ve(r){return new xo(r)}var $u={type:4097,canEncode:r=>wo(r),encode:r=>r.bytes,decode:r=>Ve(r)};var Sp=parseInt("11111",2),ss=parseInt("10000000",2),Ap=parseInt("01111111",2),Gu={0:an,1:an,2:_p,3:Cp,4:kp,5:Ip,6:Bp,16:an,22:an,48:an};function cs(r,t={offset:0}){let e=r[t.offset]&Sp;if(t.offset++,Gu[e]!=null)return Gu[e](r,t);throw new Error("No decoder for tag "+e)}function un(r,t){let e=0;if((r[t.offset]&ss)===ss){let n=r[t.offset]&Ap,o="0x";t.offset++;for(let i=0;i<n;i++,t.offset++)o+=r[t.offset].toString(16).padStart(2,"0");e=parseInt(o,16)}else e=r[t.offset],t.offset++;return e}function an(r,t){un(r,t);let e=[];for(;!(t.offset>=r.byteLength);){let n=cs(r,t);if(n===null)break;e.push(n)}return e}function _p(r,t){let e=un(r,t),n=t.offset,o=t.offset+e,i=[];for(let s=n;s<o;s++)s===n&&r[s]===0||i.push(r[s]);return t.offset+=e,Uint8Array.from(i)}function Bp(r,t){let e=un(r,t),n=t.offset+e,o=r[t.offset];t.offset++;let i=0,s=0;o<40?(i=0,s=o):o<80?(i=1,s=o-40):(i=2,s=o-80);let c=`${i}.${s}`,a=[];for(;t.offset<n;){let l=r[t.offset];if(t.offset++,a.push(l&127),l<128){a.reverse();let u=0;for(let f=0;f<a.length;f++)u+=a[f]<<f*7;c+=`.${u}`,a=[]}}return c}function Ip(r,t){return t.offset++,null}function Cp(r,t){let e=un(r,t),n=r[t.offset];t.offset++;let o=r.subarray(t.offset,t.offset+e-1);if(t.offset+=e,n!==0)throw new Error("Unused bits in bit string is unimplemented");return o}function kp(r,t){let e=un(r,t),n=r.subarray(t.offset,t.offset+e);return t.offset+=e,n}function Tp(r){let t=r.toString(16);t.length%2===1&&(t="0"+t);let e=new gt;for(let n=0;n<t.length;n+=2)e.append(Uint8Array.from([parseInt(`${t[n]}${t[n+1]}`,16)]));return e}function as(r){if(r.byteLength<128)return Uint8Array.from([r.byteLength]);let t=Tp(r.byteLength);return new gt(Uint8Array.from([t.byteLength|ss]),t)}function ju(r){let t=new gt,e=128;return(r.subarray()[0]&e)===e&&t.append(Uint8Array.from([0])),t.append(r),new gt(Uint8Array.from([2]),as(t),t)}function Zu(r){let t=Uint8Array.from([0]),e=new gt(t,r);return new gt(Uint8Array.from([3]),as(e),e)}function Eo(r,t=48){let e=new gt;for(let n of r)e.append(n);return new gt(Uint8Array.from([t]),as(e),e)}async function Yu(r,t,e){let n=await crypto.subtle.importKey("jwk",r,{name:"ECDSA",namedCurve:r.crv??"P-256"},!1,["verify"]);return crypto.subtle.verify({name:"ECDSA",hash:{name:"SHA-256"}},n,t,e.subarray())}var Up=Uint8Array.from([6,8,42,134,72,206,61,3,1,7]),Lp=Uint8Array.from([6,5,43,129,4,0,34]),Pp=Uint8Array.from([6,5,43,129,4,0,35]),Dp={ext:!0,kty:"EC",crv:"P-256"},Np={ext:!0,kty:"EC",crv:"P-384"},Rp={ext:!0,kty:"EC",crv:"P-521"},us=32,ls=48,fs=66;function Wu(r){let t=cs(r);return Xu(t)}function Xu(r){let t=r[1][1][0],e=1,n,o;if(t.byteLength===us*2+1)return n=X(t.subarray(e,e+us),"base64url"),o=X(t.subarray(e+us),"base64url"),new br({...Dp,key_ops:["verify"],x:n,y:o});if(t.byteLength===ls*2+1)return n=X(t.subarray(e,e+ls),"base64url"),o=X(t.subarray(e+ls),"base64url"),new br({...Np,key_ops:["verify"],x:n,y:o});if(t.byteLength===fs*2+1)return n=X(t.subarray(e,e+fs),"base64url"),o=X(t.subarray(e+fs),"base64url"),new br({...Rp,key_ops:["verify"],x:n,y:o});throw new zt(`coordinates were wrong length, got ${t.byteLength}, expected 65, 97 or 133`)}function Qu(r){return Eo([ju(Uint8Array.from([1])),Eo([Mp(r.crv)],160),Eo([Zu(new gt(Uint8Array.from([4]),qt(r.x??"","base64url"),qt(r.y??"","base64url")))],161)]).subarray()}function Mp(r){if(r==="P-256")return Up;if(r==="P-384")return Lp;if(r==="P-521")return Pp;throw new zt(`Invalid curve ${r}`)}var br=class{type="ECDSA";jwk;_raw;constructor(t){this.jwk=t}get raw(){return this._raw==null&&(this._raw=Qu(this.jwk)),this._raw}toMultihash(){return Xt.digest(xr(this))}toCID(){return ct.createV1(114,this.toMultihash())}toString(){return tt.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Nt(this.raw,t.raw)}async verify(t,e){return Yu(this.jwk,e,t)}};function Ju(r){if(!Number.isSafeInteger(r)||r<0)throw new Error("positive integer expected, got "+r)}function Op(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function wr(r,...t){if(!Op(r))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(r.length))throw new Error("Uint8Array expected of length "+t+", got length="+r.length)}function tl(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Ju(r.outputLen),Ju(r.blockLen)}function Er(r,t=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(t&&r.finished)throw new Error("Hash#digest() has already been called")}function el(r,t){wr(r);let e=t.outputLen;if(r.length<e)throw new Error("digestInto() expects output buffer of length at least "+e)}var ze=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function vo(r){return new DataView(r.buffer,r.byteOffset,r.byteLength)}function te(r,t){return r<<32-t|r>>>t}function rl(r){if(typeof r!="string")throw new Error("utf8ToBytes expected string, got "+typeof r);return new Uint8Array(new TextEncoder().encode(r))}function ln(r){return typeof r=="string"&&(r=rl(r)),wr(r),r}function ds(...r){let t=0;for(let n=0;n<r.length;n++){let o=r[n];wr(o),t+=o.length}let e=new Uint8Array(t);for(let n=0,o=0;n<r.length;n++){let i=r[n];e.set(i,o),o+=i.length}return e}var vr=class{clone(){return this._cloneInto()}};function So(r){let t=n=>r().update(ln(n)).digest(),e=r();return t.outputLen=e.outputLen,t.blockLen=e.blockLen,t.create=()=>r(),t}function Ao(r=32){if(ze&&typeof ze.getRandomValues=="function")return ze.getRandomValues(new Uint8Array(r));if(ze&&typeof ze.randomBytes=="function")return ze.randomBytes(r);throw new Error("crypto.getRandomValues must be defined")}function Fp(r,t,e,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(t,e,n);let o=BigInt(32),i=BigInt(4294967295),s=Number(e>>o&i),c=Number(e&i),a=n?4:0,l=n?0:4;r.setUint32(t+a,s,n),r.setUint32(t+l,c,n)}function nl(r,t,e){return r&t^~r&e}function ol(r,t,e){return r&t^r&e^t&e}var Sr=class extends vr{constructor(t,e,n,o){super(),this.blockLen=t,this.outputLen=e,this.padOffset=n,this.isLE=o,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=vo(this.buffer)}update(t){Er(this);let{view:e,buffer:n,blockLen:o}=this;t=ln(t);let i=t.length;for(let s=0;s<i;){let c=Math.min(o-this.pos,i-s);if(c===o){let a=vo(t);for(;o<=i-s;s+=o)this.process(a,s);continue}n.set(t.subarray(s,s+c),this.pos),this.pos+=c,s+=c,this.pos===o&&(this.process(e,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Er(this),el(t,this),this.finished=!0;let{buffer:e,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;e[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>o-s&&(this.process(n,0),s=0);for(let f=s;f<o;f++)e[f]=0;Fp(n,o-8,BigInt(this.length*8),i),this.process(n,0);let c=vo(t),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let l=a/4,u=this.get();if(l>u.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<l;f++)c.setUint32(4*f,u[f],i)}digest(){let{buffer:t,outputLen:e}=this;this.digestInto(t);let n=t.slice(0,e);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:e,buffer:n,length:o,finished:i,destroyed:s,pos:c}=this;return t.length=o,t.pos=c,t.finished=i,t.destroyed=s,o%e&&t.buffer.set(n),t}};var _o=BigInt(4294967295),hs=BigInt(32);function il(r,t=!1){return t?{h:Number(r&_o),l:Number(r>>hs&_o)}:{h:Number(r>>hs&_o)|0,l:Number(r&_o)|0}}function Kp(r,t=!1){let e=new Uint32Array(r.length),n=new Uint32Array(r.length);for(let o=0;o<r.length;o++){let{h:i,l:s}=il(r[o],t);[e[o],n[o]]=[i,s]}return[e,n]}var Vp=(r,t)=>BigInt(r>>>0)<<hs|BigInt(t>>>0),zp=(r,t,e)=>r>>>e,Hp=(r,t,e)=>r<<32-e|t>>>e,qp=(r,t,e)=>r>>>e|t<<32-e,$p=(r,t,e)=>r<<32-e|t>>>e,Gp=(r,t,e)=>r<<64-e|t>>>e-32,jp=(r,t,e)=>r>>>e-32|t<<64-e,Zp=(r,t)=>t,Yp=(r,t)=>r,Wp=(r,t,e)=>r<<e|t>>>32-e,Xp=(r,t,e)=>t<<e|r>>>32-e,Qp=(r,t,e)=>t<<e-32|r>>>64-e,Jp=(r,t,e)=>r<<e-32|t>>>64-e;function t0(r,t,e,n){let o=(t>>>0)+(n>>>0);return{h:r+e+(o/2**32|0)|0,l:o|0}}var e0=(r,t,e)=>(r>>>0)+(t>>>0)+(e>>>0),r0=(r,t,e,n)=>t+e+n+(r/2**32|0)|0,n0=(r,t,e,n)=>(r>>>0)+(t>>>0)+(e>>>0)+(n>>>0),o0=(r,t,e,n,o)=>t+e+n+o+(r/2**32|0)|0,i0=(r,t,e,n,o)=>(r>>>0)+(t>>>0)+(e>>>0)+(n>>>0)+(o>>>0),s0=(r,t,e,n,o,i)=>t+e+n+o+i+(r/2**32|0)|0;var c0={fromBig:il,split:Kp,toBig:Vp,shrSH:zp,shrSL:Hp,rotrSH:qp,rotrSL:$p,rotrBH:Gp,rotrBL:jp,rotr32H:Zp,rotr32L:Yp,rotlSH:Wp,rotlSL:Xp,rotlBH:Qp,rotlBL:Jp,add:t0,add3L:e0,add3H:r0,add4L:n0,add4H:o0,add5H:s0,add5L:i0},F=c0;var[a0,u0]=F.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(r=>BigInt(r))),Ie=new Uint32Array(80),Ce=new Uint32Array(80),ps=class extends Sr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:e,Bh:n,Bl:o,Ch:i,Cl:s,Dh:c,Dl:a,Eh:l,El:u,Fh:f,Fl:h,Gh:b,Gl:x,Hh:g,Hl:d}=this;return[t,e,n,o,i,s,c,a,l,u,f,h,b,x,g,d]}set(t,e,n,o,i,s,c,a,l,u,f,h,b,x,g,d){this.Ah=t|0,this.Al=e|0,this.Bh=n|0,this.Bl=o|0,this.Ch=i|0,this.Cl=s|0,this.Dh=c|0,this.Dl=a|0,this.Eh=l|0,this.El=u|0,this.Fh=f|0,this.Fl=h|0,this.Gh=b|0,this.Gl=x|0,this.Hh=g|0,this.Hl=d|0}process(t,e){for(let m=0;m<16;m++,e+=4)Ie[m]=t.getUint32(e),Ce[m]=t.getUint32(e+=4);for(let m=16;m<80;m++){let B=Ie[m-15]|0,D=Ce[m-15]|0,P=F.rotrSH(B,D,1)^F.rotrSH(B,D,8)^F.shrSH(B,D,7),k=F.rotrSL(B,D,1)^F.rotrSL(B,D,8)^F.shrSL(B,D,7),U=Ie[m-2]|0,T=Ce[m-2]|0,et=F.rotrSH(U,T,19)^F.rotrBH(U,T,61)^F.shrSH(U,T,6),H=F.rotrSL(U,T,19)^F.rotrBL(U,T,61)^F.shrSL(U,T,6),V=F.add4L(k,H,Ce[m-7],Ce[m-16]),at=F.add4H(V,P,et,Ie[m-7],Ie[m-16]);Ie[m]=at|0,Ce[m]=V|0}let{Ah:n,Al:o,Bh:i,Bl:s,Ch:c,Cl:a,Dh:l,Dl:u,Eh:f,El:h,Fh:b,Fl:x,Gh:g,Gl:d,Hh:E,Hl:A}=this;for(let m=0;m<80;m++){let B=F.rotrSH(f,h,14)^F.rotrSH(f,h,18)^F.rotrBH(f,h,41),D=F.rotrSL(f,h,14)^F.rotrSL(f,h,18)^F.rotrBL(f,h,41),P=f&b^~f&g,k=h&x^~h&d,U=F.add5L(A,D,k,u0[m],Ce[m]),T=F.add5H(U,E,B,P,a0[m],Ie[m]),et=U|0,H=F.rotrSH(n,o,28)^F.rotrBH(n,o,34)^F.rotrBH(n,o,39),V=F.rotrSL(n,o,28)^F.rotrBL(n,o,34)^F.rotrBL(n,o,39),at=n&i^n&c^i&c,_=o&s^o&a^s&a;E=g|0,A=d|0,g=b|0,d=x|0,b=f|0,x=h|0,{h:f,l:h}=F.add(l|0,u|0,T|0,et|0),l=c|0,u=a|0,c=i|0,a=s|0,i=n|0,s=o|0;let L=F.add3L(et,V,_);n=F.add3H(L,T,H,at),o=L|0}({h:n,l:o}=F.add(this.Ah|0,this.Al|0,n|0,o|0)),{h:i,l:s}=F.add(this.Bh|0,this.Bl|0,i|0,s|0),{h:c,l:a}=F.add(this.Ch|0,this.Cl|0,c|0,a|0),{h:l,l:u}=F.add(this.Dh|0,this.Dl|0,l|0,u|0),{h:f,l:h}=F.add(this.Eh|0,this.El|0,f|0,h|0),{h:b,l:x}=F.add(this.Fh|0,this.Fl|0,b|0,x|0),{h:g,l:d}=F.add(this.Gh|0,this.Gl|0,g|0,d|0),{h:E,l:A}=F.add(this.Hh|0,this.Hl|0,E|0,A|0),this.set(n,o,i,s,c,a,l,u,f,h,b,x,g,d,E,A)}roundClean(){Ie.fill(0),Ce.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var sl=So(()=>new ps);var Co={};Tt(Co,{aInRange:()=>Lt,abool:()=>ee,abytes:()=>Ar,bitGet:()=>m0,bitLen:()=>bs,bitMask:()=>dn,bitSet:()=>g0,bytesToHex:()=>pe,bytesToNumberBE:()=>me,bytesToNumberLE:()=>Te,concatBytes:()=>ge,createHmacDrbg:()=>xs,ensureBytes:()=>it,equalBytes:()=>h0,hexToBytes:()=>qe,hexToNumber:()=>ys,inRange:()=>fn,isBytes:()=>ke,memoized:()=>Ge,notImplemented:()=>b0,numberToBytesBE:()=>Ue,numberToBytesLE:()=>$e,numberToHexUnpadded:()=>He,numberToVarBytesBE:()=>d0,utf8ToBytes:()=>p0,validateObject:()=>se});var Bo=BigInt(0),Io=BigInt(1),l0=BigInt(2);function ke(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function Ar(r){if(!ke(r))throw new Error("Uint8Array expected")}function ee(r,t){if(typeof t!="boolean")throw new Error(r+" boolean expected, got "+t)}var f0=Array.from({length:256},(r,t)=>t.toString(16).padStart(2,"0"));function pe(r){Ar(r);let t="";for(let e=0;e<r.length;e++)t+=f0[r[e]];return t}function He(r){let t=r.toString(16);return t.length&1?"0"+t:t}function ys(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return r===""?Bo:BigInt("0x"+r)}var he={_0:48,_9:57,A:65,F:70,a:97,f:102};function cl(r){if(r>=he._0&&r<=he._9)return r-he._0;if(r>=he.A&&r<=he.F)return r-(he.A-10);if(r>=he.a&&r<=he.f)return r-(he.a-10)}function qe(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let t=r.length,e=t/2;if(t%2)throw new Error("hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(e);for(let o=0,i=0;o<e;o++,i+=2){let s=cl(r.charCodeAt(i)),c=cl(r.charCodeAt(i+1));if(s===void 0||c===void 0){let a=r[i]+r[i+1];throw new Error('hex string expected, got non-hex character "'+a+'" at index '+i)}n[o]=s*16+c}return n}function me(r){return ys(pe(r))}function Te(r){return Ar(r),ys(pe(Uint8Array.from(r).reverse()))}function Ue(r,t){return qe(r.toString(16).padStart(t*2,"0"))}function $e(r,t){return Ue(r,t).reverse()}function d0(r){return qe(He(r))}function it(r,t,e){let n;if(typeof t=="string")try{n=qe(t)}catch(i){throw new Error(r+" must be hex string or Uint8Array, cause: "+i)}else if(ke(t))n=Uint8Array.from(t);else throw new Error(r+" must be hex string or Uint8Array");let o=n.length;if(typeof e=="number"&&o!==e)throw new Error(r+" of length "+e+" expected, got "+o);return n}function ge(...r){let t=0;for(let n=0;n<r.length;n++){let o=r[n];Ar(o),t+=o.length}let e=new Uint8Array(t);for(let n=0,o=0;n<r.length;n++){let i=r[n];e.set(i,o),o+=i.length}return e}function h0(r,t){if(r.length!==t.length)return!1;let e=0;for(let n=0;n<r.length;n++)e|=r[n]^t[n];return e===0}function p0(r){if(typeof r!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(r))}var ms=r=>typeof r=="bigint"&&Bo<=r;function fn(r,t,e){return ms(r)&&ms(t)&&ms(e)&&t<=r&&r<e}function Lt(r,t,e,n){if(!fn(t,e,n))throw new Error("expected valid "+r+": "+e+" <= n < "+n+", got "+t)}function bs(r){let t;for(t=0;r>Bo;r>>=Io,t+=1);return t}function m0(r,t){return r>>BigInt(t)&Io}function g0(r,t,e){return r|(e?Io:Bo)<<BigInt(t)}var dn=r=>(l0<<BigInt(r-1))-Io,gs=r=>new Uint8Array(r),al=r=>Uint8Array.from(r);function xs(r,t,e){if(typeof r!="number"||r<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof e!="function")throw new Error("hmacFn must be a function");let n=gs(r),o=gs(r),i=0,s=()=>{n.fill(1),o.fill(0),i=0},c=(...f)=>e(o,n,...f),a=(f=gs())=>{o=c(al([0]),f),n=c(),f.length!==0&&(o=c(al([1]),f),n=c())},l=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let f=0,h=[];for(;f<t;){n=c();let b=n.slice();h.push(b),f+=n.length}return ge(...h)};return(f,h)=>{s(),a(f);let b;for(;!(b=h(l()));)a();return s(),b}}var y0={bigint:r=>typeof r=="bigint",function:r=>typeof r=="function",boolean:r=>typeof r=="boolean",string:r=>typeof r=="string",stringOrUint8Array:r=>typeof r=="string"||ke(r),isSafeInteger:r=>Number.isSafeInteger(r),array:r=>Array.isArray(r),field:(r,t)=>t.Fp.isValid(r),hash:r=>typeof r=="function"&&Number.isSafeInteger(r.outputLen)};function se(r,t,e={}){let n=(o,i,s)=>{let c=y0[i];if(typeof c!="function")throw new Error("invalid validator function");let a=r[o];if(!(s&&a===void 0)&&!c(a,r))throw new Error("param "+String(o)+" is invalid. Expected "+i+", got "+a)};for(let[o,i]of Object.entries(t))n(o,i,!1);for(let[o,i]of Object.entries(e))n(o,i,!0);return r}var b0=()=>{throw new Error("not implemented")};function Ge(r){let t=new WeakMap;return(e,...n)=>{let o=t.get(e);if(o!==void 0)return o;let i=r(e,...n);return t.set(e,i),i}}var ut=BigInt(0),nt=BigInt(1),je=BigInt(2),x0=BigInt(3),ws=BigInt(4),ul=BigInt(5),ll=BigInt(8),w0=BigInt(9),E0=BigInt(16);function Z(r,t){let e=r%t;return e>=ut?e:t+e}function v0(r,t,e){if(t<ut)throw new Error("invalid exponent, negatives unsupported");if(e<=ut)throw new Error("invalid modulus");if(e===nt)return ut;let n=nt;for(;t>ut;)t&nt&&(n=n*r%e),r=r*r%e,t>>=nt;return n}function ot(r,t,e){let n=r;for(;t-- >ut;)n*=n,n%=e;return n}function ko(r,t){if(r===ut)throw new Error("invert: expected non-zero number");if(t<=ut)throw new Error("invert: expected positive modulus, got "+t);let e=Z(r,t),n=t,o=ut,i=nt,s=nt,c=ut;for(;e!==ut;){let l=n/e,u=n%e,f=o-s*l,h=i-c*l;n=e,e=u,o=s,i=c,s=f,c=h}if(n!==nt)throw new Error("invert: does not exist");return Z(o,t)}function S0(r){let t=(r-nt)/je,e,n,o;for(e=r-nt,n=0;e%je===ut;e/=je,n++);for(o=je;o<r&&v0(o,t,r)!==r-nt;o++)if(o>1e3)throw new Error("Cannot find square root: likely non-prime P");if(n===1){let s=(r+nt)/ws;return function(a,l){let u=a.pow(l,s);if(!a.eql(a.sqr(u),l))throw new Error("Cannot find square root");return u}}let i=(e+nt)/je;return function(c,a){if(c.pow(a,t)===c.neg(c.ONE))throw new Error("Cannot find square root");let l=n,u=c.pow(c.mul(c.ONE,o),e),f=c.pow(a,i),h=c.pow(a,e);for(;!c.eql(h,c.ONE);){if(c.eql(h,c.ZERO))return c.ZERO;let b=1;for(let g=c.sqr(h);b<l&&!c.eql(g,c.ONE);b++)g=c.sqr(g);let x=c.pow(u,nt<<BigInt(l-b-1));u=c.sqr(x),f=c.mul(f,x),h=c.mul(h,u),l=b}return f}}function A0(r){if(r%ws===x0){let t=(r+nt)/ws;return function(n,o){let i=n.pow(o,t);if(!n.eql(n.sqr(i),o))throw new Error("Cannot find square root");return i}}if(r%ll===ul){let t=(r-ul)/ll;return function(n,o){let i=n.mul(o,je),s=n.pow(i,t),c=n.mul(o,s),a=n.mul(n.mul(c,je),s),l=n.mul(c,n.sub(a,n.ONE));if(!n.eql(n.sqr(l),o))throw new Error("Cannot find square root");return l}}return r%E0,S0(r)}var fl=(r,t)=>(Z(r,t)&nt)===nt,_0=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Es(r){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},e=_0.reduce((n,o)=>(n[o]="function",n),t);return se(r,e)}function B0(r,t,e){if(e<ut)throw new Error("invalid exponent, negatives unsupported");if(e===ut)return r.ONE;if(e===nt)return t;let n=r.ONE,o=t;for(;e>ut;)e&nt&&(n=r.mul(n,o)),o=r.sqr(o),e>>=nt;return n}function I0(r,t){let e=new Array(t.length),n=t.reduce((i,s,c)=>r.is0(s)?i:(e[c]=i,r.mul(i,s)),r.ONE),o=r.inv(n);return t.reduceRight((i,s,c)=>r.is0(s)?i:(e[c]=r.mul(i,e[c]),r.mul(i,s)),o),e}function vs(r,t){let e=t!==void 0?t:r.toString(2).length,n=Math.ceil(e/8);return{nBitLength:e,nByteLength:n}}function Le(r,t,e=!1,n={}){if(r<=ut)throw new Error("invalid field: expected ORDER > 0, got "+r);let{nBitLength:o,nByteLength:i}=vs(r,t);if(i>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let s,c=Object.freeze({ORDER:r,isLE:e,BITS:o,BYTES:i,MASK:dn(o),ZERO:ut,ONE:nt,create:a=>Z(a,r),isValid:a=>{if(typeof a!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof a);return ut<=a&&a<r},is0:a=>a===ut,isOdd:a=>(a&nt)===nt,neg:a=>Z(-a,r),eql:(a,l)=>a===l,sqr:a=>Z(a*a,r),add:(a,l)=>Z(a+l,r),sub:(a,l)=>Z(a-l,r),mul:(a,l)=>Z(a*l,r),pow:(a,l)=>B0(c,a,l),div:(a,l)=>Z(a*ko(l,r),r),sqrN:a=>a*a,addN:(a,l)=>a+l,subN:(a,l)=>a-l,mulN:(a,l)=>a*l,inv:a=>ko(a,r),sqrt:n.sqrt||(a=>(s||(s=A0(r)),s(c,a))),invertBatch:a=>I0(c,a),cmov:(a,l,u)=>u?l:a,toBytes:a=>e?$e(a,i):Ue(a,i),fromBytes:a=>{if(a.length!==i)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+a.length);return e?Te(a):me(a)}});return Object.freeze(c)}function dl(r){if(typeof r!="bigint")throw new Error("field order must be bigint");let t=r.toString(2).length;return Math.ceil(t/8)}function Ss(r){let t=dl(r);return t+Math.ceil(t/2)}function hl(r,t,e=!1){let n=r.length,o=dl(t),i=Ss(t);if(n<16||n<i||n>1024)throw new Error("expected "+i+"-1024 bytes of input, got "+n);let s=e?Te(r):me(r),c=Z(s,t-nt)+nt;return e?$e(c,o):Ue(c,o)}var pl=BigInt(0),To=BigInt(1);function As(r,t){let e=t.negate();return r?e:t}function ml(r,t){if(!Number.isSafeInteger(r)||r<=0||r>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+r)}function _s(r,t){ml(r,t);let e=Math.ceil(t/r)+1,n=2**(r-1);return{windows:e,windowSize:n}}function C0(r,t){if(!Array.isArray(r))throw new Error("array expected");r.forEach((e,n)=>{if(!(e instanceof t))throw new Error("invalid point at index "+n)})}function k0(r,t){if(!Array.isArray(r))throw new Error("array of scalars expected");r.forEach((e,n)=>{if(!t.isValid(e))throw new Error("invalid scalar at index "+n)})}var Bs=new WeakMap,gl=new WeakMap;function Is(r){return gl.get(r)||1}function Uo(r,t){return{constTimeNegate:As,hasPrecomputes(e){return Is(e)!==1},unsafeLadder(e,n,o=r.ZERO){let i=e;for(;n>pl;)n&To&&(o=o.add(i)),i=i.double(),n>>=To;return o},precomputeWindow(e,n){let{windows:o,windowSize:i}=_s(n,t),s=[],c=e,a=c;for(let l=0;l<o;l++){a=c,s.push(a);for(let u=1;u<i;u++)a=a.add(c),s.push(a);c=a.double()}return s},wNAF(e,n,o){let{windows:i,windowSize:s}=_s(e,t),c=r.ZERO,a=r.BASE,l=BigInt(2**e-1),u=2**e,f=BigInt(e);for(let h=0;h<i;h++){let b=h*s,x=Number(o&l);o>>=f,x>s&&(x-=u,o+=To);let g=b,d=b+Math.abs(x)-1,E=h%2!==0,A=x<0;x===0?a=a.add(As(E,n[g])):c=c.add(As(A,n[d]))}return{p:c,f:a}},wNAFUnsafe(e,n,o,i=r.ZERO){let{windows:s,windowSize:c}=_s(e,t),a=BigInt(2**e-1),l=2**e,u=BigInt(e);for(let f=0;f<s;f++){let h=f*c;if(o===pl)break;let b=Number(o&a);if(o>>=u,b>c&&(b-=l,o+=To),b===0)continue;let x=n[h+Math.abs(b)-1];b<0&&(x=x.negate()),i=i.add(x)}return i},getPrecomputes(e,n,o){let i=Bs.get(n);return i||(i=this.precomputeWindow(n,e),e!==1&&Bs.set(n,o(i))),i},wNAFCached(e,n,o){let i=Is(e);return this.wNAF(i,this.getPrecomputes(i,e,o),n)},wNAFCachedUnsafe(e,n,o,i){let s=Is(e);return s===1?this.unsafeLadder(e,n,i):this.wNAFUnsafe(s,this.getPrecomputes(s,e,o),n,i)},setWindowSize(e,n){ml(n,t),gl.set(e,n),Bs.delete(e)}}}function Lo(r,t,e,n){if(C0(e,r),k0(n,t),e.length!==n.length)throw new Error("arrays of points and scalars must have equal length");let o=r.ZERO,i=bs(BigInt(e.length)),s=i>12?i-3:i>4?i-2:i?2:1,c=(1<<s)-1,a=new Array(c+1).fill(o),l=Math.floor((t.BITS-1)/s)*s,u=o;for(let f=l;f>=0;f-=s){a.fill(o);for(let b=0;b<n.length;b++){let x=n[b],g=Number(x>>BigInt(f)&BigInt(c));a[g]=a[g].add(e[b])}let h=o;for(let b=a.length-1,x=o;b>0;b--)x=x.add(a[b]),h=h.add(x);if(u=u.add(h),f!==0)for(let b=0;b<s;b++)u=u.double()}return u}function hn(r){return Es(r.Fp),se(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...vs(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}var re=BigInt(0),Pt=BigInt(1),Po=BigInt(2),T0=BigInt(8),U0={zip215:!0};function L0(r){let t=hn(r);return se(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function yl(r){let t=L0(r),{Fp:e,n,prehash:o,hash:i,randomBytes:s,nByteLength:c,h:a}=t,l=Po<<BigInt(c*8)-Pt,u=e.create,f=Le(t.n,t.nBitLength),h=t.uvRatio||((w,y)=>{try{return{isValid:!0,value:e.sqrt(w*e.inv(y))}}catch{return{isValid:!1,value:re}}}),b=t.adjustScalarBytes||(w=>w),x=t.domain||((w,y,v)=>{if(ee("phflag",v),y.length||v)throw new Error("Contexts/pre-hash are not supported");return w});function g(w,y){Lt("coordinate "+w,y,re,l)}function d(w){if(!(w instanceof m))throw new Error("ExtendedPoint expected")}let E=Ge((w,y)=>{let{ex:v,ey:C,ez:N}=w,R=w.is0();y==null&&(y=R?T0:e.inv(N));let K=u(v*y),z=u(C*y),O=u(N*y);if(R)return{x:re,y:Pt};if(O!==Pt)throw new Error("invZ was invalid");return{x:K,y:z}}),A=Ge(w=>{let{a:y,d:v}=t;if(w.is0())throw new Error("bad point: ZERO");let{ex:C,ey:N,ez:R,et:K}=w,z=u(C*C),O=u(N*N),j=u(R*R),J=u(j*j),lt=u(z*y),ft=u(j*u(lt+O)),mt=u(J+u(v*u(z*O)));if(ft!==mt)throw new Error("bad point: equation left != right (1)");let bt=u(C*N),kt=u(R*K);if(bt!==kt)throw new Error("bad point: equation left != right (2)");return!0});class m{constructor(y,v,C,N){this.ex=y,this.ey=v,this.ez=C,this.et=N,g("x",y),g("y",v),g("z",C),g("t",N),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(y){if(y instanceof m)throw new Error("extended point not allowed");let{x:v,y:C}=y||{};return g("x",v),g("y",C),new m(v,C,Pt,u(v*C))}static normalizeZ(y){let v=e.invertBatch(y.map(C=>C.ez));return y.map((C,N)=>C.toAffine(v[N])).map(m.fromAffine)}static msm(y,v){return Lo(m,f,y,v)}_setWindowSize(y){P.setWindowSize(this,y)}assertValidity(){A(this)}equals(y){d(y);let{ex:v,ey:C,ez:N}=this,{ex:R,ey:K,ez:z}=y,O=u(v*z),j=u(R*N),J=u(C*z),lt=u(K*N);return O===j&&J===lt}is0(){return this.equals(m.ZERO)}negate(){return new m(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:y}=t,{ex:v,ey:C,ez:N}=this,R=u(v*v),K=u(C*C),z=u(Po*u(N*N)),O=u(y*R),j=v+C,J=u(u(j*j)-R-K),lt=O+K,ft=lt-z,mt=O-K,bt=u(J*ft),kt=u(lt*mt),At=u(J*mt),ne=u(ft*lt);return new m(bt,kt,ne,At)}add(y){d(y);let{a:v,d:C}=t,{ex:N,ey:R,ez:K,et:z}=this,{ex:O,ey:j,ez:J,et:lt}=y;if(v===BigInt(-1)){let Ks=u((R-N)*(j+O)),Vs=u((R+N)*(j-O)),$o=u(Vs-Ks);if($o===re)return this.double();let zs=u(K*Po*lt),Hs=u(z*Po*J),qs=Hs+zs,$s=Vs+Ks,Gs=Hs-zs,Xl=u(qs*$o),Ql=u($s*Gs),Jl=u(qs*Gs),tf=u($o*$s);return new m(Xl,Ql,tf,Jl)}let ft=u(N*O),mt=u(R*j),bt=u(z*C*lt),kt=u(K*J),At=u((N+R)*(O+j)-ft-mt),ne=kt-bt,ce=kt+bt,Ir=u(mt-v*ft),jl=u(At*ne),Zl=u(ce*Ir),Yl=u(At*Ir),Wl=u(ne*ce);return new m(jl,Zl,Wl,Yl)}subtract(y){return this.add(y.negate())}wNAF(y){return P.wNAFCached(this,y,m.normalizeZ)}multiply(y){let v=y;Lt("scalar",v,Pt,n);let{p:C,f:N}=this.wNAF(v);return m.normalizeZ([C,N])[0]}multiplyUnsafe(y,v=m.ZERO){let C=y;return Lt("scalar",C,re,n),C===re?D:this.is0()||C===Pt?this:P.wNAFCachedUnsafe(this,C,m.normalizeZ,v)}isSmallOrder(){return this.multiplyUnsafe(a).is0()}isTorsionFree(){return P.unsafeLadder(this,n).is0()}toAffine(y){return E(this,y)}clearCofactor(){let{h:y}=t;return y===Pt?this:this.multiplyUnsafe(y)}static fromHex(y,v=!1){let{d:C,a:N}=t,R=e.BYTES;y=it("pointHex",y,R),ee("zip215",v);let K=y.slice(),z=y[R-1];K[R-1]=z&-129;let O=Te(K),j=v?l:e.ORDER;Lt("pointHex.y",O,re,j);let J=u(O*O),lt=u(J-Pt),ft=u(C*J-N),{isValid:mt,value:bt}=h(lt,ft);if(!mt)throw new Error("Point.fromHex: invalid y coordinate");let kt=(bt&Pt)===Pt,At=(z&128)!==0;if(!v&&bt===re&&At)throw new Error("Point.fromHex: x=0 and x_0=1");return At!==kt&&(bt=u(-bt)),m.fromAffine({x:bt,y:O})}static fromPrivateKey(y){return T(y).point}toRawBytes(){let{x:y,y:v}=this.toAffine(),C=$e(v,e.BYTES);return C[C.length-1]|=y&Pt?128:0,C}toHex(){return pe(this.toRawBytes())}}m.BASE=new m(t.Gx,t.Gy,Pt,u(t.Gx*t.Gy)),m.ZERO=new m(re,Pt,Pt,re);let{BASE:B,ZERO:D}=m,P=Uo(m,c*8);function k(w){return Z(w,n)}function U(w){return k(Te(w))}function T(w){let y=e.BYTES;w=it("private key",w,y);let v=it("hashed private key",i(w),2*y),C=b(v.slice(0,y)),N=v.slice(y,2*y),R=U(C),K=B.multiply(R),z=K.toRawBytes();return{head:C,prefix:N,scalar:R,point:K,pointBytes:z}}function et(w){return T(w).pointBytes}function H(w=new Uint8Array,...y){let v=ge(...y);return U(i(x(v,it("context",w),!!o)))}function V(w,y,v={}){w=it("message",w),o&&(w=o(w));let{prefix:C,scalar:N,pointBytes:R}=T(y),K=H(v.context,C,w),z=B.multiply(K).toRawBytes(),O=H(v.context,z,R,w),j=k(K+O*N);Lt("signature.s",j,re,n);let J=ge(z,$e(j,e.BYTES));return it("result",J,e.BYTES*2)}let at=U0;function _(w,y,v,C=at){let{context:N,zip215:R}=C,K=e.BYTES;w=it("signature",w,2*K),y=it("message",y),v=it("publicKey",v,K),R!==void 0&&ee("zip215",R),o&&(y=o(y));let z=Te(w.slice(K,2*K)),O,j,J;try{O=m.fromHex(v,R),j=m.fromHex(w.slice(0,K),R),J=B.multiplyUnsafe(z)}catch{return!1}if(!R&&O.isSmallOrder())return!1;let lt=H(N,j.toRawBytes(),O.toRawBytes(),y);return j.add(O.multiplyUnsafe(lt)).subtract(J).clearCofactor().equals(m.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:et,sign:V,verify:_,ExtendedPoint:m,utils:{getExtendedPublicKey:T,randomPrivateKey:()=>s(e.BYTES),precompute(w=8,y=m.BASE){return y._setWindowSize(w),y.multiply(BigInt(3)),y}}}}var Cs=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),bl=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),pE=BigInt(0),P0=BigInt(1),xl=BigInt(2),mE=BigInt(3),D0=BigInt(5),N0=BigInt(8);function R0(r){let t=BigInt(10),e=BigInt(20),n=BigInt(40),o=BigInt(80),i=Cs,c=r*r%i*r%i,a=ot(c,xl,i)*c%i,l=ot(a,P0,i)*r%i,u=ot(l,D0,i)*l%i,f=ot(u,t,i)*u%i,h=ot(f,e,i)*f%i,b=ot(h,n,i)*h%i,x=ot(b,o,i)*b%i,g=ot(x,o,i)*b%i,d=ot(g,t,i)*u%i;return{pow_p_5_8:ot(d,xl,i)*r%i,b2:c}}function M0(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function O0(r,t){let e=Cs,n=Z(t*t*t,e),o=Z(n*n*t,e),i=R0(r*o).pow_p_5_8,s=Z(r*n*i,e),c=Z(t*s*s,e),a=s,l=Z(s*bl,e),u=c===r,f=c===Z(-r,e),h=c===Z(-r*bl,e);return u&&(s=a),(f||h)&&(s=l),fl(s,e)&&(s=Z(-s,e)),{isValid:u||f,value:s}}var F0=Le(Cs,void 0,!0),K0={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:F0,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:N0,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:sl,randomBytes:Ao,adjustScalarBytes:M0,uvRatio:O0},wl=yl(K0);var Do=32;function El(r,t,e){return wl.verify(t,e instanceof Uint8Array?e:e.subarray(),r)}var No=class{type="Ed25519";raw;constructor(t){this.raw=ks(t,Do)}toMultihash(){return Xt.digest(xr(this))}toCID(){return ct.createV1(114,this.toMultihash())}toString(){return tt.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Nt(this.raw,t.raw)}verify(t,e){return El(this.raw,e,t)}};function Sl(r){return r=ks(r,Do),new No(r)}function ks(r,t){if(r=Uint8Array.from(r??[]),r.length!==t)throw new zt(`Key must be a Uint8Array of length ${t}, got ${r.length}`);return r}var Vt;(function(r){r.RSA="RSA",r.Ed25519="Ed25519",r.secp256k1="secp256k1",r.ECDSA="ECDSA"})(Vt||(Vt={}));var Ts;(function(r){r[r.RSA=0]="RSA",r[r.Ed25519=1]="Ed25519",r[r.secp256k1=2]="secp256k1",r[r.ECDSA=3]="ECDSA"})(Ts||(Ts={}));(function(r){r.codec=()=>Yr(Ts)})(Vt||(Vt={}));var pn;(function(r){let t;r.codec=()=>(t==null&&(t=It((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.Type!=null&&(n.uint32(8),Vt.codec().encode(e.Type,n)),e.Data!=null&&(n.uint32(18),n.bytes(e.Data)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.Type=Vt.codec().decode(e);break}case 2:{i.Data=e.bytes();break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Bt(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(pn||(pn={}));var Us;(function(r){let t;r.codec=()=>(t==null&&(t=It((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.Type!=null&&(n.uint32(8),Vt.codec().encode(e.Type,n)),e.Data!=null&&(n.uint32(18),n.bytes(e.Data)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.Type=Vt.codec().decode(e);break}case 2:{i.Data=e.bytes();break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Bt(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Us||(Us={}));var mn=class extends Error{constructor(t="An error occurred while verifying a message"){super(t),this.name="VerificationError"}};var H0=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Pe=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),De=new Uint32Array(64),Ls=class extends Sr{constructor(){super(64,32,8,!1),this.A=Pe[0]|0,this.B=Pe[1]|0,this.C=Pe[2]|0,this.D=Pe[3]|0,this.E=Pe[4]|0,this.F=Pe[5]|0,this.G=Pe[6]|0,this.H=Pe[7]|0}get(){let{A:t,B:e,C:n,D:o,E:i,F:s,G:c,H:a}=this;return[t,e,n,o,i,s,c,a]}set(t,e,n,o,i,s,c,a){this.A=t|0,this.B=e|0,this.C=n|0,this.D=o|0,this.E=i|0,this.F=s|0,this.G=c|0,this.H=a|0}process(t,e){for(let f=0;f<16;f++,e+=4)De[f]=t.getUint32(e,!1);for(let f=16;f<64;f++){let h=De[f-15],b=De[f-2],x=te(h,7)^te(h,18)^h>>>3,g=te(b,17)^te(b,19)^b>>>10;De[f]=g+De[f-7]+x+De[f-16]|0}let{A:n,B:o,C:i,D:s,E:c,F:a,G:l,H:u}=this;for(let f=0;f<64;f++){let h=te(c,6)^te(c,11)^te(c,25),b=u+h+nl(c,a,l)+H0[f]+De[f]|0,g=(te(n,2)^te(n,13)^te(n,22))+ol(n,o,i)|0;u=l,l=a,a=c,c=s+b|0,s=i,i=o,o=n,n=b+g|0}n=n+this.A|0,o=o+this.B|0,i=i+this.C|0,s=s+this.D|0,c=c+this.E|0,a=a+this.F|0,l=l+this.G|0,u=u+this.H|0,this.set(n,o,i,s,c,a,l,u)}roundClean(){De.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Al=So(()=>new Ls);var Ro=class extends vr{constructor(t,e){super(),this.finished=!1,this.destroyed=!1,tl(t);let n=ln(e);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let o=this.blockLen,i=new Uint8Array(o);i.set(n.length>o?t.create().update(n).digest():n);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=t.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(t){return Er(this),this.iHash.update(t),this}digestInto(t){Er(this),wr(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:e,iHash:n,finished:o,destroyed:i,blockLen:s,outputLen:c}=this;return t=t,t.finished=o,t.destroyed=i,t.blockLen=s,t.outputLen=c,t.oHash=e._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Ps=(r,t,e)=>new Ro(r,t).update(e).digest();Ps.create=(r,t)=>new Ro(r,t);function _l(r){r.lowS!==void 0&&ee("lowS",r.lowS),r.prehash!==void 0&&ee("prehash",r.prehash)}function q0(r){let t=hn(r);se(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:e,Fp:n,a:o}=t;if(e){if(!n.eql(o,n.ZERO))throw new Error("invalid endomorphism, can only be defined for Koblitz curves that have a=0");if(typeof e!="object"||typeof e.beta!="bigint"||typeof e.splitScalar!="function")throw new Error("invalid endomorphism, expected beta: bigint and splitScalar: function")}return Object.freeze({...t})}var{bytesToNumberBE:$0,hexToBytes:G0}=Co,Ds=class extends Error{constructor(t=""){super(t)}},ye={Err:Ds,_tlv:{encode:(r,t)=>{let{Err:e}=ye;if(r<0||r>256)throw new e("tlv.encode: wrong tag");if(t.length&1)throw new e("tlv.encode: unpadded data");let n=t.length/2,o=He(n);if(o.length/2&128)throw new e("tlv.encode: long form length too big");let i=n>127?He(o.length/2|128):"";return He(r)+i+o+t},decode(r,t){let{Err:e}=ye,n=0;if(r<0||r>256)throw new e("tlv.encode: wrong tag");if(t.length<2||t[n++]!==r)throw new e("tlv.decode: wrong tlv");let o=t[n++],i=!!(o&128),s=0;if(!i)s=o;else{let a=o&127;if(!a)throw new e("tlv.decode(long): indefinite length not supported");if(a>4)throw new e("tlv.decode(long): byte length is too big");let l=t.subarray(n,n+a);if(l.length!==a)throw new e("tlv.decode: length bytes not complete");if(l[0]===0)throw new e("tlv.decode(long): zero leftmost byte");for(let u of l)s=s<<8|u;if(n+=a,s<128)throw new e("tlv.decode(long): not minimal encoding")}let c=t.subarray(n,n+s);if(c.length!==s)throw new e("tlv.decode: wrong value length");return{v:c,l:t.subarray(n+s)}}},_int:{encode(r){let{Err:t}=ye;if(r<be)throw new t("integer: negative integers are not allowed");let e=He(r);if(Number.parseInt(e[0],16)&8&&(e="00"+e),e.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return e},decode(r){let{Err:t}=ye;if(r[0]&128)throw new t("invalid signature integer: negative");if(r[0]===0&&!(r[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return $0(r)}},toSig(r){let{Err:t,_int:e,_tlv:n}=ye,o=typeof r=="string"?G0(r):r;Ar(o);let{v:i,l:s}=n.decode(48,o);if(s.length)throw new t("invalid signature: left bytes after parsing");let{v:c,l:a}=n.decode(2,i),{v:l,l:u}=n.decode(2,a);if(u.length)throw new t("invalid signature: left bytes after parsing");return{r:e.decode(c),s:e.decode(l)}},hexFromSig(r){let{_tlv:t,_int:e}=ye,n=t.encode(2,e.encode(r.r)),o=t.encode(2,e.encode(r.s)),i=n+o;return t.encode(48,i)}},be=BigInt(0),pt=BigInt(1),qE=BigInt(2),Bl=BigInt(3),$E=BigInt(4);function j0(r){let t=q0(r),{Fp:e}=t,n=Le(t.n,t.nBitLength),o=t.toBytes||((g,d,E)=>{let A=d.toAffine();return ge(Uint8Array.from([4]),e.toBytes(A.x),e.toBytes(A.y))}),i=t.fromBytes||(g=>{let d=g.subarray(1),E=e.fromBytes(d.subarray(0,e.BYTES)),A=e.fromBytes(d.subarray(e.BYTES,2*e.BYTES));return{x:E,y:A}});function s(g){let{a:d,b:E}=t,A=e.sqr(g),m=e.mul(A,g);return e.add(e.add(m,e.mul(g,d)),E)}if(!e.eql(e.sqr(t.Gy),s(t.Gx)))throw new Error("bad generator point: equation left != right");function c(g){return fn(g,pt,t.n)}function a(g){let{allowedPrivateKeyLengths:d,nByteLength:E,wrapPrivateKey:A,n:m}=t;if(d&&typeof g!="bigint"){if(ke(g)&&(g=pe(g)),typeof g!="string"||!d.includes(g.length))throw new Error("invalid private key");g=g.padStart(E*2,"0")}let B;try{B=typeof g=="bigint"?g:me(it("private key",g,E))}catch{throw new Error("invalid private key, expected hex or "+E+" bytes, got "+typeof g)}return A&&(B=Z(B,m)),Lt("private key",B,pt,m),B}function l(g){if(!(g instanceof h))throw new Error("ProjectivePoint expected")}let u=Ge((g,d)=>{let{px:E,py:A,pz:m}=g;if(e.eql(m,e.ONE))return{x:E,y:A};let B=g.is0();d==null&&(d=B?e.ONE:e.inv(m));let D=e.mul(E,d),P=e.mul(A,d),k=e.mul(m,d);if(B)return{x:e.ZERO,y:e.ZERO};if(!e.eql(k,e.ONE))throw new Error("invZ was invalid");return{x:D,y:P}}),f=Ge(g=>{if(g.is0()){if(t.allowInfinityPoint&&!e.is0(g.py))return;throw new Error("bad point: ZERO")}let{x:d,y:E}=g.toAffine();if(!e.isValid(d)||!e.isValid(E))throw new Error("bad point: x or y not FE");let A=e.sqr(E),m=s(d);if(!e.eql(A,m))throw new Error("bad point: equation left != right");if(!g.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class h{constructor(d,E,A){if(this.px=d,this.py=E,this.pz=A,d==null||!e.isValid(d))throw new Error("x required");if(E==null||!e.isValid(E))throw new Error("y required");if(A==null||!e.isValid(A))throw new Error("z required");Object.freeze(this)}static fromAffine(d){let{x:E,y:A}=d||{};if(!d||!e.isValid(E)||!e.isValid(A))throw new Error("invalid affine point");if(d instanceof h)throw new Error("projective point not allowed");let m=B=>e.eql(B,e.ZERO);return m(E)&&m(A)?h.ZERO:new h(E,A,e.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(d){let E=e.invertBatch(d.map(A=>A.pz));return d.map((A,m)=>A.toAffine(E[m])).map(h.fromAffine)}static fromHex(d){let E=h.fromAffine(i(it("pointHex",d)));return E.assertValidity(),E}static fromPrivateKey(d){return h.BASE.multiply(a(d))}static msm(d,E){return Lo(h,n,d,E)}_setWindowSize(d){x.setWindowSize(this,d)}assertValidity(){f(this)}hasEvenY(){let{y:d}=this.toAffine();if(e.isOdd)return!e.isOdd(d);throw new Error("Field doesn't support isOdd")}equals(d){l(d);let{px:E,py:A,pz:m}=this,{px:B,py:D,pz:P}=d,k=e.eql(e.mul(E,P),e.mul(B,m)),U=e.eql(e.mul(A,P),e.mul(D,m));return k&&U}negate(){return new h(this.px,e.neg(this.py),this.pz)}double(){let{a:d,b:E}=t,A=e.mul(E,Bl),{px:m,py:B,pz:D}=this,P=e.ZERO,k=e.ZERO,U=e.ZERO,T=e.mul(m,m),et=e.mul(B,B),H=e.mul(D,D),V=e.mul(m,B);return V=e.add(V,V),U=e.mul(m,D),U=e.add(U,U),P=e.mul(d,U),k=e.mul(A,H),k=e.add(P,k),P=e.sub(et,k),k=e.add(et,k),k=e.mul(P,k),P=e.mul(V,P),U=e.mul(A,U),H=e.mul(d,H),V=e.sub(T,H),V=e.mul(d,V),V=e.add(V,U),U=e.add(T,T),T=e.add(U,T),T=e.add(T,H),T=e.mul(T,V),k=e.add(k,T),H=e.mul(B,D),H=e.add(H,H),T=e.mul(H,V),P=e.sub(P,T),U=e.mul(H,et),U=e.add(U,U),U=e.add(U,U),new h(P,k,U)}add(d){l(d);let{px:E,py:A,pz:m}=this,{px:B,py:D,pz:P}=d,k=e.ZERO,U=e.ZERO,T=e.ZERO,et=t.a,H=e.mul(t.b,Bl),V=e.mul(E,B),at=e.mul(A,D),_=e.mul(m,P),L=e.add(E,A),w=e.add(B,D);L=e.mul(L,w),w=e.add(V,at),L=e.sub(L,w),w=e.add(E,m);let y=e.add(B,P);return w=e.mul(w,y),y=e.add(V,_),w=e.sub(w,y),y=e.add(A,m),k=e.add(D,P),y=e.mul(y,k),k=e.add(at,_),y=e.sub(y,k),T=e.mul(et,w),k=e.mul(H,_),T=e.add(k,T),k=e.sub(at,T),T=e.add(at,T),U=e.mul(k,T),at=e.add(V,V),at=e.add(at,V),_=e.mul(et,_),w=e.mul(H,w),at=e.add(at,_),_=e.sub(V,_),_=e.mul(et,_),w=e.add(w,_),V=e.mul(at,w),U=e.add(U,V),V=e.mul(y,w),k=e.mul(L,k),k=e.sub(k,V),V=e.mul(L,at),T=e.mul(y,T),T=e.add(T,V),new h(k,U,T)}subtract(d){return this.add(d.negate())}is0(){return this.equals(h.ZERO)}wNAF(d){return x.wNAFCached(this,d,h.normalizeZ)}multiplyUnsafe(d){let{endo:E,n:A}=t;Lt("scalar",d,be,A);let m=h.ZERO;if(d===be)return m;if(this.is0()||d===pt)return this;if(!E||x.hasPrecomputes(this))return x.wNAFCachedUnsafe(this,d,h.normalizeZ);let{k1neg:B,k1:D,k2neg:P,k2:k}=E.splitScalar(d),U=m,T=m,et=this;for(;D>be||k>be;)D&pt&&(U=U.add(et)),k&pt&&(T=T.add(et)),et=et.double(),D>>=pt,k>>=pt;return B&&(U=U.negate()),P&&(T=T.negate()),T=new h(e.mul(T.px,E.beta),T.py,T.pz),U.add(T)}multiply(d){let{endo:E,n:A}=t;Lt("scalar",d,pt,A);let m,B;if(E){let{k1neg:D,k1:P,k2neg:k,k2:U}=E.splitScalar(d),{p:T,f:et}=this.wNAF(P),{p:H,f:V}=this.wNAF(U);T=x.constTimeNegate(D,T),H=x.constTimeNegate(k,H),H=new h(e.mul(H.px,E.beta),H.py,H.pz),m=T.add(H),B=et.add(V)}else{let{p:D,f:P}=this.wNAF(d);m=D,B=P}return h.normalizeZ([m,B])[0]}multiplyAndAddUnsafe(d,E,A){let m=h.BASE,B=(P,k)=>k===be||k===pt||!P.equals(m)?P.multiplyUnsafe(k):P.multiply(k),D=B(this,E).add(B(d,A));return D.is0()?void 0:D}toAffine(d){return u(this,d)}isTorsionFree(){let{h:d,isTorsionFree:E}=t;if(d===pt)return!0;if(E)return E(h,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:d,clearCofactor:E}=t;return d===pt?this:E?E(h,this):this.multiplyUnsafe(t.h)}toRawBytes(d=!0){return ee("isCompressed",d),this.assertValidity(),o(h,this,d)}toHex(d=!0){return ee("isCompressed",d),pe(this.toRawBytes(d))}}h.BASE=new h(t.Gx,t.Gy,e.ONE),h.ZERO=new h(e.ZERO,e.ONE,e.ZERO);let b=t.nBitLength,x=Uo(h,t.endo?Math.ceil(b/2):b);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:a,weierstrassEquation:s,isWithinCurveOrder:c}}function Z0(r){let t=hn(r);return se(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Il(r){let t=Z0(r),{Fp:e,n}=t,o=e.BYTES+1,i=2*e.BYTES+1;function s(_){return Z(_,n)}function c(_){return ko(_,n)}let{ProjectivePoint:a,normPrivateKeyToScalar:l,weierstrassEquation:u,isWithinCurveOrder:f}=j0({...t,toBytes(_,L,w){let y=L.toAffine(),v=e.toBytes(y.x),C=ge;return ee("isCompressed",w),w?C(Uint8Array.from([L.hasEvenY()?2:3]),v):C(Uint8Array.from([4]),v,e.toBytes(y.y))},fromBytes(_){let L=_.length,w=_[0],y=_.subarray(1);if(L===o&&(w===2||w===3)){let v=me(y);if(!fn(v,pt,e.ORDER))throw new Error("Point is not on curve");let C=u(v),N;try{N=e.sqrt(C)}catch(z){let O=z instanceof Error?": "+z.message:"";throw new Error("Point is not on curve"+O)}let R=(N&pt)===pt;return(w&1)===1!==R&&(N=e.neg(N)),{x:v,y:N}}else if(L===i&&w===4){let v=e.fromBytes(y.subarray(0,e.BYTES)),C=e.fromBytes(y.subarray(e.BYTES,2*e.BYTES));return{x:v,y:C}}else{let v=o,C=i;throw new Error("invalid Point, expected length of "+v+", or uncompressed "+C+", got "+L)}}}),h=_=>pe(Ue(_,t.nByteLength));function b(_){let L=n>>pt;return _>L}function x(_){return b(_)?s(-_):_}let g=(_,L,w)=>me(_.slice(L,w));class d{constructor(L,w,y){this.r=L,this.s=w,this.recovery=y,this.assertValidity()}static fromCompact(L){let w=t.nByteLength;return L=it("compactSignature",L,w*2),new d(g(L,0,w),g(L,w,2*w))}static fromDER(L){let{r:w,s:y}=ye.toSig(it("DER",L));return new d(w,y)}assertValidity(){Lt("r",this.r,pt,n),Lt("s",this.s,pt,n)}addRecoveryBit(L){return new d(this.r,this.s,L)}recoverPublicKey(L){let{r:w,s:y,recovery:v}=this,C=P(it("msgHash",L));if(v==null||![0,1,2,3].includes(v))throw new Error("recovery id invalid");let N=v===2||v===3?w+t.n:w;if(N>=e.ORDER)throw new Error("recovery id 2 or 3 invalid");let R=(v&1)===0?"02":"03",K=a.fromHex(R+h(N)),z=c(N),O=s(-C*z),j=s(y*z),J=a.BASE.multiplyAndAddUnsafe(K,O,j);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return b(this.s)}normalizeS(){return this.hasHighS()?new d(this.r,s(-this.s),this.recovery):this}toDERRawBytes(){return qe(this.toDERHex())}toDERHex(){return ye.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return qe(this.toCompactHex())}toCompactHex(){return h(this.r)+h(this.s)}}let E={isValidPrivateKey(_){try{return l(_),!0}catch{return!1}},normPrivateKeyToScalar:l,randomPrivateKey:()=>{let _=Ss(t.n);return hl(t.randomBytes(_),t.n)},precompute(_=8,L=a.BASE){return L._setWindowSize(_),L.multiply(BigInt(3)),L}};function A(_,L=!0){return a.fromPrivateKey(_).toRawBytes(L)}function m(_){let L=ke(_),w=typeof _=="string",y=(L||w)&&_.length;return L?y===o||y===i:w?y===2*o||y===2*i:_ instanceof a}function B(_,L,w=!0){if(m(_))throw new Error("first arg must be private key");if(!m(L))throw new Error("second arg must be public key");return a.fromHex(L).multiply(l(_)).toRawBytes(w)}let D=t.bits2int||function(_){if(_.length>8192)throw new Error("input is too large");let L=me(_),w=_.length*8-t.nBitLength;return w>0?L>>BigInt(w):L},P=t.bits2int_modN||function(_){return s(D(_))},k=dn(t.nBitLength);function U(_){return Lt("num < 2^"+t.nBitLength,_,be,k),Ue(_,t.nByteLength)}function T(_,L,w=et){if(["recovered","canonical"].some(ft=>ft in w))throw new Error("sign() legacy options not supported");let{hash:y,randomBytes:v}=t,{lowS:C,prehash:N,extraEntropy:R}=w;C==null&&(C=!0),_=it("msgHash",_),_l(w),N&&(_=it("prehashed msgHash",y(_)));let K=P(_),z=l(L),O=[U(z),U(K)];if(R!=null&&R!==!1){let ft=R===!0?v(e.BYTES):R;O.push(it("extraEntropy",ft))}let j=ge(...O),J=K;function lt(ft){let mt=D(ft);if(!f(mt))return;let bt=c(mt),kt=a.BASE.multiply(mt).toAffine(),At=s(kt.x);if(At===be)return;let ne=s(bt*s(J+At*z));if(ne===be)return;let ce=(kt.x===At?0:2)|Number(kt.y&pt),Ir=ne;return C&&b(ne)&&(Ir=x(ne),ce^=1),new d(At,Ir,ce)}return{seed:j,k2sig:lt}}let et={lowS:t.lowS,prehash:!1},H={lowS:t.lowS,prehash:!1};function V(_,L,w=et){let{seed:y,k2sig:v}=T(_,L,w),C=t;return xs(C.hash.outputLen,C.nByteLength,C.hmac)(y,v)}a.BASE._setWindowSize(8);function at(_,L,w,y=H){let v=_;L=it("msgHash",L),w=it("publicKey",w);let{lowS:C,prehash:N,format:R}=y;if(_l(y),"strict"in y)throw new Error("options.strict was renamed to lowS");if(R!==void 0&&R!=="compact"&&R!=="der")throw new Error("format must be compact or der");let K=typeof v=="string"||ke(v),z=!K&&!R&&typeof v=="object"&&v!==null&&typeof v.r=="bigint"&&typeof v.s=="bigint";if(!K&&!z)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let O,j;try{if(z&&(O=new d(v.r,v.s)),K){try{R!=="compact"&&(O=d.fromDER(v))}catch(ce){if(!(ce instanceof ye.Err))throw ce}!O&&R!=="der"&&(O=d.fromCompact(v))}j=a.fromHex(w)}catch{return!1}if(!O||C&&O.hasHighS())return!1;N&&(L=t.hash(L));let{r:J,s:lt}=O,ft=P(L),mt=c(lt),bt=s(ft*mt),kt=s(J*mt),At=a.BASE.multiplyAndAddUnsafe(j,bt,kt)?.toAffine();return At?s(At.x)===J:!1}return{CURVE:t,getPublicKey:A,getSharedSecret:B,sign:V,verify:at,ProjectivePoint:a,Signature:d,utils:E}}function Y0(r){return{hash:r,hmac:(t,...e)=>Ps(r,t,ds(...e)),randomBytes:Ao}}function Cl(r,t){let e=n=>Il({...r,...Y0(n)});return{...e(t),create:e}}var Ul=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),kl=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),W0=BigInt(1),Ns=BigInt(2),Tl=(r,t)=>(r+t/Ns)/t;function X0(r){let t=Ul,e=BigInt(3),n=BigInt(6),o=BigInt(11),i=BigInt(22),s=BigInt(23),c=BigInt(44),a=BigInt(88),l=r*r*r%t,u=l*l*r%t,f=ot(u,e,t)*u%t,h=ot(f,e,t)*u%t,b=ot(h,Ns,t)*l%t,x=ot(b,o,t)*b%t,g=ot(x,i,t)*x%t,d=ot(g,c,t)*g%t,E=ot(d,a,t)*d%t,A=ot(E,c,t)*g%t,m=ot(A,e,t)*u%t,B=ot(m,s,t)*x%t,D=ot(B,n,t)*l%t,P=ot(D,Ns,t);if(!Rs.eql(Rs.sqr(P),r))throw new Error("Cannot find square root");return P}var Rs=Le(Ul,void 0,void 0,{sqrt:X0}),Ze=Cl({a:BigInt(0),b:BigInt(7),Fp:Rs,n:kl,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:r=>{let t=kl,e=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-W0*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),o=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=e,s=BigInt("0x100000000000000000000000000000000"),c=Tl(i*r,t),a=Tl(-n*r,t),l=Z(r-c*e-a*o,t),u=Z(-c*n-a*i,t),f=l>s,h=u>s;if(f&&(l=t-l),h&&(u=t-u),l>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+r);return{k1neg:f,k1:l,k2neg:h,k2:u}}}},Al),t3=BigInt(0);var e3=Ze.ProjectivePoint;function Ll(r){return r==null?!1:typeof r.then=="function"&&typeof r.catch=="function"&&typeof r.finally=="function"}function Pl(r,t,e){let n=qr.digest(e instanceof Uint8Array?e:e.subarray());if(Ll(n))return n.then(({digest:o})=>Ze.verify(t,o,r)).catch(o=>{throw new mn(String(o))});try{return Ze.verify(t,n.digest,r)}catch(o){throw new mn(String(o))}}var Mo=class{type="secp256k1";raw;_key;constructor(t){this._key=Nl(t),this.raw=Dl(this._key)}toMultihash(){return Xt.digest(xr(this))}toCID(){return ct.createV1(114,this.toMultihash())}toString(){return tt.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Nt(this.raw,t.raw)}verify(t,e){return Pl(this._key,e,t)}};function Rl(r){return new Mo(r)}function Dl(r){return Ze.ProjectivePoint.fromHex(r).toRawBytes(!0)}function Nl(r){try{return Ze.ProjectivePoint.fromHex(r),r}catch(t){throw new En(String(t))}}function Ml(r){let{Type:t,Data:e}=pn.decode(r.digest),n=e??new Uint8Array;switch(t){case Vt.Ed25519:return Sl(n);case Vt.secp256k1:return Rl(n);case Vt.ECDSA:return Wu(n);default:throw new kr}}function xr(r){return pn.encode({Type:Vt[r.type],Data:r.raw})}var Ol=Symbol.for("nodejs.util.inspect.custom"),Q0=114,gn=class{type;multihash;publicKey;string;constructor(t){this.type=t.type,this.multihash=t.multihash,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[xn]=!0;toString(){return this.string==null&&(this.string=tt.encode(this.multihash.bytes).slice(1)),this.string}toMultihash(){return this.multihash}toCID(){return ct.createV1(Q0,this.multihash)}toJSON(){return this.toString()}equals(t){if(t==null)return!1;if(t instanceof Uint8Array)return Nt(this.multihash.bytes,t);if(typeof t=="string")return this.toString()===t;if(t?.toMultihash()?.bytes!=null)return Nt(this.multihash.bytes,t.toMultihash().bytes);throw new Error("not valid Id")}[Ol](){return`PeerId(${this.toString()})`}},Oo=class extends gn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},Fo=class extends gn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.publicKey}},Ko=class extends gn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.publicKey}},J0=2336,yn=class{type="url";multihash;publicKey;url;constructor(t){this.url=t.toString(),this.multihash=Xt.digest(qt(this.url))}[Ol](){return`PeerId(${this.url})`}[xn]=!0;toString(){return this.toCID().toString()}toMultihash(){return this.multihash}toCID(){return ct.createV1(J0,this.toMultihash())}toJSON(){return this.toString()}equals(t){return t==null?!1:(t instanceof Uint8Array&&(t=X(t)),t.toString()===this.toString())}};var tm=114,Fl=2336;function Kl(r,t){let e;if(r.charAt(0)==="1"||r.charAt(0)==="Q")e=le(tt.decode(`z${r}`));else{if(r.startsWith("k51qzi5uqu5")||r.startsWith("kzwfwjn5ji4")||r.startsWith("k2k4r8")||r.startsWith("bafz"))return em(ct.parse(r));if(t==null)throw new zt('Please pass a multibase decoder for strings that do not start with "1" or "Q"');e=le(t.decode(r))}return Vo(e)}function Vo(r){if(nm(r))return new Oo({multihash:r});if(rm(r))try{let t=Ml(r);if(t.type==="Ed25519")return new Fo({multihash:r,publicKey:t});if(t.type==="secp256k1")return new Ko({multihash:r,publicKey:t})}catch{let e=X(r.digest);return new yn(new URL(e))}throw new Sn("Supplied PeerID Multihash is invalid")}function em(r){if(r?.multihash==null||r.version==null||r.version===1&&r.code!==tm&&r.code!==Fl)throw new vn("Supplied PeerID CID is invalid");if(r.code===Fl){let t=X(r.multihash.digest);return new yn(new URL(t))}return Vo(r.multihash)}function rm(r){return r.code===Xt.code}function nm(r){return r.code===qr.code}var Vl={type:4098,canEncode:r=>Zs(r),encode:r=>r.toMultihash().bytes,decode:r=>Vo(le(r))};var Ms=[Tu,$u,Vl,Uu];function zo(r){let t={},e=r.components??r;return Object.entries(e).forEach(([n,o])=>{o?.[xe]!=null&&Array.isArray(o[xe])&&(t[n]=o[xe])}),t}function _r(r,t){let e={};for(let[n,o]of r.entries())e[n]=t(o);return e}async function Ho(r,t){let e=[],n=r.connectionManager.getConnectionsMap(),o=[...n.values()].flatMap(i=>i).map(i=>i.remoteAddr.toString());for(let[i,s]of n.entries())try{let c=await r.peerStore.get(i);e.push({id:i,addresses:c.addresses.map(({isCertified:a,multiaddr:l})=>({multiaddr:l,isCertified:a,isConnected:o.includes(l.toString())})),protocols:[...c.protocols],tags:_r(c.tags,a=>a.value),metadata:_r(c.metadata,a=>oe.encode(a))})}catch(c){t.error("could not load peer data from peer store",c),e.push({id:i,addresses:s.map(a=>({multiaddr:a.remoteAddr,isConnected:o.includes(a.remoteAddr.toString())})),protocols:[],tags:{},metadata:{}})}return e}function Br(r,t){let e=t[r];if(!wn(e))throw new zt(`Component ${r} did not implement the PubSub interface`);return e}async function qo(r){let t=await r.peerStore.get(r.peerId);return{id:t.id,addresses:t.addresses,protocols:[...t.protocols],tags:_r(t.tags,e=>e.value),metadata:_r(t.metadata,e=>oe.encode(e))}}function zl(r){let t=r.logger.forComponent("libp2p:devtools-metrics:metrics-rpc");return{init:async()=>({self:await qo(r),peers:await Ho(r,t),debug:localStorage.getItem("debug")??"",capabilities:zo(r)}),setDebug:async e=>{e?.length!=null&&e?.length>0?(uc(e),localStorage.setItem("debug",e)):(ac(),localStorage.removeItem("debug"))},openConnection:async(e,n)=>{let o;try{o=Kl(e)}catch{o=Ve(e)}await r.connectionManager.openConnection(o,n)},closeConnection:async(e,n)=>{await Promise.all(r.connectionManager.getConnections(e).map(async o=>{try{await o.close(n)}catch(i){o.abort(i)}}))},contentRouting:r.contentRouting,peerRouting:r.peerRouting,pubsub:{async getTopics(e){return Br(e,r).getTopics()},async subscribe(e,n){Br(e,r).subscribe(n)},async unsubscribe(e,n){Br(e,r).unsubscribe(n)},async publish(e,n,o){await Br(e,r).publish(n,o)},async getSubscribers(e,n){return Br(e,r).getSubscribers(n)}}}}function Os(r,t=100){let e,n;return()=>{if(n==null&&(n=Date.now()),e!=null&&Date.now()-n>t){clearTimeout(e),n=void 0,r();return}clearTimeout(e),e=setTimeout(()=>{n=void 0,r()},t)}}function Hl(r,t){for(let[e,n]of Object.entries(zo(t)))if(n.includes(r))return t[e]}var ql="@libp2p/devtools-metrics:devtools",om="@libp2p/devtools-metrics:worker",im="@libp2p/devtools-metrics:content",$l="@libp2p/devtools-metrics:metrics",Gl="________libp2p_devtools_metrics";Object.defineProperty(globalThis,Gl,{value:!0,enumerable:!1,writable:!1});var Fs=class{log;components;simpleMetrics;intervalMs;rpcQueue;rpc;devTools;constructor(t,e){this.log=t.logger.forComponent("libp2p:devtools-metrics"),this.intervalMs=e?.intervalMs,this.components=t,this.rpcQueue=Je(),this.rpc=ku({valueCodecs:Ms}),this.devTools=this.rpc.createClient("devTools"),this.onPeersUpdate=Os(this.onPeersUpdate.bind(this),1e3),this.onSelfUpdate=Os(this.onSelfUpdate.bind(this),1e3),this.onIncomingMessage=this.onIncomingMessage.bind(this),this.onPubSubMessage=this.onPubSubMessage.bind(this),this.onPubSubSubscriptionChange=this.onPubSubSubscriptionChange.bind(this),this.simpleMetrics=Ac({intervalMs:this.intervalMs,onMetrics:n=>{this.devTools.safeDispatchEvent("metrics",{detail:n}).catch(o=>{this.log.error("error sending metrics",o)})}})({})}[Symbol.toStringTag]="@libp2p/devtools-metrics";[xe]=["@libp2p/metrics"];trackMultiaddrConnection(t){this.simpleMetrics.trackMultiaddrConnection(t)}trackProtocolStream(t,e){this.simpleMetrics.trackProtocolStream(t,e)}registerMetric(t,e){return this.simpleMetrics.registerMetric(t,e)}registerMetricGroup(t,e){return this.simpleMetrics.registerMetricGroup(t,e)}registerCounter(t,e){return this.simpleMetrics.registerCounter(t,e)}registerCounterGroup(t,e){return this.simpleMetrics.registerCounterGroup(t,e)}registerHistogram(t,e){return this.simpleMetrics.registerHistogram(t,e)}registerHistogramGroup(t,e){return this.simpleMetrics.registerHistogramGroup(t,e)}registerSummary(t,e){return this.simpleMetrics.registerSummary(t,e)}registerSummaryGroup(t,e){return this.simpleMetrics.registerSummaryGroup(t,e)}createTrace(){return this.simpleMetrics.createTrace()}traceFunction(t,e,n){return this.simpleMetrics.traceFunction(t,e,n)}async start(){this.components.events.addEventListener("peer:connect",this.onPeersUpdate),this.components.events.addEventListener("peer:disconnect",this.onPeersUpdate),this.components.events.addEventListener("peer:identify",this.onPeersUpdate),this.components.events.addEventListener("peer:update",this.onPeersUpdate),this.components.events.addEventListener("self:peer:update",this.onSelfUpdate),window.addEventListener("message",this.onIncomingMessage),this.rpc.createTarget("metrics",zl(this.components)),await Xs(this.simpleMetrics),Promise.resolve().then(async()=>{await Cc(this.rpcQueue,this.rpc,async e=>{for await(let n of e)window.postMessage({source:$l,type:"libp2p-rpc",message:oe.encode(n)})})}).catch(e=>{this.log.error("error while reading RPC messages",e)});let t=Hl("@libp2p/pubsub",this.components);wn(t)&&(t.addEventListener("message",this.onPubSubMessage),t.addEventListener("subscription-change",this.onPubSubSubscriptionChange))}async stop(){window.removeEventListener("message",this.onIncomingMessage),this.components.events.removeEventListener("self:peer:update",this.onSelfUpdate),this.components.events.removeEventListener("peer:connect",this.onPeersUpdate),this.components.events.removeEventListener("peer:disconnect",this.onPeersUpdate),this.components.events.removeEventListener("peer:identify",this.onPeersUpdate),this.components.events.removeEventListener("peer:update",this.onPeersUpdate),await Qs(this.simpleMetrics)}onIncomingMessage(t){if(t.source!==window)return;let e=t.data;e?.source===ql&&e.type==="libp2p-rpc"&&this.rpcQueue.push(oe.decode(e.message))}onPubSubMessage(t){this.devTools.safeDispatchEvent("pubsub:message",{detail:t.detail}).catch(e=>{this.log.error("error relaying pubsub message",e)})}onPubSubSubscriptionChange(t){this.devTools.safeDispatchEvent("pubsub:subscription-change",{detail:t.detail}).catch(e=>{this.log.error("error relaying pubsub subscription change",e)})}onSelfUpdate(){Promise.resolve().then(async()=>{await this.devTools.safeDispatchEvent("self",{detail:await qo(this.components)})}).catch(t=>{this.log.error("error sending peers message",t)})}onPeersUpdate(){Promise.resolve().then(async()=>{await this.devTools.safeDispatchEvent("peers",{detail:await Ho(this.components,this.log)})}).catch(t=>{this.log.error("error sending peers message",t)})}};function sm(r){return t=>new Fs(t,r)}return af(cm);})();
|
|
2
|
+
"use strict";var Libp2PDevtoolsMetrics=(()=>{var Gl=Object.create;var gn=Object.defineProperty;var jl=Object.getOwnPropertyDescriptor;var Zl=Object.getOwnPropertyNames;var Wl=Object.getPrototypeOf,Yl=Object.prototype.hasOwnProperty;var Cr=(r,t)=>()=>(t||r((t={exports:{}}).exports,t),t.exports),Pt=(r,t)=>{for(var e in t)gn(r,e,{get:t[e],enumerable:!0})},Ms=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Zl(t))!Yl.call(r,o)&&o!==e&&gn(r,o,{get:()=>t[o],enumerable:!(n=jl(t,o))||n.enumerable});return r};var Xl=(r,t,e)=>(e=r!=null?Gl(Wl(r)):{},Ms(t||!r||!r.__esModule?gn(e,"default",{value:r,enumerable:!0}):e,r)),Ql=r=>Ms(gn({},"__esModule",{value:!0}),r);var Zo=Cr((Vm,rc)=>{function Yt(){}Yt.prototype.clear=function(){this._root=null,this.size=0};Yt.prototype.find=function(r){for(var t=this._root;t!==null;){var e=this._comparator(r,t.data);if(e===0)return t.data;t=t.get_child(e>0)}return null};Yt.prototype.findIter=function(r){for(var t=this._root,e=this.iterator();t!==null;){var n=this._comparator(r,t.data);if(n===0)return e._cursor=t,e;e._ancestors.push(t),t=t.get_child(n>0)}return null};Yt.prototype.lowerBound=function(r){for(var t=this._root,e=this.iterator(),n=this._comparator;t!==null;){var o=n(r,t.data);if(o===0)return e._cursor=t,e;e._ancestors.push(t),t=t.get_child(o>0)}for(var i=e._ancestors.length-1;i>=0;--i)if(t=e._ancestors[i],n(r,t.data)<0)return e._cursor=t,e._ancestors.length=i,e;return e._ancestors.length=0,e};Yt.prototype.upperBound=function(r){for(var t=this.lowerBound(r),e=this._comparator;t.data()!==null&&e(t.data(),r)===0;)t.next();return t};Yt.prototype.min=function(){var r=this._root;if(r===null)return null;for(;r.left!==null;)r=r.left;return r.data};Yt.prototype.max=function(){var r=this._root;if(r===null)return null;for(;r.right!==null;)r=r.right;return r.data};Yt.prototype.iterator=function(){return new je(this)};Yt.prototype.each=function(r){for(var t=this.iterator(),e;(e=t.next())!==null;)if(r(e)===!1)return};Yt.prototype.reach=function(r){for(var t=this.iterator(),e;(e=t.prev())!==null;)if(r(e)===!1)return};function je(r){this._tree=r,this._ancestors=[],this._cursor=null}je.prototype.data=function(){return this._cursor!==null?this._cursor.data:null};je.prototype.next=function(){if(this._cursor===null){var r=this._tree._root;r!==null&&this._minNode(r)}else if(this._cursor.right===null){var t;do if(t=this._cursor,this._ancestors.length)this._cursor=this._ancestors.pop();else{this._cursor=null;break}while(this._cursor.right===t)}else this._ancestors.push(this._cursor),this._minNode(this._cursor.right);return this._cursor!==null?this._cursor.data:null};je.prototype.prev=function(){if(this._cursor===null){var r=this._tree._root;r!==null&&this._maxNode(r)}else if(this._cursor.left===null){var t;do if(t=this._cursor,this._ancestors.length)this._cursor=this._ancestors.pop();else{this._cursor=null;break}while(this._cursor.left===t)}else this._ancestors.push(this._cursor),this._maxNode(this._cursor.left);return this._cursor!==null?this._cursor.data:null};je.prototype._minNode=function(r){for(;r.left!==null;)this._ancestors.push(r),r=r.left;this._cursor=r};je.prototype._maxNode=function(r){for(;r.right!==null;)this._ancestors.push(r),r=r.right;this._cursor=r};rc.exports=Yt});var ic=Cr((Hm,oc)=>{var Nf=Zo();function Ze(r){this.data=r,this.left=null,this.right=null,this.red=!0}Ze.prototype.get_child=function(r){return r?this.right:this.left};Ze.prototype.set_child=function(r,t){r?this.right=t:this.left=t};function _n(r){this._root=null,this._comparator=r,this.size=0}_n.prototype=new Nf;_n.prototype.insert=function(r){var t=!1;if(this._root===null)this._root=new Ze(r),t=!0,this.size++;else{var e=new Ze(void 0),n=0,o=0,i=null,s=e,c=null,a=this._root;for(s.right=this._root;;){if(a===null?(a=new Ze(r),c.set_child(n,a),t=!0,this.size++):qt(a.left)&&qt(a.right)&&(a.red=!0,a.left.red=!1,a.right.red=!1),qt(a)&&qt(c)){var l=s.right===i;a===c.get_child(o)?s.set_child(l,Ir(i,!o)):s.set_child(l,nc(i,!o))}var u=this._comparator(a.data,r);if(u===0)break;o=n,n=u<0,i!==null&&(s=i),i=c,c=a,a=a.get_child(n)}this._root=e.right}return this._root.red=!1,t};_n.prototype.remove=function(r){if(this._root===null)return!1;var t=new Ze(void 0),e=t;e.right=this._root;for(var n=null,o=null,i=null,s=1;e.get_child(s)!==null;){var c=s;o=n,n=e,e=e.get_child(s);var a=this._comparator(r,e.data);if(s=a>0,a===0&&(i=e),!qt(e)&&!qt(e.get_child(s))){if(qt(e.get_child(!s))){var l=Ir(e,s);n.set_child(c,l),n=l}else if(!qt(e.get_child(!s))){var u=n.get_child(!c);if(u!==null)if(!qt(u.get_child(!c))&&!qt(u.get_child(c)))n.red=!1,u.red=!0,e.red=!0;else{var f=o.right===n;qt(u.get_child(c))?o.set_child(f,nc(n,c)):qt(u.get_child(!c))&&o.set_child(f,Ir(n,c));var h=o.get_child(f);h.red=!0,e.red=!0,h.left.red=!1,h.right.red=!1}}}}return i!==null&&(i.data=e.data,n.set_child(n.right===e,e.get_child(e.left===null)),this.size--),this._root=t.right,this._root!==null&&(this._root.red=!1),i!==null};function qt(r){return r!==null&&r.red}function Ir(r,t){var e=r.get_child(!t);return r.set_child(!t,e.get_child(t)),e.set_child(t,r),r.red=!0,e.red=!1,e}function nc(r,t){return r.set_child(!t,Ir(r.get_child(!t),!t)),Ir(r,t)}oc.exports=_n});var cc=Cr((zm,sc)=>{var Rf=Zo();function kr(r){this.data=r,this.left=null,this.right=null}kr.prototype.get_child=function(r){return r?this.right:this.left};kr.prototype.set_child=function(r,t){r?this.right=t:this.left=t};function Cn(r){this._root=null,this._comparator=r,this.size=0}Cn.prototype=new Rf;Cn.prototype.insert=function(r){if(this._root===null)return this._root=new kr(r),this.size++,!0;for(var t=0,e=null,n=this._root;;){if(n===null)return n=new kr(r),e.set_child(t,n),ret=!0,this.size++,!0;if(this._comparator(n.data,r)===0)return!1;t=this._comparator(n.data,r)<0,e=n,n=n.get_child(t)}};Cn.prototype.remove=function(r){if(this._root===null)return!1;var t=new kr(void 0),e=t;e.right=this._root;for(var n=null,o=null,i=1;e.get_child(i)!==null;){n=e,e=e.get_child(i);var s=this._comparator(r,e.data);i=s>0,s===0&&(o=e)}return o!==null?(o.data=e.data,n.set_child(n.right===e,e.get_child(e.left===null)),this._root=t.right,this.size--,!0):!1};sc.exports=Cn});var uc=Cr((qm,ac)=>{ac.exports={RBTree:ic(),BinTree:cc()}});var dc=Cr(($m,fc)=>{var Mf=uc().RBTree;function rt(r,t,e){this.discrete=r===!1,this.delta=r||.01,this.K=t===void 0?25:t,this.CX=e===void 0?1.1:e,this.centroids=new Mf(lc),this.nreset=0,this.reset()}rt.prototype.reset=function(){this.centroids.clear(),this.n=0,this.nreset+=1,this.last_cumulate=0};rt.prototype.size=function(){return this.centroids.size};rt.prototype.toArray=function(r){var t=[];return r?(this._cumulate(!0),this.centroids.each(function(e){t.push(e)})):this.centroids.each(function(e){t.push({mean:e.mean,n:e.n})}),t};rt.prototype.summary=function(){var r=this.discrete?"exact ":"approximating ",t=[r+this.n+" samples using "+this.size()+" centroids","min = "+this.percentile(0),"Q1 = "+this.percentile(.25),"Q2 = "+this.percentile(.5),"Q3 = "+this.percentile(.75),"max = "+this.percentile(1)];return t.join(`
|
|
3
|
+
`)};function lc(r,t){return r.mean>t.mean?1:r.mean<t.mean?-1:0}function Of(r,t){return r.mean_cumn-t.mean_cumn}rt.prototype.push=function(r,t){t=t||1,r=Array.isArray(r)?r:[r];for(var e=0;e<r.length;e++)this._digest(r[e],t)};rt.prototype.push_centroid=function(r){r=Array.isArray(r)?r:[r];for(var t=0;t<r.length;t++)this._digest(r[t].mean,r[t].n)};rt.prototype._cumulate=function(r){if(!(this.n===this.last_cumulate||!r&&this.CX&&this.CX>this.n/this.last_cumulate)){var t=0;this.centroids.each(function(e){e.mean_cumn=t+e.n/2,t=e.cumn=t+e.n}),this.n=this.last_cumulate=t}};rt.prototype.find_nearest=function(r){if(this.size()===0)return null;var t=this.centroids.lowerBound({mean:r}),e=t.data()===null?t.prev():t.data();if(e.mean===r||this.discrete)return e;var n=t.prev();return n&&Math.abs(n.mean-r)<Math.abs(e.mean-r)?n:e};rt.prototype._new_centroid=function(r,t,e){var n={mean:r,n:t,cumn:e};return this.centroids.insert(n),this.n+=t,n};rt.prototype._addweight=function(r,t,e){t!==r.mean&&(r.mean+=e*(t-r.mean)/(r.n+e)),r.cumn+=e,r.mean_cumn+=e/2,r.n+=e,this.n+=e};rt.prototype._digest=function(r,t){var e=this.centroids.min(),n=this.centroids.max(),o=this.find_nearest(r);if(o&&o.mean===r)this._addweight(o,r,t);else if(o===e)this._new_centroid(r,t,0);else if(o===n)this._new_centroid(r,t,this.n);else if(this.discrete)this._new_centroid(r,t,o.cumn);else{var i=o.mean_cumn/this.n,s=Math.floor(4*this.n*this.delta*i*(1-i));s-o.n>=t?this._addweight(o,r,t):this._new_centroid(r,t,o.cumn)}this._cumulate(!1),!this.discrete&&this.K&&this.size()>this.K/this.delta&&this.compress()};rt.prototype.bound_mean=function(r){var t=this.centroids.upperBound({mean:r}),e=t.prev(),n=e.mean===r?e:t.next();return[e,n]};rt.prototype.p_rank=function(r){var t=Array.isArray(r)?r:[r],e=t.map(this._p_rank,this);return Array.isArray(r)?e:e[0]};rt.prototype._p_rank=function(r){if(this.size()!==0){{if(r<this.centroids.min().mean)return 0;if(r>this.centroids.max().mean)return 1}this._cumulate(!0);var t=this.bound_mean(r),e=t[0],n=t[1];if(this.discrete)return e.cumn/this.n;var o=e.mean_cumn;return e!==n&&(o+=(r-e.mean)*(n.mean_cumn-e.mean_cumn)/(n.mean-e.mean)),o/this.n}};rt.prototype.bound_mean_cumn=function(r){this.centroids._comparator=Of;var t=this.centroids.upperBound({mean_cumn:r});this.centroids._comparator=lc;var e=t.prev(),n=e&&e.mean_cumn===r?e:t.next();return[e,n]};rt.prototype.percentile=function(r){var t=Array.isArray(r)?r:[r],e=t.map(this._percentile,this);return Array.isArray(r)?e:e[0]};rt.prototype._percentile=function(r){if(this.size()!==0){this._cumulate(!0);var t=this.n*r,e=this.bound_mean_cumn(t),n=e[0],o=e[1];return o===n||n===null||o===null?(n||o).mean:this.discrete?t<=n.cumn?n.mean:o.mean:n.mean+(t-n.mean_cumn)*(o.mean-n.mean)/(o.mean_cumn-n.mean_cumn)}};function Ff(r){var t=Math.floor(Math.random()*r.length);return r.splice(t,1)[0]}rt.prototype.compress=function(){if(!this.compressing){var r=this.toArray();for(this.reset(),this.compressing=!0;r.length>0;)this.push_centroid(Ff(r));this._cumulate(!0),this.compressing=!1}};function be(r){this.config=r||{},this.mode=this.config.mode||"auto",rt.call(this,this.mode==="cont"?r.delta:!1),this.digest_ratio=this.config.ratio||.9,this.digest_thresh=this.config.thresh||1e3,this.n_unique=0}be.prototype=Object.create(rt.prototype);be.prototype.constructor=be;be.prototype.push=function(r){rt.prototype.push.call(this,r),this.check_continuous()};be.prototype._new_centroid=function(r,t,e){this.n_unique+=1,rt.prototype._new_centroid.call(this,r,t,e)};be.prototype._addweight=function(r,t,e){r.n===1&&(this.n_unique-=1),rt.prototype._addweight.call(this,r,t,e)};be.prototype.check_continuous=function(){return this.mode!=="auto"||this.size()<this.digest_thresh?!1:this.n_unique/this.size()>this.digest_ratio?(this.mode="cont",this.discrete=!1,this.delta=this.config.delta||.01,this.compress(),!0):!1};fc.exports={TDigest:rt,Digest:be}});var H0={};Pt(H0,{LIBP2P_DEVTOOLS_METRICS_KEY:()=>Vl,SOURCE_CONTENT_SCRIPT:()=>K0,SOURCE_DEVTOOLS:()=>Fl,SOURCE_METRICS:()=>Kl,SOURCE_SERVICE_WORKER:()=>F0,devToolsMetrics:()=>V0,valueCodecs:()=>Ps});var yn=Symbol.for("@libp2p/peer-id");function Os(r){return!!r?.[yn]}var Fs;(function(r){r.Accept="accept",r.Ignore="ignore",r.Reject="reject"})(Fs||(Fs={}));var Jl=Symbol.for("@libp2p/pubsub");function xn(r){return!!r?.[Jl]}var zt=class extends Error{static name="InvalidParametersError";constructor(t="Invalid parameters"){super(t),this.name="InvalidParametersError"}},bn=class extends Error{static name="InvalidPublicKeyError";constructor(t="Invalid public key"){super(t),this.name="InvalidPublicKeyError"}};var wn=class extends Error{static name="InvalidCIDError";constructor(t="Invalid CID"){super(t),this.name="InvalidCIDError"}},En=class extends Error{static name="InvalidMultihashError";constructor(t="Invalid Multihash"){super(t),this.name="InvalidMultihashError"}};var Br=class extends Error{static name="UnsupportedKeyTypeError";constructor(t="Unsupported key type"){super(t),this.name="UnsupportedKeyTypeError"}};function Ks(r){return r!=null&&typeof r.start=="function"&&typeof r.stop=="function"}async function Vs(...r){let t=[];for(let e of r)Ks(e)&&t.push(e);await Promise.all(t.map(async e=>{e.beforeStart!=null&&await e.beforeStart()})),await Promise.all(t.map(async e=>{await e.start()})),await Promise.all(t.map(async e=>{e.afterStart!=null&&await e.afterStart()}))}async function Hs(...r){let t=[];for(let e of r)Ks(e)&&t.push(e);await Promise.all(t.map(async e=>{e.beforeStop!=null&&await e.beforeStop()})),await Promise.all(t.map(async e=>{await e.stop()})),await Promise.all(t.map(async e=>{e.afterStop!=null&&await e.afterStop()}))}var ye=Symbol.for("@libp2p/service-capabilities"),Z0=Symbol.for("@libp2p/service-dependencies");var zo={};Pt(zo,{base32:()=>Wt,base32hex:()=>uf,base32hexpad:()=>ff,base32hexpadupper:()=>df,base32hexupper:()=>lf,base32pad:()=>cf,base32padupper:()=>af,base32upper:()=>sf,base32z:()=>hf});var ym=new Uint8Array(0);function zs(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function ce(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function qs(r){return new TextEncoder().encode(r)}function $s(r){return new TextDecoder().decode(r)}function tf(r,t){if(r.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),n=0;n<e.length;n++)e[n]=255;for(var o=0;o<r.length;o++){var i=r.charAt(o),s=i.charCodeAt(0);if(e[s]!==255)throw new TypeError(i+" is ambiguous");e[s]=o}var c=r.length,a=r.charAt(0),l=Math.log(c)/Math.log(256),u=Math.log(256)/Math.log(c);function f(w){if(w instanceof Uint8Array||(ArrayBuffer.isView(w)?w=new Uint8Array(w.buffer,w.byteOffset,w.byteLength):Array.isArray(w)&&(w=Uint8Array.from(w))),!(w instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(w.length===0)return"";for(var g=0,d=0,b=0,A=w.length;b!==A&&w[b]===0;)b++,g++;for(var m=(A-b)*u+1>>>0,C=new Uint8Array(m);b!==A;){for(var N=w[b],P=0,k=m-1;(N!==0||P<d)&&k!==-1;k--,P++)N+=256*C[k]>>>0,C[k]=N%c>>>0,N=N/c>>>0;if(N!==0)throw new Error("Non-zero carry");d=P,b++}for(var T=m-d;T!==m&&C[T]===0;)T++;for(var L=a.repeat(g);T<m;++T)L+=r.charAt(C[T]);return L}function h(w){if(typeof w!="string")throw new TypeError("Expected String");if(w.length===0)return new Uint8Array;var g=0;if(w[g]!==" "){for(var d=0,b=0;w[g]===a;)d++,g++;for(var A=(w.length-g)*l+1>>>0,m=new Uint8Array(A);w[g];){var C=e[w.charCodeAt(g)];if(C===255)return;for(var N=0,P=A-1;(C!==0||N<b)&&P!==-1;P--,N++)C+=c*m[P]>>>0,m[P]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");b=N,g++}if(w[g]!==" "){for(var k=A-b;k!==A&&m[k]===0;)k++;for(var T=new Uint8Array(d+(A-k)),L=d;k!==A;)T[L++]=m[k++];return T}}}function x(w){var g=h(w);if(g)return g;throw new Error(`Non-${t} character`)}return{encode:f,decodeUnsafe:h,decode:x}}var ef=tf,rf=ef,js=rf;var Fo=class{name;prefix;baseEncode;constructor(t,e,n){this.name=t,this.prefix=e,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},Ko=class{name;prefix;baseDecode;prefixCodePoint;constructor(t,e,n){this.name=t,this.prefix=e;let o=e.codePointAt(0);if(o===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=o,this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return Zs(this,t)}},Vo=class{decoders;constructor(t){this.decoders=t}or(t){return Zs(this,t)}decode(t){let e=t[0],n=this.decoders[e];if(n!=null)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Zs(r,t){return new Vo({...r.decoders??{[r.prefix]:r},...t.decoders??{[t.prefix]:t}})}var Ho=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,e,n,o){this.name=t,this.prefix=e,this.baseEncode=n,this.baseDecode=o,this.encoder=new Fo(t,e,n),this.decoder=new Ko(t,e,o)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function Ge({name:r,prefix:t,encode:e,decode:n}){return new Ho(r,t,e,n)}function xe({name:r,prefix:t,alphabet:e}){let{encode:n,decode:o}=js(e,r);return Ge({prefix:t,name:r,encode:n,decode:i=>ce(o(i))})}function nf(r,t,e,n){let o={};for(let u=0;u<t.length;++u)o[t[u]]=u;let i=r.length;for(;r[i-1]==="=";)--i;let s=new Uint8Array(i*e/8|0),c=0,a=0,l=0;for(let u=0;u<i;++u){let f=o[r[u]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<e|f,c+=e,c>=8&&(c-=8,s[l++]=255&a>>c)}if(c>=e||(255&a<<8-c)!==0)throw new SyntaxError("Unexpected end of data");return s}function of(r,t,e){let n=t[t.length-1]==="=",o=(1<<e)-1,i="",s=0,c=0;for(let a=0;a<r.length;++a)for(c=c<<8|r[a],s+=8;s>e;)s-=e,i+=t[o&c>>s];if(s!==0&&(i+=t[o&c<<e-s]),n)for(;(i.length*e&7)!==0;)i+="=";return i}function st({name:r,prefix:t,bitsPerChar:e,alphabet:n}){return Ge({prefix:t,name:r,encode(o){return of(o,n,e)},decode(o){return nf(o,n,e,r)}})}var Wt=st({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),sf=st({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),cf=st({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),af=st({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),uf=st({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),lf=st({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),ff=st({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),df=st({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),hf=st({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var qo={};Pt(qo,{base58btc:()=>et,base58flickr:()=>pf});var et=xe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),pf=xe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var $o={};Pt($o,{base64:()=>ne,base64pad:()=>mf,base64url:()=>gf,base64urlpad:()=>yf});var ne=st({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),mf=st({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),gf=st({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),yf=st({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});function xf(r,t){try{if(typeof r=="string"&&r.length>0)return bf(r);if(typeof r=="number"&&isFinite(r))return t?.long?Ef(r):wf(r);throw new Error("Value is not a string or number.")}catch(e){let n=vf(e)?`${e.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function bf(r){if(r=String(r),r.length>100)throw new Error("Value exceeds the maximum length of 100 characters.");let t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(!t)return NaN;let e=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return e*315576e5;case"weeks":case"week":case"w":return e*6048e5;case"days":case"day":case"d":return e*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return e*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return e*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return e*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return e;default:throw new Error(`The unit ${n} was matched, but no matching case exists.`)}}var Sn=xf;function wf(r){let t=Math.abs(r);return t>=864e5?`${Math.round(r/864e5)}d`:t>=36e5?`${Math.round(r/36e5)}h`:t>=6e4?`${Math.round(r/6e4)}m`:t>=1e3?`${Math.round(r/1e3)}s`:`${r}ms`}function Ef(r){let t=Math.abs(r);return t>=864e5?vn(r,t,864e5,"day"):t>=36e5?vn(r,t,36e5,"hour"):t>=6e4?vn(r,t,6e4,"minute"):t>=1e3?vn(r,t,1e3,"second"):`${r} ms`}function vn(r,t,e,n){let o=t>=e*1.5;return`${Math.round(r/e)} ${n}${o?"s":""}`}function vf(r){return typeof r=="object"&&r!==null&&"message"in r}function Go(r){e.debug=e,e.default=e,e.coerce=a,e.disable=i,e.enable=o,e.enabled=s,e.humanize=Sn,e.destroy=l,Object.keys(r).forEach(u=>{e[u]=r[u]}),e.names=[],e.skips=[],e.formatters={};function t(u){let f=0;for(let h=0;h<u.length;h++)f=(f<<5)-f+u.charCodeAt(h),f|=0;return e.colors[Math.abs(f)%e.colors.length]}e.selectColor=t;function e(u){let f,h=null,x,w;function g(...d){if(!g.enabled)return;let b=g,A=Number(new Date),m=A-(f||A);b.diff=m,b.prev=f,b.curr=A,f=A,d[0]=e.coerce(d[0]),typeof d[0]!="string"&&d.unshift("%O");let C=0;d[0]=d[0].replace(/%([a-zA-Z%])/g,(P,k)=>{if(P==="%%")return"%";C++;let T=e.formatters[k];if(typeof T=="function"){let L=d[C];P=T.call(b,L),d.splice(C,1),C--}return P}),e.formatArgs.call(b,d),(b.log||e.log).apply(b,d)}return g.namespace=u,g.useColors=e.useColors(),g.color=e.selectColor(u),g.extend=n,g.destroy=e.destroy,Object.defineProperty(g,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(x!==e.namespaces&&(x=e.namespaces,w=e.enabled(u)),w),set:d=>{h=d}}),typeof e.init=="function"&&e.init(g),g}function n(u,f){let h=e(this.namespace+(typeof f>"u"?":":f)+u);return h.log=this.log,h}function o(u){e.save(u),e.namespaces=u,e.names=[],e.skips=[];let f,h=(typeof u=="string"?u:"").split(/[\s,]+/),x=h.length;for(f=0;f<x;f++)h[f]&&(u=h[f].replace(/\*/g,".*?"),u[0]==="-"?e.skips.push(new RegExp("^"+u.substr(1)+"$")):e.names.push(new RegExp("^"+u+"$")))}function i(){let u=[...e.names.map(c),...e.skips.map(c).map(f=>"-"+f)].join(",");return e.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let f,h;for(f=0,h=e.skips.length;f<h;f++)if(e.skips[f].test(u))return!1;for(f=0,h=e.names.length;f<h;f++)if(e.names[f].test(u))return!0;return!1}function c(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}function a(u){return u instanceof Error?u.stack??u.message:u}function l(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return e.setupFormatters(e.formatters),e.enable(e.load()),e}var An=kf(),Sf=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Af(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/(edge|trident)\/(\d+)/)!=null?!1:typeof document<"u"&&document.documentElement?.style?.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/firefox\/(\d+)/)!=null&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/applewebkit\/(\d+)/)}function _f(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+Sn(this.diff),!this.useColors)return;let t="color: "+this.color;r.splice(1,0,t,"color: inherit");let e=0,n=0;r[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(e++,o==="%c"&&(n=e))}),r.splice(n,0,t)}var Cf=console.debug??console.log??(()=>{});function Bf(r){try{r?An?.setItem("debug",r):An?.removeItem("debug")}catch{}}function If(){let r;try{r=An?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function kf(){try{return localStorage}catch{}}function Tf(r){r.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}}var Ws=Go({formatArgs:_f,save:Bf,load:If,useColors:Af,setupFormatters:Tf,colors:Sf,storage:An,log:Cf});var wt=Ws;wt.formatters.b=r=>r==null?"undefined":et.baseEncode(r);wt.formatters.t=r=>r==null?"undefined":Wt.baseEncode(r);wt.formatters.m=r=>r==null?"undefined":ne.baseEncode(r);wt.formatters.p=r=>r==null?"undefined":r.toString();wt.formatters.c=r=>r==null?"undefined":r.toString();wt.formatters.k=r=>r==null?"undefined":r.toString();wt.formatters.a=r=>r==null?"undefined":r.toString();wt.formatters.e=r=>r==null?"undefined":Ys(r.stack)??Ys(r.message)??r.toString();function Uf(r){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=r,t.destroy=()=>!0,t.extend=()=>t,t}function Xs(r){let t=Uf(`${r}:trace`);return wt.enabled(`${r}:trace`)&&wt.names.map(e=>e.toString()).find(e=>e.includes(":trace"))!=null&&(t=wt(`${r}:trace`)),Object.assign(wt(r),{error:wt(`${r}:error`),trace:t})}function Qs(){wt.disable()}function Js(r){wt.enable(r)}function Ys(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}function Lf(r){let[t,e]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>t.next(),push:o=>{n.push(o)},next:()=>n.length>0?{done:!1,value:n.shift()}:t.next(),[e](){return this}}}var tc=Lf;function Pf(r){return r[Symbol.asyncIterator]!=null}function ec(r){return r?.then!=null}function Df(r,t){let e=0;if(Pf(r))return async function*(){for await(let a of r){let l=t(a,e++);ec(l)&&await l,yield a}}();let n=tc(r),{value:o,done:i}=n.next();if(i===!0)return function*(){}();if(typeof t(o,e++)?.then=="function")return async function*(){yield o;for await(let a of n){let l=t(a,e++);ec(l)&&await l,yield a}}();let c=t;return function*(){yield o;for(let a of n)c(a,e++),yield a}()}var jo=Df;var hc=Xl(dc(),1),Kf=Xs("libp2p:simple-metrics"),Tr=class{value=0;update(t){this.value=t}increment(t=1){this.value+=t}decrement(t=1){this.value-=t}reset(){this.value=0}timer(){let t=Date.now();return()=>{this.value=Date.now()-t}}},Ur=class{values={};update(t){Object.entries(t).forEach(([e,n])=>{this.values[e]=n})}increment(t){Object.entries(t).forEach(([e,n])=>{this.values[e]=this.values[e]??0;let o=typeof n=="number"?n:1;this.values[e]+=Number(o)})}decrement(t){Object.entries(t).forEach(([e,n])=>{this.values[e]=this.values[e]??0;let o=typeof n=="number"?n:1;this.values[e]-=Number(o)})}reset(){this.values={}}timer(t){let e=Date.now();return()=>{this.values[t]=Date.now()-e}}},Lr=class{bucketValues=new Map;countValue=0;sumValue=0;constructor(t){let e=[...t.buckets??[.005,.01,.025,.05,.1,.25,.5,1,2.5,5,10],1/0];for(let n of e)this.bucketValues.set(n,0)}observe(t){this.countValue++,this.sumValue+=t;for(let[e,n]of this.bucketValues.entries())t<=e&&this.bucketValues.set(e,n+1)}reset(){this.countValue=0,this.sumValue=0;for(let t of this.bucketValues.keys())this.bucketValues.set(t,0)}timer(){let t=Date.now();return()=>{this.observe(Date.now()-t)}}},Bn=class{histograms={};constructor(t){this.histograms={}}observe(t){for(let[e,n]of Object.entries(t))this.histograms[e]===void 0&&(this.histograms[e]=new Lr({})),this.histograms[e].observe(n)}reset(){for(let t of Object.values(this.histograms))t.reset()}timer(t){let e=Date.now();return()=>{this.observe({[t]:Date.now()-e})}}},Pr=class{sumValue=0;countValue=0;percentiles;tdigest=new hc.TDigest(.01);compressCount;constructor(t){this.percentiles=t.percentiles??[.01,.05,.5,.9,.95,.99,.999],this.compressCount=t.compressCount??1e3}observe(t){this.sumValue+=t,this.countValue++,this.tdigest.push(t),this.tdigest.size()>this.compressCount&&this.tdigest.compress()}reset(){this.sumValue=0,this.countValue=0,this.tdigest.reset()}timer(){let t=Date.now();return()=>{this.observe(Date.now()-t)}}},In=class{summaries={};opts;constructor(t){this.summaries={},this.opts=t}observe(t){for(let[e,n]of Object.entries(t))this.summaries[e]===void 0&&(this.summaries[e]=new Pr(this.opts)),this.summaries[e].observe(n)}reset(){for(let t of Object.values(this.summaries))t.reset()}timer(t){let e=Date.now();return()=>{this.observe({[t]:Date.now()-e})}}},Wo=class{metrics=new Map;transferStats;started;interval;intervalMs;onMetrics;constructor(t,e){this.started=!1,this._emitMetrics=this._emitMetrics.bind(this),this.intervalMs=e.intervalMs??1e3,this.onMetrics=e.onMetrics,this.transferStats=new Map}[Symbol.toStringTag]="@libp2p/metrics-simple";[ye]=["@libp2p/metrics"];isStarted(){return this.started}start(){this.started=!0,this.interval=setInterval(this._emitMetrics,this.intervalMs)}stop(){this.started=!1,clearInterval(this.interval)}_emitMetrics(){Promise.resolve().then(async()=>{let t={};for(let[e,n]of this.metrics.entries())n instanceof Tr?t[e]=n.value:n instanceof Ur?t[e]=n.values:n instanceof Lr?t[e]={count:n.countValue,sum:n.sumValue,buckets:{...n.bucketValues}}:n instanceof Bn?t[e]={...Object.fromEntries(Object.entries(n.histograms).map(([o,i])=>[o,{count:i.countValue,sum:i.sumValue,buckets:{...i.bucketValues}}]))}:n instanceof Pr?t[e]={count:n.countValue,sum:n.sumValue,percentiles:Object.fromEntries(n.percentiles.map(o=>[o,n.tdigest.percentile(o)]))}:n instanceof In?t[e]={...Object.fromEntries(Object.entries(n.summaries).map(([o,i])=>[o,{count:i.countValue,sum:i.sumValue,percentiles:Object.fromEntries(i.percentiles.map(s=>[s,i.tdigest.percentile(s)]))}]))}:t[e]=await n();this.onMetrics(structuredClone(t))}).catch(t=>{Kf.error("could not invoke onMetrics callback",t)})}_incrementValue(t,e){let n=this.transferStats.get(t)??0;this.transferStats.set(t,n+e)}_track(t,e){let n=this,o=t.sink;t.sink=async function(c){await o(jo(c,a=>{n._incrementValue(`${e} sent`,a.byteLength)}))};let i=t.source;t.source=jo(i,s=>{n._incrementValue(`${e} received`,s.byteLength)})}trackMultiaddrConnection(t){this._track(t,"global")}trackProtocolStream(t,e){t.protocol!=null&&this._track(t,t.protocol)}registerMetric(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Tr;return this.metrics.set(t,n),n}registerMetricGroup(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Ur;return this.metrics.set(t,n),n}registerCounter(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Tr;return this.metrics.set(t,n),n}registerCounterGroup(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Ur;return this.metrics.set(t,n),n}registerHistogram(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Lr(e);return this.metrics.set(t,n),n}registerHistogramGroup(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Bn(e);return this.metrics.set(t,n),n}registerSummary(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new Pr(e);return this.metrics.set(t,n),n}registerSummaryGroup(t,e={}){if(t==null||t.trim()==="")throw new Error("Metric name is required");if(e?.calculate!=null){this.metrics.set(t,e.calculate);return}let n=new In(e);return this.metrics.set(t,n),n}createTrace(){}traceFunction(t,e){return e}};function pc(r){return t=>new Wo(t,r)}function Et(){let r={};return r.promise=new Promise((t,e)=>{r.resolve=t,r.reject=e}),r}var kn=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||(t-1&t)!==0)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},We=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new kn(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let e=this.head;this.head=e.next=new kn(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let e=this.tail.next;this.tail.next=null,this.tail=e,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};var Yo=class extends Error{type;code;constructor(t,e){super(t??"The operation was aborted"),this.type="aborted",this.code=e??"ABORT_ERR"}};function Ye(r={}){return Vf(e=>{let n=e.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function Vf(r,t){t=t??{};let e=t.onEnd,n=new We,o,i,s,c=Et(),a=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((d,b)=>{i=A=>{i=null,n.push(A);try{d(r(n))}catch(m){b(m)}return o}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{c.resolve(),c=Et()})}},l=d=>i!=null?i(d):(n.push(d),o),u=d=>(n=new We,i!=null?i({error:d}):(n.push({error:d}),o)),f=d=>{if(s)return o;if(t?.objectMode!==!0&&d?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return l({done:!1,value:d})},h=d=>s?o:(s=!0,d!=null?u(d):l({done:!0})),x=()=>(n=new We,h(),{done:!0}),w=d=>(h(d),{done:!0});if(o={[Symbol.asyncIterator](){return this},next:a,return:x,throw:w,push:f,end:h,get readableLength(){return n.size},onEmpty:async d=>{let b=d?.signal;if(b?.throwIfAborted(),n.isEmpty())return;let A,m;b!=null&&(A=new Promise((C,N)=>{m=()=>{N(new Yo)},b.addEventListener("abort",m)}));try{await Promise.race([c.promise,A])}finally{m!=null&&b!=null&&b?.removeEventListener("abort",m)}}},e==null)return o;let g=o;return o={[Symbol.asyncIterator](){return this},next(){return g.next()},throw(d){return g.throw(d),e!=null&&(e(d),e=void 0),{done:!0}},return(){return g.return(),e!=null&&(e(),e=void 0),{done:!0}},push:f,end(d){return g.end(d),e!=null&&(e(d),e=void 0),o},get readableLength(){return g.readableLength},onEmpty:d=>g.onEmpty(d)},o}var Tn=class extends Error{type;code;constructor(t,e,n){super(t??"The operation was aborted"),this.type="aborted",this.name=n??"AbortError",this.code=e??"ABORT_ERR"}};async function mc(r,t,e){if(t==null)return r;if(t.aborted)return r.catch(()=>{}),Promise.reject(new Tn(e?.errorMessage,e?.errorCode,e?.errorName));let n,o=new Tn(e?.errorMessage,e?.errorCode,e?.errorName);try{return await Promise.race([r,new Promise((i,s)=>{n=()=>{s(o)},t.addEventListener("abort",n)})])}finally{n!=null&&t.removeEventListener("abort",n)}}var Xo=class{readNext;haveNext;ended;nextResult;error;constructor(){this.ended=!1,this.readNext=Et(),this.haveNext=Et()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("HaveNext promise resolved but nextResult was undefined");let t=this.nextResult;return this.nextResult=void 0,this.readNext.resolve(),this.readNext=Et(),t}async throw(t){return this.ended=!0,this.error=t,t!=null&&(this.haveNext.promise.catch(()=>{}),this.haveNext.reject(t)),{done:!0,value:void 0}}async return(){let t={done:!0,value:void 0};return this.ended=!0,this.nextResult=t,this.haveNext.resolve(),t}async push(t,e){await this._push(t,e)}async end(t,e){t!=null?await this.throw(t):await this._push(void 0,e)}async _push(t,e){if(t!=null&&this.ended)throw this.error??new Error("Cannot push value onto an ended pushable");for(;this.nextResult!=null;)await this.readNext.promise;t!=null?this.nextResult={done:!1,value:t}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=Et(),await mc(this.readNext.promise,e?.signal,e)}};function gc(){return new Xo}function Hf(r){return r[Symbol.asyncIterator]!=null}async function zf(r,t){try{await Promise.all(r.map(async e=>{for await(let n of e)await t.push(n)})),await t.end()}catch(e){await t.end(e).catch(()=>{})}}async function*qf(r){let t=gc();zf(r,t).catch(()=>{}),yield*t}function*$f(r){for(let t of r)yield*t}function Gf(...r){let t=[];for(let e of r)Hf(e)||t.push(e);return t.length===r.length?$f(t):qf(r)}var yc=Gf;function xc(r,...t){if(r==null)throw new Error("Empty pipeline");if(Qo(r)){let n=r;r=()=>n.source}else if(wc(r)||bc(r)){let n=r;r=()=>n}let e=[r,...t];if(e.length>1&&Qo(e[e.length-1])&&(e[e.length-1]=e[e.length-1].sink),e.length>2)for(let n=1;n<e.length-1;n++)Qo(e[n])&&(e[n]=Zf(e[n]));return jf(...e)}var jf=(...r)=>{let t;for(;r.length>0;)t=r.shift()(t);return t},bc=r=>r?.[Symbol.asyncIterator]!=null,wc=r=>r?.[Symbol.iterator]!=null,Qo=r=>r==null?!1:r.sink!=null&&r.source!=null,Zf=r=>t=>{let e=r.sink(t);if(e?.then!=null){let n=Ye({objectMode:!0});e.then(()=>{n.end()},s=>{n.end(s)});let o,i=r.source;if(bc(i))o=async function*(){yield*i,n.end()};else if(wc(i))o=function*(){yield*i,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return yc(n,o())}return r.source};function Un(r){let t=new globalThis.AbortController;function e(){t.abort();for(let i of r)i?.removeEventListener!=null&&i.removeEventListener("abort",e)}for(let i of r){if(i?.aborted===!0){e();break}i?.addEventListener!=null&&i.addEventListener("abort",e)}function n(){for(let i of r)i?.removeEventListener!=null&&i.removeEventListener("abort",e)}let o=t.signal;return o.clear=n,o}function Xt(r=0){return new Uint8Array(r)}function vt(r=0){return new Uint8Array(r)}var Wf=Math.pow(2,7),Yf=Math.pow(2,14),Xf=Math.pow(2,21),Jo=Math.pow(2,28),ti=Math.pow(2,35),ei=Math.pow(2,42),ri=Math.pow(2,49),j=128,St=127;function ht(r){if(r<Wf)return 1;if(r<Yf)return 2;if(r<Xf)return 3;if(r<Jo)return 4;if(r<ti)return 5;if(r<ei)return 6;if(r<ri)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function ni(r,t,e=0){switch(ht(r)){case 8:t[e++]=r&255|j,r/=128;case 7:t[e++]=r&255|j,r/=128;case 6:t[e++]=r&255|j,r/=128;case 5:t[e++]=r&255|j,r/=128;case 4:t[e++]=r&255|j,r>>>=7;case 3:t[e++]=r&255|j,r>>>=7;case 2:t[e++]=r&255|j,r>>>=7;case 1:{t[e++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return t}function Qf(r,t,e=0){switch(ht(r)){case 8:t.set(e++,r&255|j),r/=128;case 7:t.set(e++,r&255|j),r/=128;case 6:t.set(e++,r&255|j),r/=128;case 5:t.set(e++,r&255|j),r/=128;case 4:t.set(e++,r&255|j),r>>>=7;case 3:t.set(e++,r&255|j),r>>>=7;case 2:t.set(e++,r&255|j),r>>>=7;case 1:{t.set(e++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return t}function oi(r,t){let e=r[t],n=0;if(n+=e&St,e<j||(e=r[t+1],n+=(e&St)<<7,e<j)||(e=r[t+2],n+=(e&St)<<14,e<j)||(e=r[t+3],n+=(e&St)<<21,e<j)||(e=r[t+4],n+=(e&St)*Jo,e<j)||(e=r[t+5],n+=(e&St)*ti,e<j)||(e=r[t+6],n+=(e&St)*ei,e<j)||(e=r[t+7],n+=(e&St)*ri,e<j))return n;throw new RangeError("Could not decode varint")}function Jf(r,t){let e=r.get(t),n=0;if(n+=e&St,e<j||(e=r.get(t+1),n+=(e&St)<<7,e<j)||(e=r.get(t+2),n+=(e&St)<<14,e<j)||(e=r.get(t+3),n+=(e&St)<<21,e<j)||(e=r.get(t+4),n+=(e&St)*Jo,e<j)||(e=r.get(t+5),n+=(e&St)*ti,e<j)||(e=r.get(t+6),n+=(e&St)*ei,e<j)||(e=r.get(t+7),n+=(e&St)*ri,e<j))return n;throw new RangeError("Could not decode varint")}function we(r,t,e=0){return t==null&&(t=vt(ht(r))),t instanceof Uint8Array?ni(r,t,e):Qf(r,t,e)}function ae(r,t=0){return r instanceof Uint8Array?oi(r,t):Jf(r,t)}function Dt(r,t){t==null&&(t=r.reduce((o,i)=>o+i.length,0));let e=vt(t),n=0;for(let o of r)e.set(o,n),n+=o.length;return e}function Nt(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}var vc=Symbol.for("@achingbrain/uint8arraylist");function Ec(r,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let e=0;for(let n of r){let o=e+n.byteLength;if(t<o)return{buf:n,index:t-e};e=o}throw new RangeError("index is out of bounds")}function Pn(r){return!!r?.[vc]}var yt=class r{bufs;length;[vc]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let e=0;for(let n of t)if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.push(n);else if(Pn(n))e+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}prepend(...t){this.prependAll(t)}prependAll(t){let e=0;for(let n of t.reverse())if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.unshift(n);else if(Pn(n))e+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}get(t){let e=Ec(this.bufs,t);return e.buf[e.index]}set(t,e){let n=Ec(this.bufs,t);n.buf[n.index]=e}write(t,e=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(e+n,t[n]);else if(Pn(t))for(let n=0;n<t.length;n++)this.set(e+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,e){let{bufs:n,length:o}=this._subList(t,e);return Dt(n,o)}subarray(t,e){let{bufs:n,length:o}=this._subList(t,e);return n.length===1?n[0]:Dt(n,o)}sublist(t,e){let{bufs:n,length:o}=this._subList(t,e),i=new r;return i.length=o,i.bufs=[...n],i}_subList(t,e){if(t=t??0,e=e??this.length,t<0&&(t=this.length+t),e<0&&(e=this.length+e),t<0||e>this.length)throw new RangeError("index is out of bounds");if(t===e)return{bufs:[],length:0};if(t===0&&e===this.length)return{bufs:this.bufs,length:this.length};let n=[],o=0;for(let i=0;i<this.bufs.length;i++){let s=this.bufs[i],c=o,a=c+s.byteLength;if(o=a,t>=a)continue;let l=t>=c&&t<a,u=e>c&&e<=a;if(l&&u){if(t===c&&e===a){n.push(s);break}let f=t-c;n.push(s.subarray(f,f+(e-t)));break}if(l){if(t===0){n.push(s);continue}n.push(s.subarray(t-c));continue}if(u){if(e===a){n.push(s);break}n.push(s.subarray(0,e-c));break}n.push(s)}return{bufs:n,length:e-t}}indexOf(t,e=0){if(!Pn(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(e=Number(e??0),isNaN(e)&&(e=0),e<0&&(e=this.length+e),e<0&&(e=0),t.length===0)return e>this.length?this.length:e;let o=n.byteLength;if(o===0)throw new TypeError("search must be at least 1 byte long");let i=256,s=new Int32Array(i);for(let f=0;f<i;f++)s[f]=-1;for(let f=0;f<o;f++)s[n[f]]=f;let c=s,a=this.byteLength-n.byteLength,l=n.byteLength-1,u;for(let f=e;f<=a;f+=u){u=0;for(let h=l;h>=0;h--){let x=this.get(f+h);if(n[h]!==x){u=Math.max(1,h-c[x]);break}}if(u===0)return f}return-1}getInt8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getInt8(0)}setInt8(t,e){let n=vt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,e),this.write(n,t)}getInt16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,e)}setInt16(t,e,n){let o=Xt(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt16(0,e,n),this.write(o,t)}getInt32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,e)}setInt32(t,e,n){let o=Xt(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt32(0,e,n),this.write(o,t)}getBigInt64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,e)}setBigInt64(t,e,n){let o=Xt(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigInt64(0,e,n),this.write(o,t)}getUint8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getUint8(0)}setUint8(t,e){let n=vt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,e),this.write(n,t)}getUint16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,e)}setUint16(t,e,n){let o=Xt(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint16(0,e,n),this.write(o,t)}getUint32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,e)}setUint32(t,e,n){let o=Xt(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint32(0,e,n),this.write(o,t)}getBigUint64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,e)}setBigUint64(t,e,n){let o=Xt(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigUint64(0,e,n),this.write(o,t)}getFloat32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,e)}setFloat32(t,e,n){let o=Xt(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat32(0,e,n),this.write(o,t)}getFloat64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,e)}setFloat64(t,e,n){let o=Xt(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat64(0,e,n),this.write(o,t)}equals(t){if(t==null||!(t instanceof r)||t.bufs.length!==this.bufs.length)return!1;for(let e=0;e<this.bufs.length;e++)if(!Nt(this.bufs[e],t.bufs[e]))return!1;return!0}static fromUint8Arrays(t,e){let n=new r;return n.bufs=t,e==null&&(e=t.reduce((o,i)=>o+i.byteLength,0)),n.length=e,n}};var Dn=class extends Error{name="InvalidMessageLengthError";code="ERR_INVALID_MSG_LENGTH"},Xe=class extends Error{name="InvalidDataLengthError";code="ERR_MSG_DATA_TOO_LONG"},Nn=class extends Error{name="InvalidDataLengthLengthError";code="ERR_MSG_LENGTH_TOO_LONG"},Dr=class extends Error{name="UnexpectedEOFError";code="ERR_UNEXPECTED_EOF"};function Rn(r){return r[Symbol.asyncIterator]!=null}function Sc(r,t){if(r.byteLength>t)throw new Xe("Message length too long")}var On=r=>{let t=ht(r),e=vt(t);return we(r,e),On.bytes=t,e};On.bytes=0;function Fn(r,t){t=t??{};let e=t.lengthEncoder??On,n=t?.maxDataLength??4194304;function*o(i){Sc(i,n);let s=e(i.byteLength);s instanceof Uint8Array?yield s:yield*s,i instanceof Uint8Array?yield i:yield*i}return Rn(r)?async function*(){for await(let i of r)yield*o(i)}():function*(){for(let i of r)yield*o(i)}()}Fn.single=(r,t)=>{t=t??{};let e=t.lengthEncoder??On,n=t?.maxDataLength??4194304;return Sc(r,n),new yt(e(r.byteLength),r)};var Le;(function(r){r[r.LENGTH=0]="LENGTH",r[r.DATA=1]="DATA"})(Le||(Le={}));var ii=r=>{let t=ae(r);return ii.bytes=ht(t),t};ii.bytes=0;function Nr(r,t){let e=new yt,n=Le.LENGTH,o=-1,i=t?.lengthDecoder??ii,s=t?.maxLengthLength??8,c=t?.maxDataLength??4194304;function*a(){for(;e.byteLength>0;){if(n===Le.LENGTH)try{if(o=i(e),o<0)throw new Dn("Invalid message length");if(o>c)throw new Xe("Message length too long");let l=i.bytes;e.consume(l),t?.onLength!=null&&t.onLength(o),n=Le.DATA}catch(l){if(l instanceof RangeError){if(e.byteLength>s)throw new Nn("Message length length too long");break}throw l}if(n===Le.DATA){if(e.byteLength<o)break;let l=e.sublist(0,o);e.consume(o),t?.onData!=null&&t.onData(l),yield l,n=Le.LENGTH}}}return Rn(r)?async function*(){for await(let l of r)e.append(l),yield*a();if(e.byteLength>0)throw new Dr("Unexpected end of input")}():function*(){for(let l of r)e.append(l),yield*a();if(e.byteLength>0)throw new Dr("Unexpected end of input")}()}Nr.fromReader=(r,t)=>{let e=1,n=async function*(){for(;;)try{let{done:i,value:s}=await r.next(e);if(i===!0)return;s!=null&&(yield s)}catch(i){if(i.code==="ERR_UNDER_READ")return{done:!0,value:null};throw i}finally{e=1}}();return Nr(n,{...t??{},onLength:i=>{e=i}})};var Ac="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var Qe=(r=21)=>{let t="",e=crypto.getRandomValues(new Uint8Array(r|=0));for(;r--;)t+=Ac[e[r]&63];return t};var Kn=class extends Error{constructor(t="Method not found"){super(t),this.name="MethodNotFoundError"}},Vn=class extends Error{constructor(t="Invocation target was not a function"){super(t),this.name="InvalidMethodError"}},Rr=class extends Error{constructor(t="Unsupported value type"){super(t),this.name="UnsupportedValueTypeError"}},Hn=class extends Error{constructor(t="Cannot reuse RPC target name"){super(t),this.name="DuplicateTargetNameError"}},Mr=class extends Error{constructor(t="Duplicate scope"){super(t),this.name="DuplicateScopeError"}},zn=class extends Error{constructor(t="Invalid return type"){super(t),this.name="InvalidReturnTypeError"}},Or=class extends Error{constructor(t="Invocation target was not a function"){super(t),this.name="InvalidInvocationTypeError"}},Je=class extends Error{constructor(t="Parent invocation scope not found"){super(t),this.name="MissingParentScopeError"}},qn=class extends Error{constructor(t="Invocation not found"){super(t),this.name="MissingInvocationError"}},$n=class extends Error{constructor(t="Callback not found"){super(t),this.name="MissingCallbackError"}};var si=new Float32Array([-0]),Ee=new Uint8Array(si.buffer);function _c(r,t,e){si[0]=r,t[e]=Ee[0],t[e+1]=Ee[1],t[e+2]=Ee[2],t[e+3]=Ee[3]}function Cc(r,t){return Ee[0]=r[t],Ee[1]=r[t+1],Ee[2]=r[t+2],Ee[3]=r[t+3],si[0]}var ci=new Float64Array([-0]),At=new Uint8Array(ci.buffer);function Bc(r,t,e){ci[0]=r,t[e]=At[0],t[e+1]=At[1],t[e+2]=At[2],t[e+3]=At[3],t[e+4]=At[4],t[e+5]=At[5],t[e+6]=At[6],t[e+7]=At[7]}function Ic(r,t){return At[0]=r[t],At[1]=r[t+1],At[2]=r[t+2],At[3]=r[t+3],At[4]=r[t+4],At[5]=r[t+5],At[6]=r[t+6],At[7]=r[t+7],ci[0]}var ed=BigInt(Number.MAX_SAFE_INTEGER),rd=BigInt(Number.MIN_SAFE_INTEGER),Rt=class r{lo;hi;constructor(t,e){this.lo=t|0,this.hi=e|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(e+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(BigInt(e)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?e===0?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return Pe;if(t<ed&&t>rd)return this.fromNumber(Number(t));let e=t<0n;e&&(t=-t);let n=t>>32n,o=t-(n<<32n);return e&&(n=~n|0n,o=~o|0n,++o>kc&&(o=0n,++n>kc&&(n=0n))),new r(Number(o),Number(n))}static fromNumber(t){if(t===0)return Pe;let e=t<0;e&&(t=-t);let n=t>>>0,o=(t-n)/4294967296>>>0;return e&&(o=~o>>>0,n=~n>>>0,++n>4294967295&&(n=0,++o>4294967295&&(o=0))),new r(n,o)}static from(t){return typeof t=="number"?r.fromNumber(t):typeof t=="bigint"?r.fromBigInt(t):typeof t=="string"?r.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new r(t.low>>>0,t.high>>>0):Pe}},Pe=new Rt(0,0);Pe.toBigInt=function(){return 0n};Pe.zzEncode=Pe.zzDecode=function(){return this};Pe.length=function(){return 1};var kc=4294967296n;function Tc(r){let t=0,e=0;for(let n=0;n<r.length;++n)e=r.charCodeAt(n),e<128?t+=1:e<2048?t+=2:(e&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function Uc(r,t,e){if(e-t<1)return"";let o,i=[],s=0,c;for(;t<e;)c=r[t++],c<128?i[s++]=c:c>191&&c<224?i[s++]=(c&31)<<6|r[t++]&63:c>239&&c<365?(c=((c&7)<<18|(r[t++]&63)<<12|(r[t++]&63)<<6|r[t++]&63)-65536,i[s++]=55296+(c>>10),i[s++]=56320+(c&1023)):i[s++]=(c&15)<<12|(r[t++]&63)<<6|r[t++]&63,s>8191&&((o??(o=[])).push(String.fromCharCode.apply(String,i)),s=0);return o!=null?(s>0&&o.push(String.fromCharCode.apply(String,i.slice(0,s))),o.join("")):String.fromCharCode.apply(String,i.slice(0,s))}function ai(r,t,e){let n=e,o,i;for(let s=0;s<r.length;++s)o=r.charCodeAt(s),o<128?t[e++]=o:o<2048?(t[e++]=o>>6|192,t[e++]=o&63|128):(o&64512)===55296&&((i=r.charCodeAt(s+1))&64512)===56320?(o=65536+((o&1023)<<10)+(i&1023),++s,t[e++]=o>>18|240,t[e++]=o>>12&63|128,t[e++]=o>>6&63|128,t[e++]=o&63|128):(t[e++]=o>>12|224,t[e++]=o>>6&63|128,t[e++]=o&63|128);return e-n}function Qt(r,t){return RangeError(`index out of range: ${r.pos} + ${t??1} > ${r.len}`)}function Gn(r,t){return(r[t-4]|r[t-3]<<8|r[t-2]<<16|r[t-1]<<24)>>>0}var ui=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,Qt(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw Qt(this,4);return Gn(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Qt(this,4);return Gn(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Qt(this,4);let t=Cc(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw Qt(this,4);let t=Ic(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),e=this.pos,n=this.pos+t;if(n>this.len)throw Qt(this,t);return this.pos+=t,e===n?new Uint8Array(0):this.buf.subarray(e,n)}string(){let t=this.bytes();return Uc(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw Qt(this,t);this.pos+=t}else do if(this.pos>=this.len)throw Qt(this);while((this.buf[this.pos++]&128)!==0);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new Rt(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw Qt(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<e*7)>>>0,t}if(this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw Qt(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw Qt(this,8);let t=Gn(this.buf,this.pos+=4),e=Gn(this.buf,this.pos+=4);return new Rt(t,e)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let t=oi(this.buf,this.pos);return this.pos+=ht(t),t}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function li(r){return new ui(r instanceof Uint8Array?r:r.subarray())}function _t(r,t,e){let n=li(r);return t.decode(n,void 0,e)}var fi={};Pt(fi,{base10:()=>nd});var nd=xe({prefix:"9",name:"base10",alphabet:"0123456789"});var di={};Pt(di,{base16:()=>od,base16upper:()=>id});var od=st({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),id=st({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var hi={};Pt(hi,{base2:()=>sd});var sd=st({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var pi={};Pt(pi,{base256emoji:()=>fd});var Pc=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),cd=Pc.reduce((r,t,e)=>(r[e]=t,r),[]),ad=Pc.reduce((r,t,e)=>{let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);return r[n]=e,r},[]);function ud(r){return r.reduce((t,e)=>(t+=cd[e],t),"")}function ld(r){let t=[];for(let e of r){let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);let o=ad[n];if(o==null)throw new Error(`Non-base256emoji character: ${e}`);t.push(o)}return new Uint8Array(t)}var fd=Ge({prefix:"\u{1F680}",name:"base256emoji",encode:ud,decode:ld});var mi={};Pt(mi,{base36:()=>Fr,base36upper:()=>dd});var Fr=xe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),dd=xe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var gi={};Pt(gi,{base8:()=>hd});var hd=st({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var yi={};Pt(yi,{identity:()=>pd});var pd=Ge({prefix:"\0",name:"identity",encode:r=>$s(r),decode:r=>qs(r)});var sy=new TextEncoder,cy=new TextDecoder;var bi={};Pt(bi,{identity:()=>Jt});var yd=Rc,Dc=128,xd=127,bd=~xd,wd=Math.pow(2,31);function Rc(r,t,e){t=t||[],e=e||0;for(var n=e;r>=wd;)t[e++]=r&255|Dc,r/=128;for(;r&bd;)t[e++]=r&255|Dc,r>>>=7;return t[e]=r|0,Rc.bytes=e-n+1,t}var Ed=xi,vd=128,Nc=127;function xi(r,n){var e=0,n=n||0,o=0,i=n,s,c=r.length;do{if(i>=c)throw xi.bytes=0,new RangeError("Could not decode varint");s=r[i++],e+=o<28?(s&Nc)<<o:(s&Nc)*Math.pow(2,o),o+=7}while(s>=vd);return xi.bytes=i-n,e}var Sd=Math.pow(2,7),Ad=Math.pow(2,14),_d=Math.pow(2,21),Cd=Math.pow(2,28),Bd=Math.pow(2,35),Id=Math.pow(2,42),kd=Math.pow(2,49),Td=Math.pow(2,56),Ud=Math.pow(2,63),Ld=function(r){return r<Sd?1:r<Ad?2:r<_d?3:r<Cd?4:r<Bd?5:r<Id?6:r<kd?7:r<Td?8:r<Ud?9:10},Pd={encode:yd,decode:Ed,encodingLength:Ld},Dd=Pd,Kr=Dd;function Vr(r,t=0){return[Kr.decode(r,t),Kr.decode.bytes]}function tr(r,t,e=0){return Kr.encode(r,t,e),t}function er(r){return Kr.encodingLength(r)}function De(r,t){let e=t.byteLength,n=er(r),o=n+er(e),i=new Uint8Array(o+e);return tr(r,i,0),tr(e,i,n),i.set(t,o),new rr(r,e,t,i)}function ue(r){let t=ce(r),[e,n]=Vr(t),[o,i]=Vr(t.subarray(n)),s=t.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new rr(e,o,s,t)}function Mc(r,t){if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&zs(r.bytes,e.bytes)}}var rr=class{code;size;digest;bytes;constructor(t,e,n,o){this.code=t,this.size=e,this.digest=n,this.bytes=o}};var Oc=0,Nd="identity",Fc=ce;function Rd(r){return De(Oc,Fc(r))}var Jt={code:Oc,name:Nd,encode:Fc,digest:Rd};var vi={};Pt(vi,{sha256:()=>Hr,sha512:()=>Md});function Ei({name:r,code:t,encode:e}){return new wi(r,t,e)}var wi=class{name;code;encode;constructor(t,e,n){this.name=t,this.code=e,this.encode=n}digest(t){if(t instanceof Uint8Array){let e=this.encode(t);return e instanceof Uint8Array?De(this.code,e):e.then(n=>De(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Vc(r){return async t=>new Uint8Array(await crypto.subtle.digest(r,t))}var Hr=Ei({name:"sha2-256",code:18,encode:Vc("SHA-256")}),Md=Ei({name:"sha2-512",code:19,encode:Vc("SHA-512")});function Hc(r,t){let{bytes:e,version:n}=r;switch(n){case 0:return Fd(e,Si(r),t??et.encoder);default:return Kd(e,Si(r),t??Wt.encoder)}}var zc=new WeakMap;function Si(r){let t=zc.get(r);if(t==null){let e=new Map;return zc.set(r,e),e}return t}var at=class r{code;version;multihash;bytes;"/";constructor(t,e,n,o){this.code=e,this.version=t,this.multihash=n,this.bytes=o,this["/"]=o}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:e}=this;if(t!==zr)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==Vd)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(e)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:e}=this.multihash,n=De(t,e);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return r.equals(this,t)}static equals(t,e){let n=e;return n!=null&&t.code===n.code&&t.version===n.version&&Mc(t.multihash,n.multihash)}toString(t){return Hc(this,t)}toJSON(){return{"/":Hc(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let e=t;if(e instanceof r)return e;if(e["/"]!=null&&e["/"]===e.bytes||e.asCID===e){let{version:n,code:o,multihash:i,bytes:s}=e;return new r(n,o,i,s??qc(n,o,i.bytes))}else if(e[Hd]===!0){let{version:n,multihash:o,code:i}=e,s=ue(o);return r.create(n,i,s)}else return null}static create(t,e,n){if(typeof e!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(e!==zr)throw new Error(`Version 0 CID must use dag-pb (code: ${zr}) block encoding`);return new r(t,e,n,n.bytes)}case 1:{let o=qc(t,e,n.bytes);return new r(t,e,n,o)}default:throw new Error("Invalid version")}}static createV0(t){return r.create(0,zr,t)}static createV1(t,e){return r.create(1,t,e)}static decode(t){let[e,n]=r.decodeFirst(t);if(n.length!==0)throw new Error("Incorrect length");return e}static decodeFirst(t){let e=r.inspectBytes(t),n=e.size-e.multihashSize,o=ce(t.subarray(n,n+e.multihashSize));if(o.byteLength!==e.multihashSize)throw new Error("Incorrect length");let i=o.subarray(e.multihashSize-e.digestSize),s=new rr(e.multihashCode,e.digestSize,i,o);return[e.version===0?r.createV0(s):r.createV1(e.codec,s),t.subarray(e.size)]}static inspectBytes(t){let e=0,n=()=>{let[f,h]=Vr(t.subarray(e));return e+=h,f},o=n(),i=zr;if(o===18?(o=0,e=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=e,c=n(),a=n(),l=e+a,u=l-s;return{version:o,codec:i,multihashCode:c,digestSize:a,multihashSize:u,size:l}}static parse(t,e){let[n,o]=Od(t,e),i=r.decode(o);if(i.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Si(i).set(n,t),i}};function Od(r,t){switch(r[0]){case"Q":{let e=t??et;return[et.prefix,e.decode(`${et.prefix}${r}`)]}case et.prefix:{let e=t??et;return[et.prefix,e.decode(r)]}case Wt.prefix:{let e=t??Wt;return[Wt.prefix,e.decode(r)]}case Fr.prefix:{let e=t??Fr;return[Fr.prefix,e.decode(r)]}default:{if(t==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],t.decode(r)]}}}function Fd(r,t,e){let{prefix:n}=e;if(n!==et.prefix)throw Error(`Cannot string encode V0 in ${e.name} encoding`);let o=t.get(n);if(o==null){let i=e.encode(r).slice(1);return t.set(n,i),i}else return o}function Kd(r,t,e){let{prefix:n}=e,o=t.get(n);if(o==null){let i=e.encode(r);return t.set(n,i),i}else return o}var zr=112,Vd=18;function qc(r,t,e){let n=er(r),o=n+er(t),i=new Uint8Array(o+e.byteLength);return tr(r,i,0),tr(t,i,n),i.set(e,o),i}var Hd=Symbol.for("@ipld/js-cid/CID");var qr={...yi,...hi,...gi,...fi,...di,...zo,...mi,...qo,...$o,...pi},ky={...vi,...bi};function Gc(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var $c=Gc("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Ai=Gc("ascii","a",r=>{let t="a";for(let e=0;e<r.length;e++)t+=String.fromCharCode(r[e]);return t},r=>{r=r.substring(1);let t=vt(r.length);for(let e=0;e<r.length;e++)t[e]=r.charCodeAt(e);return t}),zd={utf8:$c,"utf-8":$c,hex:qr.base16,latin1:Ai,ascii:Ai,binary:Ai,...qr},Zn=zd;function $t(r,t="utf8"){let e=Zn[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.decoder.decode(`${e.prefix}${r}`)}function _i(r){let t=r??8192,e=t>>>1,n,o=t;return function(s){if(s<1||s>e)return vt(s);o+s>t&&(n=vt(t),o=0);let c=n.subarray(o,o+=s);return(o&7)!==0&&(o=(o|7)+1),c}}var Ne=class{fn;len;next;val;constructor(t,e,n){this.fn=t,this.len=e,this.next=void 0,this.val=n}};function Ci(){}var Ii=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},qd=_i();function $d(r){return globalThis.Buffer!=null?vt(r):qd(r)}var Gr=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ne(Ci,0,0),this.tail=this.head,this.states=null}_push(t,e,n){return this.tail=this.tail.next=new Ne(t,e,n),this.len+=e,this}uint32(t){return this.len+=(this.tail=this.tail.next=new ki((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(Wn,10,Rt.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let e=Rt.fromBigInt(t);return this._push(Wn,e.length(),e)}uint64Number(t){return this._push(ni,ht(t),t)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let e=Rt.fromBigInt(t).zzEncode();return this._push(Wn,e.length(),e)}sint64Number(t){let e=Rt.fromNumber(t).zzEncode();return this._push(Wn,e.length(),e)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(Bi,1,t?1:0)}fixed32(t){return this._push($r,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let e=Rt.fromBigInt(t);return this._push($r,4,e.lo)._push($r,4,e.hi)}fixed64Number(t){let e=Rt.fromNumber(t);return this._push($r,4,e.lo)._push($r,4,e.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(_c,4,t)}double(t){return this._push(Bc,8,t)}bytes(t){let e=t.length>>>0;return e===0?this._push(Bi,1,0):this.uint32(e)._push(jd,e,t)}string(t){let e=Tc(t);return e!==0?this.uint32(e)._push(ai,e,t):this._push(Bi,1,0)}fork(){return this.states=new Ii(this),this.head=this.tail=new Ne(Ci,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Ne(Ci,0,0),this.len=0),this}ldelim(){let t=this.head,e=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=e,this.len+=n),this}finish(){let t=this.head.next,e=$d(this.len),n=0;for(;t!=null;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e}};function Bi(r,t,e){t[e]=r&255}function Gd(r,t,e){for(;r>127;)t[e++]=r&127|128,r>>>=7;t[e]=r}var ki=class extends Ne{next;constructor(t,e){super(Gd,t,e),this.next=void 0}};function Wn(r,t,e){for(;r.hi!==0;)t[e++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)t[e++]=r.lo&127|128,r.lo=r.lo>>>7;t[e++]=r.lo}function $r(r,t,e){t[e]=r&255,t[e+1]=r>>>8&255,t[e+2]=r>>>16&255,t[e+3]=r>>>24}function jd(r,t,e){t.set(r,e)}globalThis.Buffer!=null&&(Gr.prototype.bytes=function(r){let t=r.length>>>0;return this.uint32(t),t>0&&this._push(Zd,t,r),this},Gr.prototype.string=function(r){let t=globalThis.Buffer.byteLength(r);return this.uint32(t),t>0&&this._push(Wd,t,r),this});function Zd(r,t,e){t.set(r,e)}function Wd(r,t,e){r.length<40?ai(r,t,e):t.utf8Write!=null?t.utf8Write(r,e):t.set($t(r),e)}function Ti(){return new Gr}function Ct(r,t){let e=Ti();return t.encode(r,e,{lengthDelimited:!1}),e.finish()}var nr;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(nr||(nr={}));function Yn(r,t,e,n){return{name:r,type:t,encode:e,decode:n}}function jr(r){function t(o){if(r[o.toString()]==null)throw new Error("Invalid enum value");return r[o]}let e=function(i,s){let c=t(i);s.int32(c)},n=function(i){let s=i.int32();return t(s)};return Yn("enum",nr.VARINT,e,n)}function Bt(r,t){return Yn("message",nr.LENGTH_DELIMITED,r,t)}var le=class extends Error{code="ERR_MAX_LENGTH";name="MaxLengthError"};var z;(function(r){r.invokeMethod="invokeMethod",r.methodResolved="methodResolved",r.methodRejected="methodRejected",r.invokeGeneratorMethod="invokeGeneratorMethod",r.abortMethodInvocation="abortMethodInvocation",r.invokeCallback="invokeCallback",r.callbackResolved="callbackResolved",r.callbackRejected="callbackRejected",r.abortCallbackInvocation="abortCallbackInvocation"})(z||(z={}));var Xn;(function(r){r[r.invokeMethod=0]="invokeMethod",r[r.methodResolved=1]="methodResolved",r[r.methodRejected=2]="methodRejected",r[r.invokeGeneratorMethod=3]="invokeGeneratorMethod",r[r.abortMethodInvocation=4]="abortMethodInvocation",r[r.invokeCallback=5]="invokeCallback",r[r.callbackResolved=6]="callbackResolved",r[r.callbackRejected=7]="callbackRejected",r[r.abortCallbackInvocation=8]="abortCallbackInvocation"})(Xn||(Xn={}));(function(r){r.codec=()=>jr(Xn)})(z||(z={}));var Ut;(function(r){let t;r.codec=()=>(t==null&&(t=Bt((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.type!=null&&e.type!==0&&(n.uint32(8),n.uint32(e.type)),e.value!=null&&(n.uint32(18),n.bytes(e.value)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={type:0},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.type=e.uint32();break}case 2:{i.value=e.bytes();break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Ct(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Ut||(Ut={}));var It;(function(r){let t;r.codec=()=>(t==null&&(t=Bt((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.type!=null&&Xn[e.type]!==0&&(n.uint32(8),z.codec().encode(e.type,n)),e.message!=null&&e.message.byteLength>0&&(n.uint32(18),n.bytes(e.message)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={type:z.invokeMethod,message:Xt(0)},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.type=z.codec().decode(e);break}case 2:{i.message=e.bytes();break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Ct(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(It||(It={}));var Re;(function(r){let t;r.codec=()=>(t==null&&(t=Bt((e,n,o={})=>{if(o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.path!=null&&e.path!==""&&(n.uint32(18),n.string(e.path)),e.args!=null)for(let i of e.args)n.uint32(26),Ut.codec().encode(i,n);o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:"",path:"",args:[]},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{i.path=e.string();break}case 3:{if(o.limits?.args!=null&&i.args.length===o.limits.args)throw new le('Decode error - map field "args" had too many elements');i.args.push(Ut.codec().decode(e,e.uint32(),{limits:o.limits?.args$}));break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Ct(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Re||(Re={}));var Zr;(function(r){let t;r.codec=()=>(t==null&&(t=Bt((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:""},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Ct(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Zr||(Zr={}));var or;(function(r){let t;r.codec=()=>(t==null&&(t=Bt((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.value!=null&&(n.uint32(18),Ut.codec().encode(e.value,n)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:""},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{i.value=Ut.codec().decode(e,e.uint32(),{limits:o.limits?.value});break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Ct(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(or||(or={}));var Wr;(function(r){let t;r.codec=()=>(t==null&&(t=Bt((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.error!=null&&(n.uint32(18),Ut.codec().encode(e.error,n)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:""},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{i.error=Ut.codec().decode(e,e.uint32(),{limits:o.limits?.error});break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Ct(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Wr||(Wr={}));var ir;(function(r){let t;r.codec=()=>(t==null&&(t=Bt((e,n,o={})=>{if(o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.parents!=null)for(let i of e.parents)n.uint32(18),n.string(i);if(e.callback!=null&&e.callback!==""&&(n.uint32(26),n.string(e.callback)),e.args!=null)for(let i of e.args)n.uint32(34),Ut.codec().encode(i,n);o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:"",parents:[],callback:"",args:[]},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{if(o.limits?.parents!=null&&i.parents.length===o.limits.parents)throw new le('Decode error - map field "parents" had too many elements');i.parents.push(e.string());break}case 3:{i.callback=e.string();break}case 4:{if(o.limits?.args!=null&&i.args.length===o.limits.args)throw new le('Decode error - map field "args" had too many elements');i.args.push(Ut.codec().decode(e,e.uint32(),{limits:o.limits?.args$}));break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Ct(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(ir||(ir={}));var sr;(function(r){let t;r.codec=()=>(t==null&&(t=Bt((e,n,o={})=>{if(o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.parents!=null)for(let i of e.parents)n.uint32(18),n.string(i);o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:"",parents:[]},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{if(o.limits?.parents!=null&&i.parents.length===o.limits.parents)throw new le('Decode error - map field "parents" had too many elements');i.parents.push(e.string());break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Ct(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(sr||(sr={}));var Yr;(function(r){let t;r.codec=()=>(t==null&&(t=Bt((e,n,o={})=>{if(o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.parents!=null)for(let i of e.parents)n.uint32(18),n.string(i);e.value!=null&&(n.uint32(26),Ut.codec().encode(e.value,n)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:"",parents:[]},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{if(o.limits?.parents!=null&&i.parents.length===o.limits.parents)throw new le('Decode error - map field "parents" had too many elements');i.parents.push(e.string());break}case 3:{i.value=Ut.codec().decode(e,e.uint32(),{limits:o.limits?.value});break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Ct(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Yr||(Yr={}));var Xr;(function(r){let t;r.codec=()=>(t==null&&(t=Bt((e,n,o={})=>{if(o.lengthDelimited!==!1&&n.fork(),e.scope!=null&&e.scope!==""&&(n.uint32(10),n.string(e.scope)),e.parents!=null)for(let i of e.parents)n.uint32(18),n.string(i);e.error!=null&&(n.uint32(26),Ut.codec().encode(e.error,n)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={scope:"",parents:[]},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.scope=e.string();break}case 2:{if(o.limits?.parents!=null&&i.parents.length===o.limits.parents)throw new le('Decode error - map field "parents" had too many elements');i.parents.push(e.string());break}case 3:{i.error=Ut.codec().decode(e,e.uint32(),{limits:o.limits?.error});break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Ct(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Xr||(Xr={}));function Yd(r){return r.parents!=null}function jc(r,t){if(Yd(r))return Xd(r.parents,t);let e=t.get(r.scope);if(e==null)throw new qn;return e}function Xd(r,t){let e;for(let n of r){if(e==null){if(e=t.get(n),e==null)throw new Je;continue}if(e=e.children.get(n),e==null)throw new Je}if(e==null)throw new Je;return e}var Qd={type:1024,canEncode:r=>r===void 0,decode:()=>{}},Zc=Qd;var Jd={type:1025,canEncode:r=>r===null,decode:()=>null},Wc=Jd;var th=["string","number","bigint","symbol"],eh=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function Yc(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let t=typeof r;if(th.includes(t))return t;if(t==="function")return"Function";if(Array.isArray(r))return"Array";if(rh(r))return"Buffer";let e=nh(r);return e||"Object"}function rh(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function nh(r){let t=Object.prototype.toString.call(r).slice(8,-1);if(eh.includes(t))return t}var p=class{constructor(t,e,n){this.major=t,this.majorEncoded=t<<5,this.name=e,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(t){return this.major<t.major?-1:this.major>t.major?1:0}};p.uint=new p(0,"uint",!0);p.negint=new p(1,"negint",!0);p.bytes=new p(2,"bytes",!0);p.string=new p(3,"string",!0);p.array=new p(4,"array",!1);p.map=new p(5,"map",!1);p.tag=new p(6,"tag",!1);p.float=new p(7,"float",!0);p.false=new p(7,"false",!0);p.true=new p(7,"true",!0);p.null=new p(7,"null",!0);p.undefined=new p(7,"undefined",!0);p.break=new p(7,"break",!0);var B=class{constructor(t,e,n){this.type=t,this.value=e,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var cr=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",oh=new TextDecoder,ih=new TextEncoder;function Qn(r){return cr&&globalThis.Buffer.isBuffer(r)}function Ui(r){return r instanceof Uint8Array?Qn(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var ta=cr?(r,t,e)=>e-t>64?globalThis.Buffer.from(r.subarray(t,e)).toString("utf8"):Qc(r,t,e):(r,t,e)=>e-t>64?oh.decode(r.subarray(t,e)):Qc(r,t,e),ea=cr?r=>r.length>64?globalThis.Buffer.from(r):Xc(r):r=>r.length>64?ih.encode(r):Xc(r),oe=r=>Uint8Array.from(r),ar=cr?(r,t,e)=>Qn(r)?new Uint8Array(r.subarray(t,e)):r.slice(t,e):(r,t,e)=>r.slice(t,e),ra=cr?(r,t)=>(r=r.map(e=>e instanceof Uint8Array?e:globalThis.Buffer.from(e)),Ui(globalThis.Buffer.concat(r,t))):(r,t)=>{let e=new Uint8Array(t),n=0;for(let o of r)n+o.length>e.length&&(o=o.subarray(0,e.length-n)),e.set(o,n),n+=o.length;return e},na=cr?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function oa(r,t){if(Qn(r)&&Qn(t))return r.compare(t);for(let e=0;e<r.length;e++)if(r[e]!==t[e])return r[e]<t[e]?-1:1;return 0}function Xc(r){let t=[],e=0;for(let n=0;n<r.length;n++){let o=r.charCodeAt(n);o<128?t[e++]=o:o<2048?(t[e++]=o>>6|192,t[e++]=o&63|128):(o&64512)===55296&&n+1<r.length&&(r.charCodeAt(n+1)&64512)===56320?(o=65536+((o&1023)<<10)+(r.charCodeAt(++n)&1023),t[e++]=o>>18|240,t[e++]=o>>12&63|128,t[e++]=o>>6&63|128,t[e++]=o&63|128):(t[e++]=o>>12|224,t[e++]=o>>6&63|128,t[e++]=o&63|128)}return t}function Qc(r,t,e){let n=[];for(;t<e;){let o=r[t],i=null,s=o>239?4:o>223?3:o>191?2:1;if(t+s<=e){let c,a,l,u;switch(s){case 1:o<128&&(i=o);break;case 2:c=r[t+1],(c&192)===128&&(u=(o&31)<<6|c&63,u>127&&(i=u));break;case 3:c=r[t+1],a=r[t+2],(c&192)===128&&(a&192)===128&&(u=(o&15)<<12|(c&63)<<6|a&63,u>2047&&(u<55296||u>57343)&&(i=u));break;case 4:c=r[t+1],a=r[t+2],l=r[t+3],(c&192)===128&&(a&192)===128&&(l&192)===128&&(u=(o&15)<<18|(c&63)<<12|(a&63)<<6|l&63,u>65535&&u<1114112&&(i=u))}}i===null?(i=65533,s=1):i>65535&&(i-=65536,n.push(i>>>10&1023|55296),i=56320|i&1023),n.push(i),t+=s}return sh(n)}var Jc=4096;function sh(r){let t=r.length;if(t<=Jc)return String.fromCharCode.apply(String,r);let e="",n=0;for(;n<t;)e+=String.fromCharCode.apply(String,r.slice(n,n+=Jc));return e}var ch=256,Qr=class{constructor(t=ch){this.chunkSize=t,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(t){let e=this.chunks[this.chunks.length-1];if(this.cursor+t.length<=this.maxCursor+1){let o=e.length-(this.maxCursor-this.cursor)-1;e.set(t,o)}else{if(e){let o=e.length-(this.maxCursor-this.cursor)-1;o<e.length&&(this.chunks[this.chunks.length-1]=e.subarray(0,o),this.maxCursor=this.cursor-1)}t.length<64&&t.length<this.chunkSize?(e=na(this.chunkSize),this.chunks.push(e),this.maxCursor+=e.length,this._initReuseChunk===null&&(this._initReuseChunk=e),e.set(t,0)):(this.chunks.push(t),this.maxCursor+=t.length)}this.cursor+=t.length}toBytes(t=!1){let e;if(this.chunks.length===1){let n=this.chunks[0];t&&this.cursor>n.length/2?(e=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):e=ar(n,0,this.cursor)}else e=ra(this.chunks,this.cursor);return t&&this.reset(),e}};var M="CBOR decode error:",Li="CBOR encode error:",Jr=[];Jr[23]=1;Jr[24]=2;Jr[25]=3;Jr[26]=5;Jr[27]=9;function fe(r,t,e){if(r.length-t<e)throw new Error(`${M} not enough data for type`)}var pt=[24,256,65536,4294967296,BigInt("18446744073709551616")];function Mt(r,t,e){fe(r,t,1);let n=r[t];if(e.strict===!0&&n<pt[0])throw new Error(`${M} integer encoded in more bytes than necessary (strict decode)`);return n}function Ot(r,t,e){fe(r,t,2);let n=r[t]<<8|r[t+1];if(e.strict===!0&&n<pt[1])throw new Error(`${M} integer encoded in more bytes than necessary (strict decode)`);return n}function Ft(r,t,e){fe(r,t,4);let n=r[t]*16777216+(r[t+1]<<16)+(r[t+2]<<8)+r[t+3];if(e.strict===!0&&n<pt[2])throw new Error(`${M} integer encoded in more bytes than necessary (strict decode)`);return n}function Kt(r,t,e){fe(r,t,8);let n=r[t]*16777216+(r[t+1]<<16)+(r[t+2]<<8)+r[t+3],o=r[t+4]*16777216+(r[t+5]<<16)+(r[t+6]<<8)+r[t+7],i=(BigInt(n)<<BigInt(32))+BigInt(o);if(e.strict===!0&&i<pt[3])throw new Error(`${M} integer encoded in more bytes than necessary (strict decode)`);if(i<=Number.MAX_SAFE_INTEGER)return Number(i);if(e.allowBigInt===!0)return i;throw new Error(`${M} integers outside of the safe integer range are not supported`)}function ia(r,t,e,n){return new B(p.uint,Mt(r,t+1,n),2)}function sa(r,t,e,n){return new B(p.uint,Ot(r,t+1,n),3)}function ca(r,t,e,n){return new B(p.uint,Ft(r,t+1,n),5)}function aa(r,t,e,n){return new B(p.uint,Kt(r,t+1,n),9)}function Gt(r,t){return xt(r,0,t.value)}function xt(r,t,e){if(e<pt[0]){let n=Number(e);r.push([t|n])}else if(e<pt[1]){let n=Number(e);r.push([t|24,n])}else if(e<pt[2]){let n=Number(e);r.push([t|25,n>>>8,n&255])}else if(e<pt[3]){let n=Number(e);r.push([t|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(e);if(n<pt[4]){let o=[t|27,0,0,0,0,0,0,0],i=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));o[8]=i&255,i=i>>8,o[7]=i&255,i=i>>8,o[6]=i&255,i=i>>8,o[5]=i&255,o[4]=s&255,s=s>>8,o[3]=s&255,s=s>>8,o[2]=s&255,s=s>>8,o[1]=s&255,r.push(o)}else throw new Error(`${M} encountered BigInt larger than allowable range`)}}Gt.encodedSize=function(t){return xt.encodedSize(t.value)};xt.encodedSize=function(t){return t<pt[0]?1:t<pt[1]?2:t<pt[2]?3:t<pt[3]?5:9};Gt.compareTokens=function(t,e){return t.value<e.value?-1:t.value>e.value?1:0};function ua(r,t,e,n){return new B(p.negint,-1-Mt(r,t+1,n),2)}function la(r,t,e,n){return new B(p.negint,-1-Ot(r,t+1,n),3)}function fa(r,t,e,n){return new B(p.negint,-1-Ft(r,t+1,n),5)}var Pi=BigInt(-1),da=BigInt(1);function ha(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o!="bigint"){let i=-1-o;if(i>=Number.MIN_SAFE_INTEGER)return new B(p.negint,i,9)}if(n.allowBigInt!==!0)throw new Error(`${M} integers outside of the safe integer range are not supported`);return new B(p.negint,Pi-BigInt(o),9)}function Jn(r,t){let e=t.value,n=typeof e=="bigint"?e*Pi-da:e*-1-1;xt(r,t.type.majorEncoded,n)}Jn.encodedSize=function(t){let e=t.value,n=typeof e=="bigint"?e*Pi-da:e*-1-1;return n<pt[0]?1:n<pt[1]?2:n<pt[2]?3:n<pt[3]?5:9};Jn.compareTokens=function(t,e){return t.value<e.value?1:t.value>e.value?-1:0};function tn(r,t,e,n){fe(r,t,e+n);let o=ar(r,t+e,t+e+n);return new B(p.bytes,o,e+n)}function pa(r,t,e,n){return tn(r,t,1,e)}function ma(r,t,e,n){return tn(r,t,2,Mt(r,t+1,n))}function ga(r,t,e,n){return tn(r,t,3,Ot(r,t+1,n))}function ya(r,t,e,n){return tn(r,t,5,Ft(r,t+1,n))}function xa(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o=="bigint")throw new Error(`${M} 64-bit integer bytes lengths not supported`);return tn(r,t,9,o)}function to(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?ea(r.value):r.value),r.encodedBytes}function ur(r,t){let e=to(t);xt(r,t.type.majorEncoded,e.length),r.push(e)}ur.encodedSize=function(t){let e=to(t);return xt.encodedSize(e.length)+e.length};ur.compareTokens=function(t,e){return uh(to(t),to(e))};function uh(r,t){return r.length<t.length?-1:r.length>t.length?1:oa(r,t)}function en(r,t,e,n,o){let i=e+n;fe(r,t,i);let s=new B(p.string,ta(r,t+e,t+i),i);return o.retainStringBytes===!0&&(s.byteValue=ar(r,t+e,t+i)),s}function ba(r,t,e,n){return en(r,t,1,e,n)}function wa(r,t,e,n){return en(r,t,2,Mt(r,t+1,n),n)}function Ea(r,t,e,n){return en(r,t,3,Ot(r,t+1,n),n)}function va(r,t,e,n){return en(r,t,5,Ft(r,t+1,n),n)}function Sa(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o=="bigint")throw new Error(`${M} 64-bit integer string lengths not supported`);return en(r,t,9,o,n)}var Aa=ur;function lr(r,t,e,n){return new B(p.array,n,e)}function _a(r,t,e,n){return lr(r,t,1,e)}function Ca(r,t,e,n){return lr(r,t,2,Mt(r,t+1,n))}function Ba(r,t,e,n){return lr(r,t,3,Ot(r,t+1,n))}function Ia(r,t,e,n){return lr(r,t,5,Ft(r,t+1,n))}function ka(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o=="bigint")throw new Error(`${M} 64-bit integer array lengths not supported`);return lr(r,t,9,o)}function Ta(r,t,e,n){if(n.allowIndefinite===!1)throw new Error(`${M} indefinite length items not allowed`);return lr(r,t,1,1/0)}function eo(r,t){xt(r,p.array.majorEncoded,t.value)}eo.compareTokens=Gt.compareTokens;eo.encodedSize=function(t){return xt.encodedSize(t.value)};function fr(r,t,e,n){return new B(p.map,n,e)}function Ua(r,t,e,n){return fr(r,t,1,e)}function La(r,t,e,n){return fr(r,t,2,Mt(r,t+1,n))}function Pa(r,t,e,n){return fr(r,t,3,Ot(r,t+1,n))}function Da(r,t,e,n){return fr(r,t,5,Ft(r,t+1,n))}function Na(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o=="bigint")throw new Error(`${M} 64-bit integer map lengths not supported`);return fr(r,t,9,o)}function Ra(r,t,e,n){if(n.allowIndefinite===!1)throw new Error(`${M} indefinite length items not allowed`);return fr(r,t,1,1/0)}function ro(r,t){xt(r,p.map.majorEncoded,t.value)}ro.compareTokens=Gt.compareTokens;ro.encodedSize=function(t){return xt.encodedSize(t.value)};function Ma(r,t,e,n){return new B(p.tag,e,1)}function Oa(r,t,e,n){return new B(p.tag,Mt(r,t+1,n),2)}function Fa(r,t,e,n){return new B(p.tag,Ot(r,t+1,n),3)}function Ka(r,t,e,n){return new B(p.tag,Ft(r,t+1,n),5)}function Va(r,t,e,n){return new B(p.tag,Kt(r,t+1,n),9)}function no(r,t){xt(r,p.tag.majorEncoded,t.value)}no.compareTokens=Gt.compareTokens;no.encodedSize=function(t){return xt.encodedSize(t.value)};var mh=20,gh=21,yh=22,xh=23;function Ha(r,t,e,n){if(n.allowUndefined===!1)throw new Error(`${M} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new B(p.null,null,1):new B(p.undefined,void 0,1)}function za(r,t,e,n){if(n.allowIndefinite===!1)throw new Error(`${M} indefinite length items not allowed`);return new B(p.break,void 0,1)}function Di(r,t,e){if(e){if(e.allowNaN===!1&&Number.isNaN(r))throw new Error(`${M} NaN values are not supported`);if(e.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${M} Infinity values are not supported`)}return new B(p.float,r,t)}function qa(r,t,e,n){return Di(Ni(r,t+1),3,n)}function $a(r,t,e,n){return Di(Ri(r,t+1),5,n)}function Ga(r,t,e,n){return Di(Ya(r,t+1),9,n)}function oo(r,t,e){let n=t.value;if(n===!1)r.push([p.float.majorEncoded|mh]);else if(n===!0)r.push([p.float.majorEncoded|gh]);else if(n===null)r.push([p.float.majorEncoded|yh]);else if(n===void 0)r.push([p.float.majorEncoded|xh]);else{let o,i=!1;(!e||e.float64!==!0)&&(Za(n),o=Ni(te,1),n===o||Number.isNaN(n)?(te[0]=249,r.push(te.slice(0,3)),i=!0):(Wa(n),o=Ri(te,1),n===o&&(te[0]=250,r.push(te.slice(0,5)),i=!0))),i||(bh(n),o=Ya(te,1),te[0]=251,r.push(te.slice(0,9)))}}oo.encodedSize=function(t,e){let n=t.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!e||e.float64!==!0){Za(n);let o=Ni(te,1);if(n===o||Number.isNaN(n))return 3;if(Wa(n),o=Ri(te,1),n===o)return 5}return 9};var ja=new ArrayBuffer(9),jt=new DataView(ja,1),te=new Uint8Array(ja,0);function Za(r){if(r===1/0)jt.setUint16(0,31744,!1);else if(r===-1/0)jt.setUint16(0,64512,!1);else if(Number.isNaN(r))jt.setUint16(0,32256,!1);else{jt.setFloat32(0,r);let t=jt.getUint32(0),e=(t&2139095040)>>23,n=t&8388607;if(e===255)jt.setUint16(0,31744,!1);else if(e===0)jt.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let o=e-127;o<-24?jt.setUint16(0,0):o<-14?jt.setUint16(0,(t&2147483648)>>16|1<<24+o,!1):jt.setUint16(0,(t&2147483648)>>16|o+15<<10|n>>13,!1)}}}function Ni(r,t){if(r.length-t<2)throw new Error(`${M} not enough data for float16`);let e=(r[t]<<8)+r[t+1];if(e===31744)return 1/0;if(e===64512)return-1/0;if(e===32256)return NaN;let n=e>>10&31,o=e&1023,i;return n===0?i=o*2**-24:n!==31?i=(o+1024)*2**(n-25):i=o===0?1/0:NaN,e&32768?-i:i}function Wa(r){jt.setFloat32(0,r,!1)}function Ri(r,t){if(r.length-t<4)throw new Error(`${M} not enough data for float32`);let e=(r.byteOffset||0)+t;return new DataView(r.buffer,e,4).getFloat32(0,!1)}function bh(r){jt.setFloat64(0,r,!1)}function Ya(r,t){if(r.length-t<8)throw new Error(`${M} not enough data for float64`);let e=(r.byteOffset||0)+t;return new DataView(r.buffer,e,8).getFloat64(0,!1)}oo.compareTokens=Gt.compareTokens;function q(r,t,e){throw new Error(`${M} encountered invalid minor (${e}) for major ${r[t]>>>5}`)}function io(r){return()=>{throw new Error(`${M} ${r}`)}}var v=[];for(let r=0;r<=23;r++)v[r]=q;v[24]=ia;v[25]=sa;v[26]=ca;v[27]=aa;v[28]=q;v[29]=q;v[30]=q;v[31]=q;for(let r=32;r<=55;r++)v[r]=q;v[56]=ua;v[57]=la;v[58]=fa;v[59]=ha;v[60]=q;v[61]=q;v[62]=q;v[63]=q;for(let r=64;r<=87;r++)v[r]=pa;v[88]=ma;v[89]=ga;v[90]=ya;v[91]=xa;v[92]=q;v[93]=q;v[94]=q;v[95]=io("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)v[r]=ba;v[120]=wa;v[121]=Ea;v[122]=va;v[123]=Sa;v[124]=q;v[125]=q;v[126]=q;v[127]=io("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)v[r]=_a;v[152]=Ca;v[153]=Ba;v[154]=Ia;v[155]=ka;v[156]=q;v[157]=q;v[158]=q;v[159]=Ta;for(let r=160;r<=183;r++)v[r]=Ua;v[184]=La;v[185]=Pa;v[186]=Da;v[187]=Na;v[188]=q;v[189]=q;v[190]=q;v[191]=Ra;for(let r=192;r<=215;r++)v[r]=Ma;v[216]=Oa;v[217]=Fa;v[218]=Ka;v[219]=Va;v[220]=q;v[221]=q;v[222]=q;v[223]=q;for(let r=224;r<=243;r++)v[r]=io("simple values are not supported");v[244]=q;v[245]=q;v[246]=q;v[247]=Ha;v[248]=io("simple values are not supported");v[249]=qa;v[250]=$a;v[251]=Ga;v[252]=q;v[253]=q;v[254]=q;v[255]=za;var ee=[];for(let r=0;r<24;r++)ee[r]=new B(p.uint,r,1);for(let r=-1;r>=-24;r--)ee[31-r]=new B(p.negint,r,1);ee[64]=new B(p.bytes,new Uint8Array(0),1);ee[96]=new B(p.string,"",1);ee[128]=new B(p.array,0,1);ee[160]=new B(p.map,0,1);ee[244]=new B(p.false,!1,1);ee[245]=new B(p.true,!0,1);ee[246]=new B(p.null,null,1);function Xa(r){switch(r.type){case p.false:return oe([244]);case p.true:return oe([245]);case p.null:return oe([246]);case p.bytes:return r.value.length?void 0:oe([64]);case p.string:return r.value===""?oe([96]):void 0;case p.array:return r.value===0?oe([128]):void 0;case p.map:return r.value===0?oe([160]):void 0;case p.uint:return r.value<24?oe([Number(r.value)]):void 0;case p.negint:if(r.value>=-24)return oe([31-Number(r.value)])}}var Eh={float64:!1,mapSorter:Ah,quickEncodeToken:Xa};function vh(){let r=[];return r[p.uint.major]=Gt,r[p.negint.major]=Jn,r[p.bytes.major]=ur,r[p.string.major]=Aa,r[p.array.major]=eo,r[p.map.major]=ro,r[p.tag.major]=no,r[p.float.major]=oo,r}var Qa=vh(),Mi=new Qr,co=class r{constructor(t,e){this.obj=t,this.parent=e}includes(t){let e=this;do if(e.obj===t)return!0;while(e=e.parent);return!1}static createCheck(t,e){if(t&&t.includes(e))throw new Error(`${Li} object contains circular references`);return new r(e,t)}},Se={null:new B(p.null,null),undefined:new B(p.undefined,void 0),true:new B(p.true,!0),false:new B(p.false,!1),emptyArray:new B(p.array,0),emptyMap:new B(p.map,0)},Ae={number(r,t,e,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new B(p.float,r):r>=0?new B(p.uint,r):new B(p.negint,r)},bigint(r,t,e,n){return r>=BigInt(0)?new B(p.uint,r):new B(p.negint,r)},Uint8Array(r,t,e,n){return new B(p.bytes,r)},string(r,t,e,n){return new B(p.string,r)},boolean(r,t,e,n){return r?Se.true:Se.false},null(r,t,e,n){return Se.null},undefined(r,t,e,n){return Se.undefined},ArrayBuffer(r,t,e,n){return new B(p.bytes,new Uint8Array(r))},DataView(r,t,e,n){return new B(p.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,t,e,n){if(!r.length)return e.addBreakTokens===!0?[Se.emptyArray,new B(p.break)]:Se.emptyArray;n=co.createCheck(n,r);let o=[],i=0;for(let s of r)o[i++]=so(s,e,n);return e.addBreakTokens?[new B(p.array,r.length),o,new B(p.break)]:[new B(p.array,r.length),o]},Object(r,t,e,n){let o=t!=="Object",i=o?r.keys():Object.keys(r),s=o?r.size:i.length;if(!s)return e.addBreakTokens===!0?[Se.emptyMap,new B(p.break)]:Se.emptyMap;n=co.createCheck(n,r);let c=[],a=0;for(let l of i)c[a++]=[so(l,e,n),so(o?r.get(l):r[l],e,n)];return Sh(c,e),e.addBreakTokens?[new B(p.map,s),c,new B(p.break)]:[new B(p.map,s),c]}};Ae.Map=Ae.Object;Ae.Buffer=Ae.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))Ae[`${r}Array`]=Ae.DataView;function so(r,t={},e){let n=Yc(r),o=t&&t.typeEncoders&&t.typeEncoders[n]||Ae[n];if(typeof o=="function"){let s=o(r,n,t,e);if(s!=null)return s}let i=Ae[n];if(!i)throw new Error(`${Li} unsupported type: ${n}`);return i(r,n,t,e)}function Sh(r,t){t.mapSorter&&r.sort(t.mapSorter)}function Ah(r,t){let e=Array.isArray(r[0])?r[0][0]:r[0],n=Array.isArray(t[0])?t[0][0]:t[0];if(e.type!==n.type)return e.type.compare(n.type);let o=e.type.major,i=Qa[o].compareTokens(e,n);return i===0&&console.warn("WARNING: complex key types used, CBOR key sorting guarantees are gone"),i}function Ja(r,t,e,n){if(Array.isArray(t))for(let o of t)Ja(r,o,e,n);else e[t.type.major](r,t,n)}function _h(r,t,e){let n=so(r,e);if(!Array.isArray(n)&&e.quickEncodeToken){let o=e.quickEncodeToken(n);if(o)return o;let i=t[n.type.major];if(i.encodedSize){let s=i.encodedSize(n,e),c=new Qr(s);if(i(c,n,e),c.chunks.length!==1)throw new Error(`Unexpected error: pre-calculated length for ${n} was wrong`);return Ui(c.chunks[0])}}return Mi.reset(),Ja(Mi,n,t,e),Mi.toBytes(!0)}function Y(r,t){return t=Object.assign({},Eh,t),_h(r,Qa,t)}var Ch={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},ao=class{constructor(t,e={}){this._pos=0,this.data=t,this.options=e}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let t=this.data[this._pos],e=ee[t];if(e===void 0){let n=v[t];if(!n)throw new Error(`${M} no decoder for major type ${t>>>5} (byte 0x${t.toString(16).padStart(2,"0")})`);let o=t&31;e=n(this.data,this._pos,o,this.options)}return this._pos+=e.encodedLength,e}},rn=Symbol.for("DONE"),uo=Symbol.for("BREAK");function Bh(r,t,e){let n=[];for(let o=0;o<r.value;o++){let i=dr(t,e);if(i===uo){if(r.value===1/0)break;throw new Error(`${M} got unexpected break to lengthed array`)}if(i===rn)throw new Error(`${M} found array but not enough entries (got ${o}, expected ${r.value})`);n[o]=i}return n}function Ih(r,t,e){let n=e.useMaps===!0,o=n?void 0:{},i=n?new Map:void 0;for(let s=0;s<r.value;s++){let c=dr(t,e);if(c===uo){if(r.value===1/0)break;throw new Error(`${M} got unexpected break to lengthed map`)}if(c===rn)throw new Error(`${M} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof c!="string")throw new Error(`${M} non-string keys not supported (got ${typeof c})`);if(e.rejectDuplicateMapKeys===!0&&(n&&i.has(c)||!n&&c in o))throw new Error(`${M} found repeat map key "${c}"`);let a=dr(t,e);if(a===rn)throw new Error(`${M} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?i.set(c,a):o[c]=a}return n?i:o}function dr(r,t){if(r.done())return rn;let e=r.next();if(e.type===p.break)return uo;if(e.type.terminal)return e.value;if(e.type===p.array)return Bh(e,r,t);if(e.type===p.map)return Ih(e,r,t);if(e.type===p.tag){if(t.tags&&typeof t.tags[e.value]=="function"){let n=dr(r,t);return t.tags[e.value](n)}throw new Error(`${M} tag not supported (${e.value})`)}throw new Error("unsupported")}function tu(r,t){if(!(r instanceof Uint8Array))throw new Error(`${M} data to decode must be a Uint8Array`);t=Object.assign({},Ch,t);let e=t.tokenizer||new ao(r,t),n=dr(e,t);if(n===rn)throw new Error(`${M} did not find any content to decode`);if(n===uo)throw new Error(`${M} got unexpected break`);return[n,r.subarray(e.pos())]}function X(r,t){let[e,n]=tu(r,t);if(n.length>0)throw new Error(`${M} too many terminals, data makes no sense`);return e}var kh={type:1026,canEncode:r=>r===!0||r===!1,encode:r=>Y(r),decode:r=>X(r)},eu=kh;var Th={type:1027,canEncode:r=>typeof r=="number"&&!isNaN(r),encode:r=>Y(r),decode:r=>X(r)},ru=Th;var Uh={type:1028,canEncode:r=>typeof r=="string",encode:r=>Y(r),decode:r=>X(r)},nu=Uh;var Lh={type:1029,canEncode:r=>Array.isArray(r),encode:(r,t,e,n)=>Y(r.map(o=>t.toValue(o,e,n))),decode:(r,t,e,n)=>X(r).map(o=>t.fromValue(o,e,n))},ou=Lh;var Ph={type:1030,canEncode:r=>typeof r=="function",encode:(r,t,e,n)=>{let o=Qe();return n?.callbacks.set(o,{context:e,fn:r}),Y(o)},decode:(r,t,e,n)=>async(...o)=>new Promise((i,s)=>{let c=X(r),a=Qe(),l={scope:a,result:Et(),callbacks:new Map,children:new Map,parents:[...n.parents,n.scope],abortControllers:[],abortSignals:[]};n.children.set(a,l),o=o.map(f=>t.toValue(f,null,l));let u=Un(l.abortSignals);u.addEventListener("abort",()=>{e.push(It.encode({type:z.abortCallbackInvocation,message:sr.encode({scope:a,parents:l.parents})}))}),e.push(It.encode({type:z.invokeCallback,message:ir.encode({scope:a,parents:l.parents,callback:c,args:o})})),l.result.promise.then(f=>{i(f)},f=>{s(f)}).finally(()=>{n.children.delete(a),u.clear()})})},iu=Ph;var Dh={type:1031,canEncode:r=>r.toString()==="NaN"&&isNaN(r),decode:()=>NaN},su=Dh;var Nh={type:1032,canEncode:r=>r instanceof Error,encode:r=>Y({message:r.message,name:r.name,code:r.code,type:r.type,stack:r.stack}),decode:r=>{let t=X(r),e=new Error(t.message);return e.name=t.name,e.stack=t.stack,e.code=t.code,e.type=t.type,e}},cu=Nh;var Rh={type:1033,canEncode:r=>Array.isArray(r),encode:(r,t,e,n)=>{throw new Error("Promises are not supported")},decode:(r,t,e,n)=>{throw new Error("Promises are not supported")}},au=Rh;var uu=["__defineGetter__","__defineSetter__","hasOwnProperty","__lookupGetter__","__lookupSetter__","isPrototypeOf","propertyIsEnumerable","toString","valueOf","__proto__","toLocaleString","constructor"],Mh={type:2147483647,canEncode:r=>typeof r=="object",encode:(r,t,e,n)=>{let o={};for(let i in r)uu.includes(i)||Object.hasOwn(r,i)&&(o[i]=r[i]);for(let i of Object.getOwnPropertyNames(Object.getPrototypeOf(r)))uu.includes(i)||(o[i]=r[i]);return Y([...Object.entries(o)].map(([i,s])=>[t.toValue(i,r,n),t.toValue(s,r,n)]))},decode:(r,t,e,n)=>{let o={};return X(r).forEach(([s,c])=>{o[t.fromValue(s,e,n)]=t.fromValue(c,e,n)}),o}},nn=Mh;var Oh={type:1034,canEncode:r=>typeof r.next=="function"&&typeof r.throw=="function"&&typeof r.return=="function",encode:(r,t,e,n)=>nn.encode({next:r.next.bind(r),throw:r.throw.bind(r),return:r.return.bind(r)},t,e,n),decode:(r,t,e,n)=>{let o=nn.decode(r,t,e,n);return o[Symbol.asyncIterator]=()=>o,o}},lu=Oh;var Fh={type:1035,canEncode:r=>typeof r=="bigint",encode:r=>Y(r),decode:r=>BigInt(X(r))},fu=Fh;var Kh={type:1036,canEncode:r=>r instanceof Map,encode:(r,t,e,n)=>Y([...r.entries()].map(([o,i])=>[t.toValue(o,e,n),t.toValue(i,e,n)])),decode:(r,t,e,n)=>{let o=new Map;return X(r).forEach(([s,c])=>{let a=t.fromValue(s,e,n),l=t.fromValue(c,e,n);o.set(a,l)}),o}},du=Kh;var Vh={type:1037,canEncode:r=>r instanceof Set,encode:(r,t,e,n)=>Y([...r.values()].map(o=>t.toValue(o,e,n))),decode:(r,t,e,n)=>{let o=new Set;return X(r).forEach(s=>{o.add(t.fromValue(s,e,n))}),o}},hu=Vh;var Hh={type:1038,canEncode:r=>r instanceof Uint8Array,encode:r=>r,decode:r=>r},pu=Hh;var zh={type:1039,canEncode:r=>r instanceof AbortSignal,encode:(r,t,e,n)=>(n?.abortSignals.push(r),new Uint8Array(0)),decode:(r,t,e,n)=>{let o=new AbortController;return n.abortControllers.push(o),o.signal}},mu=zh;var qh={type:1040,canEncode:r=>r instanceof Date,encode:r=>Y(r.toString()),decode:r=>new Date(X(r))},gu=qh;var $h={type:1041,canEncode:r=>r instanceof RegExp,encode:r=>Y({source:r.source,flags:r.flags}),decode:r=>{let{source:t,flags:e}=X(r);return new RegExp(t,e)}},yu=$h;var xu=[Zc,Wc,eu,ru,nu,ou,iu,su,cu,au,lu,fu,du,hu,pu,mu,gu,yu,nn];var lo=class{transformersMap;transformersList;constructor(t){this.transformersList=[...xu,...t?.valueCodecs??[]].sort((e,n)=>e.type<n.type?-1:e.type>n.type?1:0),this.transformersMap={},this.transformersList.forEach(e=>{if(this.transformersMap[e.type]!=null)throw new Error(`Duplicate transformer type ${e.type}`);this.transformersMap[e.type]=e})}toValue(t,e,n){for(let o=0;o<this.transformersList.length;o++){let i=this.transformersList[o];if(i.canEncode(t))return{type:i.type,value:i.encode?.(t,this,e,n)}}throw new Rr(`Unsupported value type "${t}"`)}fromValue(t,e,n){let o=this.transformersMap[t.type];if(o==null)throw new Rr(`Unsupported value type "${t.type}"`);return o.decode(t.value??new Uint8Array(0),this,e,n)}};function Gh(r){return r.isScope===!0}function jh(r){return r.type===z.invokeMethod||r.type===z.invokeGeneratorMethod||r.type===z.invokeCallback}var Oi=class{source;output;targets;invocations;values;messageHandlers;constructor(t){this.output=Ye(),this.source=Fn(this.output),this.targets=new Map,this.invocations=new Map,this.values=new lo(t),this.sink=this.sink.bind(this),this.messageHandlers={[z.invokeMethod]:{decoder:Re,handler:this.handleInvokeMethod.bind(this)},[z.invokeGeneratorMethod]:{decoder:Re,handler:this.handleInvokeGeneratorMethod.bind(this)},[z.abortMethodInvocation]:{decoder:Zr,handler:this.handleAbortMethod.bind(this),isScope:!0},[z.methodResolved]:{decoder:or,handler:this.handleMethodResolved.bind(this),isScope:!0},[z.methodRejected]:{decoder:Wr,handler:this.handleMethodRejected.bind(this),isScope:!0,isError:!0},[z.invokeCallback]:{decoder:ir,handler:this.handleInvokeCallback.bind(this),isScope:!0},[z.abortCallbackInvocation]:{decoder:sr,handler:this.handleAbortCallback.bind(this),isScope:!0},[z.callbackResolved]:{decoder:Yr,handler:this.handleCallbackResolved.bind(this),isScope:!0},[z.callbackRejected]:{decoder:Xr,handler:this.handleCallbackRejected.bind(this),isScope:!0,isError:!0}}}async sink(t){for await(let e of Nr(t))try{let n=It.decode(e),o=this.messageHandlers[n.type];if(o==null)continue;let i=o.decoder.decode(n.message),s;if(Gh(o))try{s=jc(i,this.invocations)}catch{continue}o.handler(i,s).catch(c=>{jh(n)&&this.sendError(i,c),this.invocations.delete(i.scope)}).finally(()=>{n.type===z.invokeMethod&&this.invocations.delete(i.scope)})}catch{continue}}sendError(t,e){t.parents!=null?this.output.push(It.encode({type:z.callbackRejected,message:Xr.encode({scope:t.scope,parents:t.parents,error:this.values.toValue(e)})})):this.output.push(It.encode({type:z.methodRejected,message:Wr.encode({scope:t.scope,error:this.values.toValue(e)})}))}createClient(t){return this.proxy(t)}createTarget(t,e){if(this.targets.has(t))throw new Hn(`Cannot reuse RPC target name "${t}"`);this.targets.set(t,e)}async handleInvokeMethod(t){if(this.invocations.has(t.scope))throw new Mr;let e=new Map,n=new Map,o={scope:t.scope,result:Et(),callbacks:e,children:n,parents:[],abortControllers:[],abortSignals:[]};this.invocations.set(t.scope,o);let i=this.lookupInvocationTarget(t.path),s=await i.fn.apply(i.context,t.args.map(c=>this.values.fromValue(c,this.output,o)));this.output.push(It.encode({type:z.methodResolved,message:or.encode({scope:t.scope,value:this.values.toValue(s)})}))}async handleAbortMethod(t,e){e.abortControllers.forEach(n=>{n.abort()})}async handleInvokeGeneratorMethod(t){if(this.invocations.has(t.scope))throw new Mr;let e=new Map,n=new Map,o={scope:t.scope,result:Et(),callbacks:e,children:n,parents:[],abortControllers:[],abortSignals:[]};this.invocations.set(t.scope,o);let i=this.lookupInvocationTarget(t.path),s=i.fn.apply(i.context,t.args.map(a=>this.values.fromValue(a,this.output,o)));if(typeof s.next!="function")throw new zn(`${t.path} did not return an async generator`);let c={next:async()=>{let a=await s.next();return a.done===!0&&this.invocations.delete(t.scope),a},throw:async a=>{try{let l=await s.throw(a);return l.done===!0&&this.invocations.delete(t.scope),l}catch(l){throw this.invocations.delete(t.scope),l}},return:async a=>{let l=await s.return(a);return l.done===!0&&this.invocations.delete(t.scope),l},[Symbol.asyncIterator]:()=>c};this.output.push(It.encode({type:z.methodResolved,message:or.encode({scope:t.scope,value:this.values.toValue(c,null,o)})}))}lookupInvocationTarget(t){let e=t.split("."),n=this.targets.get(e[0]),o=n;for(let i=1;i<e.length;i++)o=n,n=n?.[e[i]];if(n==null)throw o!=null&&t.endsWith(".then")?new Vn(`"${t.substring(0,t.length-5)}" was not a function`):new Kn(`Could not find "${t}" on target`);if(typeof n!="function")throw new Or("Invocation target was not a function");return{context:o,fn:n}}async handleMethodResolved(t,e){let n;t.value!=null&&(n=this.values.fromValue(t.value,this.output,e)),e.result.resolve(n)}async handleMethodRejected(t,e){let n;t.error!=null&&(n=this.values.fromValue(t.error,this.output,e)),e.result.reject(n)}async handleInvokeCallback(t,e){let n=e.callbacks.get(t.callback);if(n==null)throw new $n;let o=await n.fn.apply(n.context,t.args.map(i=>this.values.fromValue(i,this.output,e)));this.output.push(It.encode({type:z.callbackResolved,message:Yr.encode({scope:t.scope,parents:t.parents,value:this.values.toValue(o)})}))}async handleAbortCallback(t,e){e.abortControllers.forEach(n=>{n.abort()})}async handleCallbackResolved(t,e){let n;t.value!=null&&(n=this.values.fromValue(t.value,this.output,e)),e.children.get(t.scope)?.result.resolve(n),e.children.delete(t.scope)}async handleCallbackRejected(t,e){let n;t.error!=null&&(n=this.values.fromValue(t.error,this.output,e)),e.children.get(t.scope)?.result.reject(n),e.children.delete(t.scope)}proxy(t){let e=()=>{},n=this;return new Proxy(e,{get(o,i,s){return n.proxy(`${t==null?"":`${t}.`}${i.toString()}`)},apply(o,i,s){let c,a;function l(){return a==null&&(a=new Promise((f,h)=>{let x=Qe(),w={scope:x,result:Et(),callbacks:new Map,children:new Map,parents:[],abortControllers:[],abortSignals:[]};n.invocations.set(x,w),n.output.push(It.encode({type:z.invokeMethod,message:Re.encode({scope:x,path:t,args:s.map(d=>n.values.toValue(d,null,w))})}));let g=Un(w.abortSignals);g.addEventListener("abort",()=>{n.output.push(It.encode({type:z.abortMethodInvocation,message:Zr.encode({scope:x})}))}),w.result.promise.then(d=>{f(d)},d=>{h(d)}).finally(()=>{n.invocations.delete(x),g.clear()})})),a}function u(){if(c==null){let f=Qe(),h={scope:f,result:Et(),callbacks:new Map,children:new Map,parents:[],abortControllers:[],abortSignals:[]};n.invocations.set(f,h),n.output.push(It.encode({type:z.invokeGeneratorMethod,message:Re.encode({scope:f,path:t,args:s.map(w=>n.values.toValue(w,null,h))})}));let x;c={async next(){if(x!=null)throw x;let g=await(await h.result.promise).next();return g.done===!0&&n.invocations.delete(f),g},async throw(w){if(x!=null)throw x;try{let d=await(await h.result.promise).throw(w);return d.done===!0&&n.invocations.delete(f),d}catch(g){throw n.invocations.delete(f),x=w,g}},async return(w){if(x!=null)throw x;let d=await(await h.result.promise).return(w);return d.done===!0&&n.invocations.delete(f),d},[Symbol.asyncIterator]:()=>c}}return c}return new Proxy(e,{get(f,h,x){if(h==="then")return l().then.bind(a);if(h==="catch")return l().catch.bind(a);if(h==="finally")return l().finally.bind(a);if(h===Symbol.asyncIterator)return()=>u();if(h==="next")return u().next.bind(c);if(h==="return")return u().return.bind(c);if(h==="throw")return u().throw.bind(c);if(h===Symbol.toStringTag)return"[object Object]";if(h==="constructor")return()=>{};throw new Or(`Property ${h.toString()} was not used as a promise or async generator`)}})}})}};function bu(r){return new Oi(r)}var wu={type:4096,canEncode:r=>r.code!=null&&r.version!=null&&r.multihash!=null&&r["/"]!=null,encode:r=>r.bytes,decode:r=>at.decode(r)};var on=class extends Event{type;detail;constructor(t,e){super(t),this.type=t,this.detail=e}};var Eu={type:4099,canEncode:r=>r instanceof on,encode:(r,t,e,n)=>Y({type:r.type,detail:t.toValue(r.detail,e,n)}),decode:(r,t,e,n)=>{let{type:o,detail:i}=X(r);return new on(o,t.fromValue(i,e,n))}};function Q(r,t="utf8"){let e=Zn[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.encoder.encode(r).substring(1)}var fo=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let e=this.index,n=t();return n===void 0&&(this.index=e),n}parseWith(t){let e=t();if(this.index===this.input.length)return e}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let e=this.readChar();if(e===t)return e})}readSeparator(t,e,n){return this.readAtomically(()=>{if(!(e>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,e,n,o){return this.readAtomically(()=>{let i=0,s=0,c=this.peekChar();if(c===void 0)return;let a=c==="0",l=2**(8*o)-1;for(;;){let u=this.readAtomically(()=>{let f=this.readChar();if(f===void 0)return;let h=Number.parseInt(f,t);if(!Number.isNaN(h))return h});if(u===void 0)break;if(i*=t,i+=u,i>l||(s+=1,e!==void 0&&s>e))return}if(s!==0)return!n&&a&&s>1?void 0:i})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let e=0;e<t.length;e++){let n=this.readSeparator(".",e,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[e]=n}return t})}readIPv6Addr(){let t=e=>{for(let n=0;n<e.length/2;n++){let o=n*2;if(n<e.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return e[o]=s[0],e[o+1]=s[1],e[o+2]=s[2],e[o+3]=s[3],[o+4,!0]}let i=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(i===void 0)return[o,!1];e[o]=i>>8,e[o+1]=i&255}return[e.length,!1]};return this.readAtomically(()=>{let e=new Uint8Array(16),[n,o]=t(e);if(n===16)return e;if(o||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let i=new Uint8Array(14),s=16-(n+2),[c]=t(i.subarray(0,s));return e.set(i.subarray(0,c),16-c),e})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var vu=45,Zh=15,hr=new fo;function Fi(r){if(!(r.length>Zh))return hr.new(r).parseWith(()=>hr.readIPv4Addr())}function Ki(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>vu))return hr.new(r).parseWith(()=>hr.readIPv6Addr())}function ho(r,t=!1){if(r.includes("%")&&(r=r.split("%")[0]),r.length>vu)return;let e=hr.new(r).parseWith(()=>hr.readIPAddr());if(e)return t&&e.length===4?Uint8Array.from([0,0,0,0,0,0,0,0,0,0,255,255,e[0],e[1],e[2],e[3]]):e}var Kw=parseInt("0xFFFF",16),Vw=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function _u(r){return!!Fi(r)}function Cu(r){return!!Ki(r)}function po(r){return!!ho(r)}var Bu=_u,Jh=Cu,Vi=function(r){let t=0;if(r=r.toString().trim(),Bu(r)){let e=new Uint8Array(t+4);return r.split(/\./g).forEach(n=>{e[t++]=parseInt(n,10)&255}),e}if(Jh(r)){let e=r.split(":",8),n;for(n=0;n<e.length;n++){let i=Bu(e[n]),s;i&&(s=Vi(e[n]),e[n]=Q(s.slice(0,2),"base16")),s!=null&&++n<8&&e.splice(n,0,Q(s.slice(2,4),"base16"))}if(e[0]==="")for(;e.length<8;)e.unshift("0");else if(e[e.length-1]==="")for(;e.length<8;)e.push("0");else if(e.length<8){for(n=0;n<e.length&&e[n]!=="";n++);let i=[n,1];for(n=9-e.length;n>0;n--)i.push("0");e.splice.apply(e,i)}let o=new Uint8Array(t+16);for(n=0;n<e.length;n++){let i=parseInt(e[n],16);o[t++]=i>>8&255,o[t++]=i&255}return o}throw new Error("invalid ip address")},Iu=function(r,t=0,e){t=~~t,e=e??r.length-t;let n=new DataView(r.buffer);if(e===4){let o=[];for(let i=0;i<e;i++)o.push(r[t+i]);return o.join(".")}if(e===16){let o=[];for(let i=0;i<e;i+=2)o.push(n.getUint16(t+i).toString(16));return o.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var pr={},Hi={},ep=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,-1,"ip6zone"],[43,8,"ipcidr"],[53,-1,"dns",!0],[54,-1,"dns4",!0],[55,-1,"dns6",!0],[56,-1,"dnsaddr",!0],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[280,0,"webrtc-direct"],[281,0,"webrtc"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,-1,"unix",!1,!0],[421,-1,"ipfs"],[421,-1,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,-1,"garlic64"],[448,0,"tls"],[449,-1,"sni"],[460,0,"quic"],[461,0,"quic-v1"],[465,0,"webtransport"],[466,-1,"certhash"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[481,-1,"http-path"],[777,-1,"memory"]];ep.forEach(r=>{let t=rp(...r);Hi[t.code]=t,pr[t.name]=t});function rp(r,t,e,n,o){return{code:r,size:t,name:e,resolvable:!!n,path:!!o}}function J(r){if(typeof r=="number"){if(Hi[r]!=null)return Hi[r];throw new Error(`no protocol with code: ${r}`)}else if(typeof r=="string"){if(pr[r]!=null)return pr[r];throw new Error(`no protocol with name: ${r}`)}throw new Error(`invalid protocol id type: ${typeof r}`)}var A1=J("ip4"),_1=J("ip6"),C1=J("ipcidr");function Gi(r,t){switch(J(r).code){case 4:case 41:return op(t);case 42:return $i(t);case 43:return Q(t,"base10");case 6:case 273:case 33:case 132:return Uu(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return $i(t);case 421:return ap(t);case 444:return Tu(t);case 445:return Tu(t);case 466:return cp(t);case 481:return globalThis.encodeURIComponent($i(t));default:return Q(t,"base16")}}function ji(r,t){switch(J(r).code){case 4:return ku(t);case 41:return ku(t);case 42:return qi(t);case 43:return $t(t,"base10");case 6:case 273:case 33:case 132:return Zi(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return qi(t);case 421:return ip(t);case 444:return up(t);case 445:return lp(t);case 466:return sp(t);case 481:return qi(globalThis.decodeURIComponent(t));default:return $t(t,"base16")}}var zi=Object.values(qr).map(r=>r.decoder),np=function(){let r=zi[0].or(zi[1]);return zi.slice(2).forEach(t=>r=r.or(t)),r}();function ku(r){if(!po(r))throw new Error("invalid ip address");return Vi(r)}function op(r){let t=Iu(r,0,r.length);if(t==null)throw new Error("ipBuff is required");if(!po(t))throw new Error("invalid ip address");return t}function Zi(r){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,r),new Uint8Array(t)}function Uu(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function qi(r){let t=$t(r),e=Uint8Array.from(we(t.length));return Dt([e,t],e.length+t.length)}function $i(r){let t=ae(r);if(r=r.slice(ht(t)),r.length!==t)throw new Error("inconsistent lengths");return Q(r)}function ip(r){let t;r[0]==="Q"||r[0]==="1"?t=ue(et.decode(`z${r}`)).bytes:t=at.parse(r).multihash.bytes;let e=Uint8Array.from(we(t.length));return Dt([e,t],e.length+t.length)}function sp(r){let t=np.decode(r),e=Uint8Array.from(we(t.length));return Dt([e,t],e.length+t.length)}function cp(r){let t=ae(r),e=r.slice(ht(t));if(e.length!==t)throw new Error("inconsistent lengths");return"u"+Q(e,"base64url")}function ap(r){let t=ae(r),e=r.slice(ht(t));if(e.length!==t)throw new Error("inconsistent lengths");return Q(e,"base58btc")}function up(r){let t=r.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let e=Wt.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let o=Zi(n);return Dt([e,o],e.length+o.length)}function lp(r){let t=r.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let e=Wt.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let o=Zi(n);return Dt([e,o],e.length+o.length)}function Tu(r){let t=r.slice(0,r.length-2),e=r.slice(r.length-2),n=Q(t,"base32"),o=Uu(e);return`${n}:${o}`}function Lu(r){r=Wi(r);let t=[],e=[],n=null,o=r.split("/").slice(1);if(o.length===1&&o[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let i=0;i<o.length;i++){let s=o[i],c=J(s);if(c.size===0){t.push([c.code]),e.push([c.code]);continue}if(i++,i>=o.length)throw new mo("invalid address: "+r);if(c.path===!0){n=Wi(o.slice(i).join("/")),t.push([c.code,ji(c.code,n)]),e.push([c.code,n]);break}let a=ji(c.code,o[i]);t.push([c.code,a]),e.push([c.code,Gi(c.code,a)])}return{string:Pu(e),bytes:go(t),tuples:t,stringTuples:e,path:n}}function Yi(r){let t=[],e=[],n=null,o=0;for(;o<r.length;){let i=ae(r,o),s=ht(i),c=J(i),a=fp(c,r.slice(o+s));if(a===0){t.push([i]),e.push([i]),o+=s;continue}let l=r.slice(o+s,o+s+a);if(o+=a+s,o>r.length)throw new mo("Invalid address Uint8Array: "+Q(r,"base16"));t.push([i,l]);let u=Gi(i,l);if(e.push([i,u]),c.path===!0){n=u;break}}return{bytes:Uint8Array.from(r),string:Pu(e),tuples:t,stringTuples:e,path:n}}function Pu(r){let t=[];return r.map(e=>{let n=J(e[0]);return t.push(n.name),e.length>1&&e[1]!=null&&t.push(e[1]),null}),Wi(t.join("/"))}function go(r){return Dt(r.map(t=>{let e=J(t[0]),n=Uint8Array.from(we(e.code));return t.length>1&&t[1]!=null&&(n=Dt([n,t[1]])),n}))}function fp(r,t){if(r.size>0)return r.size/8;if(r.size===0)return 0;{let e=ae(t instanceof Uint8Array?t:Uint8Array.from(t));return e+ht(e)}}function Wi(r){return"/"+r.trim().split("/").filter(t=>t).join("/")}var mo=class extends Error{static name="ParseError";name="ParseError";constructor(t){super(`Error parsing address: ${t}`)}};var dp=Symbol.for("nodejs.util.inspect.custom"),Qi=Symbol.for("@multiformats/js-multiaddr/multiaddr"),hp=[J("dns").code,J("dns4").code,J("dns6").code,J("dnsaddr").code],Xi=class extends Error{constructor(t="No available resolver"){super(t),this.name="NoAvailableResolverError"}},yo=class r{bytes;#e;#t;#r;#n;[Qi]=!0;constructor(t){t==null&&(t="");let e;if(t instanceof Uint8Array)e=Yi(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);e=Lu(t)}else if(xo(t))e=Yi(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=e.bytes,this.#e=e.string,this.#t=e.tuples,this.#r=e.stringTuples,this.#n=e.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let t,e,n,o,i="",s=J("tcp"),c=J("udp"),a=J("ip4"),l=J("ip6"),u=J("dns6"),f=J("ip6zone");for(let[x,w]of this.stringTuples())x===f.code&&(i=`%${w??""}`),hp.includes(x)&&(e=s.name==="tcp"?"tcp":"udp",o=443,n=`${w??""}${i}`,t=x===u.code?6:4),(x===s.code||x===c.code)&&(e=J(x).name==="tcp"?"tcp":"udp",o=parseInt(w??"")),(x===a.code||x===l.code)&&(e=J(x).name==="tcp"?"tcp":"udp",n=`${w??""}${i}`,t=x===l.code?6:4);if(t==null||e==null||n==null||o==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:e,port:o}}protos(){return this.#t.map(([t])=>Object.assign({},J(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>J(t).name)}tuples(){return this.#t.map(([t,e])=>e==null?[t]:[t,e])}stringTuples(){return this.#r.map(([t,e])=>e==null?[t]:[t,e])}encapsulate(t){return t=new r(t),new r(this.toString()+t.toString())}decapsulate(t){let e=t.toString(),n=this.toString(),o=n.lastIndexOf(e);if(o<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new r(n.slice(0,o))}decapsulateCode(t){let e=this.tuples();for(let n=e.length-1;n>=0;n--)if(e[n][0]===t)return new r(go(e.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,o])=>{n===pr.p2p.code&&t.push([n,o]),n===pr["p2p-circuit"].code&&(t=[])});let e=t.pop();if(e?.[1]!=null){let n=e[1];return n[0]==="Q"||n[0]==="1"?Q(et.decode(`z${n}`),"base58btc"):Q(at.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return Nt(this.bytes,t.bytes)}async resolve(t){let e=this.protos().find(i=>i.resolvable);if(e==null)return[this];let n=Du.get(e.name);if(n==null)throw new Xi(`no available resolver for ${e.name}`);return(await n(this,t)).map(i=>Oe(i))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let e=(t??this).protos();return!(e.length!==2||e[0].code!==4&&e[0].code!==41||e[1].code!==6&&e[1].code!==273)}[dp](){return`Multiaddr(${this.#e})`}};var Du=new Map;function xo(r){return!!r?.[Qi]}function Oe(r){return new yo(r)}var Nu={type:4097,canEncode:r=>xo(r),encode:r=>r.bytes,decode:r=>Oe(r)};var pp=parseInt("11111",2),Ji=parseInt("10000000",2),mp=parseInt("01111111",2),Ru={0:sn,1:sn,2:gp,3:bp,4:wp,5:xp,6:yp,16:sn,22:sn,48:sn};function ts(r,t={offset:0}){let e=r[t.offset]&pp;if(t.offset++,Ru[e]!=null)return Ru[e](r,t);throw new Error("No decoder for tag "+e)}function cn(r,t){let e=0;if((r[t.offset]&Ji)===Ji){let n=r[t.offset]&mp,o="0x";t.offset++;for(let i=0;i<n;i++,t.offset++)o+=r[t.offset].toString(16).padStart(2,"0");e=parseInt(o,16)}else e=r[t.offset],t.offset++;return e}function sn(r,t){cn(r,t);let e=[];for(;!(t.offset>=r.byteLength);){let n=ts(r,t);if(n===null)break;e.push(n)}return e}function gp(r,t){let e=cn(r,t),n=t.offset,o=t.offset+e,i=[];for(let s=n;s<o;s++)s===n&&r[s]===0||i.push(r[s]);return t.offset+=e,Uint8Array.from(i)}function yp(r,t){let e=cn(r,t),n=t.offset+e,o=r[t.offset];t.offset++;let i=0,s=0;o<40?(i=0,s=o):o<80?(i=1,s=o-40):(i=2,s=o-80);let c=`${i}.${s}`,a=[];for(;t.offset<n;){let l=r[t.offset];if(t.offset++,a.push(l&127),l<128){a.reverse();let u=0;for(let f=0;f<a.length;f++)u+=a[f]<<f*7;c+=`.${u}`,a=[]}}return c}function xp(r,t){return t.offset++,null}function bp(r,t){let e=cn(r,t),n=r[t.offset];t.offset++;let o=r.subarray(t.offset,t.offset+e-1);if(t.offset+=e,n!==0)throw new Error("Unused bits in bit string is unimplemented");return o}function wp(r,t){let e=cn(r,t),n=r.subarray(t.offset,t.offset+e);return t.offset+=e,n}function Ep(r){let t=r.toString(16);t.length%2===1&&(t="0"+t);let e=new yt;for(let n=0;n<t.length;n+=2)e.append(Uint8Array.from([parseInt(`${t[n]}${t[n+1]}`,16)]));return e}function es(r){if(r.byteLength<128)return Uint8Array.from([r.byteLength]);let t=Ep(r.byteLength);return new yt(Uint8Array.from([t.byteLength|Ji]),t)}function Mu(r){let t=new yt,e=128;return(r.subarray()[0]&e)===e&&t.append(Uint8Array.from([0])),t.append(r),new yt(Uint8Array.from([2]),es(t),t)}function Ou(r){let t=Uint8Array.from([0]),e=new yt(t,r);return new yt(Uint8Array.from([3]),es(e),e)}function bo(r,t=48){let e=new yt;for(let n of r)e.append(n);return new yt(Uint8Array.from([t]),es(e),e)}async function Fu(r,t,e){let n=await crypto.subtle.importKey("jwk",r,{name:"ECDSA",namedCurve:r.crv??"P-256"},!1,["verify"]);return crypto.subtle.verify({name:"ECDSA",hash:{name:"SHA-256"}},n,t,e.subarray())}var vp=Uint8Array.from([6,8,42,134,72,206,61,3,1,7]),Sp=Uint8Array.from([6,5,43,129,4,0,34]),Ap=Uint8Array.from([6,5,43,129,4,0,35]),_p={ext:!0,kty:"EC",crv:"P-256"},Cp={ext:!0,kty:"EC",crv:"P-384"},Bp={ext:!0,kty:"EC",crv:"P-521"},rs=32,ns=48,os=66;function Ku(r){let t=ts(r);return Vu(t)}function Vu(r){let t=r[1][1][0],e=1,n,o;if(t.byteLength===rs*2+1)return n=Q(t.subarray(e,e+rs),"base64url"),o=Q(t.subarray(e+rs),"base64url"),new mr({..._p,key_ops:["verify"],x:n,y:o});if(t.byteLength===ns*2+1)return n=Q(t.subarray(e,e+ns),"base64url"),o=Q(t.subarray(e+ns),"base64url"),new mr({...Cp,key_ops:["verify"],x:n,y:o});if(t.byteLength===os*2+1)return n=Q(t.subarray(e,e+os),"base64url"),o=Q(t.subarray(e+os),"base64url"),new mr({...Bp,key_ops:["verify"],x:n,y:o});throw new zt(`coordinates were wrong length, got ${t.byteLength}, expected 65, 97 or 133`)}function Hu(r){return bo([Mu(Uint8Array.from([1])),bo([Ip(r.crv)],160),bo([Ou(new yt(Uint8Array.from([4]),$t(r.x??"","base64url"),$t(r.y??"","base64url")))],161)]).subarray()}function Ip(r){if(r==="P-256")return vp;if(r==="P-384")return Sp;if(r==="P-521")return Ap;throw new zt(`Invalid curve ${r}`)}var mr=class{type="ECDSA";jwk;_raw;constructor(t){this.jwk=t}get raw(){return this._raw==null&&(this._raw=Hu(this.jwk)),this._raw}toMultihash(){return Jt.digest(gr(this))}toCID(){return at.createV1(114,this.toMultihash())}toString(){return et.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Nt(this.raw,t.raw)}async verify(t,e){return Fu(this.jwk,e,t)}};function zu(r){if(!Number.isSafeInteger(r)||r<0)throw new Error("positive integer expected, got "+r)}function kp(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function yr(r,...t){if(!kp(r))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(r.length))throw new Error("Uint8Array expected of length "+t+", got length="+r.length)}function qu(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");zu(r.outputLen),zu(r.blockLen)}function xr(r,t=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(t&&r.finished)throw new Error("Hash#digest() has already been called")}function $u(r,t){yr(r);let e=t.outputLen;if(r.length<e)throw new Error("digestInto() expects output buffer of length at least "+e)}var Fe=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function wo(r){return new DataView(r.buffer,r.byteOffset,r.byteLength)}function re(r,t){return r<<32-t|r>>>t}var C2=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function";function Gu(r){if(typeof r!="string")throw new Error("utf8ToBytes expected string, got "+typeof r);return new Uint8Array(new TextEncoder().encode(r))}function an(r){return typeof r=="string"&&(r=Gu(r)),yr(r),r}function is(...r){let t=0;for(let n=0;n<r.length;n++){let o=r[n];yr(o),t+=o.length}let e=new Uint8Array(t);for(let n=0,o=0;n<r.length;n++){let i=r[n];e.set(i,o),o+=i.length}return e}var br=class{clone(){return this._cloneInto()}};function Eo(r){let t=n=>r().update(an(n)).digest(),e=r();return t.outputLen=e.outputLen,t.blockLen=e.blockLen,t.create=()=>r(),t}function vo(r=32){if(Fe&&typeof Fe.getRandomValues=="function")return Fe.getRandomValues(new Uint8Array(r));if(Fe&&typeof Fe.randomBytes=="function")return Uint8Array.from(Fe.randomBytes(r));throw new Error("crypto.getRandomValues must be defined")}function Tp(r,t,e,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(t,e,n);let o=BigInt(32),i=BigInt(4294967295),s=Number(e>>o&i),c=Number(e&i),a=n?4:0,l=n?0:4;r.setUint32(t+a,s,n),r.setUint32(t+l,c,n)}function ju(r,t,e){return r&t^~r&e}function Zu(r,t,e){return r&t^r&e^t&e}var wr=class extends br{constructor(t,e,n,o){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=t,this.outputLen=e,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(t),this.view=wo(this.buffer)}update(t){xr(this);let{view:e,buffer:n,blockLen:o}=this;t=an(t);let i=t.length;for(let s=0;s<i;){let c=Math.min(o-this.pos,i-s);if(c===o){let a=wo(t);for(;o<=i-s;s+=o)this.process(a,s);continue}n.set(t.subarray(s,s+c),this.pos),this.pos+=c,s+=c,this.pos===o&&(this.process(e,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){xr(this),$u(t,this),this.finished=!0;let{buffer:e,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;e[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>o-s&&(this.process(n,0),s=0);for(let f=s;f<o;f++)e[f]=0;Tp(n,o-8,BigInt(this.length*8),i),this.process(n,0);let c=wo(t),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let l=a/4,u=this.get();if(l>u.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<l;f++)c.setUint32(4*f,u[f],i)}digest(){let{buffer:t,outputLen:e}=this;this.digestInto(t);let n=t.slice(0,e);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:e,buffer:n,length:o,finished:i,destroyed:s,pos:c}=this;return t.length=o,t.pos=c,t.finished=i,t.destroyed=s,o%e&&t.buffer.set(n),t}};var Up=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),_e=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ce=new Uint32Array(64),ss=class extends wr{constructor(t=32){super(64,t,8,!1),this.A=_e[0]|0,this.B=_e[1]|0,this.C=_e[2]|0,this.D=_e[3]|0,this.E=_e[4]|0,this.F=_e[5]|0,this.G=_e[6]|0,this.H=_e[7]|0}get(){let{A:t,B:e,C:n,D:o,E:i,F:s,G:c,H:a}=this;return[t,e,n,o,i,s,c,a]}set(t,e,n,o,i,s,c,a){this.A=t|0,this.B=e|0,this.C=n|0,this.D=o|0,this.E=i|0,this.F=s|0,this.G=c|0,this.H=a|0}process(t,e){for(let f=0;f<16;f++,e+=4)Ce[f]=t.getUint32(e,!1);for(let f=16;f<64;f++){let h=Ce[f-15],x=Ce[f-2],w=re(h,7)^re(h,18)^h>>>3,g=re(x,17)^re(x,19)^x>>>10;Ce[f]=g+Ce[f-7]+w+Ce[f-16]|0}let{A:n,B:o,C:i,D:s,E:c,F:a,G:l,H:u}=this;for(let f=0;f<64;f++){let h=re(c,6)^re(c,11)^re(c,25),x=u+h+ju(c,a,l)+Up[f]+Ce[f]|0,g=(re(n,2)^re(n,13)^re(n,22))+Zu(n,o,i)|0;u=l,l=a,a=c,c=s+x|0,s=i,i=o,o=n,n=x+g|0}n=n+this.A|0,o=o+this.B|0,i=i+this.C|0,s=s+this.D|0,c=c+this.E|0,a=a+this.F|0,l=l+this.G|0,u=u+this.H|0,this.set(n,o,i,s,c,a,l,u)}roundClean(){Ce.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var cs=Eo(()=>new ss);var So=BigInt(4294967295),as=BigInt(32);function Wu(r,t=!1){return t?{h:Number(r&So),l:Number(r>>as&So)}:{h:Number(r>>as&So)|0,l:Number(r&So)|0}}function Lp(r,t=!1){let e=new Uint32Array(r.length),n=new Uint32Array(r.length);for(let o=0;o<r.length;o++){let{h:i,l:s}=Wu(r[o],t);[e[o],n[o]]=[i,s]}return[e,n]}var Pp=(r,t)=>BigInt(r>>>0)<<as|BigInt(t>>>0),Dp=(r,t,e)=>r>>>e,Np=(r,t,e)=>r<<32-e|t>>>e,Rp=(r,t,e)=>r>>>e|t<<32-e,Mp=(r,t,e)=>r<<32-e|t>>>e,Op=(r,t,e)=>r<<64-e|t>>>e-32,Fp=(r,t,e)=>r>>>e-32|t<<64-e,Kp=(r,t)=>t,Vp=(r,t)=>r,Hp=(r,t,e)=>r<<e|t>>>32-e,zp=(r,t,e)=>t<<e|r>>>32-e,qp=(r,t,e)=>t<<e-32|r>>>64-e,$p=(r,t,e)=>r<<e-32|t>>>64-e;function Gp(r,t,e,n){let o=(t>>>0)+(n>>>0);return{h:r+e+(o/2**32|0)|0,l:o|0}}var jp=(r,t,e)=>(r>>>0)+(t>>>0)+(e>>>0),Zp=(r,t,e,n)=>t+e+n+(r/2**32|0)|0,Wp=(r,t,e,n)=>(r>>>0)+(t>>>0)+(e>>>0)+(n>>>0),Yp=(r,t,e,n,o)=>t+e+n+o+(r/2**32|0)|0,Xp=(r,t,e,n,o)=>(r>>>0)+(t>>>0)+(e>>>0)+(n>>>0)+(o>>>0),Qp=(r,t,e,n,o,i)=>t+e+n+o+i+(r/2**32|0)|0;var Jp={fromBig:Wu,split:Lp,toBig:Pp,shrSH:Dp,shrSL:Np,rotrSH:Rp,rotrSL:Mp,rotrBH:Op,rotrBL:Fp,rotr32H:Kp,rotr32L:Vp,rotlSH:Hp,rotlSL:zp,rotlBH:qp,rotlBL:$p,add:Gp,add3L:jp,add3H:Zp,add4L:Wp,add4H:Yp,add5H:Qp,add5L:Xp},O=Jp;var[t0,e0]=O.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(r=>BigInt(r))),Be=new Uint32Array(80),Ie=new Uint32Array(80),us=class extends wr{constructor(t=64){super(128,t,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:e,Bh:n,Bl:o,Ch:i,Cl:s,Dh:c,Dl:a,Eh:l,El:u,Fh:f,Fl:h,Gh:x,Gl:w,Hh:g,Hl:d}=this;return[t,e,n,o,i,s,c,a,l,u,f,h,x,w,g,d]}set(t,e,n,o,i,s,c,a,l,u,f,h,x,w,g,d){this.Ah=t|0,this.Al=e|0,this.Bh=n|0,this.Bl=o|0,this.Ch=i|0,this.Cl=s|0,this.Dh=c|0,this.Dl=a|0,this.Eh=l|0,this.El=u|0,this.Fh=f|0,this.Fl=h|0,this.Gh=x|0,this.Gl=w|0,this.Hh=g|0,this.Hl=d|0}process(t,e){for(let m=0;m<16;m++,e+=4)Be[m]=t.getUint32(e),Ie[m]=t.getUint32(e+=4);for(let m=16;m<80;m++){let C=Be[m-15]|0,N=Ie[m-15]|0,P=O.rotrSH(C,N,1)^O.rotrSH(C,N,8)^O.shrSH(C,N,7),k=O.rotrSL(C,N,1)^O.rotrSL(C,N,8)^O.shrSL(C,N,7),T=Be[m-2]|0,L=Ie[m-2]|0,tt=O.rotrSH(T,L,19)^O.rotrBH(T,L,61)^O.shrSH(T,L,6),G=O.rotrSL(T,L,19)^O.rotrBL(T,L,61)^O.shrSL(T,L,6),K=O.add4L(k,G,Ie[m-7],Ie[m-16]),lt=O.add4H(K,P,tt,Be[m-7],Be[m-16]);Be[m]=lt|0,Ie[m]=K|0}let{Ah:n,Al:o,Bh:i,Bl:s,Ch:c,Cl:a,Dh:l,Dl:u,Eh:f,El:h,Fh:x,Fl:w,Gh:g,Gl:d,Hh:b,Hl:A}=this;for(let m=0;m<80;m++){let C=O.rotrSH(f,h,14)^O.rotrSH(f,h,18)^O.rotrBH(f,h,41),N=O.rotrSL(f,h,14)^O.rotrSL(f,h,18)^O.rotrBL(f,h,41),P=f&x^~f&g,k=h&w^~h&d,T=O.add5L(A,N,k,e0[m],Ie[m]),L=O.add5H(T,b,C,P,t0[m],Be[m]),tt=T|0,G=O.rotrSH(n,o,28)^O.rotrBH(n,o,34)^O.rotrBH(n,o,39),K=O.rotrSL(n,o,28)^O.rotrBL(n,o,34)^O.rotrBL(n,o,39),lt=n&i^n&c^i&c,_=o&s^o&a^s&a;b=g|0,A=d|0,g=x|0,d=w|0,x=f|0,w=h|0,{h:f,l:h}=O.add(l|0,u|0,L|0,tt|0),l=c|0,u=a|0,c=i|0,a=s|0,i=n|0,s=o|0;let U=O.add3L(tt,K,_);n=O.add3H(U,L,G,lt),o=U|0}({h:n,l:o}=O.add(this.Ah|0,this.Al|0,n|0,o|0)),{h:i,l:s}=O.add(this.Bh|0,this.Bl|0,i|0,s|0),{h:c,l:a}=O.add(this.Ch|0,this.Cl|0,c|0,a|0),{h:l,l:u}=O.add(this.Dh|0,this.Dl|0,l|0,u|0),{h:f,l:h}=O.add(this.Eh|0,this.El|0,f|0,h|0),{h:x,l:w}=O.add(this.Fh|0,this.Fl|0,x|0,w|0),{h:g,l:d}=O.add(this.Gh|0,this.Gl|0,g|0,d|0),{h:b,l:A}=O.add(this.Hh|0,this.Hl|0,b|0,A|0),this.set(n,o,i,s,c,a,l,u,f,h,x,w,g,d,b,A)}roundClean(){Be.fill(0),Ie.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var ls=Eo(()=>new us);var ps=BigInt(0),hs=BigInt(1);function Ke(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function ms(r){if(!Ke(r))throw new Error("Uint8Array expected")}function ie(r,t){if(typeof t!="boolean")throw new Error(r+" boolean expected, got "+t)}function un(r){let t=r.toString(16);return t.length&1?"0"+t:t}function Qu(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return r===""?ps:BigInt("0x"+r)}var Ju=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",r0=Array.from({length:256},(r,t)=>t.toString(16).padStart(2,"0"));function ke(r){if(ms(r),Ju)return r.toHex();let t="";for(let e=0;e<r.length;e++)t+=r0[r[e]];return t}var de={_0:48,_9:57,A:65,F:70,a:97,f:102};function Yu(r){if(r>=de._0&&r<=de._9)return r-de._0;if(r>=de.A&&r<=de.F)return r-(de.A-10);if(r>=de.a&&r<=de.f)return r-(de.a-10)}function ln(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);if(Ju)return Uint8Array.fromHex(r);let t=r.length,e=t/2;if(t%2)throw new Error("hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(e);for(let o=0,i=0;o<e;o++,i+=2){let s=Yu(r.charCodeAt(i)),c=Yu(r.charCodeAt(i+1));if(s===void 0||c===void 0){let a=r[i]+r[i+1];throw new Error('hex string expected, got non-hex character "'+a+'" at index '+i)}n[o]=s*16+c}return n}function he(r){return Qu(ke(r))}function Ve(r){return ms(r),Qu(ke(Uint8Array.from(r).reverse()))}function He(r,t){return ln(r.toString(16).padStart(t*2,"0"))}function Er(r,t){return He(r,t).reverse()}function it(r,t,e){let n;if(typeof t=="string")try{n=ln(t)}catch(i){throw new Error(r+" must be hex string or Uint8Array, cause: "+i)}else if(Ke(t))n=Uint8Array.from(t);else throw new Error(r+" must be hex string or Uint8Array");let o=n.length;if(typeof e=="number"&&o!==e)throw new Error(r+" of length "+e+" expected, got "+o);return n}function Te(...r){let t=0;for(let n=0;n<r.length;n++){let o=r[n];ms(o),t+=o.length}let e=new Uint8Array(t);for(let n=0,o=0;n<r.length;n++){let i=r[n];e.set(i,o),o+=i.length}return e}var fs=r=>typeof r=="bigint"&&ps<=r;function Ao(r,t,e){return fs(r)&&fs(t)&&fs(e)&&t<=r&&r<e}function Vt(r,t,e,n){if(!Ao(t,e,n))throw new Error("expected valid "+r+": "+e+" <= n < "+n+", got "+t)}function tl(r){let t;for(t=0;r>ps;r>>=hs,t+=1);return t}var ze=r=>(hs<<BigInt(r))-hs,ds=r=>new Uint8Array(r),Xu=r=>Uint8Array.from(r);function el(r,t,e){if(typeof r!="number"||r<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof e!="function")throw new Error("hmacFn must be a function");let n=ds(r),o=ds(r),i=0,s=()=>{n.fill(1),o.fill(0),i=0},c=(...f)=>e(o,n,...f),a=(f=ds(0))=>{o=c(Xu([0]),f),n=c(),f.length!==0&&(o=c(Xu([1]),f),n=c())},l=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let f=0,h=[];for(;f<t;){n=c();let x=n.slice();h.push(x),f+=n.length}return Te(...h)};return(f,h)=>{s(),a(f);let x;for(;!(x=h(l()));)a();return s(),x}}var n0={bigint:r=>typeof r=="bigint",function:r=>typeof r=="function",boolean:r=>typeof r=="boolean",string:r=>typeof r=="string",stringOrUint8Array:r=>typeof r=="string"||Ke(r),isSafeInteger:r=>Number.isSafeInteger(r),array:r=>Array.isArray(r),field:(r,t)=>t.Fp.isValid(r),hash:r=>typeof r=="function"&&Number.isSafeInteger(r.outputLen)};function pe(r,t,e={}){let n=(o,i,s)=>{let c=n0[i];if(typeof c!="function")throw new Error("invalid validator function");let a=r[o];if(!(s&&a===void 0)&&!c(a,r))throw new Error("param "+String(o)+" is invalid. Expected "+i+", got "+a)};for(let[o,i]of Object.entries(t))n(o,i,!1);for(let[o,i]of Object.entries(e))n(o,i,!0);return r}function vr(r){let t=new WeakMap;return(e,...n)=>{let o=t.get(e);if(o!==void 0)return o;let i=r(e,...n);return t.set(e,i),i}}var ft=BigInt(0),nt=BigInt(1),qe=BigInt(2),o0=BigInt(3),gs=BigInt(4),rl=BigInt(5),nl=BigInt(8),i0=BigInt(9),s0=BigInt(16);function W(r,t){let e=r%t;return e>=ft?e:t+e}function c0(r,t,e){if(t<ft)throw new Error("invalid exponent, negatives unsupported");if(e<=ft)throw new Error("invalid modulus");if(e===nt)return ft;let n=nt;for(;t>ft;)t&nt&&(n=n*r%e),r=r*r%e,t>>=nt;return n}function ot(r,t,e){let n=r;for(;t-- >ft;)n*=n,n%=e;return n}function _o(r,t){if(r===ft)throw new Error("invert: expected non-zero number");if(t<=ft)throw new Error("invert: expected positive modulus, got "+t);let e=W(r,t),n=t,o=ft,i=nt,s=nt,c=ft;for(;e!==ft;){let l=n/e,u=n%e,f=o-s*l,h=i-c*l;n=e,e=u,o=s,i=c,s=f,c=h}if(n!==nt)throw new Error("invert: does not exist");return W(o,t)}function a0(r){let t=(r-nt)/qe,e,n,o;for(e=r-nt,n=0;e%qe===ft;e/=qe,n++);for(o=qe;o<r&&c0(o,t,r)!==r-nt;o++)if(o>1e3)throw new Error("Cannot find square root: likely non-prime P");if(n===1){let s=(r+nt)/gs;return function(a,l){let u=a.pow(l,s);if(!a.eql(a.sqr(u),l))throw new Error("Cannot find square root");return u}}let i=(e+nt)/qe;return function(c,a){if(c.pow(a,t)===c.neg(c.ONE))throw new Error("Cannot find square root");let l=n,u=c.pow(c.mul(c.ONE,o),e),f=c.pow(a,i),h=c.pow(a,e);for(;!c.eql(h,c.ONE);){if(c.eql(h,c.ZERO))return c.ZERO;let x=1;for(let g=c.sqr(h);x<l&&!c.eql(g,c.ONE);x++)g=c.sqr(g);let w=c.pow(u,nt<<BigInt(l-x-1));u=c.sqr(w),f=c.mul(f,w),h=c.mul(h,u),l=x}return f}}function u0(r){if(r%gs===o0){let t=(r+nt)/gs;return function(n,o){let i=n.pow(o,t);if(!n.eql(n.sqr(i),o))throw new Error("Cannot find square root");return i}}if(r%nl===rl){let t=(r-rl)/nl;return function(n,o){let i=n.mul(o,qe),s=n.pow(i,t),c=n.mul(o,s),a=n.mul(n.mul(c,qe),s),l=n.mul(c,n.sub(a,n.ONE));if(!n.eql(n.sqr(l),o))throw new Error("Cannot find square root");return l}}return r%s0,a0(r)}var ol=(r,t)=>(W(r,t)&nt)===nt,l0=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function ys(r){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},e=l0.reduce((n,o)=>(n[o]="function",n),t);return pe(r,e)}function f0(r,t,e){if(e<ft)throw new Error("invalid exponent, negatives unsupported");if(e===ft)return r.ONE;if(e===nt)return t;let n=r.ONE,o=t;for(;e>ft;)e&nt&&(n=r.mul(n,o)),o=r.sqr(o),e>>=nt;return n}function d0(r,t){let e=new Array(t.length),n=t.reduce((i,s,c)=>r.is0(s)?i:(e[c]=i,r.mul(i,s)),r.ONE),o=r.inv(n);return t.reduceRight((i,s,c)=>r.is0(s)?i:(e[c]=r.mul(i,e[c]),r.mul(i,s)),o),e}function xs(r,t){let e=t!==void 0?t:r.toString(2).length,n=Math.ceil(e/8);return{nBitLength:e,nByteLength:n}}function Ue(r,t,e=!1,n={}){if(r<=ft)throw new Error("invalid field: expected ORDER > 0, got "+r);let{nBitLength:o,nByteLength:i}=xs(r,t);if(i>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let s,c=Object.freeze({ORDER:r,isLE:e,BITS:o,BYTES:i,MASK:ze(o),ZERO:ft,ONE:nt,create:a=>W(a,r),isValid:a=>{if(typeof a!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof a);return ft<=a&&a<r},is0:a=>a===ft,isOdd:a=>(a&nt)===nt,neg:a=>W(-a,r),eql:(a,l)=>a===l,sqr:a=>W(a*a,r),add:(a,l)=>W(a+l,r),sub:(a,l)=>W(a-l,r),mul:(a,l)=>W(a*l,r),pow:(a,l)=>f0(c,a,l),div:(a,l)=>W(a*_o(l,r),r),sqrN:a=>a*a,addN:(a,l)=>a+l,subN:(a,l)=>a-l,mulN:(a,l)=>a*l,inv:a=>_o(a,r),sqrt:n.sqrt||(a=>(s||(s=u0(r)),s(c,a))),invertBatch:a=>d0(c,a),cmov:(a,l,u)=>u?l:a,toBytes:a=>e?Er(a,i):He(a,i),fromBytes:a=>{if(a.length!==i)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+a.length);return e?Ve(a):he(a)}});return Object.freeze(c)}function il(r){if(typeof r!="bigint")throw new Error("field order must be bigint");let t=r.toString(2).length;return Math.ceil(t/8)}function bs(r){let t=il(r);return t+Math.ceil(t/2)}function sl(r,t,e=!1){let n=r.length,o=il(t),i=bs(t);if(n<16||n<i||n>1024)throw new Error("expected "+i+"-1024 bytes of input, got "+n);let s=e?Ve(r):he(r),c=W(s,t-nt)+nt;return e?Er(c,o):He(c,o)}var cl=BigInt(0),As=BigInt(1);function ws(r,t){let e=t.negate();return r?e:t}function ul(r,t){if(!Number.isSafeInteger(r)||r<=0||r>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+r)}function Es(r,t){ul(r,t);let e=Math.ceil(t/r)+1,n=2**(r-1),o=2**r,i=ze(r),s=BigInt(r);return{windows:e,windowSize:n,mask:i,maxNumber:o,shiftBy:s}}function al(r,t,e){let{windowSize:n,mask:o,maxNumber:i,shiftBy:s}=e,c=Number(r&o),a=r>>s;c>n&&(c-=i,a+=As);let l=t*n,u=l+Math.abs(c)-1,f=c===0,h=c<0,x=t%2!==0;return{nextN:a,offset:u,isZero:f,isNeg:h,isNegF:x,offsetF:l}}function h0(r,t){if(!Array.isArray(r))throw new Error("array expected");r.forEach((e,n)=>{if(!(e instanceof t))throw new Error("invalid point at index "+n)})}function p0(r,t){if(!Array.isArray(r))throw new Error("array of scalars expected");r.forEach((e,n)=>{if(!t.isValid(e))throw new Error("invalid scalar at index "+n)})}var vs=new WeakMap,ll=new WeakMap;function Ss(r){return ll.get(r)||1}function Co(r,t){return{constTimeNegate:ws,hasPrecomputes(e){return Ss(e)!==1},unsafeLadder(e,n,o=r.ZERO){let i=e;for(;n>cl;)n&As&&(o=o.add(i)),i=i.double(),n>>=As;return o},precomputeWindow(e,n){let{windows:o,windowSize:i}=Es(n,t),s=[],c=e,a=c;for(let l=0;l<o;l++){a=c,s.push(a);for(let u=1;u<i;u++)a=a.add(c),s.push(a);c=a.double()}return s},wNAF(e,n,o){let i=r.ZERO,s=r.BASE,c=Es(e,t);for(let a=0;a<c.windows;a++){let{nextN:l,offset:u,isZero:f,isNeg:h,isNegF:x,offsetF:w}=al(o,a,c);o=l,f?s=s.add(ws(x,n[w])):i=i.add(ws(h,n[u]))}return{p:i,f:s}},wNAFUnsafe(e,n,o,i=r.ZERO){let s=Es(e,t);for(let c=0;c<s.windows&&o!==cl;c++){let{nextN:a,offset:l,isZero:u,isNeg:f}=al(o,c,s);if(o=a,!u){let h=n[l];i=i.add(f?h.negate():h)}}return i},getPrecomputes(e,n,o){let i=vs.get(n);return i||(i=this.precomputeWindow(n,e),e!==1&&vs.set(n,o(i))),i},wNAFCached(e,n,o){let i=Ss(e);return this.wNAF(i,this.getPrecomputes(i,e,o),n)},wNAFCachedUnsafe(e,n,o,i){let s=Ss(e);return s===1?this.unsafeLadder(e,n,i):this.wNAFUnsafe(s,this.getPrecomputes(s,e,o),n,i)},setWindowSize(e,n){ul(n,t),ll.set(e,n),vs.delete(e)}}}function Bo(r,t,e,n){if(h0(e,r),p0(n,t),e.length!==n.length)throw new Error("arrays of points and scalars must have equal length");let o=r.ZERO,i=tl(BigInt(e.length)),s=i>12?i-3:i>4?i-2:i?2:1,c=ze(s),a=new Array(Number(c)+1).fill(o),l=Math.floor((t.BITS-1)/s)*s,u=o;for(let f=l;f>=0;f-=s){a.fill(o);for(let x=0;x<n.length;x++){let w=n[x],g=Number(w>>BigInt(f)&c);a[g]=a[g].add(e[x])}let h=o;for(let x=a.length-1,w=o;x>0;x--)w=w.add(a[x]),h=h.add(w);if(u=u.add(h),f!==0)for(let x=0;x<s;x++)u=u.double()}return u}function fn(r){return ys(r.Fp),pe(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...xs(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}var se=BigInt(0),kt=BigInt(1),fl=BigInt(2),m0=BigInt(8),g0={zip215:!0};function y0(r){let t=fn(r);return pe(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function dl(r){let t=y0(r),{Fp:e,n,prehash:o,hash:i,randomBytes:s,nByteLength:c,h:a}=t,l=fl<<BigInt(c*8)-kt,u=e.create,f=Ue(t.n,t.nBitLength),h=t.uvRatio||((E,y)=>{try{return{isValid:!0,value:e.sqrt(E*e.inv(y))}}catch{return{isValid:!1,value:se}}}),x=t.adjustScalarBytes||(E=>E),w=t.domain||((E,y,S)=>{if(ie("phflag",S),y.length||S)throw new Error("Contexts/pre-hash are not supported");return E});function g(E,y,S=!1){let I=S?kt:se;Vt("coordinate "+E,y,I,l)}function d(E){if(!(E instanceof m))throw new Error("ExtendedPoint expected")}let b=vr((E,y)=>{let{ex:S,ey:I,ez:R}=E,F=E.is0();y==null&&(y=F?m0:e.inv(R));let V=u(S*y),H=u(I*y),$=u(R*y);if(F)return{x:se,y:kt};if($!==kt)throw new Error("invZ was invalid");return{x:V,y:H}}),A=vr(E=>{let{a:y,d:S}=t;if(E.is0())throw new Error("bad point: ZERO");let{ex:I,ey:R,ez:F,et:V}=E,H=u(I*I),$=u(R*R),Z=u(F*F),ut=u(Z*Z),ct=u(H*y),gt=u(Z*u(ct+$)),Tt=u(ut+u(S*u(H*$)));if(gt!==Tt)throw new Error("bad point: equation left != right (1)");let dt=u(I*R),bt=u(F*V);if(dt!==bt)throw new Error("bad point: equation left != right (2)");return!0});class m{constructor(y,S,I,R){g("x",y),g("y",S),g("z",I,!0),g("t",R),this.ex=y,this.ey=S,this.ez=I,this.et=R,Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(y){if(y instanceof m)throw new Error("extended point not allowed");let{x:S,y:I}=y||{};return g("x",S),g("y",I),new m(S,I,kt,u(S*I))}static normalizeZ(y){let S=e.invertBatch(y.map(I=>I.ez));return y.map((I,R)=>I.toAffine(S[R])).map(m.fromAffine)}static msm(y,S){return Bo(m,f,y,S)}_setWindowSize(y){P.setWindowSize(this,y)}assertValidity(){A(this)}equals(y){d(y);let{ex:S,ey:I,ez:R}=this,{ex:F,ey:V,ez:H}=y,$=u(S*H),Z=u(F*R),ut=u(I*H),ct=u(V*R);return $===Z&&ut===ct}is0(){return this.equals(m.ZERO)}negate(){return new m(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:y}=t,{ex:S,ey:I,ez:R}=this,F=u(S*S),V=u(I*I),H=u(fl*u(R*R)),$=u(y*F),Z=S+I,ut=u(u(Z*Z)-F-V),ct=$+V,gt=ct-H,Tt=$-V,dt=u(ut*gt),bt=u(ct*Tt),Lt=u(ut*Tt),Zt=u(gt*ct);return new m(dt,bt,Zt,Lt)}add(y){d(y);let{a:S,d:I}=t,{ex:R,ey:F,ez:V,et:H}=this,{ex:$,ey:Z,ez:ut,et:ct}=y,gt=u(R*$),Tt=u(F*Z),dt=u(H*I*ct),bt=u(V*ut),Lt=u((R+F)*($+Z)-gt-Tt),Zt=bt-dt,_r=bt+dt,Rs=u(Tt-S*gt),Hl=u(Lt*Zt),zl=u(_r*Rs),ql=u(Lt*Rs),$l=u(Zt*_r);return new m(Hl,zl,$l,ql)}subtract(y){return this.add(y.negate())}wNAF(y){return P.wNAFCached(this,y,m.normalizeZ)}multiply(y){let S=y;Vt("scalar",S,kt,n);let{p:I,f:R}=this.wNAF(S);return m.normalizeZ([I,R])[0]}multiplyUnsafe(y,S=m.ZERO){let I=y;return Vt("scalar",I,se,n),I===se?N:this.is0()||I===kt?this:P.wNAFCachedUnsafe(this,I,m.normalizeZ,S)}isSmallOrder(){return this.multiplyUnsafe(a).is0()}isTorsionFree(){return P.unsafeLadder(this,n).is0()}toAffine(y){return b(this,y)}clearCofactor(){let{h:y}=t;return y===kt?this:this.multiplyUnsafe(y)}static fromHex(y,S=!1){let{d:I,a:R}=t,F=e.BYTES;y=it("pointHex",y,F),ie("zip215",S);let V=y.slice(),H=y[F-1];V[F-1]=H&-129;let $=Ve(V),Z=S?l:e.ORDER;Vt("pointHex.y",$,se,Z);let ut=u($*$),ct=u(ut-kt),gt=u(I*ut-R),{isValid:Tt,value:dt}=h(ct,gt);if(!Tt)throw new Error("Point.fromHex: invalid y coordinate");let bt=(dt&kt)===kt,Lt=(H&128)!==0;if(!S&&dt===se&&Lt)throw new Error("Point.fromHex: x=0 and x_0=1");return Lt!==bt&&(dt=u(-dt)),m.fromAffine({x:dt,y:$})}static fromPrivateKey(y){let{scalar:S}=L(y);return C.multiply(S)}toRawBytes(){let{x:y,y:S}=this.toAffine(),I=Er(S,e.BYTES);return I[I.length-1]|=y&kt?128:0,I}toHex(){return ke(this.toRawBytes())}}m.BASE=new m(t.Gx,t.Gy,kt,u(t.Gx*t.Gy)),m.ZERO=new m(se,kt,kt,se);let{BASE:C,ZERO:N}=m,P=Co(m,c*8);function k(E){return W(E,n)}function T(E){return k(Ve(E))}function L(E){let y=e.BYTES;E=it("private key",E,y);let S=it("hashed private key",i(E),2*y),I=x(S.slice(0,y)),R=S.slice(y,2*y),F=T(I);return{head:I,prefix:R,scalar:F}}function tt(E){let{head:y,prefix:S,scalar:I}=L(E),R=C.multiply(I),F=R.toRawBytes();return{head:y,prefix:S,scalar:I,point:R,pointBytes:F}}function G(E){return tt(E).pointBytes}function K(E=new Uint8Array,...y){let S=Te(...y);return T(i(w(S,it("context",E),!!o)))}function lt(E,y,S={}){E=it("message",E),o&&(E=o(E));let{prefix:I,scalar:R,pointBytes:F}=tt(y),V=K(S.context,I,E),H=C.multiply(V).toRawBytes(),$=K(S.context,H,F,E),Z=k(V+$*R);Vt("signature.s",Z,se,n);let ut=Te(H,Er(Z,e.BYTES));return it("result",ut,e.BYTES*2)}let _=g0;function U(E,y,S,I=_){let{context:R,zip215:F}=I,V=e.BYTES;E=it("signature",E,2*V),y=it("message",y),S=it("publicKey",S,V),F!==void 0&&ie("zip215",F),o&&(y=o(y));let H=Ve(E.slice(V,2*V)),$,Z,ut;try{$=m.fromHex(S,F),Z=m.fromHex(E.slice(0,V),F),ut=C.multiplyUnsafe(H)}catch{return!1}if(!F&&$.isSmallOrder())return!1;let ct=K(R,Z.toRawBytes(),$.toRawBytes(),y);return Z.add($.multiplyUnsafe(ct)).subtract(ut).clearCofactor().equals(m.ZERO)}return C._setWindowSize(8),{CURVE:t,getPublicKey:G,sign:lt,verify:U,ExtendedPoint:m,utils:{getExtendedPublicKey:tt,randomPrivateKey:()=>s(e.BYTES),precompute(E=8,y=m.BASE){return y._setWindowSize(E),y.multiply(BigInt(3)),y}}}}var _s=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),hl=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),cE=BigInt(0),x0=BigInt(1),pl=BigInt(2),aE=BigInt(3),b0=BigInt(5),w0=BigInt(8);function E0(r){let t=BigInt(10),e=BigInt(20),n=BigInt(40),o=BigInt(80),i=_s,c=r*r%i*r%i,a=ot(c,pl,i)*c%i,l=ot(a,x0,i)*r%i,u=ot(l,b0,i)*l%i,f=ot(u,t,i)*u%i,h=ot(f,e,i)*f%i,x=ot(h,n,i)*h%i,w=ot(x,o,i)*x%i,g=ot(w,o,i)*x%i,d=ot(g,t,i)*u%i;return{pow_p_5_8:ot(d,pl,i)*r%i,b2:c}}function v0(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function S0(r,t){let e=_s,n=W(t*t*t,e),o=W(n*n*t,e),i=E0(r*o).pow_p_5_8,s=W(r*n*i,e),c=W(t*s*s,e),a=s,l=W(s*hl,e),u=c===r,f=c===W(-r,e),h=c===W(-r*hl,e);return u&&(s=a),(f||h)&&(s=l),ol(s,e)&&(s=W(-s,e)),{isValid:u||f,value:s}}var ml=Ue(_s,void 0,!0),A0={a:ml.create(BigInt(-1)),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:ml,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:w0,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:ls,randomBytes:vo,adjustScalarBytes:v0,uvRatio:S0},gl=dl(A0);var Io=32;function yl(r,t,e){return gl.verify(t,e instanceof Uint8Array?e:e.subarray(),r)}var ko=class{type="Ed25519";raw;constructor(t){this.raw=Cs(t,Io)}toMultihash(){return Jt.digest(gr(this))}toCID(){return at.createV1(114,this.toMultihash())}toString(){return et.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Nt(this.raw,t.raw)}verify(t,e){return yl(this.raw,e,t)}};function bl(r){return r=Cs(r,Io),new ko(r)}function Cs(r,t){if(r=Uint8Array.from(r??[]),r.length!==t)throw new zt(`Key must be a Uint8Array of length ${t}, got ${r.length}`);return r}var Ht;(function(r){r.RSA="RSA",r.Ed25519="Ed25519",r.secp256k1="secp256k1",r.ECDSA="ECDSA"})(Ht||(Ht={}));var Bs;(function(r){r[r.RSA=0]="RSA",r[r.Ed25519=1]="Ed25519",r[r.secp256k1=2]="secp256k1",r[r.ECDSA=3]="ECDSA"})(Bs||(Bs={}));(function(r){r.codec=()=>jr(Bs)})(Ht||(Ht={}));var dn;(function(r){let t;r.codec=()=>(t==null&&(t=Bt((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.Type!=null&&(n.uint32(8),Ht.codec().encode(e.Type,n)),e.Data!=null&&(n.uint32(18),n.bytes(e.Data)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.Type=Ht.codec().decode(e);break}case 2:{i.Data=e.bytes();break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Ct(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(dn||(dn={}));var Is;(function(r){let t;r.codec=()=>(t==null&&(t=Bt((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.Type!=null&&(n.uint32(8),Ht.codec().encode(e.Type,n)),e.Data!=null&&(n.uint32(18),n.bytes(e.Data)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let c=e.uint32();switch(c>>>3){case 1:{i.Type=Ht.codec().decode(e);break}case 2:{i.Data=e.bytes();break}default:{e.skipType(c&7);break}}}return i})),t),r.encode=e=>Ct(e,r.codec()),r.decode=(e,n)=>_t(e,r.codec(),n)})(Is||(Is={}));var hn=class extends Error{constructor(t="An error occurred while verifying a message"){super(t),this.name="VerificationError"}};var To=class extends br{constructor(t,e){super(),this.finished=!1,this.destroyed=!1,qu(t);let n=an(e);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let o=this.blockLen,i=new Uint8Array(o);i.set(n.length>o?t.create().update(n).digest():n);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=t.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(t){return xr(this),this.iHash.update(t),this}digestInto(t){xr(this),yr(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:e,iHash:n,finished:o,destroyed:i,blockLen:s,outputLen:c}=this;return t=t,t.finished=o,t.destroyed=i,t.blockLen=s,t.outputLen=c,t.oHash=e._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},ks=(r,t,e)=>new To(r,t).update(e).digest();ks.create=(r,t)=>new To(r,t);function wl(r){r.lowS!==void 0&&ie("lowS",r.lowS),r.prehash!==void 0&&ie("prehash",r.prehash)}function B0(r){let t=fn(r);pe(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:e,Fp:n,a:o}=t;if(e){if(!n.eql(o,n.ZERO))throw new Error("invalid endomorphism, can only be defined for Koblitz curves that have a=0");if(typeof e!="object"||typeof e.beta!="bigint"||typeof e.splitScalar!="function")throw new Error("invalid endomorphism, expected beta: bigint and splitScalar: function")}return Object.freeze({...t})}var Ts=class extends Error{constructor(t=""){super(t)}},me={Err:Ts,_tlv:{encode:(r,t)=>{let{Err:e}=me;if(r<0||r>256)throw new e("tlv.encode: wrong tag");if(t.length&1)throw new e("tlv.encode: unpadded data");let n=t.length/2,o=un(n);if(o.length/2&128)throw new e("tlv.encode: long form length too big");let i=n>127?un(o.length/2|128):"";return un(r)+i+o+t},decode(r,t){let{Err:e}=me,n=0;if(r<0||r>256)throw new e("tlv.encode: wrong tag");if(t.length<2||t[n++]!==r)throw new e("tlv.decode: wrong tlv");let o=t[n++],i=!!(o&128),s=0;if(!i)s=o;else{let a=o&127;if(!a)throw new e("tlv.decode(long): indefinite length not supported");if(a>4)throw new e("tlv.decode(long): byte length is too big");let l=t.subarray(n,n+a);if(l.length!==a)throw new e("tlv.decode: length bytes not complete");if(l[0]===0)throw new e("tlv.decode(long): zero leftmost byte");for(let u of l)s=s<<8|u;if(n+=a,s<128)throw new e("tlv.decode(long): not minimal encoding")}let c=t.subarray(n,n+s);if(c.length!==s)throw new e("tlv.decode: wrong value length");return{v:c,l:t.subarray(n+s)}}},_int:{encode(r){let{Err:t}=me;if(r<ge)throw new t("integer: negative integers are not allowed");let e=un(r);if(Number.parseInt(e[0],16)&8&&(e="00"+e),e.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return e},decode(r){let{Err:t}=me;if(r[0]&128)throw new t("invalid signature integer: negative");if(r[0]===0&&!(r[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return he(r)}},toSig(r){let{Err:t,_int:e,_tlv:n}=me,o=it("signature",r),{v:i,l:s}=n.decode(48,o);if(s.length)throw new t("invalid signature: left bytes after parsing");let{v:c,l:a}=n.decode(2,i),{v:l,l:u}=n.decode(2,a);if(u.length)throw new t("invalid signature: left bytes after parsing");return{r:e.decode(c),s:e.decode(l)}},hexFromSig(r){let{_tlv:t,_int:e}=me,n=t.encode(2,e.encode(r.r)),o=t.encode(2,e.encode(r.s)),i=n+o;return t.encode(48,i)}},ge=BigInt(0),mt=BigInt(1),DE=BigInt(2),El=BigInt(3),NE=BigInt(4);function I0(r){let t=B0(r),{Fp:e}=t,n=Ue(t.n,t.nBitLength),o=t.toBytes||((g,d,b)=>{let A=d.toAffine();return Te(Uint8Array.from([4]),e.toBytes(A.x),e.toBytes(A.y))}),i=t.fromBytes||(g=>{let d=g.subarray(1),b=e.fromBytes(d.subarray(0,e.BYTES)),A=e.fromBytes(d.subarray(e.BYTES,2*e.BYTES));return{x:b,y:A}});function s(g){let{a:d,b}=t,A=e.sqr(g),m=e.mul(A,g);return e.add(e.add(m,e.mul(g,d)),b)}if(!e.eql(e.sqr(t.Gy),s(t.Gx)))throw new Error("bad generator point: equation left != right");function c(g){return Ao(g,mt,t.n)}function a(g){let{allowedPrivateKeyLengths:d,nByteLength:b,wrapPrivateKey:A,n:m}=t;if(d&&typeof g!="bigint"){if(Ke(g)&&(g=ke(g)),typeof g!="string"||!d.includes(g.length))throw new Error("invalid private key");g=g.padStart(b*2,"0")}let C;try{C=typeof g=="bigint"?g:he(it("private key",g,b))}catch{throw new Error("invalid private key, expected hex or "+b+" bytes, got "+typeof g)}return A&&(C=W(C,m)),Vt("private key",C,mt,m),C}function l(g){if(!(g instanceof h))throw new Error("ProjectivePoint expected")}let u=vr((g,d)=>{let{px:b,py:A,pz:m}=g;if(e.eql(m,e.ONE))return{x:b,y:A};let C=g.is0();d==null&&(d=C?e.ONE:e.inv(m));let N=e.mul(b,d),P=e.mul(A,d),k=e.mul(m,d);if(C)return{x:e.ZERO,y:e.ZERO};if(!e.eql(k,e.ONE))throw new Error("invZ was invalid");return{x:N,y:P}}),f=vr(g=>{if(g.is0()){if(t.allowInfinityPoint&&!e.is0(g.py))return;throw new Error("bad point: ZERO")}let{x:d,y:b}=g.toAffine();if(!e.isValid(d)||!e.isValid(b))throw new Error("bad point: x or y not FE");let A=e.sqr(b),m=s(d);if(!e.eql(A,m))throw new Error("bad point: equation left != right");if(!g.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class h{constructor(d,b,A){if(d==null||!e.isValid(d))throw new Error("x required");if(b==null||!e.isValid(b))throw new Error("y required");if(A==null||!e.isValid(A))throw new Error("z required");this.px=d,this.py=b,this.pz=A,Object.freeze(this)}static fromAffine(d){let{x:b,y:A}=d||{};if(!d||!e.isValid(b)||!e.isValid(A))throw new Error("invalid affine point");if(d instanceof h)throw new Error("projective point not allowed");let m=C=>e.eql(C,e.ZERO);return m(b)&&m(A)?h.ZERO:new h(b,A,e.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(d){let b=e.invertBatch(d.map(A=>A.pz));return d.map((A,m)=>A.toAffine(b[m])).map(h.fromAffine)}static fromHex(d){let b=h.fromAffine(i(it("pointHex",d)));return b.assertValidity(),b}static fromPrivateKey(d){return h.BASE.multiply(a(d))}static msm(d,b){return Bo(h,n,d,b)}_setWindowSize(d){w.setWindowSize(this,d)}assertValidity(){f(this)}hasEvenY(){let{y:d}=this.toAffine();if(e.isOdd)return!e.isOdd(d);throw new Error("Field doesn't support isOdd")}equals(d){l(d);let{px:b,py:A,pz:m}=this,{px:C,py:N,pz:P}=d,k=e.eql(e.mul(b,P),e.mul(C,m)),T=e.eql(e.mul(A,P),e.mul(N,m));return k&&T}negate(){return new h(this.px,e.neg(this.py),this.pz)}double(){let{a:d,b}=t,A=e.mul(b,El),{px:m,py:C,pz:N}=this,P=e.ZERO,k=e.ZERO,T=e.ZERO,L=e.mul(m,m),tt=e.mul(C,C),G=e.mul(N,N),K=e.mul(m,C);return K=e.add(K,K),T=e.mul(m,N),T=e.add(T,T),P=e.mul(d,T),k=e.mul(A,G),k=e.add(P,k),P=e.sub(tt,k),k=e.add(tt,k),k=e.mul(P,k),P=e.mul(K,P),T=e.mul(A,T),G=e.mul(d,G),K=e.sub(L,G),K=e.mul(d,K),K=e.add(K,T),T=e.add(L,L),L=e.add(T,L),L=e.add(L,G),L=e.mul(L,K),k=e.add(k,L),G=e.mul(C,N),G=e.add(G,G),L=e.mul(G,K),P=e.sub(P,L),T=e.mul(G,tt),T=e.add(T,T),T=e.add(T,T),new h(P,k,T)}add(d){l(d);let{px:b,py:A,pz:m}=this,{px:C,py:N,pz:P}=d,k=e.ZERO,T=e.ZERO,L=e.ZERO,tt=t.a,G=e.mul(t.b,El),K=e.mul(b,C),lt=e.mul(A,N),_=e.mul(m,P),U=e.add(b,A),D=e.add(C,N);U=e.mul(U,D),D=e.add(K,lt),U=e.sub(U,D),D=e.add(b,m);let E=e.add(C,P);return D=e.mul(D,E),E=e.add(K,_),D=e.sub(D,E),E=e.add(A,m),k=e.add(N,P),E=e.mul(E,k),k=e.add(lt,_),E=e.sub(E,k),L=e.mul(tt,D),k=e.mul(G,_),L=e.add(k,L),k=e.sub(lt,L),L=e.add(lt,L),T=e.mul(k,L),lt=e.add(K,K),lt=e.add(lt,K),_=e.mul(tt,_),D=e.mul(G,D),lt=e.add(lt,_),_=e.sub(K,_),_=e.mul(tt,_),D=e.add(D,_),K=e.mul(lt,D),T=e.add(T,K),K=e.mul(E,D),k=e.mul(U,k),k=e.sub(k,K),K=e.mul(U,lt),L=e.mul(E,L),L=e.add(L,K),new h(k,T,L)}subtract(d){return this.add(d.negate())}is0(){return this.equals(h.ZERO)}wNAF(d){return w.wNAFCached(this,d,h.normalizeZ)}multiplyUnsafe(d){let{endo:b,n:A}=t;Vt("scalar",d,ge,A);let m=h.ZERO;if(d===ge)return m;if(this.is0()||d===mt)return this;if(!b||w.hasPrecomputes(this))return w.wNAFCachedUnsafe(this,d,h.normalizeZ);let{k1neg:C,k1:N,k2neg:P,k2:k}=b.splitScalar(d),T=m,L=m,tt=this;for(;N>ge||k>ge;)N&mt&&(T=T.add(tt)),k&mt&&(L=L.add(tt)),tt=tt.double(),N>>=mt,k>>=mt;return C&&(T=T.negate()),P&&(L=L.negate()),L=new h(e.mul(L.px,b.beta),L.py,L.pz),T.add(L)}multiply(d){let{endo:b,n:A}=t;Vt("scalar",d,mt,A);let m,C;if(b){let{k1neg:N,k1:P,k2neg:k,k2:T}=b.splitScalar(d),{p:L,f:tt}=this.wNAF(P),{p:G,f:K}=this.wNAF(T);L=w.constTimeNegate(N,L),G=w.constTimeNegate(k,G),G=new h(e.mul(G.px,b.beta),G.py,G.pz),m=L.add(G),C=tt.add(K)}else{let{p:N,f:P}=this.wNAF(d);m=N,C=P}return h.normalizeZ([m,C])[0]}multiplyAndAddUnsafe(d,b,A){let m=h.BASE,C=(P,k)=>k===ge||k===mt||!P.equals(m)?P.multiplyUnsafe(k):P.multiply(k),N=C(this,b).add(C(d,A));return N.is0()?void 0:N}toAffine(d){return u(this,d)}isTorsionFree(){let{h:d,isTorsionFree:b}=t;if(d===mt)return!0;if(b)return b(h,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:d,clearCofactor:b}=t;return d===mt?this:b?b(h,this):this.multiplyUnsafe(t.h)}toRawBytes(d=!0){return ie("isCompressed",d),this.assertValidity(),o(h,this,d)}toHex(d=!0){return ie("isCompressed",d),ke(this.toRawBytes(d))}}h.BASE=new h(t.Gx,t.Gy,e.ONE),h.ZERO=new h(e.ZERO,e.ONE,e.ZERO);let x=t.nBitLength,w=Co(h,t.endo?Math.ceil(x/2):x);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:a,weierstrassEquation:s,isWithinCurveOrder:c}}function k0(r){let t=fn(r);return pe(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function vl(r){let t=k0(r),{Fp:e,n}=t,o=e.BYTES+1,i=2*e.BYTES+1;function s(_){return W(_,n)}function c(_){return _o(_,n)}let{ProjectivePoint:a,normPrivateKeyToScalar:l,weierstrassEquation:u,isWithinCurveOrder:f}=I0({...t,toBytes(_,U,D){let E=U.toAffine(),y=e.toBytes(E.x),S=Te;return ie("isCompressed",D),D?S(Uint8Array.from([U.hasEvenY()?2:3]),y):S(Uint8Array.from([4]),y,e.toBytes(E.y))},fromBytes(_){let U=_.length,D=_[0],E=_.subarray(1);if(U===o&&(D===2||D===3)){let y=he(E);if(!Ao(y,mt,e.ORDER))throw new Error("Point is not on curve");let S=u(y),I;try{I=e.sqrt(S)}catch(V){let H=V instanceof Error?": "+V.message:"";throw new Error("Point is not on curve"+H)}let R=(I&mt)===mt;return(D&1)===1!==R&&(I=e.neg(I)),{x:y,y:I}}else if(U===i&&D===4){let y=e.fromBytes(E.subarray(0,e.BYTES)),S=e.fromBytes(E.subarray(e.BYTES,2*e.BYTES));return{x:y,y:S}}else{let y=o,S=i;throw new Error("invalid Point, expected length of "+y+", or uncompressed "+S+", got "+U)}}}),h=_=>ke(He(_,t.nByteLength));function x(_){let U=n>>mt;return _>U}function w(_){return x(_)?s(-_):_}let g=(_,U,D)=>he(_.slice(U,D));class d{constructor(U,D,E){Vt("r",U,mt,n),Vt("s",D,mt,n),this.r=U,this.s=D,E!=null&&(this.recovery=E),Object.freeze(this)}static fromCompact(U){let D=t.nByteLength;return U=it("compactSignature",U,D*2),new d(g(U,0,D),g(U,D,2*D))}static fromDER(U){let{r:D,s:E}=me.toSig(it("DER",U));return new d(D,E)}assertValidity(){}addRecoveryBit(U){return new d(this.r,this.s,U)}recoverPublicKey(U){let{r:D,s:E,recovery:y}=this,S=P(it("msgHash",U));if(y==null||![0,1,2,3].includes(y))throw new Error("recovery id invalid");let I=y===2||y===3?D+t.n:D;if(I>=e.ORDER)throw new Error("recovery id 2 or 3 invalid");let R=(y&1)===0?"02":"03",F=a.fromHex(R+h(I)),V=c(I),H=s(-S*V),$=s(E*V),Z=a.BASE.multiplyAndAddUnsafe(F,H,$);if(!Z)throw new Error("point at infinify");return Z.assertValidity(),Z}hasHighS(){return x(this.s)}normalizeS(){return this.hasHighS()?new d(this.r,s(-this.s),this.recovery):this}toDERRawBytes(){return ln(this.toDERHex())}toDERHex(){return me.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return ln(this.toCompactHex())}toCompactHex(){return h(this.r)+h(this.s)}}let b={isValidPrivateKey(_){try{return l(_),!0}catch{return!1}},normPrivateKeyToScalar:l,randomPrivateKey:()=>{let _=bs(t.n);return sl(t.randomBytes(_),t.n)},precompute(_=8,U=a.BASE){return U._setWindowSize(_),U.multiply(BigInt(3)),U}};function A(_,U=!0){return a.fromPrivateKey(_).toRawBytes(U)}function m(_){let U=Ke(_),D=typeof _=="string",E=(U||D)&&_.length;return U?E===o||E===i:D?E===2*o||E===2*i:_ instanceof a}function C(_,U,D=!0){if(m(_))throw new Error("first arg must be private key");if(!m(U))throw new Error("second arg must be public key");return a.fromHex(U).multiply(l(_)).toRawBytes(D)}let N=t.bits2int||function(_){if(_.length>8192)throw new Error("input is too large");let U=he(_),D=_.length*8-t.nBitLength;return D>0?U>>BigInt(D):U},P=t.bits2int_modN||function(_){return s(N(_))},k=ze(t.nBitLength);function T(_){return Vt("num < 2^"+t.nBitLength,_,ge,k),He(_,t.nByteLength)}function L(_,U,D=tt){if(["recovered","canonical"].some(ct=>ct in D))throw new Error("sign() legacy options not supported");let{hash:E,randomBytes:y}=t,{lowS:S,prehash:I,extraEntropy:R}=D;S==null&&(S=!0),_=it("msgHash",_),wl(D),I&&(_=it("prehashed msgHash",E(_)));let F=P(_),V=l(U),H=[T(V),T(F)];if(R!=null&&R!==!1){let ct=R===!0?y(e.BYTES):R;H.push(it("extraEntropy",ct))}let $=Te(...H),Z=F;function ut(ct){let gt=N(ct);if(!f(gt))return;let Tt=c(gt),dt=a.BASE.multiply(gt).toAffine(),bt=s(dt.x);if(bt===ge)return;let Lt=s(Tt*s(Z+bt*V));if(Lt===ge)return;let Zt=(dt.x===bt?0:2)|Number(dt.y&mt),_r=Lt;return S&&x(Lt)&&(_r=w(Lt),Zt^=1),new d(bt,_r,Zt)}return{seed:$,k2sig:ut}}let tt={lowS:t.lowS,prehash:!1},G={lowS:t.lowS,prehash:!1};function K(_,U,D=tt){let{seed:E,k2sig:y}=L(_,U,D),S=t;return el(S.hash.outputLen,S.nByteLength,S.hmac)(E,y)}a.BASE._setWindowSize(8);function lt(_,U,D,E=G){let y=_;U=it("msgHash",U),D=it("publicKey",D);let{lowS:S,prehash:I,format:R}=E;if(wl(E),"strict"in E)throw new Error("options.strict was renamed to lowS");if(R!==void 0&&R!=="compact"&&R!=="der")throw new Error("format must be compact or der");let F=typeof y=="string"||Ke(y),V=!F&&!R&&typeof y=="object"&&y!==null&&typeof y.r=="bigint"&&typeof y.s=="bigint";if(!F&&!V)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let H,$;try{if(V&&(H=new d(y.r,y.s)),F){try{R!=="compact"&&(H=d.fromDER(y))}catch(Zt){if(!(Zt instanceof me.Err))throw Zt}!H&&R!=="der"&&(H=d.fromCompact(y))}$=a.fromHex(D)}catch{return!1}if(!H||S&&H.hasHighS())return!1;I&&(U=t.hash(U));let{r:Z,s:ut}=H,ct=P(U),gt=c(ut),Tt=s(ct*gt),dt=s(Z*gt),bt=a.BASE.multiplyAndAddUnsafe($,Tt,dt)?.toAffine();return bt?s(bt.x)===Z:!1}return{CURVE:t,getPublicKey:A,getSharedSecret:C,sign:K,verify:lt,ProjectivePoint:a,Signature:d,utils:b}}function T0(r){return{hash:r,hmac:(t,...e)=>ks(r,t,is(...e)),randomBytes:vo}}function Sl(r,t){let e=n=>vl({...r,...T0(n)});return{...e(t),create:e}}var Cl=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Al=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),U0=BigInt(1),Us=BigInt(2),_l=(r,t)=>(r+t/Us)/t;function L0(r){let t=Cl,e=BigInt(3),n=BigInt(6),o=BigInt(11),i=BigInt(22),s=BigInt(23),c=BigInt(44),a=BigInt(88),l=r*r*r%t,u=l*l*r%t,f=ot(u,e,t)*u%t,h=ot(f,e,t)*u%t,x=ot(h,Us,t)*l%t,w=ot(x,o,t)*x%t,g=ot(w,i,t)*w%t,d=ot(g,c,t)*g%t,b=ot(d,a,t)*d%t,A=ot(b,c,t)*g%t,m=ot(A,e,t)*u%t,C=ot(m,s,t)*w%t,N=ot(C,n,t)*l%t,P=ot(N,Us,t);if(!Ls.eql(Ls.sqr(P),r))throw new Error("Cannot find square root");return P}var Ls=Ue(Cl,void 0,void 0,{sqrt:L0}),$e=Sl({a:BigInt(0),b:BigInt(7),Fp:Ls,n:Al,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:r=>{let t=Al,e=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-U0*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),o=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=e,s=BigInt("0x100000000000000000000000000000000"),c=_l(i*r,t),a=_l(-n*r,t),l=W(r-c*e-a*o,t),u=W(-c*n-a*i,t),f=l>s,h=u>s;if(f&&(l=t-l),h&&(u=t-u),l>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+r);return{k1neg:f,k1:l,k2neg:h,k2:u}}}},cs),qE=BigInt(0);var $E=$e.ProjectivePoint;function Bl(r){return r==null?!1:typeof r.then=="function"&&typeof r.catch=="function"&&typeof r.finally=="function"}function Il(r,t,e){let n=Hr.digest(e instanceof Uint8Array?e:e.subarray());if(Bl(n))return n.then(({digest:o})=>$e.verify(t,o,r)).catch(o=>{throw new hn(String(o))});try{return $e.verify(t,n.digest,r)}catch(o){throw new hn(String(o))}}var Uo=class{type="secp256k1";raw;_key;constructor(t){this._key=Tl(t),this.raw=kl(this._key)}toMultihash(){return Jt.digest(gr(this))}toCID(){return at.createV1(114,this.toMultihash())}toString(){return et.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Nt(this.raw,t.raw)}verify(t,e){return Il(this._key,e,t)}};function Ul(r){return new Uo(r)}function kl(r){return $e.ProjectivePoint.fromHex(r).toRawBytes(!0)}function Tl(r){try{return $e.ProjectivePoint.fromHex(r),r}catch(t){throw new bn(String(t))}}function Ll(r){let{Type:t,Data:e}=dn.decode(r.digest),n=e??new Uint8Array;switch(t){case Ht.Ed25519:return bl(n);case Ht.secp256k1:return Ul(n);case Ht.ECDSA:return Ku(n);default:throw new Br}}function gr(r){return dn.encode({Type:Ht[r.type],Data:r.raw})}var Pl=Symbol.for("nodejs.util.inspect.custom"),P0=114,pn=class{type;multihash;publicKey;string;constructor(t){this.type=t.type,this.multihash=t.multihash,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[yn]=!0;toString(){return this.string==null&&(this.string=et.encode(this.multihash.bytes).slice(1)),this.string}toMultihash(){return this.multihash}toCID(){return at.createV1(P0,this.multihash)}toJSON(){return this.toString()}equals(t){if(t==null)return!1;if(t instanceof Uint8Array)return Nt(this.multihash.bytes,t);if(typeof t=="string")return this.toString()===t;if(t?.toMultihash()?.bytes!=null)return Nt(this.multihash.bytes,t.toMultihash().bytes);throw new Error("not valid Id")}[Pl](){return`PeerId(${this.toString()})`}},Lo=class extends pn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},Po=class extends pn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.publicKey}},Do=class extends pn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.publicKey}},D0=2336,mn=class{type="url";multihash;publicKey;url;constructor(t){this.url=t.toString(),this.multihash=Jt.digest($t(this.url))}[Pl](){return`PeerId(${this.url})`}[yn]=!0;toString(){return this.toCID().toString()}toMultihash(){return this.multihash}toCID(){return at.createV1(D0,this.toMultihash())}toJSON(){return this.toString()}equals(t){return t==null?!1:(t instanceof Uint8Array&&(t=Q(t)),t.toString()===this.toString())}};var N0=114,Dl=2336;function Nl(r,t){let e;if(r.charAt(0)==="1"||r.charAt(0)==="Q")e=ue(et.decode(`z${r}`));else{if(r.startsWith("k51qzi5uqu5")||r.startsWith("kzwfwjn5ji4")||r.startsWith("k2k4r8")||r.startsWith("bafz"))return R0(at.parse(r));if(t==null)throw new zt('Please pass a multibase decoder for strings that do not start with "1" or "Q"');e=ue(t.decode(r))}return No(e)}function No(r){if(O0(r))return new Lo({multihash:r});if(M0(r))try{let t=Ll(r);if(t.type==="Ed25519")return new Po({multihash:r,publicKey:t});if(t.type==="secp256k1")return new Do({multihash:r,publicKey:t})}catch{let e=Q(r.digest);return new mn(new URL(e))}throw new En("Supplied PeerID Multihash is invalid")}function R0(r){if(r?.multihash==null||r.version==null||r.version===1&&r.code!==N0&&r.code!==Dl)throw new wn("Supplied PeerID CID is invalid");if(r.code===Dl){let t=Q(r.multihash.digest);return new mn(new URL(t))}return No(r.multihash)}function M0(r){return r.code===Jt.code}function O0(r){return r.code===Hr.code}var Rl={type:4098,canEncode:r=>Os(r),encode:r=>r.toMultihash().bytes,decode:r=>No(ue(r))};var Ps=[wu,Nu,Rl,Eu];function Ro(r){let t={},e=r.components??r;return Object.entries(e).forEach(([n,o])=>{o?.[ye]!=null&&Array.isArray(o[ye])&&(t[n]=o[ye])}),t}function Sr(r,t){let e={};for(let[n,o]of r.entries())e[n]=t(o);return e}async function Mo(r,t){let e=[],n=r.connectionManager.getConnectionsMap(),o=[...n.values()].flatMap(i=>i).map(i=>i.remoteAddr.toString());for(let[i,s]of n.entries())try{let c=await r.peerStore.get(i);e.push({id:i,addresses:c.addresses.map(({isCertified:a,multiaddr:l})=>({multiaddr:l,isCertified:a,isConnected:o.includes(l.toString())})),protocols:[...c.protocols],tags:Sr(c.tags,a=>a.value),metadata:Sr(c.metadata,a=>ne.encode(a))})}catch(c){t.error("could not load peer data from peer store",c),e.push({id:i,addresses:s.map(a=>({multiaddr:a.remoteAddr,isConnected:o.includes(a.remoteAddr.toString())})),protocols:[],tags:{},metadata:{}})}return e}function Ar(r,t){let e=t[r];if(!xn(e))throw new zt(`Component ${r} did not implement the PubSub interface`);return e}async function Oo(r){let t=await r.peerStore.get(r.peerId);return{id:t.id,addresses:t.addresses,protocols:[...t.protocols],tags:Sr(t.tags,e=>e.value),metadata:Sr(t.metadata,e=>ne.encode(e))}}function Ml(r){let t=r.logger.forComponent("libp2p:devtools-metrics:metrics-rpc");return{init:async()=>({self:await Oo(r),peers:await Mo(r,t),debug:localStorage.getItem("debug")??"",capabilities:Ro(r)}),setDebug:async e=>{e?.length!=null&&e?.length>0?(Js(e),localStorage.setItem("debug",e)):(Qs(),localStorage.removeItem("debug"))},openConnection:async(e,n)=>{let o;try{o=Nl(e)}catch{o=Oe(e)}await r.connectionManager.openConnection(o,n)},closeConnection:async(e,n)=>{await Promise.all(r.connectionManager.getConnections(e).map(async o=>{try{await o.close(n)}catch(i){o.abort(i)}}))},contentRouting:r.contentRouting,peerRouting:r.peerRouting,pubsub:{async getTopics(e){return Ar(e,r).getTopics()},async subscribe(e,n){Ar(e,r).subscribe(n)},async unsubscribe(e,n){Ar(e,r).unsubscribe(n)},async publish(e,n,o){await Ar(e,r).publish(n,o)},async getSubscribers(e,n){return Ar(e,r).getSubscribers(n)}}}}function Ds(r,t=100){let e,n;return()=>{if(n==null&&(n=Date.now()),e!=null&&Date.now()-n>t){clearTimeout(e),n=void 0,r();return}clearTimeout(e),e=setTimeout(()=>{n=void 0,r()},t)}}function Ol(r,t){for(let[e,n]of Object.entries(Ro(t)))if(n.includes(r))return t[e]}var Fl="@libp2p/devtools-metrics:devtools",F0="@libp2p/devtools-metrics:worker",K0="@libp2p/devtools-metrics:content",Kl="@libp2p/devtools-metrics:metrics",Vl="________libp2p_devtools_metrics";Object.defineProperty(globalThis,Vl,{value:!0,enumerable:!1,writable:!1});var Ns=class{log;components;simpleMetrics;intervalMs;rpcQueue;rpc;devTools;constructor(t,e){this.log=t.logger.forComponent("libp2p:devtools-metrics"),this.intervalMs=e?.intervalMs,this.components=t,this.rpcQueue=Ye(),this.rpc=bu({valueCodecs:Ps}),this.devTools=this.rpc.createClient("devTools"),this.onPeersUpdate=Ds(this.onPeersUpdate.bind(this),1e3),this.onSelfUpdate=Ds(this.onSelfUpdate.bind(this),1e3),this.onIncomingMessage=this.onIncomingMessage.bind(this),this.onPubSubMessage=this.onPubSubMessage.bind(this),this.onPubSubSubscriptionChange=this.onPubSubSubscriptionChange.bind(this),this.simpleMetrics=pc({intervalMs:this.intervalMs,onMetrics:n=>{this.devTools.safeDispatchEvent("metrics",{detail:n}).catch(o=>{this.log.error("error sending metrics",o)})}})({})}[Symbol.toStringTag]="@libp2p/devtools-metrics";[ye]=["@libp2p/metrics"];trackMultiaddrConnection(t){this.simpleMetrics.trackMultiaddrConnection(t)}trackProtocolStream(t,e){this.simpleMetrics.trackProtocolStream(t,e)}registerMetric(t,e){return this.simpleMetrics.registerMetric(t,e)}registerMetricGroup(t,e){return this.simpleMetrics.registerMetricGroup(t,e)}registerCounter(t,e){return this.simpleMetrics.registerCounter(t,e)}registerCounterGroup(t,e){return this.simpleMetrics.registerCounterGroup(t,e)}registerHistogram(t,e){return this.simpleMetrics.registerHistogram(t,e)}registerHistogramGroup(t,e){return this.simpleMetrics.registerHistogramGroup(t,e)}registerSummary(t,e){return this.simpleMetrics.registerSummary(t,e)}registerSummaryGroup(t,e){return this.simpleMetrics.registerSummaryGroup(t,e)}createTrace(){return this.simpleMetrics.createTrace()}traceFunction(t,e,n){return this.simpleMetrics.traceFunction(t,e,n)}async start(){this.components.events.addEventListener("peer:connect",this.onPeersUpdate),this.components.events.addEventListener("peer:disconnect",this.onPeersUpdate),this.components.events.addEventListener("peer:identify",this.onPeersUpdate),this.components.events.addEventListener("peer:update",this.onPeersUpdate),this.components.events.addEventListener("self:peer:update",this.onSelfUpdate),window.addEventListener("message",this.onIncomingMessage),this.rpc.createTarget("metrics",Ml(this.components)),await Vs(this.simpleMetrics),Promise.resolve().then(async()=>{await xc(this.rpcQueue,this.rpc,async e=>{for await(let n of e)window.postMessage({source:Kl,type:"libp2p-rpc",message:ne.encode(n)})})}).catch(e=>{this.log.error("error while reading RPC messages",e)});let t=Ol("@libp2p/pubsub",this.components);xn(t)&&(t.addEventListener("message",this.onPubSubMessage),t.addEventListener("subscription-change",this.onPubSubSubscriptionChange))}async stop(){window.removeEventListener("message",this.onIncomingMessage),this.components.events.removeEventListener("self:peer:update",this.onSelfUpdate),this.components.events.removeEventListener("peer:connect",this.onPeersUpdate),this.components.events.removeEventListener("peer:disconnect",this.onPeersUpdate),this.components.events.removeEventListener("peer:identify",this.onPeersUpdate),this.components.events.removeEventListener("peer:update",this.onPeersUpdate),await Hs(this.simpleMetrics)}onIncomingMessage(t){if(t.source!==window)return;let e=t.data;e?.source===Fl&&e.type==="libp2p-rpc"&&this.rpcQueue.push(ne.decode(e.message))}onPubSubMessage(t){this.devTools.safeDispatchEvent("pubsub:message",{detail:t.detail}).catch(e=>{this.log.error("error relaying pubsub message",e)})}onPubSubSubscriptionChange(t){this.devTools.safeDispatchEvent("pubsub:subscription-change",{detail:t.detail}).catch(e=>{this.log.error("error relaying pubsub subscription change",e)})}onSelfUpdate(){Promise.resolve().then(async()=>{await this.devTools.safeDispatchEvent("self",{detail:await Oo(this.components)})}).catch(t=>{this.log.error("error sending peers message",t)})}onPeersUpdate(){Promise.resolve().then(async()=>{await this.devTools.safeDispatchEvent("peers",{detail:await Mo(this.components,this.log)})}).catch(t=>{this.log.error("error sending peers message",t)})}};function V0(r){return t=>new Ns(t,r)}return Ql(H0);})();
|
|
4
4
|
/*! Bundled license information:
|
|
5
5
|
|
|
6
6
|
@noble/hashes/esm/utils.js:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@libp2p/devtools-metrics",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.14",
|
|
4
4
|
"description": "Collect libp2p metrics and send them to browser DevTools",
|
|
5
5
|
"author": "",
|
|
6
6
|
"license": "Apache-2.0 OR MIT",
|
|
@@ -68,11 +68,11 @@
|
|
|
68
68
|
"test:firefox": "aegir test -t browser --browser firefox"
|
|
69
69
|
},
|
|
70
70
|
"dependencies": {
|
|
71
|
-
"@libp2p/interface": "^2.
|
|
72
|
-
"@libp2p/interface-internal": "^2.3.
|
|
73
|
-
"@libp2p/logger": "^5.1.
|
|
74
|
-
"@libp2p/peer-id": "^5.1.
|
|
75
|
-
"@libp2p/simple-metrics": "^1.3.
|
|
71
|
+
"@libp2p/interface": "^2.9.0",
|
|
72
|
+
"@libp2p/interface-internal": "^2.3.11",
|
|
73
|
+
"@libp2p/logger": "^5.1.15",
|
|
74
|
+
"@libp2p/peer-id": "^5.1.2",
|
|
75
|
+
"@libp2p/simple-metrics": "^1.3.9",
|
|
76
76
|
"@multiformats/multiaddr": "^12.3.3",
|
|
77
77
|
"cborg": "^4.2.6",
|
|
78
78
|
"it-pipe": "^3.0.1",
|
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
"progress-events": "^1.0.1"
|
|
83
83
|
},
|
|
84
84
|
"devDependencies": {
|
|
85
|
-
"@libp2p/crypto": "^5.1.
|
|
85
|
+
"@libp2p/crypto": "^5.1.1",
|
|
86
86
|
"aegir": "^45.1.1",
|
|
87
87
|
"sinon-ts": "^2.0.0"
|
|
88
88
|
},
|