@helia/routers 4.0.2 → 4.0.3-11f16f7b

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 CHANGED
@@ -1,23 +1,23 @@
1
1
  (function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.HeliaRouters = factory()}(typeof self !== 'undefined' ? self : this, function () {
2
- "use strict";var HeliaRouters=(()=>{var Rf=Object.create;var ln=Object.defineProperty;var Pf=Object.getOwnPropertyDescriptor;var Uf=Object.getOwnPropertyNames;var Nf=Object.getPrototypeOf,Lf=Object.prototype.hasOwnProperty;var Fs=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),vt=(e,t)=>{for(var r in t)ln(e,r,{get:t[r],enumerable:!0})},$s=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Uf(t))!Lf.call(e,o)&&o!==r&&ln(e,o,{get:()=>t[o],enumerable:!(n=Pf(t,o))||n.enumerable});return e};var So=(e,t,r)=>(r=e!=null?Rf(Nf(e)):{},$s(t||!e||!e.__esModule?ln(r,"default",{value:e,enumerable:!0}):r,e)),Of=e=>$s(ln({},"__esModule",{value:!0}),e);var ys=Fs((xw,ms)=>{var gw=(function(){typeof ms<"u"&&(ms.exports=T);var e=86400,t=3200,r=146097*t/400,n=e*r,o=1e3*n,i=864e13,s=4294967296,c=1e6,a="000000000",f=Math.trunc||function(h){var p=h-h%1;return p==0&&(h<0||h===0&&1/h!=1/0)?-0:p},u=T.prototype,l=(T.fromDate=function(h){return new T(+h)},T.fromInt64BE=N(0,1,2,3,0,4),T.fromInt64LE=N(3,2,1,0,4,0),T.fromString=function(D){var p,_=new T,D=(D+="").replace(/^\s*[+\-]?\d+/,function(m){var m=+m,g=1970+(m-1970)%400;return _.year=m-g,g}).replace(/(?:Z|([+\-]\d{2}):?(\d{2}))$/,function(A,m,g){return m<0&&(g*=-1),p=6e4*(60*+m+ +g),""}).replace(/\.\d+$/,function(A){return _.nano=+(A+a).substr(1,9),""}).split(/\D+/);if(1<D.length?D[1]--:D[1]=0,_.time=p=Date.UTC.apply(Date,D)-(p||0),isNaN(p))throw new TypeError("Invalid Date");return I(_)},T.fromTimeT=function(h){return C(h,0)},u.year=0,u.time=0,u.nano=0,u.addNano=function(h){return this.nano+=+h||0,this},u.getNano=function(){var h=I(this);return(h.time%1e3*c+ +h.nano+1e9)%1e9},u.getTimeT=function(){var p=I(this),h=Math.floor(p.time/1e3),p=p.year;return p&&(h+=p*r*e/t),h},u.getYear=function(){return this.toDate().getUTCFullYear()+this.year},u.toDate=function(){return w(I(this).time)},u.toJSON=function(){return this.toString().replace(/0{1,6}Z$/,"Z")},u.toString=function(h){var p=this,_=p.toDate(),D={H:function(){return M(_.getUTCHours())},L:function(){return V(_.getUTCMilliseconds(),3)},M:function(){return M(_.getUTCMinutes())},N:function(){return V(p.getNano(),9)},S:function(){return M(_.getUTCSeconds())},Y:function(){var A=p.getYear();return 999999<A?"+"+A:9999<A?"+"+V(A,6):0<=A?V(A,4):-999999<=A?"-"+V(-A,6):A},a:function(){return v[_.getUTCDay()]},b:function(){return y[_.getUTCMonth()]},d:function(){return M(_.getUTCDate())},e:function(){return(function(A){return(9<A?"":" ")+(0|A)})(_.getUTCDate())},m:function(){return M(_.getUTCMonth()+1)}};return(function A(m){return m.replace(/%./g,function(g){var E=g[1],d=x[E],E=D[E];return d?A(d):E?E():g})})(h||l)},u.writeInt64BE=S(0,1,2,3,0,4),u.writeInt64LE=S(3,2,1,0,4,0),"%Y-%m-%dT%H:%M:%S.%NZ"),y=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],v=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],x={"%":"%",F:"%Y-%m-%d",n:`
3
- `,R:"%H:%M",T:"%H:%M:%S",t:" ",X:"%T",Z:"GMT",z:"+0000"};return T;function T(h,p,_){var D=this;if(!(D instanceof T))return new T(h,p,_);D.time=+h||0,D.nano=+p||0,D.year=+_||0,I(D)}function I(h){var p,_,D,A=h.year,m=h.time,g=h.nano,d=((g<0||c<=g)&&(g-=(_=Math.floor(g/c))*c,m+=_,_=1),A%t);return(m<-i||i<m||d)&&((p=f(m/o))&&(A+=p*t,m-=p*o),(D=w(m)).setUTCFullYear(d+D.getUTCFullYear()),D=(m=+D)+(p=f((A-=d)/t))*o,p&&-i<=D&&D<=i&&(A-=p*t,m=D),_=1),_&&(h.year=A,h.time=m,h.nano=g),h}function w(h){var p=new Date(0);return p.setTime(h),p}function C(A,D){A=+A||0;var _=f((D=(D|0)*s)/n)+f(A/n),D=D%n+A%n,A=f(D/n);return A&&(_+=A,D-=A*n),new T(1e3*D,0,_*t)}function S(h,p,_,D,A,m){return function(d,E){var P=I(this);d=d||new Array(8),k(d,E|=0);var L=Math.floor(P.time/1e3),P=P.year*(r*e/t),R=f(P/s)+f(L/s),P=P%s+L%s,L=Math.floor(P/s);return L&&(R+=L,P-=L*s),g(d,E+A,R),g(d,E+m,P),d};function g(d,E,R){d[E+h]=R>>24&255,d[E+p]=R>>16&255,d[E+_]=R>>8&255,d[E+D]=255&R}}function N(h,p,_,D,A,m){return function(d,E){k(d,E|=0);var R=g(d,E+A);return C(g(d,E+m),R)};function g(d,E){return 16777216*d[E+h]+(d[E+p]<<16|d[E+_]<<8|d[E+D])}}function k(h,p){if(h=h&&h.length,h==null)throw new TypeError("Invalid Buffer");if(h<p+8)throw new RangeError("Out of range")}function M(h){return(9<h?"":"0")+(0|h)}function V(h,p){return(a+(0|h)).substr(-p)}})()});var hf=Fs((c2,As)=>{"use strict";var i0=Object.prototype.hasOwnProperty,St="~";function an(){}Object.create&&(an.prototype=Object.create(null),new an().__proto__||(St=!1));function s0(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function df(e,t,r,n,o){if(typeof r!="function")throw new TypeError("The listener must be a function");var i=new s0(r,n||e,o),s=St?St+t:t;return e._events[s]?e._events[s].fn?e._events[s]=[e._events[s],i]:e._events[s].push(i):(e._events[s]=i,e._eventsCount++),e}function po(e,t){--e._eventsCount===0?e._events=new an:delete e._events[t]}function wt(){this._events=new an,this._eventsCount=0}wt.prototype.eventNames=function(){var t=[],r,n;if(this._eventsCount===0)return t;for(n in r=this._events)i0.call(r,n)&&t.push(St?n.slice(1):n);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(r)):t};wt.prototype.listeners=function(t){var r=St?St+t:t,n=this._events[r];if(!n)return[];if(n.fn)return[n.fn];for(var o=0,i=n.length,s=new Array(i);o<i;o++)s[o]=n[o].fn;return s};wt.prototype.listenerCount=function(t){var r=St?St+t:t,n=this._events[r];return n?n.fn?1:n.length:0};wt.prototype.emit=function(t,r,n,o,i,s){var c=St?St+t:t;if(!this._events[c])return!1;var a=this._events[c],f=arguments.length,u,l;if(a.fn){switch(a.once&&this.removeListener(t,a.fn,void 0,!0),f){case 1:return a.fn.call(a.context),!0;case 2:return a.fn.call(a.context,r),!0;case 3:return a.fn.call(a.context,r,n),!0;case 4:return a.fn.call(a.context,r,n,o),!0;case 5:return a.fn.call(a.context,r,n,o,i),!0;case 6:return a.fn.call(a.context,r,n,o,i,s),!0}for(l=1,u=new Array(f-1);l<f;l++)u[l-1]=arguments[l];a.fn.apply(a.context,u)}else{var y=a.length,v;for(l=0;l<y;l++)switch(a[l].once&&this.removeListener(t,a[l].fn,void 0,!0),f){case 1:a[l].fn.call(a[l].context);break;case 2:a[l].fn.call(a[l].context,r);break;case 3:a[l].fn.call(a[l].context,r,n);break;case 4:a[l].fn.call(a[l].context,r,n,o);break;default:if(!u)for(v=1,u=new Array(f-1);v<f;v++)u[v-1]=arguments[v];a[l].fn.apply(a[l].context,u)}}return!0};wt.prototype.on=function(t,r,n){return df(this,t,r,n,!1)};wt.prototype.once=function(t,r,n){return df(this,t,r,n,!0)};wt.prototype.removeListener=function(t,r,n,o){var i=St?St+t:t;if(!this._events[i])return this;if(!r)return po(this,i),this;var s=this._events[i];if(s.fn)s.fn===r&&(!o||s.once)&&(!n||s.context===n)&&po(this,i);else{for(var c=0,a=[],f=s.length;c<f;c++)(s[c].fn!==r||o&&!s[c].once||n&&s[c].context!==n)&&a.push(s[c]);a.length?this._events[i]=a.length===1?a[0]:a:po(this,i)}return this};wt.prototype.removeAllListeners=function(t){var r;return t?(r=St?St+t:t,this._events[r]&&po(this,r)):(this._events=new an,this._eventsCount=0),this};wt.prototype.off=wt.prototype.removeListener;wt.prototype.addListener=wt.prototype.on;wt.prefixed=St;wt.EventEmitter=wt;typeof As<"u"&&(As.exports=wt)});var B0={};vt(B0,{delegatedHTTPRouting:()=>Ef,delegatedHTTPRoutingDefaults:()=>wo,httpGatewayRouting:()=>_f,libp2pRouting:()=>Df});var qs=Symbol.for("@libp2p/content-routing");var st=class extends Error{static name="InvalidParametersError";constructor(t="Invalid parameters"){super(t),this.name="InvalidParametersError"}},ze=class extends Error{static name="InvalidPublicKeyError";constructor(t="Invalid public key"){super(t),this.name="InvalidPublicKeyError"}};var At=class extends Error{static name="NotFoundError";constructor(t="Not found"){super(t),this.name="NotFoundError"}};var dn=class extends Error{static name="InvalidCIDError";constructor(t="Invalid CID"){super(t),this.name="InvalidCIDError"}},Ge=class extends Error{static name="InvalidMultihashError";constructor(t="Invalid Multihash"){super(t),this.name="InvalidMultihashError"}};var Ze=class extends Error{static name="UnsupportedKeyTypeError";constructor(t="Unsupported key type"){super(t),this.name="UnsupportedKeyTypeError"}};var vo=Symbol.for("@libp2p/peer-id");var Hs=Symbol.for("@libp2p/peer-routing");var Bo={};vt(Bo,{base32:()=>Yt,base32hex:()=>Gf,base32hexpad:()=>jf,base32hexpadupper:()=>Yf,base32hexupper:()=>Zf,base32pad:()=>Hf,base32padupper:()=>zf,base32upper:()=>qf,base32z:()=>Wf});var N0=new Uint8Array(0);function zs(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}function ne(e){if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")}function Gs(e){return new TextEncoder().encode(e)}function Zs(e){return new TextDecoder().decode(e)}function kf(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var o=0;o<e.length;o++){var i=e.charAt(o),s=i.charCodeAt(0);if(r[s]!==255)throw new TypeError(i+" is ambiguous");r[s]=o}var c=e.length,a=e.charAt(0),f=Math.log(c)/Math.log(256),u=Math.log(256)/Math.log(c);function l(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 T=0,I=0,w=0,C=x.length;w!==C&&x[w]===0;)w++,T++;for(var S=(C-w)*u+1>>>0,N=new Uint8Array(S);w!==C;){for(var k=x[w],M=0,V=S-1;(k!==0||M<I)&&V!==-1;V--,M++)k+=256*N[V]>>>0,N[V]=k%c>>>0,k=k/c>>>0;if(k!==0)throw new Error("Non-zero carry");I=M,w++}for(var h=S-I;h!==S&&N[h]===0;)h++;for(var p=a.repeat(T);h<S;++h)p+=e.charAt(N[h]);return p}function y(x){if(typeof x!="string")throw new TypeError("Expected String");if(x.length===0)return new Uint8Array;var T=0;if(x[T]!==" "){for(var I=0,w=0;x[T]===a;)I++,T++;for(var C=(x.length-T)*f+1>>>0,S=new Uint8Array(C);x[T];){var N=r[x.charCodeAt(T)];if(N===255)return;for(var k=0,M=C-1;(N!==0||k<w)&&M!==-1;M--,k++)N+=c*S[M]>>>0,S[M]=N%256>>>0,N=N/256>>>0;if(N!==0)throw new Error("Non-zero carry");w=k,T++}if(x[T]!==" "){for(var V=C-w;V!==C&&S[V]===0;)V++;for(var h=new Uint8Array(I+(C-V)),p=I;V!==C;)h[p++]=S[V++];return h}}}function v(x){var T=y(x);if(T)return T;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:y,decode:v}}var Kf=kf,Vf=Kf,Ys=Vf;var Ao=class{name;prefix;baseEncode;constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},Io=class{name;prefix;baseDecode;prefixCodePoint;constructor(t,r,n){this.name=t,this.prefix=r;let o=r.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 Ws(this,t)}},To=class{decoders;constructor(t){this.decoders=t}or(t){return Ws(this,t)}decode(t){let r=t[0],n=this.decoders[r];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 Ws(e,t){return new To({...e.decoders??{[e.prefix]:e},...t.decoders??{[t.prefix]:t}})}var Co=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,r,n,o){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new Ao(t,r,n),this.decoder=new Io(t,r,o)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function je({name:e,prefix:t,encode:r,decode:n}){return new Co(e,t,r,n)}function xe({name:e,prefix:t,alphabet:r}){let{encode:n,decode:o}=Ys(r,e);return je({prefix:t,name:e,encode:n,decode:i=>ne(o(i))})}function Mf(e,t,r,n){let o=e.length;for(;e[o-1]==="=";)--o;let i=new Uint8Array(o*r/8|0),s=0,c=0,a=0;for(let f=0;f<o;++f){let u=t[e[f]];if(u===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|u,s+=r,s>=8&&(s-=8,i[a++]=255&c>>s)}if(s>=r||(255&c<<8-s)!==0)throw new SyntaxError("Unexpected end of data");return i}function Ff(e,t,r){let n=t[t.length-1]==="=",o=(1<<r)-1,i="",s=0,c=0;for(let a=0;a<e.length;++a)for(c=c<<8|e[a],s+=8;s>r;)s-=r,i+=t[o&c>>s];if(s!==0&&(i+=t[o&c<<r-s]),n)for(;(i.length*r&7)!==0;)i+="=";return i}function $f(e){let t={};for(let r=0;r<e.length;++r)t[e[r]]=r;return t}function nt({name:e,prefix:t,bitsPerChar:r,alphabet:n}){let o=$f(n);return je({prefix:t,name:e,encode(i){return Ff(i,n,r)},decode(i){return Mf(i,o,r,e)}})}var Yt=nt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),qf=nt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Hf=nt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),zf=nt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Gf=nt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Zf=nt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),jf=nt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Yf=nt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Wf=nt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var _o={};vt(_o,{base58btc:()=>X,base58flickr:()=>Xf});var X=xe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Xf=xe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Po={};vt(Po,{base64:()=>Do,base64pad:()=>Jf,base64url:()=>Ro,base64urlpad:()=>Qf});var Do=nt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Jf=nt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Ro=nt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Qf=nt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});function tl(e,t){if(typeof e=="string")return el(e);if(typeof e=="number")return ol(e,t);throw Error(`Value provided to ms() must be a string or number. value=${JSON.stringify(e)}`)}var hn=tl;function el(e){if(typeof e!="string"||e.length===0||e.length>100)throw Error(`Value provided to ms.parse() must be a string with length between 1 and 99. value=${JSON.stringify(e)}`);let t=/^(?<value>-?\d*\.?\d+) *(?<unit>milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|months?|mo|years?|yrs?|y)?$/i.exec(e);if(!t?.groups)return NaN;let{value:r,unit:n="ms"}=t.groups,o=parseFloat(r),i=n.toLowerCase();switch(i){case"years":case"year":case"yrs":case"yr":case"y":return o*315576e5;case"months":case"month":case"mo":return o*26298e5;case"weeks":case"week":case"w":return o*6048e5;case"days":case"day":case"d":return o*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return o*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return o*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return o*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return o;default:throw Error(`Unknown unit "${i}" provided to ms.parse(). value=${JSON.stringify(e)}`)}}function rl(e){let t=Math.abs(e);return t>=315576e5?`${Math.round(e/315576e5)}y`:t>=26298e5?`${Math.round(e/26298e5)}mo`:t>=6048e5?`${Math.round(e/6048e5)}w`:t>=864e5?`${Math.round(e/864e5)}d`:t>=36e5?`${Math.round(e/36e5)}h`:t>=6e4?`${Math.round(e/6e4)}m`:t>=1e3?`${Math.round(e/1e3)}s`:`${e}ms`}function nl(e){let t=Math.abs(e);return t>=315576e5?De(e,t,315576e5,"year"):t>=26298e5?De(e,t,26298e5,"month"):t>=6048e5?De(e,t,6048e5,"week"):t>=864e5?De(e,t,864e5,"day"):t>=36e5?De(e,t,36e5,"hour"):t>=6e4?De(e,t,6e4,"minute"):t>=1e3?De(e,t,1e3,"second"):`${e} ms`}function ol(e,t){if(typeof e!="number"||!Number.isFinite(e))throw Error("Value provided to ms.format() must be of type number.");return t?.long?nl(e):rl(e)}function De(e,t,r,n){let o=t>=r*1.5;return`${Math.round(e/r)} ${n}${o?"s":""}`}function Uo(e){r.debug=r,r.default=r,r.coerce=a,r.disable=i,r.enable=o,r.enabled=s,r.humanize=hn,r.destroy=f,Object.keys(e).forEach(u=>{r[u]=e[u]}),r.names=[],r.skips=[],r.formatters={};function t(u){let l=0;for(let y=0;y<u.length;y++)l=(l<<5)-l+u.charCodeAt(y),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=t;function r(u,l){let y,v=null,x,T;function I(...w){if(!I.enabled)return;let C=I,S=Number(new Date),N=S-(y||S);C.diff=N,C.prev=y,C.curr=S,y=S,w[0]=r.coerce(w[0]),typeof w[0]!="string"&&w.unshift("%O");let k=0;w[0]=w[0].replace(/%([a-zA-Z%])/g,(V,h)=>{if(V==="%%")return"%";k++;let p=r.formatters[h];if(typeof p=="function"){let _=w[k];V=p.call(C,_),w.splice(k,1),k--}return V}),r.formatArgs.call(C,w),l?.onLog!=null&&l.onLog(...w),(C.log||r.log).apply(C,w)}return I.namespace=u,I.useColors=r.useColors(),I.color=r.selectColor(u),I.extend=n,I.destroy=r.destroy,Object.defineProperty(I,"enabled",{enumerable:!0,configurable:!1,get:()=>v!==null?v:(x!==r.namespaces&&(x=r.namespaces,T=r.enabled(u)),T),set:w=>{v=w}}),typeof r.init=="function"&&r.init(I),I}function n(u,l){let y=r(this.namespace+(typeof l>"u"?":":l)+u);return y.log=this.log,y}function o(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let l,y=(typeof u=="string"?u:"").split(/[\s,]+/),v=y.length;for(l=0;l<v;l++)y[l]&&(u=y[l].replace(/\*/g,".*?"),u[0]==="-"?r.skips.push(new RegExp("^"+u.substr(1)+"$")):r.names.push(new RegExp("^"+u+"$")))}function i(){let u=[...r.names.map(c),...r.skips.map(c).map(l=>"-"+l)].join(",");return r.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let l,y;for(l=0,y=r.skips.length;l<y;l++)if(r.skips[l].test(u))return!1;for(l=0,y=r.names.length;l<y;l++)if(r.names[l].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 f(){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 r.setupFormatters(r.formatters),r.enable(r.load()),r}var pn=ll(),il=["#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 sl(){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 al(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+hn(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(r++,o==="%c"&&(n=r))}),e.splice(n,0,t)}var cl=console.debug??console.log??(()=>{});function ul(e){try{e?pn?.setItem("debug",e):pn?.removeItem("debug")}catch{}}function fl(){let e;try{e=pn?.getItem("debug")}catch{}return!e&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(e=globalThis.process.env.DEBUG),e}function ll(){try{return localStorage}catch{}}function dl(e){e.j=function(t){try{return JSON.stringify(t)}catch(r){return"[UnexpectedJSONParseError]: "+r.message}}}var Xs=Uo({formatArgs:al,save:ul,load:fl,useColors:sl,setupFormatters:dl,colors:il,storage:pn,log:cl});var It=Xs;It.formatters.b=e=>e==null?"undefined":X.baseEncode(e);It.formatters.t=e=>e==null?"undefined":Yt.baseEncode(e);It.formatters.m=e=>e==null?"undefined":Do.baseEncode(e);It.formatters.p=e=>e==null?"undefined":e.toString();It.formatters.c=e=>e==null?"undefined":e.toString();It.formatters.k=e=>e==null?"undefined":e.toString();It.formatters.a=e=>e==null?"undefined":e.toString();function No(e){let t=Js(e.message),r=Js(e.stack);return t!=null&&r!=null?r.includes(t)?r:`${t}
4
- ${r}`:r??t??e.toString()}function hl(e){return e?.name==="AggregateError"}It.formatters.e=e=>{if(e==null)return"undefined";if(hl(e)){let t=" ",r=No(e);return e.errors.length>0?r+=`
5
- ${t}${e.errors.map(n=>` ${No(n).split(`
2
+ "use strict";var HeliaRouters=(()=>{var kf=Object.create;var ln=Object.defineProperty;var Kf=Object.getOwnPropertyDescriptor;var Vf=Object.getOwnPropertyNames;var Mf=Object.getPrototypeOf,Ff=Object.prototype.hasOwnProperty;var Hs=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),St=(e,t)=>{for(var r in t)ln(e,r,{get:t[r],enumerable:!0})},zs=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Vf(t))!Ff.call(e,o)&&o!==r&&ln(e,o,{get:()=>t[o],enumerable:!(n=Kf(t,o))||n.enumerable});return e};var Ao=(e,t,r)=>(r=e!=null?kf(Mf(e)):{},zs(t||!e||!e.__esModule?ln(r,"default",{value:e,enumerable:!0}):r,e)),$f=e=>zs(ln({},"__esModule",{value:!0}),e);var xs=Hs((Cw,gs)=>{var Tw=(function(){typeof gs<"u"&&(gs.exports=T);var e=86400,t=3200,r=146097*t/400,n=e*r,o=1e3*n,i=864e13,s=4294967296,c=1e6,a="000000000",f=Math.trunc||function(h){var p=h-h%1;return p==0&&(h<0||h===0&&1/h!=1/0)?-0:p},u=T.prototype,l=(T.fromDate=function(h){return new T(+h)},T.fromInt64BE=L(0,1,2,3,0,4),T.fromInt64LE=L(3,2,1,0,4,0),T.fromString=function(D){var p,_=new T,D=(D+="").replace(/^\s*[+\-]?\d+/,function(m){var m=+m,g=1970+(m-1970)%400;return _.year=m-g,g}).replace(/(?:Z|([+\-]\d{2}):?(\d{2}))$/,function(A,m,g){return m<0&&(g*=-1),p=6e4*(60*+m+ +g),""}).replace(/\.\d+$/,function(A){return _.nano=+(A+a).substr(1,9),""}).split(/\D+/);if(1<D.length?D[1]--:D[1]=0,_.time=p=Date.UTC.apply(Date,D)-(p||0),isNaN(p))throw new TypeError("Invalid Date");return I(_)},T.fromTimeT=function(h){return C(h,0)},u.year=0,u.time=0,u.nano=0,u.addNano=function(h){return this.nano+=+h||0,this},u.getNano=function(){var h=I(this);return(h.time%1e3*c+ +h.nano+1e9)%1e9},u.getTimeT=function(){var p=I(this),h=Math.floor(p.time/1e3),p=p.year;return p&&(h+=p*r*e/t),h},u.getYear=function(){return this.toDate().getUTCFullYear()+this.year},u.toDate=function(){return w(I(this).time)},u.toJSON=function(){return this.toString().replace(/0{1,6}Z$/,"Z")},u.toString=function(h){var p=this,_=p.toDate(),D={H:function(){return M(_.getUTCHours())},L:function(){return V(_.getUTCMilliseconds(),3)},M:function(){return M(_.getUTCMinutes())},N:function(){return V(p.getNano(),9)},S:function(){return M(_.getUTCSeconds())},Y:function(){var A=p.getYear();return 999999<A?"+"+A:9999<A?"+"+V(A,6):0<=A?V(A,4):-999999<=A?"-"+V(-A,6):A},a:function(){return v[_.getUTCDay()]},b:function(){return y[_.getUTCMonth()]},d:function(){return M(_.getUTCDate())},e:function(){return(function(A){return(9<A?"":" ")+(0|A)})(_.getUTCDate())},m:function(){return M(_.getUTCMonth()+1)}};return(function A(m){return m.replace(/%./g,function(g){var E=g[1],d=b[E],E=D[E];return d?A(d):E?E():g})})(h||l)},u.writeInt64BE=S(0,1,2,3,0,4),u.writeInt64LE=S(3,2,1,0,4,0),"%Y-%m-%dT%H:%M:%S.%NZ"),y=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],v=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],b={"%":"%",F:"%Y-%m-%d",n:`
3
+ `,R:"%H:%M",T:"%H:%M:%S",t:" ",X:"%T",Z:"GMT",z:"+0000"};return T;function T(h,p,_){var D=this;if(!(D instanceof T))return new T(h,p,_);D.time=+h||0,D.nano=+p||0,D.year=+_||0,I(D)}function I(h){var p,_,D,A=h.year,m=h.time,g=h.nano,d=((g<0||c<=g)&&(g-=(_=Math.floor(g/c))*c,m+=_,_=1),A%t);return(m<-i||i<m||d)&&((p=f(m/o))&&(A+=p*t,m-=p*o),(D=w(m)).setUTCFullYear(d+D.getUTCFullYear()),D=(m=+D)+(p=f((A-=d)/t))*o,p&&-i<=D&&D<=i&&(A-=p*t,m=D),_=1),_&&(h.year=A,h.time=m,h.nano=g),h}function w(h){var p=new Date(0);return p.setTime(h),p}function C(A,D){A=+A||0;var _=f((D=(D|0)*s)/n)+f(A/n),D=D%n+A%n,A=f(D/n);return A&&(_+=A,D-=A*n),new T(1e3*D,0,_*t)}function S(h,p,_,D,A,m){return function(d,E){var N=I(this);d=d||new Array(8),k(d,E|=0);var U=Math.floor(N.time/1e3),N=N.year*(r*e/t),R=f(N/s)+f(U/s),N=N%s+U%s,U=Math.floor(N/s);return U&&(R+=U,N-=U*s),g(d,E+A,R),g(d,E+m,N),d};function g(d,E,R){d[E+h]=R>>24&255,d[E+p]=R>>16&255,d[E+_]=R>>8&255,d[E+D]=255&R}}function L(h,p,_,D,A,m){return function(d,E){k(d,E|=0);var R=g(d,E+A);return C(g(d,E+m),R)};function g(d,E){return 16777216*d[E+h]+(d[E+p]<<16|d[E+_]<<8|d[E+D])}}function k(h,p){if(h=h&&h.length,h==null)throw new TypeError("Invalid Buffer");if(h<p+8)throw new RangeError("Out of range")}function M(h){return(9<h?"":"0")+(0|h)}function V(h,p){return(a+(0|h)).substr(-p)}})()});var bf=Hs((h2,Cs)=>{"use strict";var p0=Object.prototype.hasOwnProperty,Et="~";function an(){}Object.create&&(an.prototype=Object.create(null),new an().__proto__||(Et=!1));function m0(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function xf(e,t,r,n,o){if(typeof r!="function")throw new TypeError("The listener must be a function");var i=new m0(r,n||e,o),s=Et?Et+t:t;return e._events[s]?e._events[s].fn?e._events[s]=[e._events[s],i]:e._events[s].push(i):(e._events[s]=i,e._eventsCount++),e}function mo(e,t){--e._eventsCount===0?e._events=new an:delete e._events[t]}function bt(){this._events=new an,this._eventsCount=0}bt.prototype.eventNames=function(){var t=[],r,n;if(this._eventsCount===0)return t;for(n in r=this._events)p0.call(r,n)&&t.push(Et?n.slice(1):n);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(r)):t};bt.prototype.listeners=function(t){var r=Et?Et+t:t,n=this._events[r];if(!n)return[];if(n.fn)return[n.fn];for(var o=0,i=n.length,s=new Array(i);o<i;o++)s[o]=n[o].fn;return s};bt.prototype.listenerCount=function(t){var r=Et?Et+t:t,n=this._events[r];return n?n.fn?1:n.length:0};bt.prototype.emit=function(t,r,n,o,i,s){var c=Et?Et+t:t;if(!this._events[c])return!1;var a=this._events[c],f=arguments.length,u,l;if(a.fn){switch(a.once&&this.removeListener(t,a.fn,void 0,!0),f){case 1:return a.fn.call(a.context),!0;case 2:return a.fn.call(a.context,r),!0;case 3:return a.fn.call(a.context,r,n),!0;case 4:return a.fn.call(a.context,r,n,o),!0;case 5:return a.fn.call(a.context,r,n,o,i),!0;case 6:return a.fn.call(a.context,r,n,o,i,s),!0}for(l=1,u=new Array(f-1);l<f;l++)u[l-1]=arguments[l];a.fn.apply(a.context,u)}else{var y=a.length,v;for(l=0;l<y;l++)switch(a[l].once&&this.removeListener(t,a[l].fn,void 0,!0),f){case 1:a[l].fn.call(a[l].context);break;case 2:a[l].fn.call(a[l].context,r);break;case 3:a[l].fn.call(a[l].context,r,n);break;case 4:a[l].fn.call(a[l].context,r,n,o);break;default:if(!u)for(v=1,u=new Array(f-1);v<f;v++)u[v-1]=arguments[v];a[l].fn.apply(a[l].context,u)}}return!0};bt.prototype.on=function(t,r,n){return xf(this,t,r,n,!1)};bt.prototype.once=function(t,r,n){return xf(this,t,r,n,!0)};bt.prototype.removeListener=function(t,r,n,o){var i=Et?Et+t:t;if(!this._events[i])return this;if(!r)return mo(this,i),this;var s=this._events[i];if(s.fn)s.fn===r&&(!o||s.once)&&(!n||s.context===n)&&mo(this,i);else{for(var c=0,a=[],f=s.length;c<f;c++)(s[c].fn!==r||o&&!s[c].once||n&&s[c].context!==n)&&a.push(s[c]);a.length?this._events[i]=a.length===1?a[0]:a:mo(this,i)}return this};bt.prototype.removeAllListeners=function(t){var r;return t?(r=Et?Et+t:t,this._events[r]&&mo(this,r)):(this._events=new an,this._eventsCount=0),this};bt.prototype.off=bt.prototype.removeListener;bt.prototype.addListener=bt.prototype.on;bt.prefixed=Et;bt.EventEmitter=bt;typeof Cs<"u"&&(Cs.exports=bt)});var k0={};St(k0,{delegatedHTTPRouting:()=>Cf,delegatedHTTPRoutingDefaults:()=>So,httpGatewayRouting:()=>Uf,libp2pRouting:()=>Of});var _o={};St(_o,{base32:()=>jt,base32hex:()=>Jf,base32hexpad:()=>tl,base32hexpadupper:()=>el,base32hexupper:()=>Qf,base32pad:()=>Wf,base32padupper:()=>Xf,base32upper:()=>Yf,base32z:()=>rl});var V0=new Uint8Array(0);function Gs(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}function ne(e){if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")}function Zs(e){return new TextEncoder().encode(e)}function js(e){return new TextDecoder().decode(e)}function qf(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var o=0;o<e.length;o++){var i=e.charAt(o),s=i.charCodeAt(0);if(r[s]!==255)throw new TypeError(i+" is ambiguous");r[s]=o}var c=e.length,a=e.charAt(0),f=Math.log(c)/Math.log(256),u=Math.log(256)/Math.log(c);function l(b){if(b instanceof Uint8Array||(ArrayBuffer.isView(b)?b=new Uint8Array(b.buffer,b.byteOffset,b.byteLength):Array.isArray(b)&&(b=Uint8Array.from(b))),!(b instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(b.length===0)return"";for(var T=0,I=0,w=0,C=b.length;w!==C&&b[w]===0;)w++,T++;for(var S=(C-w)*u+1>>>0,L=new Uint8Array(S);w!==C;){for(var k=b[w],M=0,V=S-1;(k!==0||M<I)&&V!==-1;V--,M++)k+=256*L[V]>>>0,L[V]=k%c>>>0,k=k/c>>>0;if(k!==0)throw new Error("Non-zero carry");I=M,w++}for(var h=S-I;h!==S&&L[h]===0;)h++;for(var p=a.repeat(T);h<S;++h)p+=e.charAt(L[h]);return p}function y(b){if(typeof b!="string")throw new TypeError("Expected String");if(b.length===0)return new Uint8Array;var T=0;if(b[T]!==" "){for(var I=0,w=0;b[T]===a;)I++,T++;for(var C=(b.length-T)*f+1>>>0,S=new Uint8Array(C);b[T];){var L=r[b.charCodeAt(T)];if(L===255)return;for(var k=0,M=C-1;(L!==0||k<w)&&M!==-1;M--,k++)L+=c*S[M]>>>0,S[M]=L%256>>>0,L=L/256>>>0;if(L!==0)throw new Error("Non-zero carry");w=k,T++}if(b[T]!==" "){for(var V=C-w;V!==C&&S[V]===0;)V++;for(var h=new Uint8Array(I+(C-V)),p=I;V!==C;)h[p++]=S[V++];return h}}}function v(b){var T=y(b);if(T)return T;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:y,decode:v}}var Hf=qf,zf=Hf,Ws=zf;var Io=class{name;prefix;baseEncode;constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},To=class{name;prefix;baseDecode;prefixCodePoint;constructor(t,r,n){this.name=t,this.prefix=r;let o=r.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 Xs(this,t)}},Co=class{decoders;constructor(t){this.decoders=t}or(t){return Xs(this,t)}decode(t){let r=t[0],n=this.decoders[r];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 Xs(e,t){return new Co({...e.decoders??{[e.prefix]:e},...t.decoders??{[t.prefix]:t}})}var Bo=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,r,n,o){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new Io(t,r,n),this.decoder=new To(t,r,o)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function ze({name:e,prefix:t,encode:r,decode:n}){return new Bo(e,t,r,n)}function ge({name:e,prefix:t,alphabet:r}){let{encode:n,decode:o}=Ws(r,e);return ze({prefix:t,name:e,encode:n,decode:i=>ne(o(i))})}function Gf(e,t,r,n){let o=e.length;for(;e[o-1]==="=";)--o;let i=new Uint8Array(o*r/8|0),s=0,c=0,a=0;for(let f=0;f<o;++f){let u=t[e[f]];if(u===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|u,s+=r,s>=8&&(s-=8,i[a++]=255&c>>s)}if(s>=r||(255&c<<8-s)!==0)throw new SyntaxError("Unexpected end of data");return i}function Zf(e,t,r){let n=t[t.length-1]==="=",o=(1<<r)-1,i="",s=0,c=0;for(let a=0;a<e.length;++a)for(c=c<<8|e[a],s+=8;s>r;)s-=r,i+=t[o&c>>s];if(s!==0&&(i+=t[o&c<<r-s]),n)for(;(i.length*r&7)!==0;)i+="=";return i}function jf(e){let t={};for(let r=0;r<e.length;++r)t[e[r]]=r;return t}function nt({name:e,prefix:t,bitsPerChar:r,alphabet:n}){let o=jf(n);return ze({prefix:t,name:e,encode(i){return Zf(i,n,r)},decode(i){return Gf(i,o,r,e)}})}var jt=nt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Yf=nt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Wf=nt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Xf=nt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Jf=nt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Qf=nt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),tl=nt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),el=nt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),rl=nt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Do={};St(Do,{base58btc:()=>X,base58flickr:()=>nl});var X=ge({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),nl=ge({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var No={};St(No,{base64:()=>Ro,base64pad:()=>ol,base64url:()=>Po,base64urlpad:()=>il});var Ro=nt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),ol=nt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Po=nt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),il=nt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});function sl(e,t){if(typeof e=="string")return al(e);if(typeof e=="number")return fl(e,t);throw Error(`Value provided to ms() must be a string or number. value=${JSON.stringify(e)}`)}var dn=sl;function al(e){if(typeof e!="string"||e.length===0||e.length>100)throw Error(`Value provided to ms.parse() must be a string with length between 1 and 99. value=${JSON.stringify(e)}`);let t=/^(?<value>-?\d*\.?\d+) *(?<unit>milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|months?|mo|years?|yrs?|y)?$/i.exec(e);if(!t?.groups)return NaN;let{value:r,unit:n="ms"}=t.groups,o=parseFloat(r),i=n.toLowerCase();switch(i){case"years":case"year":case"yrs":case"yr":case"y":return o*315576e5;case"months":case"month":case"mo":return o*26298e5;case"weeks":case"week":case"w":return o*6048e5;case"days":case"day":case"d":return o*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return o*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return o*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return o*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return o;default:throw Error(`Unknown unit "${i}" provided to ms.parse(). value=${JSON.stringify(e)}`)}}function cl(e){let t=Math.abs(e);return t>=315576e5?`${Math.round(e/315576e5)}y`:t>=26298e5?`${Math.round(e/26298e5)}mo`:t>=6048e5?`${Math.round(e/6048e5)}w`:t>=864e5?`${Math.round(e/864e5)}d`:t>=36e5?`${Math.round(e/36e5)}h`:t>=6e4?`${Math.round(e/6e4)}m`:t>=1e3?`${Math.round(e/1e3)}s`:`${e}ms`}function ul(e){let t=Math.abs(e);return t>=315576e5?De(e,t,315576e5,"year"):t>=26298e5?De(e,t,26298e5,"month"):t>=6048e5?De(e,t,6048e5,"week"):t>=864e5?De(e,t,864e5,"day"):t>=36e5?De(e,t,36e5,"hour"):t>=6e4?De(e,t,6e4,"minute"):t>=1e3?De(e,t,1e3,"second"):`${e} ms`}function fl(e,t){if(typeof e!="number"||!Number.isFinite(e))throw Error("Value provided to ms.format() must be of type number.");return t?.long?ul(e):cl(e)}function De(e,t,r,n){let o=t>=r*1.5;return`${Math.round(e/r)} ${n}${o?"s":""}`}function Lo(e){r.debug=r,r.default=r,r.coerce=a,r.disable=i,r.enable=o,r.enabled=s,r.humanize=dn,r.destroy=f,Object.keys(e).forEach(u=>{r[u]=e[u]}),r.names=[],r.skips=[],r.formatters={};function t(u){let l=0;for(let y=0;y<u.length;y++)l=(l<<5)-l+u.charCodeAt(y),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=t;function r(u,l){let y,v=null,b,T;function I(...w){if(!I.enabled)return;let C=I,S=Number(new Date),L=S-(y||S);C.diff=L,C.prev=y,C.curr=S,y=S,w[0]=r.coerce(w[0]),typeof w[0]!="string"&&w.unshift("%O");let k=0;w[0]=w[0].replace(/%([a-zA-Z%])/g,(V,h)=>{if(V==="%%")return"%";k++;let p=r.formatters[h];if(typeof p=="function"){let _=w[k];V=p.call(C,_),w.splice(k,1),k--}return V}),r.formatArgs.call(C,w),l?.onLog!=null&&l.onLog(...w),(C.log||r.log).apply(C,w)}return I.namespace=u,I.useColors=r.useColors(),I.color=r.selectColor(u),I.extend=n,I.destroy=r.destroy,Object.defineProperty(I,"enabled",{enumerable:!0,configurable:!1,get:()=>v!==null?v:(b!==r.namespaces&&(b=r.namespaces,T=r.enabled(u)),T),set:w=>{v=w}}),typeof r.init=="function"&&r.init(I),I}function n(u,l){let y=r(this.namespace+(typeof l>"u"?":":l)+u);return y.log=this.log,y}function o(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let l,y=(typeof u=="string"?u:"").split(/[\s,]+/),v=y.length;for(l=0;l<v;l++)y[l]&&(u=y[l].replace(/\*/g,".*?"),u[0]==="-"?r.skips.push(new RegExp("^"+u.substr(1)+"$")):r.names.push(new RegExp("^"+u+"$")))}function i(){let u=[...r.names.map(c),...r.skips.map(c).map(l=>"-"+l)].join(",");return r.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let l,y;for(l=0,y=r.skips.length;l<y;l++)if(r.skips[l].test(u))return!1;for(l=0,y=r.names.length;l<y;l++)if(r.names[l].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 f(){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 r.setupFormatters(r.formatters),r.enable(r.load()),r}var hn=gl(),ll=["#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 dl(){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 hl(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+dn(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(r++,o==="%c"&&(n=r))}),e.splice(n,0,t)}var pl=console.debug??console.log??(()=>{});function ml(e){try{e?hn?.setItem("debug",e):hn?.removeItem("debug")}catch{}}function yl(){let e;try{e=hn?.getItem("debug")}catch{}return!e&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(e=globalThis.process.env.DEBUG),e}function gl(){try{return localStorage}catch{}}function xl(e){e.j=function(t){try{return JSON.stringify(t)}catch(r){return"[UnexpectedJSONParseError]: "+r.message}}}var Js=Lo({formatArgs:hl,save:ml,load:yl,useColors:dl,setupFormatters:xl,colors:ll,storage:hn,log:pl});var vt=Js;vt.formatters.b=e=>e==null?"undefined":X.baseEncode(e);vt.formatters.t=e=>e==null?"undefined":jt.baseEncode(e);vt.formatters.m=e=>e==null?"undefined":Ro.baseEncode(e);vt.formatters.p=e=>e==null?"undefined":e.toString();vt.formatters.c=e=>e==null?"undefined":e.toString();vt.formatters.k=e=>e==null?"undefined":e.toString();vt.formatters.a=e=>e==null?"undefined":e.toString();function Uo(e){let t=Qs(e.message),r=Qs(e.stack);return t!=null&&r!=null?r.includes(t)?r:`${t}
4
+ ${r}`:r??t??e.toString()}function bl(e){return e instanceof AggregateError||e?.name==="AggregateError"&&Array.isArray(e.errors)}vt.formatters.e=e=>{if(e==null)return"undefined";if(bl(e)){let t=" ",r=Uo(e);return e.errors.length>0?r+=`
5
+ ${t}${e.errors.map(n=>` ${Uo(n).split(`
6
6
  `).join(`
7
7
  ${t}`)}`).join(`
8
8
  ${t}`)}`:r+=`
9
- ${t}[Error list was empty]`,r.trim()}return No(e)};function pl(e){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=e,t.destroy=()=>!0,t.extend=()=>t,t}function oe(e,t){let r=pl(`${e}:trace`);return It.enabled(`${e}:trace`)&&It.names.map(n=>n.toString()).find(n=>n.includes(":trace"))!=null&&(r=It(`${e}:trace`,t)),Object.assign(It(e,t),{error:It(`${e}:error`,t),trace:r,newScope:n=>oe(`${e}:${n}`,t)})}function Js(e){if(e!=null&&(e=e.trim(),e.length!==0))return e}var Lo={};vt(Lo,{base36:()=>Ye,base36upper:()=>ml});var Ye=xe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),ml=xe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var yl=ea,Qs=128,gl=127,xl=~gl,bl=Math.pow(2,31);function ea(e,t,r){t=t||[],r=r||0;for(var n=r;e>=bl;)t[r++]=e&255|Qs,e/=128;for(;e&xl;)t[r++]=e&255|Qs,e>>>=7;return t[r]=e|0,ea.bytes=r-n+1,t}var wl=Oo,El=128,ta=127;function Oo(e,n){var r=0,n=n||0,o=0,i=n,s,c=e.length;do{if(i>=c)throw Oo.bytes=0,new RangeError("Could not decode varint");s=e[i++],r+=o<28?(s&ta)<<o:(s&ta)*Math.pow(2,o),o+=7}while(s>=El);return Oo.bytes=i-n,r}var Sl=Math.pow(2,7),vl=Math.pow(2,14),Al=Math.pow(2,21),Il=Math.pow(2,28),Tl=Math.pow(2,35),Cl=Math.pow(2,42),Bl=Math.pow(2,49),_l=Math.pow(2,56),Dl=Math.pow(2,63),Rl=function(e){return e<Sl?1:e<vl?2:e<Al?3:e<Il?4:e<Tl?5:e<Cl?6:e<Bl?7:e<_l?8:e<Dl?9:10},Pl={encode:yl,decode:wl,encodingLength:Rl},Ul=Pl,Cr=Ul;function Br(e,t=0){return[Cr.decode(e,t),Cr.decode.bytes]}function We(e,t,r=0){return Cr.encode(e,t,r),t}function Xe(e){return Cr.encodingLength(e)}function Wt(e,t){let r=t.byteLength,n=Xe(e),o=n+Xe(r),i=new Uint8Array(o+r);return We(e,i,0),We(r,i,n),i.set(t,o),new Je(e,r,t,i)}function Re(e){let t=ne(e),[r,n]=Br(t),[o,i]=Br(t.subarray(n)),s=t.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new Je(r,o,s,t)}function ra(e,t){if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&zs(e.bytes,r.bytes)}}var Je=class{code;size;digest;bytes;constructor(t,r,n,o){this.code=t,this.size=r,this.digest=n,this.bytes=o}};function na(e,t){let{bytes:r,version:n}=e;switch(n){case 0:return Ll(r,ko(e),t??X.encoder);default:return Ol(r,ko(e),t??Yt.encoder)}}var oa=new WeakMap;function ko(e){let t=oa.get(e);if(t==null){let r=new Map;return oa.set(e,r),r}return t}var j=class e{code;version;multihash;bytes;"/";constructor(t,r,n,o){this.code=r,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:r}=this;if(t!==_r)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==kl)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.createV0(r)}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:r}=this.multihash,n=Wt(t,r);return e.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 e.equals(this,t)}static equals(t,r){let n=r;return n!=null&&t.code===n.code&&t.version===n.version&&ra(t.multihash,n.multihash)}toString(t){return na(this,t)}toJSON(){return{"/":na(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 r=t;if(r instanceof e)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:o,multihash:i,bytes:s}=r;return new e(n,o,i,s??ia(n,o,i.bytes))}else if(r[Kl]===!0){let{version:n,multihash:o,code:i}=r,s=Re(o);return e.create(n,i,s)}else return null}static create(t,r,n){if(typeof r!="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(r!==_r)throw new Error(`Version 0 CID must use dag-pb (code: ${_r}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let o=ia(t,r,n.bytes);return new e(t,r,n,o)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,_r,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length!==0)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,o=ne(t.subarray(n,n+r.multihashSize));if(o.byteLength!==r.multihashSize)throw new Error("Incorrect length");let i=o.subarray(r.multihashSize-r.digestSize),s=new Je(r.multihashCode,r.digestSize,i,o);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,y]=Br(t.subarray(r));return r+=y,l},o=n(),i=_r;if(o===18?(o=0,r=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=r,c=n(),a=n(),f=r+a,u=f-s;return{version:o,codec:i,multihashCode:c,digestSize:a,multihashSize:u,size:f}}static parse(t,r){let[n,o]=Nl(t,r),i=e.decode(o);if(i.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return ko(i).set(n,t),i}};function Nl(e,t){switch(e[0]){case"Q":{let r=t??X;return[X.prefix,r.decode(`${X.prefix}${e}`)]}case X.prefix:{let r=t??X;return[X.prefix,r.decode(e)]}case Yt.prefix:{let r=t??Yt;return[Yt.prefix,r.decode(e)]}case Ye.prefix:{let r=t??Ye;return[Ye.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}}function Ll(e,t,r){let{prefix:n}=r;if(n!==X.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let o=t.get(n);if(o==null){let i=r.encode(e).slice(1);return t.set(n,i),i}else return o}function Ol(e,t,r){let{prefix:n}=r,o=t.get(n);if(o==null){let i=r.encode(e);return t.set(n,i),i}else return o}var _r=112,kl=18;function ia(e,t,r){let n=Xe(e),o=n+Xe(t),i=new Uint8Array(o+r.byteLength);return We(e,i,0),We(t,i,n),i.set(r,o),i}var Kl=Symbol.for("@ipld/js-cid/CID");var Ko={};vt(Ko,{identity:()=>Bt});var sa=0,Vl="identity",aa=ne;function Ml(e,t){if(t?.truncate!=null&&t.truncate!==e.byteLength){if(t.truncate<0||t.truncate>e.byteLength)throw new Error(`Invalid truncate option, must be less than or equal to ${e.byteLength}`);e=e.subarray(0,t.truncate)}return Wt(sa,aa(e))}var Bt={code:sa,name:Vl,encode:aa,digest:Ml};function Y(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}function ie(e=0){return new Uint8Array(e)}function _t(e=0){return new Uint8Array(e)}function Ot(e,t){t==null&&(t=e.reduce((o,i)=>o+i.length,0));let r=_t(t),n=0;for(let o of e)r.set(o,n),n+=o.length;return r}var ua=Symbol.for("@achingbrain/uint8arraylist");function ca(e,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let r=0;for(let n of e){let o=r+n.byteLength;if(t<o)return{buf:n,index:t-r};r=o}throw new RangeError("index is out of bounds")}function Qe(e){return!!e?.[ua]}var Dt=class e{bufs;length;[ua]=!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 r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(Qe(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...t){this.prependAll(t)}prependAll(t){let r=0;for(let n of t.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(Qe(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(t){let r=ca(this.bufs,t);return r.buf[r.index]}set(t,r){let n=ca(this.bufs,t);n.buf[n.index]=r}write(t,r=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(r+n,t[n]);else if(Qe(t))for(let n=0;n<t.length;n++)this.set(r+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,r){let{bufs:n,length:o}=this._subList(t,r);return Ot(n,o)}subarray(t,r){let{bufs:n,length:o}=this._subList(t,r);return n.length===1?n[0]:Ot(n,o)}sublist(t,r){let{bufs:n,length:o}=this._subList(t,r),i=new e;return i.length=o,i.bufs=[...n],i}_subList(t,r){if(t=t??0,r=r??this.length,t<0&&(t=this.length+t),r<0&&(r=this.length+r),t<0||r>this.length)throw new RangeError("index is out of bounds");if(t===r)return{bufs:[],length:0};if(t===0&&r===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 f=t>=c&&t<a,u=r>c&&r<=a;if(f&&u){if(t===c&&r===a){n.push(s);break}let l=t-c;n.push(s.subarray(l,l+(r-t)));break}if(f){if(t===0){n.push(s);continue}n.push(s.subarray(t-c));continue}if(u){if(r===a){n.push(s);break}n.push(s.subarray(0,r-c));break}n.push(s)}return{bufs:n,length:r-t}}indexOf(t,r=0){if(!Qe(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(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.length===0)return r>this.length?this.length:r;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 l=0;l<i;l++)s[l]=-1;for(let l=0;l<o;l++)s[n[l]]=l;let c=s,a=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=a;l+=u){u=0;for(let y=f;y>=0;y--){let v=this.get(l+y);if(n[y]!==v){u=Math.max(1,y-c[v]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=_t(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let o=ie(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt16(0,r,n),this.write(o,t)}getInt32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(t,r,n){let o=ie(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt32(0,r,n),this.write(o,t)}getBigInt64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(t,r,n){let o=ie(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigInt64(0,r,n),this.write(o,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=_t(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let o=ie(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint16(0,r,n),this.write(o,t)}getUint32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(t,r,n){let o=ie(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint32(0,r,n),this.write(o,t)}getBigUint64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(t,r,n){let o=ie(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigUint64(0,r,n),this.write(o,t)}getFloat32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(t,r,n){let o=ie(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat32(0,r,n),this.write(o,t)}getFloat64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(t,r,n){let o=ie(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat64(0,r,n),this.write(o,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!Y(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((o,i)=>o+i.byteLength,0)),n.length=r,n}};var Vo={};vt(Vo,{base10:()=>Fl});var Fl=xe({prefix:"9",name:"base10",alphabet:"0123456789"});var Mo={};vt(Mo,{base16:()=>$l,base16upper:()=>ql});var $l=nt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),ql=nt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Fo={};vt(Fo,{base2:()=>Hl});var Hl=nt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var $o={};vt($o,{base256emoji:()=>Yl});var fa=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}"),zl=fa.reduce((e,t,r)=>(e[r]=t,e),[]),Gl=fa.reduce((e,t,r)=>{let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);return e[n]=r,e},[]);function Zl(e){return e.reduce((t,r)=>(t+=zl[r],t),"")}function jl(e){let t=[];for(let r of e){let n=r.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${r}`);let o=Gl[n];if(o==null)throw new Error(`Non-base256emoji character: ${r}`);t.push(o)}return new Uint8Array(t)}var Yl=je({prefix:"\u{1F680}",name:"base256emoji",encode:Zl,decode:jl});var qo={};vt(qo,{base8:()=>Wl});var Wl=nt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Ho={};vt(Ho,{identity:()=>Xl});var Xl=je({prefix:"\0",name:"identity",encode:e=>Zs(e),decode:e=>Gs(e)});var Dm=new TextEncoder,Rm=new TextDecoder;var Zo={};vt(Zo,{sha256:()=>Dr,sha512:()=>ed});var td=20;function Go({name:e,code:t,encode:r,minDigestLength:n,maxDigestLength:o}){return new zo(e,t,r,n,o)}var zo=class{name;code;encode;minDigestLength;maxDigestLength;constructor(t,r,n,o,i){this.name=t,this.code=r,this.encode=n,this.minDigestLength=o??td,this.maxDigestLength=i}digest(t,r){if(r?.truncate!=null){if(r.truncate<this.minDigestLength)throw new Error(`Invalid truncate option, must be greater than or equal to ${this.minDigestLength}`);if(this.maxDigestLength!=null&&r.truncate>this.maxDigestLength)throw new Error(`Invalid truncate option, must be less than or equal to ${this.maxDigestLength}`)}if(t instanceof Uint8Array){let n=this.encode(t);return n instanceof Uint8Array?la(n,this.code,r?.truncate):n.then(o=>la(o,this.code,r?.truncate))}else throw Error("Unknown type, must be binary type")}};function la(e,t,r){if(r!=null&&r!==e.byteLength){if(r>e.byteLength)throw new Error(`Invalid truncate option, must be less than or equal to ${e.byteLength}`);e=e.subarray(0,r)}return Wt(t,e)}function ha(e){return async t=>new Uint8Array(await crypto.subtle.digest(e,t))}var Dr=Go({name:"sha2-256",code:18,encode:ha("SHA-256")}),ed=Go({name:"sha2-512",code:19,encode:ha("SHA-512")});var Rr={...Ho,...Fo,...qo,...Vo,...Mo,...Bo,...Lo,..._o,...Po,...$o},qm={...Zo,...Ko};function ma(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var pa=ma("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),jo=ma("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=_t(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),rd={utf8:pa,"utf-8":pa,hex:Rr.base16,latin1:jo,ascii:jo,binary:jo,...Rr},yn=rd;function H(e,t="utf8"){let r=yn[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return r.decoder.decode(`${r.prefix}${e}`)}function z(e,t="utf8"){let r=yn[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return r.encoder.encode(e).substring(1)}var nd=parseInt("11111",2),Yo=parseInt("10000000",2),od=parseInt("01111111",2),ya={0:Pr,1:Pr,2:id,3:cd,4:ud,5:ad,6:sd,16:Pr,22:Pr,48:Pr};function se(e,t={offset:0}){let r=e[t.offset]&nd;if(t.offset++,ya[r]!=null)return ya[r](e,t);throw new Error("No decoder for tag "+r)}function Ur(e,t){let r=0;if((e[t.offset]&Yo)===Yo){let n=e[t.offset]&od,o="0x";t.offset++;for(let i=0;i<n;i++,t.offset++)o+=e[t.offset].toString(16).padStart(2,"0");r=parseInt(o,16)}else r=e[t.offset],t.offset++;return r}function Pr(e,t){Ur(e,t);let r=[];for(;!(t.offset>=e.byteLength);){let n=se(e,t);if(n===null)break;r.push(n)}return r}function id(e,t){let r=Ur(e,t),n=t.offset,o=t.offset+r,i=[];for(let s=n;s<o;s++)s===n&&e[s]===0||i.push(e[s]);return t.offset+=r,Uint8Array.from(i)}function sd(e,t){let r=Ur(e,t),n=t.offset+r,o=e[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 f=e[t.offset];if(t.offset++,a.push(f&127),f<128){a.reverse();let u=0;for(let l=0;l<a.length;l++)u+=a[l]<<l*7;c+=`.${u}`,a=[]}}return c}function ad(e,t){return t.offset++,null}function cd(e,t){let r=Ur(e,t),n=e[t.offset];t.offset++;let o=e.subarray(t.offset,t.offset+r-1);if(t.offset+=r,n!==0)throw new Error("Unused bits in bit string is unimplemented");return o}function ud(e,t){let r=Ur(e,t),n=e.subarray(t.offset,t.offset+r);return t.offset+=r,n}function fd(e){let t=e.toString(16);t.length%2===1&&(t="0"+t);let r=new Dt;for(let n=0;n<t.length;n+=2)r.append(Uint8Array.from([parseInt(`${t[n]}${t[n+1]}`,16)]));return r}function Wo(e){if(e.byteLength<128)return Uint8Array.from([e.byteLength]);let t=fd(e.byteLength);return new Dt(Uint8Array.from([t.byteLength|Yo]),t)}function Tt(e){let t=new Dt,r=128;return(e.subarray()[0]&r)===r&&t.append(Uint8Array.from([0])),t.append(e),new Dt(Uint8Array.from([2]),Wo(t),t)}function gn(e){let t=Uint8Array.from([0]),r=new Dt(t,e);return new Dt(Uint8Array.from([3]),Wo(r),r)}function be(e,t=48){let r=new Dt;for(let n of e)r.append(n);return new Dt(Uint8Array.from([t]),Wo(r),r)}async function ga(e,t,r,n){let o=await crypto.subtle.importKey("jwk",e,{name:"ECDSA",namedCurve:e.crv??"P-256"},!1,["verify"]);n?.signal?.throwIfAborted();let i=await crypto.subtle.verify({name:"ECDSA",hash:{name:"SHA-256"}},o,t,r.subarray());return n?.signal?.throwIfAborted(),i}var ld=Uint8Array.from([6,8,42,134,72,206,61,3,1,7]),dd=Uint8Array.from([6,5,43,129,4,0,34]),hd=Uint8Array.from([6,5,43,129,4,0,35]),pd={ext:!0,kty:"EC",crv:"P-256"},md={ext:!0,kty:"EC",crv:"P-384"},yd={ext:!0,kty:"EC",crv:"P-521"},Xo=32,Jo=48,Qo=66;function ti(e){let t=se(e);return xa(t)}function xa(e){let t=e[1][1][0],r=1,n,o;if(t.byteLength===Xo*2+1)return n=z(t.subarray(r,r+Xo),"base64url"),o=z(t.subarray(r+Xo),"base64url"),new tr({...pd,key_ops:["verify"],x:n,y:o});if(t.byteLength===Jo*2+1)return n=z(t.subarray(r,r+Jo),"base64url"),o=z(t.subarray(r+Jo),"base64url"),new tr({...md,key_ops:["verify"],x:n,y:o});if(t.byteLength===Qo*2+1)return n=z(t.subarray(r,r+Qo),"base64url"),o=z(t.subarray(r+Qo),"base64url"),new tr({...yd,key_ops:["verify"],x:n,y:o});throw new st(`coordinates were wrong length, got ${t.byteLength}, expected 65, 97 or 133`)}function ba(e){return be([Tt(Uint8Array.from([1])),be([gd(e.crv)],160),be([gn(new Dt(Uint8Array.from([4]),H(e.x??"","base64url"),H(e.y??"","base64url")))],161)]).subarray()}function gd(e){if(e==="P-256")return ld;if(e==="P-384")return dd;if(e==="P-521")return hd;throw new st(`Invalid curve ${e}`)}var tr=class{type="ECDSA";jwk;_raw;constructor(t){this.jwk=t}get raw(){return this._raw==null&&(this._raw=ba(this.jwk)),this._raw}toMultihash(){return Bt.digest(er(this))}toCID(){return j.createV1(114,this.toMultihash())}toString(){return X.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Y(this.raw,t.raw)}async verify(t,r,n){return ga(this.jwk,r,t,n)}};function Ue(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Xt(e,t=""){if(!Number.isSafeInteger(e)||e<0){let r=t&&`"${t}" `;throw new Error(`${r}expected integer >= 0, got ${e}`)}}function q(e,t,r=""){let n=Ue(e),o=e?.length,i=t!==void 0;if(!n||i&&o!==t){let s=r&&`"${r}" `,c=i?` of length ${t}`:"",a=n?`length=${o}`:`type=${typeof e}`;throw new Error(s+"expected Uint8Array"+c+", got "+a)}return e}function xn(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash must wrapped by utils.createHasher");Xt(e.outputLen),Xt(e.blockLen)}function rr(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Ea(e,t){q(e,void 0,"digestInto() output");let r=t.outputLen;if(e.length<r)throw new Error('"digestInto() output" expected to be of length >='+r)}function ce(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function bn(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Mt(e,t){return e<<32-t|e>>>t}var Sa=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",xd=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function ue(e){if(q(e),Sa)return e.toHex();let t="";for(let r=0;r<e.length;r++)t+=xd[e[r]];return t}var ae={_0:48,_9:57,A:65,F:70,a:97,f:102};function wa(e){if(e>=ae._0&&e<=ae._9)return e-ae._0;if(e>=ae.A&&e<=ae.F)return e-(ae.A-10);if(e>=ae.a&&e<=ae.f)return e-(ae.a-10)}function fe(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);if(Sa)return Uint8Array.fromHex(e);let t=e.length,r=t/2;if(t%2)throw new Error("hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(r);for(let o=0,i=0;o<r;o++,i+=2){let s=wa(e.charCodeAt(i)),c=wa(e.charCodeAt(i+1));if(s===void 0||c===void 0){let a=e[i]+e[i+1];throw new Error('hex string expected, got non-hex character "'+a+'" at index '+i)}n[o]=s*16+c}return n}function Ct(...e){let t=0;for(let n=0;n<e.length;n++){let o=e[n];q(o),t+=o.length}let r=new Uint8Array(t);for(let n=0,o=0;n<e.length;n++){let i=e[n];r.set(i,o),o+=i.length}return r}function ei(e,t={}){let r=(o,i)=>e(i).update(o).digest(),n=e(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.create=o=>e(o),Object.assign(r,t),Object.freeze(r)}function nr(e=32){let t=typeof globalThis=="object"?globalThis.crypto:null;if(typeof t?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");return t.getRandomValues(new Uint8Array(e))}var ri=e=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,e])});function va(e,t,r){return e&t^~e&r}function Aa(e,t,r){return e&t^e&r^t&r}var Nr=class{blockLen;outputLen;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor(t,r,n,o){this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(t),this.view=bn(this.buffer)}update(t){rr(this),q(t);let{view:r,buffer:n,blockLen:o}=this,i=t.length;for(let s=0;s<i;){let c=Math.min(o-this.pos,i-s);if(c===o){let a=bn(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(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){rr(this),Ea(t,this),this.finished=!0;let{buffer:r,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;r[s++]=128,ce(this.buffer.subarray(s)),this.padOffset>o-s&&(this.process(n,0),s=0);for(let l=s;l<o;l++)r[l]=0;n.setBigUint64(o-8,BigInt(this.length*8),i),this.process(n,0);let c=bn(t),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let f=a/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)c.setUint32(4*l,u[l],i)}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||=new this.constructor,t.set(...this.get());let{blockLen:r,buffer:n,length:o,finished:i,destroyed:s,pos:c}=this;return t.destroyed=s,t.finished=i,t.length=o,t.pos=c,o%r&&t.buffer.set(n),t}clone(){return this._cloneInto()}},le=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var ht=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var wn=BigInt(4294967295),Ia=BigInt(32);function bd(e,t=!1){return t?{h:Number(e&wn),l:Number(e>>Ia&wn)}:{h:Number(e>>Ia&wn)|0,l:Number(e&wn)|0}}function Ta(e,t=!1){let r=e.length,n=new Uint32Array(r),o=new Uint32Array(r);for(let i=0;i<r;i++){let{h:s,l:c}=bd(e[i],t);[n[i],o[i]]=[s,c]}return[n,o]}var ni=(e,t,r)=>e>>>r,oi=(e,t,r)=>e<<32-r|t>>>r,Ne=(e,t,r)=>e>>>r|t<<32-r,Le=(e,t,r)=>e<<32-r|t>>>r,Lr=(e,t,r)=>e<<64-r|t>>>r-32,Or=(e,t,r)=>e>>>r-32|t<<64-r;function Jt(e,t,r,n){let o=(t>>>0)+(n>>>0);return{h:e+r+(o/2**32|0)|0,l:o|0}}var Ca=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),Ba=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,_a=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),Da=(e,t,r,n,o)=>t+r+n+o+(e/2**32|0)|0,Ra=(e,t,r,n,o)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(o>>>0),Pa=(e,t,r,n,o,i)=>t+r+n+o+i+(e/2**32|0)|0;var Ed=Uint32Array.from([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]),we=new Uint32Array(64),ii=class extends Nr{constructor(t){super(64,t,8,!1)}get(){let{A:t,B:r,C:n,D:o,E:i,F:s,G:c,H:a}=this;return[t,r,n,o,i,s,c,a]}set(t,r,n,o,i,s,c,a){this.A=t|0,this.B=r|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,r){for(let l=0;l<16;l++,r+=4)we[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let y=we[l-15],v=we[l-2],x=Mt(y,7)^Mt(y,18)^y>>>3,T=Mt(v,17)^Mt(v,19)^v>>>10;we[l]=T+we[l-7]+x+we[l-16]|0}let{A:n,B:o,C:i,D:s,E:c,F:a,G:f,H:u}=this;for(let l=0;l<64;l++){let y=Mt(c,6)^Mt(c,11)^Mt(c,25),v=u+y+va(c,a,f)+Ed[l]+we[l]|0,T=(Mt(n,2)^Mt(n,13)^Mt(n,22))+Aa(n,o,i)|0;u=f,f=a,a=c,c=s+v|0,s=i,i=o,o=n,n=v+T|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,f=f+this.G|0,u=u+this.H|0,this.set(n,o,i,s,c,a,f,u)}roundClean(){ce(we)}destroy(){this.set(0,0,0,0,0,0,0,0),ce(this.buffer)}},si=class extends ii{A=le[0]|0;B=le[1]|0;C=le[2]|0;D=le[3]|0;E=le[4]|0;F=le[5]|0;G=le[6]|0;H=le[7]|0;constructor(){super(32)}};var Ua=Ta(["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(e=>BigInt(e))),Sd=Ua[0],vd=Ua[1],Ee=new Uint32Array(80),Se=new Uint32Array(80),ai=class extends Nr{constructor(t){super(128,t,16,!1)}get(){let{Ah:t,Al:r,Bh:n,Bl:o,Ch:i,Cl:s,Dh:c,Dl:a,Eh:f,El:u,Fh:l,Fl:y,Gh:v,Gl:x,Hh:T,Hl:I}=this;return[t,r,n,o,i,s,c,a,f,u,l,y,v,x,T,I]}set(t,r,n,o,i,s,c,a,f,u,l,y,v,x,T,I){this.Ah=t|0,this.Al=r|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=f|0,this.El=u|0,this.Fh=l|0,this.Fl=y|0,this.Gh=v|0,this.Gl=x|0,this.Hh=T|0,this.Hl=I|0}process(t,r){for(let S=0;S<16;S++,r+=4)Ee[S]=t.getUint32(r),Se[S]=t.getUint32(r+=4);for(let S=16;S<80;S++){let N=Ee[S-15]|0,k=Se[S-15]|0,M=Ne(N,k,1)^Ne(N,k,8)^ni(N,k,7),V=Le(N,k,1)^Le(N,k,8)^oi(N,k,7),h=Ee[S-2]|0,p=Se[S-2]|0,_=Ne(h,p,19)^Lr(h,p,61)^ni(h,p,6),D=Le(h,p,19)^Or(h,p,61)^oi(h,p,6),A=_a(V,D,Se[S-7],Se[S-16]),m=Da(A,M,_,Ee[S-7],Ee[S-16]);Ee[S]=m|0,Se[S]=A|0}let{Ah:n,Al:o,Bh:i,Bl:s,Ch:c,Cl:a,Dh:f,Dl:u,Eh:l,El:y,Fh:v,Fl:x,Gh:T,Gl:I,Hh:w,Hl:C}=this;for(let S=0;S<80;S++){let N=Ne(l,y,14)^Ne(l,y,18)^Lr(l,y,41),k=Le(l,y,14)^Le(l,y,18)^Or(l,y,41),M=l&v^~l&T,V=y&x^~y&I,h=Ra(C,k,V,vd[S],Se[S]),p=Pa(h,w,N,M,Sd[S],Ee[S]),_=h|0,D=Ne(n,o,28)^Lr(n,o,34)^Lr(n,o,39),A=Le(n,o,28)^Or(n,o,34)^Or(n,o,39),m=n&i^n&c^i&c,g=o&s^o&a^s&a;w=T|0,C=I|0,T=v|0,I=x|0,v=l|0,x=y|0,{h:l,l:y}=Jt(f|0,u|0,p|0,_|0),f=c|0,u=a|0,c=i|0,a=s|0,i=n|0,s=o|0;let d=Ca(_,A,g);n=Ba(d,p,D,m),o=d|0}({h:n,l:o}=Jt(this.Ah|0,this.Al|0,n|0,o|0)),{h:i,l:s}=Jt(this.Bh|0,this.Bl|0,i|0,s|0),{h:c,l:a}=Jt(this.Ch|0,this.Cl|0,c|0,a|0),{h:f,l:u}=Jt(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:y}=Jt(this.Eh|0,this.El|0,l|0,y|0),{h:v,l:x}=Jt(this.Fh|0,this.Fl|0,v|0,x|0),{h:T,l:I}=Jt(this.Gh|0,this.Gl|0,T|0,I|0),{h:w,l:C}=Jt(this.Hh|0,this.Hl|0,w|0,C|0),this.set(n,o,i,s,c,a,f,u,l,y,v,x,T,I,w,C)}roundClean(){ce(Ee,Se)}destroy(){ce(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},ci=class extends ai{Ah=ht[0]|0;Al=ht[1]|0;Bh=ht[2]|0;Bl=ht[3]|0;Ch=ht[4]|0;Cl=ht[5]|0;Dh=ht[6]|0;Dl=ht[7]|0;Eh=ht[8]|0;El=ht[9]|0;Fh=ht[10]|0;Fl=ht[11]|0;Gh=ht[12]|0;Gl=ht[13]|0;Hh=ht[14]|0;Hl=ht[15]|0;constructor(){super(64)}};var or=ei(()=>new si,ri(1));var Na=ei(()=>new ci,ri(3));var fi=BigInt(0),ui=BigInt(1);function de(e,t=""){if(typeof e!="boolean"){let r=t&&`"${t}" `;throw new Error(r+"expected boolean, got type="+typeof e)}return e}function La(e){if(typeof e=="bigint"){if(!En(e))throw new Error("positive bigint expected, got "+e)}else Xt(e);return e}function kr(e){let t=La(e).toString(16);return t.length&1?"0"+t:t}function Oa(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return e===""?fi:BigInt("0x"+e)}function ir(e){return Oa(ue(e))}function Oe(e){return Oa(ue(vn(q(e)).reverse()))}function Sn(e,t){Xt(t),e=La(e);let r=fe(e.toString(16).padStart(t*2,"0"));if(r.length!==t)throw new Error("number too large");return r}function li(e,t){return Sn(e,t).reverse()}function vn(e){return Uint8Array.from(e)}var En=e=>typeof e=="bigint"&&fi<=e;function Ad(e,t,r){return En(e)&&En(t)&&En(r)&&t<=e&&e<r}function Kr(e,t,r,n){if(!Ad(t,r,n))throw new Error("expected valid "+e+": "+r+" <= n < "+n+", got "+t)}function di(e){let t;for(t=0;e>fi;e>>=ui,t+=1);return t}var Vr=e=>(ui<<BigInt(e))-ui;function ka(e,t,r){if(Xt(e,"hashLen"),Xt(t,"qByteLen"),typeof r!="function")throw new Error("hmacFn must be a function");let n=I=>new Uint8Array(I),o=Uint8Array.of(),i=Uint8Array.of(0),s=Uint8Array.of(1),c=1e3,a=n(e),f=n(e),u=0,l=()=>{a.fill(1),f.fill(0),u=0},y=(...I)=>r(f,Ct(a,...I)),v=(I=o)=>{f=y(i,I),a=y(),I.length!==0&&(f=y(s,I),a=y())},x=()=>{if(u++>=c)throw new Error("drbg: tried max amount of iterations");let I=0,w=[];for(;I<t;){a=y();let C=a.slice();w.push(C),I+=a.length}return Ct(...w)};return(I,w)=>{l(),v(I);let C;for(;!(C=w(x()));)v();return l(),C}}function ve(e,t={},r={}){if(!e||typeof e!="object")throw new Error("expected valid options object");function n(i,s,c){let a=e[i];if(c&&a===void 0)return;let f=typeof a;if(f!==s||a===null)throw new Error(`param "${i}" is invalid: expected ${s}, got ${f}`)}let o=(i,s)=>Object.entries(i).forEach(([c,a])=>n(c,a,s));o(t,!1),o(r,!0)}function sr(e){let t=new WeakMap;return(r,...n)=>{let o=t.get(r);if(o!==void 0)return o;let i=e(r,...n);return t.set(r,i),i}}var Et=BigInt(0),ct=BigInt(1),ke=BigInt(2),Ma=BigInt(3),Fa=BigInt(4),$a=BigInt(5),Id=BigInt(7),qa=BigInt(8),Td=BigInt(9),Ha=BigInt(16);function ot(e,t){let r=e%t;return r>=Et?r:t+r}function J(e,t,r){let n=e;for(;t-- >Et;)n*=n,n%=r;return n}function Ka(e,t){if(e===Et)throw new Error("invert: expected non-zero number");if(t<=Et)throw new Error("invert: expected positive modulus, got "+t);let r=ot(e,t),n=t,o=Et,i=ct,s=ct,c=Et;for(;r!==Et;){let f=n/r,u=n%r,l=o-s*f,y=i-c*f;n=r,r=u,o=s,i=c,s=l,c=y}if(n!==ct)throw new Error("invert: does not exist");return ot(o,t)}function pi(e,t,r){if(!e.eql(e.sqr(t),r))throw new Error("Cannot find square root")}function za(e,t){let r=(e.ORDER+ct)/Fa,n=e.pow(t,r);return pi(e,n,t),n}function Cd(e,t){let r=(e.ORDER-$a)/qa,n=e.mul(t,ke),o=e.pow(n,r),i=e.mul(t,o),s=e.mul(e.mul(i,ke),o),c=e.mul(i,e.sub(s,e.ONE));return pi(e,c,t),c}function Bd(e){let t=ar(e),r=Ga(e),n=r(t,t.neg(t.ONE)),o=r(t,n),i=r(t,t.neg(n)),s=(e+Id)/Ha;return(c,a)=>{let f=c.pow(a,s),u=c.mul(f,n),l=c.mul(f,o),y=c.mul(f,i),v=c.eql(c.sqr(u),a),x=c.eql(c.sqr(l),a);f=c.cmov(f,u,v),u=c.cmov(y,l,x);let T=c.eql(c.sqr(u),a),I=c.cmov(f,u,T);return pi(c,I,a),I}}function Ga(e){if(e<Ma)throw new Error("sqrt is not defined for small field");let t=e-ct,r=0;for(;t%ke===Et;)t/=ke,r++;let n=ke,o=ar(e);for(;Va(o,n)===1;)if(n++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return za;let i=o.pow(n,t),s=(t+ct)/ke;return function(a,f){if(a.is0(f))return f;if(Va(a,f)!==1)throw new Error("Cannot find square root");let u=r,l=a.mul(a.ONE,i),y=a.pow(f,t),v=a.pow(f,s);for(;!a.eql(y,a.ONE);){if(a.is0(y))return a.ZERO;let x=1,T=a.sqr(y);for(;!a.eql(T,a.ONE);)if(x++,T=a.sqr(T),x===u)throw new Error("Cannot find square root");let I=ct<<BigInt(u-x-1),w=a.pow(l,I);u=x,l=a.sqr(w),y=a.mul(y,l),v=a.mul(v,w)}return v}}function _d(e){return e%Fa===Ma?za:e%qa===$a?Cd:e%Ha===Td?Bd(e):Ga(e)}var Za=(e,t)=>(ot(e,t)&ct)===ct,Dd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function mi(e){let t={ORDER:"bigint",BYTES:"number",BITS:"number"},r=Dd.reduce((n,o)=>(n[o]="function",n),t);return ve(e,r),e}function Rd(e,t,r){if(r<Et)throw new Error("invalid exponent, negatives unsupported");if(r===Et)return e.ONE;if(r===ct)return t;let n=e.ONE,o=t;for(;r>Et;)r&ct&&(n=e.mul(n,o)),o=e.sqr(o),r>>=ct;return n}function Mr(e,t,r=!1){let n=new Array(t.length).fill(r?e.ZERO:void 0),o=t.reduce((s,c,a)=>e.is0(c)?s:(n[a]=s,e.mul(s,c)),e.ONE),i=e.inv(o);return t.reduceRight((s,c,a)=>e.is0(c)?s:(n[a]=e.mul(s,n[a]),e.mul(s,c)),i),n}function Va(e,t){let r=(e.ORDER-ct)/ke,n=e.pow(t,r),o=e.eql(n,e.ONE),i=e.eql(n,e.ZERO),s=e.eql(n,e.neg(e.ONE));if(!o&&!i&&!s)throw new Error("invalid Legendre symbol result");return o?1:i?0:-1}function Pd(e,t){t!==void 0&&Xt(t);let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}var hi=class{ORDER;BITS;BYTES;isLE;ZERO=Et;ONE=ct;_lengths;_sqrt;_mod;constructor(t,r={}){if(t<=Et)throw new Error("invalid field: expected ORDER > 0, got "+t);let n;this.isLE=!1,r!=null&&typeof r=="object"&&(typeof r.BITS=="number"&&(n=r.BITS),typeof r.sqrt=="function"&&(this.sqrt=r.sqrt),typeof r.isLE=="boolean"&&(this.isLE=r.isLE),r.allowedLengths&&(this._lengths=r.allowedLengths?.slice()),typeof r.modFromBytes=="boolean"&&(this._mod=r.modFromBytes));let{nBitLength:o,nByteLength:i}=Pd(t,n);if(i>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=t,this.BITS=o,this.BYTES=i,this._sqrt=void 0,Object.preventExtensions(this)}create(t){return ot(t,this.ORDER)}isValid(t){if(typeof t!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof t);return Et<=t&&t<this.ORDER}is0(t){return t===Et}isValidNot0(t){return!this.is0(t)&&this.isValid(t)}isOdd(t){return(t&ct)===ct}neg(t){return ot(-t,this.ORDER)}eql(t,r){return t===r}sqr(t){return ot(t*t,this.ORDER)}add(t,r){return ot(t+r,this.ORDER)}sub(t,r){return ot(t-r,this.ORDER)}mul(t,r){return ot(t*r,this.ORDER)}pow(t,r){return Rd(this,t,r)}div(t,r){return ot(t*Ka(r,this.ORDER),this.ORDER)}sqrN(t){return t*t}addN(t,r){return t+r}subN(t,r){return t-r}mulN(t,r){return t*r}inv(t){return Ka(t,this.ORDER)}sqrt(t){return this._sqrt||(this._sqrt=_d(this.ORDER)),this._sqrt(this,t)}toBytes(t){return this.isLE?li(t,this.BYTES):Sn(t,this.BYTES)}fromBytes(t,r=!1){q(t);let{_lengths:n,BYTES:o,isLE:i,ORDER:s,_mod:c}=this;if(n){if(!n.includes(t.length)||t.length>o)throw new Error("Field.fromBytes: expected "+n+" bytes, got "+t.length);let f=new Uint8Array(o);f.set(t,i?0:f.length-t.length),t=f}if(t.length!==o)throw new Error("Field.fromBytes: expected "+o+" bytes, got "+t.length);let a=i?Oe(t):ir(t);if(c&&(a=ot(a,s)),!r&&!this.isValid(a))throw new Error("invalid field element: outside of range 0..ORDER");return a}invertBatch(t){return Mr(this,t)}cmov(t,r,n){return n?r:t}};function ar(e,t={}){return new hi(e,t)}function ja(e){if(typeof e!="bigint")throw new Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}function yi(e){let t=ja(e);return t+Math.ceil(t/2)}function gi(e,t,r=!1){q(e);let n=e.length,o=ja(t),i=yi(t);if(n<16||n<i||n>1024)throw new Error("expected "+i+"-1024 bytes of input, got "+n);let s=r?Oe(e):ir(e),c=ot(s,t-ct)+ct;return r?li(c,o):Sn(c,o)}var cr=BigInt(0),Ke=BigInt(1);function Fr(e,t){let r=t.negate();return e?r:t}function Ve(e,t){let r=Mr(e.Fp,t.map(n=>n.Z));return t.map((n,o)=>e.fromAffine(n.toAffine(r[o])))}function Ja(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+e)}function xi(e,t){Ja(e,t);let r=Math.ceil(t/e)+1,n=2**(e-1),o=2**e,i=Vr(e),s=BigInt(e);return{windows:r,windowSize:n,mask:i,maxNumber:o,shiftBy:s}}function Ya(e,t,r){let{windowSize:n,mask:o,maxNumber:i,shiftBy:s}=r,c=Number(e&o),a=e>>s;c>n&&(c-=i,a+=Ke);let f=t*n,u=f+Math.abs(c)-1,l=c===0,y=c<0,v=t%2!==0;return{nextN:a,offset:u,isZero:l,isNeg:y,isNegF:v,offsetF:f}}var bi=new WeakMap,Qa=new WeakMap;function wi(e){return Qa.get(e)||1}function Wa(e){if(e!==cr)throw new Error("invalid wNAF")}var ur=class{BASE;ZERO;Fn;bits;constructor(t,r){this.BASE=t.BASE,this.ZERO=t.ZERO,this.Fn=t.Fn,this.bits=r}_unsafeLadder(t,r,n=this.ZERO){let o=t;for(;r>cr;)r&Ke&&(n=n.add(o)),o=o.double(),r>>=Ke;return n}precomputeWindow(t,r){let{windows:n,windowSize:o}=xi(r,this.bits),i=[],s=t,c=s;for(let a=0;a<n;a++){c=s,i.push(c);for(let f=1;f<o;f++)c=c.add(s),i.push(c);s=c.double()}return i}wNAF(t,r,n){if(!this.Fn.isValid(n))throw new Error("invalid scalar");let o=this.ZERO,i=this.BASE,s=xi(t,this.bits);for(let c=0;c<s.windows;c++){let{nextN:a,offset:f,isZero:u,isNeg:l,isNegF:y,offsetF:v}=Ya(n,c,s);n=a,u?i=i.add(Fr(y,r[v])):o=o.add(Fr(l,r[f]))}return Wa(n),{p:o,f:i}}wNAFUnsafe(t,r,n,o=this.ZERO){let i=xi(t,this.bits);for(let s=0;s<i.windows&&n!==cr;s++){let{nextN:c,offset:a,isZero:f,isNeg:u}=Ya(n,s,i);if(n=c,!f){let l=r[a];o=o.add(u?l.negate():l)}}return Wa(n),o}getPrecomputes(t,r,n){let o=bi.get(r);return o||(o=this.precomputeWindow(r,t),t!==1&&(typeof n=="function"&&(o=n(o)),bi.set(r,o))),o}cached(t,r,n){let o=wi(t);return this.wNAF(o,this.getPrecomputes(o,t,n),r)}unsafe(t,r,n,o){let i=wi(t);return i===1?this._unsafeLadder(t,r,o):this.wNAFUnsafe(i,this.getPrecomputes(i,t,n),r,o)}createCache(t,r){Ja(r,this.bits),Qa.set(t,r),bi.delete(t)}hasCache(t){return wi(t)!==1}};function tc(e,t,r,n){let o=t,i=e.ZERO,s=e.ZERO;for(;r>cr||n>cr;)r&Ke&&(i=i.add(o)),n&Ke&&(s=s.add(o)),o=o.double(),r>>=Ke,n>>=Ke;return{p1:i,p2:s}}function Xa(e,t,r){if(t){if(t.ORDER!==e)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return mi(t),t}else return ar(e,{isLE:r})}function An(e,t,r={},n){if(n===void 0&&(n=e==="edwards"),!t||typeof t!="object")throw new Error(`expected valid ${e} CURVE object`);for(let a of["p","n","h"]){let f=t[a];if(!(typeof f=="bigint"&&f>cr))throw new Error(`CURVE.${a} must be positive bigint`)}let o=Xa(t.p,r.Fp,n),i=Xa(t.n,r.Fn,n),c=["Gx","Gy","a",e==="weierstrass"?"b":"d"];for(let a of c)if(!o.isValid(t[a]))throw new Error(`CURVE.${a} must be valid field element of CURVE.Fp`);return t=Object.freeze(Object.assign({},t)),{CURVE:t,Fp:o,Fn:i}}function In(e,t){return function(n){let o=e(n);return{secretKey:o,publicKey:t(o)}}}var Ae=BigInt(0),ut=BigInt(1),Ei=BigInt(2),Ud=BigInt(8);function Nd(e,t,r,n){let o=e.sqr(r),i=e.sqr(n),s=e.add(e.mul(t.a,o),i),c=e.add(e.ONE,e.mul(t.d,e.mul(o,i)));return e.eql(s,c)}function ec(e,t={}){let r=An("edwards",e,t,t.FpFnLE),{Fp:n,Fn:o}=r,i=r.CURVE,{h:s}=i;ve(t,{},{uvRatio:"function"});let c=Ei<<BigInt(o.BYTES*8)-ut,a=I=>n.create(I),f=t.uvRatio||((I,w)=>{try{return{isValid:!0,value:n.sqrt(n.div(I,w))}}catch{return{isValid:!1,value:Ae}}});if(!Nd(n,i,i.Gx,i.Gy))throw new Error("bad curve params: generator point");function u(I,w,C=!1){let S=C?ut:Ae;return Kr("coordinate "+I,w,S,c),w}function l(I){if(!(I instanceof x))throw new Error("EdwardsPoint expected")}let y=sr((I,w)=>{let{X:C,Y:S,Z:N}=I,k=I.is0();w==null&&(w=k?Ud:n.inv(N));let M=a(C*w),V=a(S*w),h=n.mul(N,w);if(k)return{x:Ae,y:ut};if(h!==ut)throw new Error("invZ was invalid");return{x:M,y:V}}),v=sr(I=>{let{a:w,d:C}=i;if(I.is0())throw new Error("bad point: ZERO");let{X:S,Y:N,Z:k,T:M}=I,V=a(S*S),h=a(N*N),p=a(k*k),_=a(p*p),D=a(V*w),A=a(p*a(D+h)),m=a(_+a(C*a(V*h)));if(A!==m)throw new Error("bad point: equation left != right (1)");let g=a(S*N),d=a(k*M);if(g!==d)throw new Error("bad point: equation left != right (2)");return!0});class x{static BASE=new x(i.Gx,i.Gy,ut,a(i.Gx*i.Gy));static ZERO=new x(Ae,ut,ut,Ae);static Fp=n;static Fn=o;X;Y;Z;T;constructor(w,C,S,N){this.X=u("x",w),this.Y=u("y",C),this.Z=u("z",S,!0),this.T=u("t",N),Object.freeze(this)}static CURVE(){return i}static fromAffine(w){if(w instanceof x)throw new Error("extended point not allowed");let{x:C,y:S}=w||{};return u("x",C),u("y",S),new x(C,S,ut,a(C*S))}static fromBytes(w,C=!1){let S=n.BYTES,{a:N,d:k}=i;w=vn(q(w,S,"point")),de(C,"zip215");let M=vn(w),V=w[S-1];M[S-1]=V&-129;let h=Oe(M),p=C?c:n.ORDER;Kr("point.y",h,Ae,p);let _=a(h*h),D=a(_-ut),A=a(k*_-N),{isValid:m,value:g}=f(D,A);if(!m)throw new Error("bad point: invalid y coordinate");let d=(g&ut)===ut,E=(V&128)!==0;if(!C&&g===Ae&&E)throw new Error("bad point: x=0 and x_0=1");return E!==d&&(g=a(-g)),x.fromAffine({x:g,y:h})}static fromHex(w,C=!1){return x.fromBytes(fe(w),C)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(w=8,C=!0){return T.createCache(this,w),C||this.multiply(Ei),this}assertValidity(){v(this)}equals(w){l(w);let{X:C,Y:S,Z:N}=this,{X:k,Y:M,Z:V}=w,h=a(C*V),p=a(k*N),_=a(S*V),D=a(M*N);return h===p&&_===D}is0(){return this.equals(x.ZERO)}negate(){return new x(a(-this.X),this.Y,this.Z,a(-this.T))}double(){let{a:w}=i,{X:C,Y:S,Z:N}=this,k=a(C*C),M=a(S*S),V=a(Ei*a(N*N)),h=a(w*k),p=C+S,_=a(a(p*p)-k-M),D=h+M,A=D-V,m=h-M,g=a(_*A),d=a(D*m),E=a(_*m),R=a(A*D);return new x(g,d,R,E)}add(w){l(w);let{a:C,d:S}=i,{X:N,Y:k,Z:M,T:V}=this,{X:h,Y:p,Z:_,T:D}=w,A=a(N*h),m=a(k*p),g=a(V*S*D),d=a(M*_),E=a((N+k)*(h+p)-A-m),R=d-g,P=d+g,L=a(m-C*A),O=a(E*R),K=a(P*L),$=a(E*L),tt=a(R*P);return new x(O,K,tt,$)}subtract(w){return this.add(w.negate())}multiply(w){if(!o.isValidNot0(w))throw new Error("invalid scalar: expected 1 <= sc < curve.n");let{p:C,f:S}=T.cached(this,w,N=>Ve(x,N));return Ve(x,[C,S])[0]}multiplyUnsafe(w,C=x.ZERO){if(!o.isValid(w))throw new Error("invalid scalar: expected 0 <= sc < curve.n");return w===Ae?x.ZERO:this.is0()||w===ut?this:T.unsafe(this,w,S=>Ve(x,S),C)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}isTorsionFree(){return T.unsafe(this,i.n).is0()}toAffine(w){return y(this,w)}clearCofactor(){return s===ut?this:this.multiplyUnsafe(s)}toBytes(){let{x:w,y:C}=this.toAffine(),S=n.toBytes(C);return S[S.length-1]|=w&ut?128:0,S}toHex(){return ue(this.toBytes())}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let T=new ur(x,o.BITS);return x.BASE.precompute(8),x}function rc(e,t,r={}){if(typeof t!="function")throw new Error('"hash" function param is required');ve(r,{},{adjustScalarBytes:"function",randomBytes:"function",domain:"function",prehash:"function",mapToCurve:"function"});let{prehash:n}=r,{BASE:o,Fp:i,Fn:s}=e,c=r.randomBytes||nr,a=r.adjustScalarBytes||(h=>h),f=r.domain||((h,p,_)=>{if(de(_,"phflag"),p.length||_)throw new Error("Contexts/pre-hash are not supported");return h});function u(h){return s.create(Oe(h))}function l(h){let p=S.secretKey;q(h,S.secretKey,"secretKey");let _=q(t(h),2*p,"hashedSecretKey"),D=a(_.slice(0,p)),A=_.slice(p,2*p),m=u(D);return{head:D,prefix:A,scalar:m}}function y(h){let{head:p,prefix:_,scalar:D}=l(h),A=o.multiply(D),m=A.toBytes();return{head:p,prefix:_,scalar:D,point:A,pointBytes:m}}function v(h){return y(h).pointBytes}function x(h=Uint8Array.of(),...p){let _=Ct(...p);return u(t(f(_,q(h,void 0,"context"),!!n)))}function T(h,p,_={}){h=q(h,void 0,"message"),n&&(h=n(h));let{prefix:D,scalar:A,pointBytes:m}=y(p),g=x(_.context,D,h),d=o.multiply(g).toBytes(),E=x(_.context,d,m,h),R=s.create(g+E*A);if(!s.isValid(R))throw new Error("sign failed: invalid s");let P=Ct(d,s.toBytes(R));return q(P,S.signature,"result")}let I={zip215:!0};function w(h,p,_,D=I){let{context:A,zip215:m}=D,g=S.signature;h=q(h,g,"signature"),p=q(p,void 0,"message"),_=q(_,S.publicKey,"publicKey"),m!==void 0&&de(m,"zip215"),n&&(p=n(p));let d=g/2,E=h.subarray(0,d),R=Oe(h.subarray(d,g)),P,L,O;try{P=e.fromBytes(_,m),L=e.fromBytes(E,m),O=o.multiplyUnsafe(R)}catch{return!1}if(!m&&P.isSmallOrder())return!1;let K=x(A,L.toBytes(),P.toBytes(),p);return L.add(P.multiplyUnsafe(K)).subtract(O).clearCofactor().is0()}let C=i.BYTES,S={secretKey:C,publicKey:C,signature:2*C,seed:C};function N(h=c(S.seed)){return q(h,S.seed,"seed")}function k(h){return Ue(h)&&h.length===s.BYTES}function M(h,p){try{return!!e.fromBytes(h,p)}catch{return!1}}let V={getExtendedPublicKey:y,randomSecretKey:N,isValidSecretKey:k,isValidPublicKey:M,toMontgomery(h){let{y:p}=e.fromBytes(h),_=S.publicKey,D=_===32;if(!D&&_!==57)throw new Error("only defined for 25519 and 448");let A=D?i.div(ut+p,ut-p):i.div(p-ut,p+ut);return i.toBytes(A)},toMontgomerySecret(h){let p=S.secretKey;q(h,p);let _=t(h.subarray(0,p));return a(_).subarray(0,p)}};return Object.freeze({keygen:In(N,v),getPublicKey:v,sign:T,verify:w,utils:V,Point:e,lengths:S})}var Ld=BigInt(1),nc=BigInt(2);var Od=BigInt(5),kd=BigInt(8),Si=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),Kd={p:Si,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),h:kd,a:BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"),d:BigInt("0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3"),Gx:BigInt("0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a"),Gy:BigInt("0x6666666666666666666666666666666666666666666666666666666666666658")};function Vd(e){let t=BigInt(10),r=BigInt(20),n=BigInt(40),o=BigInt(80),i=Si,c=e*e%i*e%i,a=J(c,nc,i)*c%i,f=J(a,Ld,i)*e%i,u=J(f,Od,i)*f%i,l=J(u,t,i)*u%i,y=J(l,r,i)*l%i,v=J(y,n,i)*y%i,x=J(v,o,i)*v%i,T=J(x,o,i)*v%i,I=J(T,t,i)*u%i;return{pow_p_5_8:J(I,nc,i)*e%i,b2:c}}function Md(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}var oc=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");function Fd(e,t){let r=Si,n=ot(t*t*t,r),o=ot(n*n*t,r),i=Vd(e*o).pow_p_5_8,s=ot(e*n*i,r),c=ot(t*s*s,r),a=s,f=ot(s*oc,r),u=c===e,l=c===ot(-e,r),y=c===ot(-e*oc,r);return u&&(s=a),(l||y)&&(s=f),Za(s,r)&&(s=ot(-s,r)),{isValid:u||l,value:s}}var $d=ec(Kd,{uvRatio:Fd});function qd(e){return rc($d,Na,Object.assign({adjustScalarBytes:Md},e))}var ic=qd({});var $r=class extends Error{constructor(t="An error occurred while verifying a message"){super(t),this.name="VerificationError"}},Tn=class extends Error{constructor(t="Missing Web Crypto API"){super(t),this.name="WebCryptoMissingError"}};var sc={get(e=globalThis){let t=e.crypto;if(t?.subtle==null)throw new Tn("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p/blob/main/packages/crypto/README.md#web-crypto-api");return t}};var kt=sc;var Cn=32;var vi,Hd=(async()=>{try{return await kt.get().subtle.generateKey({name:"Ed25519"},!0,["sign","verify"]),!0}catch{return!1}})();async function zd(e,t,r){if(e.buffer instanceof ArrayBuffer){let n=await kt.get().subtle.importKey("raw",e.buffer,{name:"Ed25519"},!1,["verify"]);return await kt.get().subtle.verify({name:"Ed25519"},n,t,r instanceof Uint8Array?r:r.subarray())}throw new TypeError("WebCrypto does not support SharedArrayBuffer for Ed25519 keys")}function Gd(e,t,r){return ic.verify(t,r instanceof Uint8Array?r:r.subarray(),e)}async function ac(e,t,r){return vi==null&&(vi=await Hd),vi?zd(e,t,r):Gd(e,t,r)}function Bn(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var _n=class{type="Ed25519";raw;constructor(t){this.raw=Ai(t,Cn)}toMultihash(){return Bt.digest(er(this))}toCID(){return j.createV1(114,this.toMultihash())}toString(){return X.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Y(this.raw,t.raw)}verify(t,r,n){n?.signal?.throwIfAborted();let o=ac(this.raw,r,t);return Bn(o)?o.then(i=>(n?.signal?.throwIfAborted(),i)):o}};function Ii(e){return e=Ai(e,Cn),new _n(e)}function Ai(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new st(`Key must be a Uint8Array of length ${t}, got ${e.length}`);return e}var jd=Math.pow(2,7),Yd=Math.pow(2,14),Wd=Math.pow(2,21),Ti=Math.pow(2,28),Ci=Math.pow(2,35),Bi=Math.pow(2,42),_i=Math.pow(2,49),Q=128,xt=127;function Qt(e){if(e<jd)return 1;if(e<Yd)return 2;if(e<Wd)return 3;if(e<Ti)return 4;if(e<Ci)return 5;if(e<Bi)return 6;if(e<_i)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function qr(e,t,r=0){switch(Qt(e)){case 8:t[r++]=e&255|Q,e/=128;case 7:t[r++]=e&255|Q,e/=128;case 6:t[r++]=e&255|Q,e/=128;case 5:t[r++]=e&255|Q,e/=128;case 4:t[r++]=e&255|Q,e>>>=7;case 3:t[r++]=e&255|Q,e>>>=7;case 2:t[r++]=e&255|Q,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function Di(e,t){let r=e[t],n=0;if(n+=r&xt,r<Q||(r=e[t+1],n+=(r&xt)<<7,r<Q)||(r=e[t+2],n+=(r&xt)<<14,r<Q)||(r=e[t+3],n+=(r&xt)<<21,r<Q)||(r=e[t+4],n+=(r&xt)*Ti,r<Q)||(r=e[t+5],n+=(r&xt)*Ci,r<Q)||(r=e[t+6],n+=(r&xt)*Bi,r<Q)||(r=e[t+7],n+=(r&xt)*_i,r<Q))return n;throw new RangeError("Could not decode varint")}function Xd(e,t){let r=e.get(t),n=0;if(n+=r&xt,r<Q||(r=e.get(t+1),n+=(r&xt)<<7,r<Q)||(r=e.get(t+2),n+=(r&xt)<<14,r<Q)||(r=e.get(t+3),n+=(r&xt)<<21,r<Q)||(r=e.get(t+4),n+=(r&xt)*Ti,r<Q)||(r=e.get(t+5),n+=(r&xt)*Ci,r<Q)||(r=e.get(t+6),n+=(r&xt)*Bi,r<Q)||(r=e.get(t+7),n+=(r&xt)*_i,r<Q))return n;throw new RangeError("Could not decode varint")}function Ri(e,t=0){return e instanceof Uint8Array?Di(e,t):Xd(e,t)}var Pi=new Float32Array([-0]),Ie=new Uint8Array(Pi.buffer);function uc(e,t,r){Pi[0]=e,t[r]=Ie[0],t[r+1]=Ie[1],t[r+2]=Ie[2],t[r+3]=Ie[3]}function fc(e,t){return Ie[0]=e[t],Ie[1]=e[t+1],Ie[2]=e[t+2],Ie[3]=e[t+3],Pi[0]}var Ui=new Float64Array([-0]),bt=new Uint8Array(Ui.buffer);function lc(e,t,r){Ui[0]=e,t[r]=bt[0],t[r+1]=bt[1],t[r+2]=bt[2],t[r+3]=bt[3],t[r+4]=bt[4],t[r+5]=bt[5],t[r+6]=bt[6],t[r+7]=bt[7]}function dc(e,t){return bt[0]=e[t],bt[1]=e[t+1],bt[2]=e[t+2],bt[3]=e[t+3],bt[4]=e[t+4],bt[5]=e[t+5],bt[6]=e[t+6],bt[7]=e[t+7],Ui[0]}var Qd=BigInt(Number.MAX_SAFE_INTEGER),th=BigInt(Number.MIN_SAFE_INTEGER),Rt=class e{lo;hi;constructor(t,r){this.lo=t|0,this.hi=r|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(r+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 r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(BigInt(r)+(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,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?t<16384?t<128?1:2:t<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return Me;if(t<Qd&&t>th)return this.fromNumber(Number(t));let r=t<0n;r&&(t=-t);let n=t>>32n,o=t-(n<<32n);return r&&(n=~n|0n,o=~o|0n,++o>hc&&(o=0n,++n>hc&&(n=0n))),new e(Number(o),Number(n))}static fromNumber(t){if(t===0)return Me;let r=t<0;r&&(t=-t);let n=t>>>0,o=(t-n)/4294967296>>>0;return r&&(o=~o>>>0,n=~n>>>0,++n>4294967295&&(n=0,++o>4294967295&&(o=0))),new e(n,o)}static from(t){return typeof t=="number"?e.fromNumber(t):typeof t=="bigint"?e.fromBigInt(t):typeof t=="string"?e.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new e(t.low>>>0,t.high>>>0):Me}},Me=new Rt(0,0);Me.toBigInt=function(){return 0n};Me.zzEncode=Me.zzDecode=function(){return this};Me.length=function(){return 1};var hc=4294967296n;function pc(e){let t=0,r=0;for(let n=0;n<e.length;++n)r=e.charCodeAt(n),r<128?t+=1:r<2048?t+=2:(r&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function mc(e,t,r){if(r-t<1)return"";let o,i=[],s=0,c;for(;t<r;)c=e[t++],c<128?i[s++]=c:c>191&&c<224?i[s++]=(c&31)<<6|e[t++]&63:c>239&&c<365?(c=((c&7)<<18|(e[t++]&63)<<12|(e[t++]&63)<<6|e[t++]&63)-65536,i[s++]=55296+(c>>10),i[s++]=56320+(c&1023)):i[s++]=(c&15)<<12|(e[t++]&63)<<6|e[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 Ni(e,t,r){let n=r,o,i;for(let s=0;s<e.length;++s)o=e.charCodeAt(s),o<128?t[r++]=o:o<2048?(t[r++]=o>>6|192,t[r++]=o&63|128):(o&64512)===55296&&((i=e.charCodeAt(s+1))&64512)===56320?(o=65536+((o&1023)<<10)+(i&1023),++s,t[r++]=o>>18|240,t[r++]=o>>12&63|128,t[r++]=o>>6&63|128,t[r++]=o&63|128):(t[r++]=o>>12|224,t[r++]=o>>6&63|128,t[r++]=o&63|128);return r-n}function Ft(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function Dn(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var Li=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,Ft(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 Ft(this,4);return Dn(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Ft(this,4);return Dn(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Ft(this,4);let t=fc(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw Ft(this,4);let t=dc(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw Ft(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return mc(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw Ft(this,t);this.pos+=t}else do if(this.pos>=this.len)throw Ft(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),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*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;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw Ft(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,t}if(this.len-this.pos>4){for(;r<5;++r)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;r<5;++r){if(this.pos>=this.len)throw Ft(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw Ft(this,8);let t=Dn(this.buf,this.pos+=4),r=Dn(this.buf,this.pos+=4);return new Rt(t,r)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let t=Di(this.buf,this.pos);return this.pos+=Qt(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 Oi(e){return new Li(e instanceof Uint8Array?e:e.subarray())}function fr(e,t,r){let n=Oi(e);return t.decode(n,void 0,r)}function ki(e){let t=e??8192,r=t>>>1,n,o=t;return function(s){if(s<1||s>r)return _t(s);o+s>t&&(n=_t(t),o=0);let c=n.subarray(o,o+=s);return(o&7)!==0&&(o=(o|7)+1),c}}var Fe=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function Ki(){}var Mi=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},eh=ki();function rh(e){return globalThis.Buffer!=null?_t(e):eh(e)}var zr=class{len;head;tail;states;constructor(){this.len=0,this.head=new Fe(Ki,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Fe(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new Fi((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(Rn,10,Rt.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=Rt.fromBigInt(t);return this._push(Rn,r.length(),r)}uint64Number(t){return this._push(qr,Qt(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 r=Rt.fromBigInt(t).zzEncode();return this._push(Rn,r.length(),r)}sint64Number(t){let r=Rt.fromNumber(t).zzEncode();return this._push(Rn,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(Vi,1,t?1:0)}fixed32(t){return this._push(Hr,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=Rt.fromBigInt(t);return this._push(Hr,4,r.lo)._push(Hr,4,r.hi)}fixed64Number(t){let r=Rt.fromNumber(t);return this._push(Hr,4,r.lo)._push(Hr,4,r.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(uc,4,t)}double(t){return this._push(lc,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(Vi,1,0):this.uint32(r)._push(oh,r,t)}string(t){let r=pc(t);return r!==0?this.uint32(r)._push(Ni,r,t):this._push(Vi,1,0)}fork(){return this.states=new Mi(this),this.head=this.tail=new Fe(Ki,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 Fe(Ki,0,0),this.len=0),this}ldelim(){let t=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=r,this.len+=n),this}finish(){let t=this.head.next,r=rh(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function Vi(e,t,r){t[r]=e&255}function nh(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var Fi=class extends Fe{next;constructor(t,r){super(nh,t,r),this.next=void 0}};function Rn(e,t,r){for(;e.hi!==0;)t[r++]=e.lo&127|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[r++]=e.lo&127|128,e.lo=e.lo>>>7;t[r++]=e.lo}function Hr(e,t,r){t[r]=e&255,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}function oh(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(zr.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(ih,t,e),this},zr.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(sh,t,e),this});function ih(e,t,r){t.set(e,r)}function sh(e,t,r){e.length<40?Ni(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(H(e),r)}function $i(){return new zr}function lr(e,t){let r=$i();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var dr;(function(e){e[e.VARINT=0]="VARINT",e[e.BIT64=1]="BIT64",e[e.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",e[e.START_GROUP=3]="START_GROUP",e[e.END_GROUP=4]="END_GROUP",e[e.BIT32=5]="BIT32"})(dr||(dr={}));function Pn(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function Gr(e){function t(o){if(e[o.toString()]==null)throw new Error("Invalid enum value");return e[o]}let r=function(i,s){let c=t(i);s.int32(c)},n=function(i){let s=i.int32();return t(s)};return Pn("enum",dr.VARINT,r,n)}function hr(e,t){return Pn("message",dr.LENGTH_DELIMITED,e,t)}var it;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.secp256k1="secp256k1",e.ECDSA="ECDSA"})(it||(it={}));var qi;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.secp256k1=2]="secp256k1",e[e.ECDSA=3]="ECDSA"})(qi||(qi={}));(function(e){e.codec=()=>Gr(qi)})(it||(it={}));var te;(function(e){let t;e.codec=()=>(t==null&&(t=hr((r,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),it.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),o.lengthDelimited!==!1&&n.ldelim()},(r,n,o={})=>{let i={},s=n==null?r.len:r.pos+n;for(;r.pos<s;){let c=r.uint32();switch(c>>>3){case 1:{i.Type=it.codec().decode(r);break}case 2:{i.Data=r.bytes();break}default:{r.skipType(c&7);break}}}return i})),t),e.encode=r=>lr(r,e.codec()),e.decode=(r,n)=>fr(r,e.codec(),n)})(te||(te={}));var Hi;(function(e){let t;e.codec=()=>(t==null&&(t=hr((r,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),it.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),o.lengthDelimited!==!1&&n.ldelim()},(r,n,o={})=>{let i={},s=n==null?r.len:r.pos+n;for(;r.pos<s;){let c=r.uint32();switch(c>>>3){case 1:{i.Type=it.codec().decode(r);break}case 2:{i.Data=r.bytes();break}default:{r.skipType(c&7);break}}}return i})),t),e.encode=r=>lr(r,e.codec()),e.decode=(r,n)=>fr(r,e.codec(),n)})(Hi||(Hi={}));var jr={};vt(jr,{MAX_RSA_KEY_SIZE:()=>zi,generateRSAKeyPair:()=>Ec,jwkToJWKKeyPair:()=>Sc,jwkToPkcs1:()=>fh,jwkToPkix:()=>Yi,jwkToRSAPrivateKey:()=>Qi,pkcs1MessageToJwk:()=>Zi,pkcs1MessageToRSAPrivateKey:()=>Wi,pkcs1ToJwk:()=>uh,pkcs1ToRSAPrivateKey:()=>wc,pkixMessageToJwk:()=>ji,pkixMessageToRSAPublicKey:()=>Ji,pkixToJwk:()=>lh,pkixToRSAPublicKey:()=>Xi});var pr=class{type="RSA";jwk;_raw;_multihash;constructor(t,r){this.jwk=t,this._multihash=r}get raw(){return this._raw==null&&(this._raw=jr.jwkToPkix(this.jwk)),this._raw}toMultihash(){return this._multihash}toCID(){return j.createV1(114,this._multihash)}toString(){return X.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Y(this.raw,t.raw)}verify(t,r,n){return bc(this.jwk,r,t,n)}},Zr=class{type="RSA";jwk;_raw;publicKey;constructor(t,r){this.jwk=t,this.publicKey=r}get raw(){return this._raw==null&&(this._raw=jr.jwkToPkcs1(this.jwk)),this._raw}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Y(this.raw,t.raw)}sign(t,r){return xc(this.jwk,t,r)}};var zi=8192,Gi=18,ah=1062,ch=Uint8Array.from([48,13,6,9,42,134,72,134,247,13,1,1,1,5,0]);function uh(e){let t=se(e);return Zi(t)}function Zi(e){return{n:z(e[1],"base64url"),e:z(e[2],"base64url"),d:z(e[3],"base64url"),p:z(e[4],"base64url"),q:z(e[5],"base64url"),dp:z(e[6],"base64url"),dq:z(e[7],"base64url"),qi:z(e[8],"base64url"),kty:"RSA"}}function fh(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new st("JWK was missing components");return be([Tt(Uint8Array.from([0])),Tt(H(e.n,"base64url")),Tt(H(e.e,"base64url")),Tt(H(e.d,"base64url")),Tt(H(e.p,"base64url")),Tt(H(e.q,"base64url")),Tt(H(e.dp,"base64url")),Tt(H(e.dq,"base64url")),Tt(H(e.qi,"base64url"))]).subarray()}function lh(e){let t=se(e,{offset:0});return ji(t)}function ji(e){let t=se(e[1],{offset:0});return{kty:"RSA",n:z(t[0],"base64url"),e:z(t[1],"base64url")}}function Yi(e){if(e.n==null||e.e==null)throw new st("JWK was missing components");return be([ch,gn(be([Tt(H(e.n,"base64url")),Tt(H(e.e,"base64url"))]))]).subarray()}function wc(e){let t=se(e);return Wi(t)}function Wi(e){let t=Zi(e);return Qi(t)}function Xi(e,t){if(e.byteLength>=ah)throw new ze("Key size is too large");let r=se(e,{offset:0});return Ji(r,e,t)}function Ji(e,t,r){let n=ji(e);if(r==null){let o=or(te.encode({Type:it.RSA,Data:t}));r=Wt(Gi,o)}return new pr(n,r)}function Qi(e){if(Ac(e)>zi)throw new st("Key size is too large");let t=Sc(e),r=or(te.encode({Type:it.RSA,Data:Yi(t.publicKey)})),n=Wt(Gi,r);return new Zr(t.privateKey,new pr(t.publicKey,n))}async function Ec(e){if(e>zi)throw new st("Key size is too large");let t=await vc(e),r=or(te.encode({Type:it.RSA,Data:Yi(t.publicKey)})),n=Wt(Gi,r);return new Zr(t.privateKey,new pr(t.publicKey,n))}function Sc(e){if(e==null)throw new st("Missing key parameter");return{privateKey:e,publicKey:{kty:e.kty,n:e.n,e:e.e}}}async function vc(e,t){let r=await kt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]);t?.signal?.throwIfAborted();let n=await dh(r,t);return{privateKey:n[0],publicKey:n[1]}}async function xc(e,t,r){let n=await kt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]);r?.signal?.throwIfAborted();let o=await kt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},n,t instanceof Uint8Array?t:t.subarray());return r?.signal?.throwIfAborted(),new Uint8Array(o,0,o.byteLength)}async function bc(e,t,r,n){let o=await kt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);n?.signal?.throwIfAborted();let i=await kt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},o,t,r instanceof Uint8Array?r:r.subarray());return n?.signal?.throwIfAborted(),i}async function dh(e,t){if(e.privateKey==null||e.publicKey==null)throw new st("Private and public key are required");let r=await Promise.all([kt.get().subtle.exportKey("jwk",e.privateKey),kt.get().subtle.exportKey("jwk",e.publicKey)]);return t?.signal?.throwIfAborted(),r}function Ac(e){if(e.kty!=="RSA")throw new st("invalid key type");if(e.n==null)throw new st("invalid key modulus");return H(e.n,"base64url").length*8}var Un=class{oHash;iHash;blockLen;outputLen;finished=!1;destroyed=!1;constructor(t,r){if(xn(t),q(r,void 0,"key"),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 n=this.blockLen,o=new Uint8Array(n);o.set(r.length>n?t.create().update(r).digest():r);for(let i=0;i<o.length;i++)o[i]^=54;this.iHash.update(o),this.oHash=t.create();for(let i=0;i<o.length;i++)o[i]^=106;this.oHash.update(o),ce(o)}update(t){return rr(this),this.iHash.update(t),this}digestInto(t){rr(this),q(t,this.outputLen,"output"),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||=Object.create(Object.getPrototypeOf(this),{});let{oHash:r,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=r._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},ts=(e,t,r)=>new Un(e,t).update(r).digest();ts.create=(e,t)=>new Un(e,t);var Ic=(e,t)=>(e+(e>=0?t:-t)/Tc)/t;function hh(e,t,r){let[[n,o],[i,s]]=t,c=Ic(s*e,r),a=Ic(-o*e,r),f=e-c*n-a*i,u=-c*o-a*s,l=f<he,y=u<he;l&&(f=-f),y&&(u=-u);let v=Vr(Math.ceil(di(r)/2))+mr;if(f<he||f>=v||u<he||u>=v)throw new Error("splitScalar (endomorphism): failed, k="+e);return{k1neg:l,k1:f,k2neg:y,k2:u}}function rs(e){if(!["compact","recovered","der"].includes(e))throw new Error('Signature format must be "compact", "recovered", or "der"');return e}function es(e,t){let r={};for(let n of Object.keys(t))r[n]=e[n]===void 0?t[n]:e[n];return de(r.lowS,"lowS"),de(r.prehash,"prehash"),r.format!==void 0&&rs(r.format),r}var ns=class extends Error{constructor(t=""){super(t)}},Te={Err:ns,_tlv:{encode:(e,t)=>{let{Err:r}=Te;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(t.length&1)throw new r("tlv.encode: unpadded data");let n=t.length/2,o=kr(n);if(o.length/2&128)throw new r("tlv.encode: long form length too big");let i=n>127?kr(o.length/2|128):"";return kr(e)+i+o+t},decode(e,t){let{Err:r}=Te,n=0;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(t.length<2||t[n++]!==e)throw new r("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 r("tlv.decode(long): indefinite length not supported");if(a>4)throw new r("tlv.decode(long): byte length is too big");let f=t.subarray(n,n+a);if(f.length!==a)throw new r("tlv.decode: length bytes not complete");if(f[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let u of f)s=s<<8|u;if(n+=a,s<128)throw new r("tlv.decode(long): not minimal encoding")}let c=t.subarray(n,n+s);if(c.length!==s)throw new r("tlv.decode: wrong value length");return{v:c,l:t.subarray(n+s)}}},_int:{encode(e){let{Err:t}=Te;if(e<he)throw new t("integer: negative integers are not allowed");let r=kr(e);if(Number.parseInt(r[0],16)&8&&(r="00"+r),r.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return r},decode(e){let{Err:t}=Te;if(e[0]&128)throw new t("invalid signature integer: negative");if(e[0]===0&&!(e[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return ir(e)}},toSig(e){let{Err:t,_int:r,_tlv:n}=Te,o=q(e,void 0,"signature"),{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:f,l:u}=n.decode(2,a);if(u.length)throw new t("invalid signature: left bytes after parsing");return{r:r.decode(c),s:r.decode(f)}},hexFromSig(e){let{_tlv:t,_int:r}=Te,n=t.encode(2,r.encode(e.r)),o=t.encode(2,r.encode(e.s)),i=n+o;return t.encode(48,i)}},he=BigInt(0),mr=BigInt(1),Tc=BigInt(2),Nn=BigInt(3),ph=BigInt(4);function Cc(e,t={}){let r=An("weierstrass",e,t),{Fp:n,Fn:o}=r,i=r.CURVE,{h:s,n:c}=i;ve(t,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:a}=t;if(a&&(!n.is0(i.a)||typeof a.beta!="bigint"||!Array.isArray(a.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');let f=_c(n,o);function u(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function l(A,m,g){let{x:d,y:E}=m.toAffine(),R=n.toBytes(d);if(de(g,"isCompressed"),g){u();let P=!n.isOdd(E);return Ct(Bc(P),R)}else return Ct(Uint8Array.of(4),R,n.toBytes(E))}function y(A){q(A,void 0,"Point");let{publicKey:m,publicKeyUncompressed:g}=f,d=A.length,E=A[0],R=A.subarray(1);if(d===m&&(E===2||E===3)){let P=n.fromBytes(R);if(!n.isValid(P))throw new Error("bad point: is not on curve, wrong x");let L=T(P),O;try{O=n.sqrt(L)}catch(tt){let W=tt instanceof Error?": "+tt.message:"";throw new Error("bad point: is not on curve, sqrt error"+W)}u();let K=n.isOdd(O);return(E&1)===1!==K&&(O=n.neg(O)),{x:P,y:O}}else if(d===g&&E===4){let P=n.BYTES,L=n.fromBytes(R.subarray(0,P)),O=n.fromBytes(R.subarray(P,P*2));if(!I(L,O))throw new Error("bad point: is not on curve");return{x:L,y:O}}else throw new Error(`bad point: got length ${d}, expected compressed=${m} or uncompressed=${g}`)}let v=t.toBytes||l,x=t.fromBytes||y;function T(A){let m=n.sqr(A),g=n.mul(m,A);return n.add(n.add(g,n.mul(A,i.a)),i.b)}function I(A,m){let g=n.sqr(m),d=T(A);return n.eql(g,d)}if(!I(i.Gx,i.Gy))throw new Error("bad curve params: generator point");let w=n.mul(n.pow(i.a,Nn),ph),C=n.mul(n.sqr(i.b),BigInt(27));if(n.is0(n.add(w,C)))throw new Error("bad curve params: a or b");function S(A,m,g=!1){if(!n.isValid(m)||g&&n.is0(m))throw new Error(`bad point coordinate ${A}`);return m}function N(A){if(!(A instanceof p))throw new Error("Weierstrass Point expected")}function k(A){if(!a||!a.basises)throw new Error("no endo");return hh(A,a.basises,o.ORDER)}let M=sr((A,m)=>{let{X:g,Y:d,Z:E}=A;if(n.eql(E,n.ONE))return{x:g,y:d};let R=A.is0();m==null&&(m=R?n.ONE:n.inv(E));let P=n.mul(g,m),L=n.mul(d,m),O=n.mul(E,m);if(R)return{x:n.ZERO,y:n.ZERO};if(!n.eql(O,n.ONE))throw new Error("invZ was invalid");return{x:P,y:L}}),V=sr(A=>{if(A.is0()){if(t.allowInfinityPoint&&!n.is0(A.Y))return;throw new Error("bad point: ZERO")}let{x:m,y:g}=A.toAffine();if(!n.isValid(m)||!n.isValid(g))throw new Error("bad point: x or y not field elements");if(!I(m,g))throw new Error("bad point: equation left != right");if(!A.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function h(A,m,g,d,E){return g=new p(n.mul(g.X,A),g.Y,g.Z),m=Fr(d,m),g=Fr(E,g),m.add(g)}class p{static BASE=new p(i.Gx,i.Gy,n.ONE);static ZERO=new p(n.ZERO,n.ONE,n.ZERO);static Fp=n;static Fn=o;X;Y;Z;constructor(m,g,d){this.X=S("x",m),this.Y=S("y",g,!0),this.Z=S("z",d),Object.freeze(this)}static CURVE(){return i}static fromAffine(m){let{x:g,y:d}=m||{};if(!m||!n.isValid(g)||!n.isValid(d))throw new Error("invalid affine point");if(m instanceof p)throw new Error("projective point not allowed");return n.is0(g)&&n.is0(d)?p.ZERO:new p(g,d,n.ONE)}static fromBytes(m){let g=p.fromAffine(x(q(m,void 0,"point")));return g.assertValidity(),g}static fromHex(m){return p.fromBytes(fe(m))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(m=8,g=!0){return D.createCache(this,m),g||this.multiply(Nn),this}assertValidity(){V(this)}hasEvenY(){let{y:m}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(m)}equals(m){N(m);let{X:g,Y:d,Z:E}=this,{X:R,Y:P,Z:L}=m,O=n.eql(n.mul(g,L),n.mul(R,E)),K=n.eql(n.mul(d,L),n.mul(P,E));return O&&K}negate(){return new p(this.X,n.neg(this.Y),this.Z)}double(){let{a:m,b:g}=i,d=n.mul(g,Nn),{X:E,Y:R,Z:P}=this,L=n.ZERO,O=n.ZERO,K=n.ZERO,$=n.mul(E,E),tt=n.mul(R,R),W=n.mul(P,P),G=n.mul(E,R);return G=n.add(G,G),K=n.mul(E,P),K=n.add(K,K),L=n.mul(m,K),O=n.mul(d,W),O=n.add(L,O),L=n.sub(tt,O),O=n.add(tt,O),O=n.mul(L,O),L=n.mul(G,L),K=n.mul(d,K),W=n.mul(m,W),G=n.sub($,W),G=n.mul(m,G),G=n.add(G,K),K=n.add($,$),$=n.add(K,$),$=n.add($,W),$=n.mul($,G),O=n.add(O,$),W=n.mul(R,P),W=n.add(W,W),$=n.mul(W,G),L=n.sub(L,$),K=n.mul(W,tt),K=n.add(K,K),K=n.add(K,K),new p(L,O,K)}add(m){N(m);let{X:g,Y:d,Z:E}=this,{X:R,Y:P,Z:L}=m,O=n.ZERO,K=n.ZERO,$=n.ZERO,tt=i.a,W=n.mul(i.b,Nn),G=n.mul(g,R),et=n.mul(d,P),dt=n.mul(E,L),jt=n.add(g,d),rt=n.add(R,P);jt=n.mul(jt,rt),rt=n.add(G,et),jt=n.sub(jt,rt),rt=n.add(g,E);let gt=n.add(R,L);return rt=n.mul(rt,gt),gt=n.add(G,dt),rt=n.sub(rt,gt),gt=n.add(d,E),O=n.add(P,L),gt=n.mul(gt,O),O=n.add(et,dt),gt=n.sub(gt,O),$=n.mul(tt,rt),O=n.mul(W,dt),$=n.add(O,$),O=n.sub(et,$),$=n.add(et,$),K=n.mul(O,$),et=n.add(G,G),et=n.add(et,G),dt=n.mul(tt,dt),rt=n.mul(W,rt),et=n.add(et,dt),dt=n.sub(G,dt),dt=n.mul(tt,dt),rt=n.add(rt,dt),G=n.mul(et,rt),K=n.add(K,G),G=n.mul(gt,rt),O=n.mul(jt,O),O=n.sub(O,G),G=n.mul(jt,et),$=n.mul(gt,$),$=n.add($,G),new p(O,K,$)}subtract(m){return this.add(m.negate())}is0(){return this.equals(p.ZERO)}multiply(m){let{endo:g}=t;if(!o.isValidNot0(m))throw new Error("invalid scalar: out of range");let d,E,R=P=>D.cached(this,P,L=>Ve(p,L));if(g){let{k1neg:P,k1:L,k2neg:O,k2:K}=k(m),{p:$,f:tt}=R(L),{p:W,f:G}=R(K);E=tt.add(G),d=h(g.beta,$,W,P,O)}else{let{p:P,f:L}=R(m);d=P,E=L}return Ve(p,[d,E])[0]}multiplyUnsafe(m){let{endo:g}=t,d=this;if(!o.isValid(m))throw new Error("invalid scalar: out of range");if(m===he||d.is0())return p.ZERO;if(m===mr)return d;if(D.hasCache(this))return this.multiply(m);if(g){let{k1neg:E,k1:R,k2neg:P,k2:L}=k(m),{p1:O,p2:K}=tc(p,d,R,L);return h(g.beta,O,K,E,P)}else return D.unsafe(d,m)}toAffine(m){return M(this,m)}isTorsionFree(){let{isTorsionFree:m}=t;return s===mr?!0:m?m(p,this):D.unsafe(this,c).is0()}clearCofactor(){let{clearCofactor:m}=t;return s===mr?this:m?m(p,this):this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(m=!0){return de(m,"isCompressed"),this.assertValidity(),v(p,this,m)}toHex(m=!0){return ue(this.toBytes(m))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let _=o.BITS,D=new ur(p,t.endo?Math.ceil(_/2):_);return p.BASE.precompute(8),p}function Bc(e){return Uint8Array.of(e?2:3)}function _c(e,t){return{secretKey:t.BYTES,publicKey:1+e.BYTES,publicKeyUncompressed:1+2*e.BYTES,publicKeyHasPrefix:!0,signature:2*t.BYTES}}function mh(e,t={}){let{Fn:r}=e,n=t.randomBytes||nr,o=Object.assign(_c(e.Fp,r),{seed:yi(r.ORDER)});function i(v){try{let x=r.fromBytes(v);return r.isValidNot0(x)}catch{return!1}}function s(v,x){let{publicKey:T,publicKeyUncompressed:I}=o;try{let w=v.length;return x===!0&&w!==T||x===!1&&w!==I?!1:!!e.fromBytes(v)}catch{return!1}}function c(v=n(o.seed)){return gi(q(v,o.seed,"seed"),r.ORDER)}function a(v,x=!0){return e.BASE.multiply(r.fromBytes(v)).toBytes(x)}function f(v){let{secretKey:x,publicKey:T,publicKeyUncompressed:I}=o;if(!Ue(v)||"_lengths"in r&&r._lengths||x===T)return;let w=q(v,void 0,"key").length;return w===T||w===I}function u(v,x,T=!0){if(f(v)===!0)throw new Error("first arg must be private key");if(f(x)===!1)throw new Error("second arg must be public key");let I=r.fromBytes(v);return e.fromBytes(x).multiply(I).toBytes(T)}let l={isValidSecretKey:i,isValidPublicKey:s,randomSecretKey:c},y=In(c,a);return Object.freeze({getPublicKey:a,getSharedSecret:u,keygen:y,Point:e,utils:l,lengths:o})}function Dc(e,t,r={}){xn(t),ve(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),r=Object.assign({},r);let n=r.randomBytes||nr,o=r.hmac||((g,d)=>ts(t,g,d)),{Fp:i,Fn:s}=e,{ORDER:c,BITS:a}=s,{keygen:f,getPublicKey:u,getSharedSecret:l,utils:y,lengths:v}=mh(e,r),x={prehash:!0,lowS:typeof r.lowS=="boolean"?r.lowS:!0,format:"compact",extraEntropy:!1},T=c*Tc<i.ORDER;function I(g){let d=c>>mr;return g>d}function w(g,d){if(!s.isValidNot0(d))throw new Error(`invalid signature ${g}: out of range 1..Point.Fn.ORDER`);return d}function C(){if(T)throw new Error('"recovered" sig type is not supported for cofactor >2 curves')}function S(g,d){rs(d);let E=v.signature,R=d==="compact"?E:d==="recovered"?E+1:void 0;return q(g,R)}class N{r;s;recovery;constructor(d,E,R){if(this.r=w("r",d),this.s=w("s",E),R!=null){if(C(),![0,1,2,3].includes(R))throw new Error("invalid recovery id");this.recovery=R}Object.freeze(this)}static fromBytes(d,E=x.format){S(d,E);let R;if(E==="der"){let{r:K,s:$}=Te.toSig(q(d));return new N(K,$)}E==="recovered"&&(R=d[0],E="compact",d=d.subarray(1));let P=v.signature/2,L=d.subarray(0,P),O=d.subarray(P,P*2);return new N(s.fromBytes(L),s.fromBytes(O),R)}static fromHex(d,E){return this.fromBytes(fe(d),E)}assertRecovery(){let{recovery:d}=this;if(d==null)throw new Error("invalid recovery id: must be present");return d}addRecoveryBit(d){return new N(this.r,this.s,d)}recoverPublicKey(d){let{r:E,s:R}=this,P=this.assertRecovery(),L=P===2||P===3?E+c:E;if(!i.isValid(L))throw new Error("invalid recovery id: sig.r+curve.n != R.x");let O=i.toBytes(L),K=e.fromBytes(Ct(Bc((P&1)===0),O)),$=s.inv(L),tt=M(q(d,void 0,"msgHash")),W=s.create(-tt*$),G=s.create(R*$),et=e.BASE.multiplyUnsafe(W).add(K.multiplyUnsafe(G));if(et.is0())throw new Error("invalid recovery: point at infinify");return et.assertValidity(),et}hasHighS(){return I(this.s)}toBytes(d=x.format){if(rs(d),d==="der")return fe(Te.hexFromSig(this));let{r:E,s:R}=this,P=s.toBytes(E),L=s.toBytes(R);return d==="recovered"?(C(),Ct(Uint8Array.of(this.assertRecovery()),P,L)):Ct(P,L)}toHex(d){return ue(this.toBytes(d))}}let k=r.bits2int||function(d){if(d.length>8192)throw new Error("input is too large");let E=ir(d),R=d.length*8-a;return R>0?E>>BigInt(R):E},M=r.bits2int_modN||function(d){return s.create(k(d))},V=Vr(a);function h(g){return Kr("num < 2^"+a,g,he,V),s.toBytes(g)}function p(g,d){return q(g,void 0,"message"),d?q(t(g),void 0,"prehashed message"):g}function _(g,d,E){let{lowS:R,prehash:P,extraEntropy:L}=es(E,x);g=p(g,P);let O=M(g),K=s.fromBytes(d);if(!s.isValidNot0(K))throw new Error("invalid private key");let $=[h(K),h(O)];if(L!=null&&L!==!1){let et=L===!0?n(v.secretKey):L;$.push(q(et,void 0,"extraEntropy"))}let tt=Ct(...$),W=O;function G(et){let dt=k(et);if(!s.isValidNot0(dt))return;let jt=s.inv(dt),rt=e.BASE.multiply(dt).toAffine(),gt=s.create(rt.x);if(gt===he)return;let fn=s.create(jt*s.create(W+gt*K));if(fn===he)return;let Vs=(rt.x===gt?0:2)|Number(rt.y&mr),Ms=fn;return R&&I(fn)&&(Ms=s.neg(fn),Vs^=1),new N(gt,Ms,T?void 0:Vs)}return{seed:tt,k2sig:G}}function D(g,d,E={}){let{seed:R,k2sig:P}=_(g,d,E);return ka(t.outputLen,s.BYTES,o)(R,P).toBytes(E.format)}function A(g,d,E,R={}){let{lowS:P,prehash:L,format:O}=es(R,x);if(E=q(E,void 0,"publicKey"),d=p(d,L),!Ue(g)){let K=g instanceof N?", use sig.toBytes()":"";throw new Error("verify expects Uint8Array signature"+K)}S(g,O);try{let K=N.fromBytes(g,O),$=e.fromBytes(E);if(P&&K.hasHighS())return!1;let{r:tt,s:W}=K,G=M(d),et=s.inv(W),dt=s.create(G*et),jt=s.create(tt*et),rt=e.BASE.multiplyUnsafe(dt).add($.multiplyUnsafe(jt));return rt.is0()?!1:s.create(rt.x)===tt}catch{return!1}}function m(g,d,E={}){let{prehash:R}=es(E,x);return d=p(d,R),N.fromBytes(g,"recovered").recoverPublicKey(d).toBytes()}return Object.freeze({keygen:f,getPublicKey:u,getSharedSecret:l,utils:y,lengths:v,Point:e,sign:D,verify:A,recoverPublicKey:m,Signature:N,hash:t})}var is={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},yh={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]};var Rc=BigInt(2);function gh(e){let t=is.p,r=BigInt(3),n=BigInt(6),o=BigInt(11),i=BigInt(22),s=BigInt(23),c=BigInt(44),a=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=J(u,r,t)*u%t,y=J(l,r,t)*u%t,v=J(y,Rc,t)*f%t,x=J(v,o,t)*v%t,T=J(x,i,t)*x%t,I=J(T,c,t)*T%t,w=J(I,a,t)*I%t,C=J(w,c,t)*T%t,S=J(C,r,t)*u%t,N=J(S,s,t)*x%t,k=J(N,n,t)*f%t,M=J(k,Rc,t);if(!os.eql(os.sqr(M),e))throw new Error("Cannot find square root");return M}var os=ar(is.p,{sqrt:gh}),xh=Cc(is,{Fp:os,endo:yh}),yr=Dc(xh,or);function Pc(e,t,r,n){let o=Dr.digest(r instanceof Uint8Array?r:r.subarray());if(Bn(o))return o.then(({digest:i})=>(n?.signal?.throwIfAborted(),yr.verify(t,i,e,{prehash:!1,format:"der"}))).catch(i=>{throw i.name==="AbortError"?i:new $r(String(i))});try{return n?.signal?.throwIfAborted(),yr.verify(t,o.digest,e,{prehash:!1,format:"der"})}catch(i){throw new $r(String(i))}}var Ln=class{type="secp256k1";raw;_key;constructor(t){this._key=Nc(t),this.raw=Uc(this._key)}toMultihash(){return Bt.digest(er(this))}toCID(){return j.createV1(114,this.toMultihash())}toString(){return X.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Y(this.raw,t.raw)}verify(t,r,n){return Pc(this._key,r,t,n)}};function ss(e){return new Ln(e)}function Uc(e){return yr.Point.fromBytes(e).toBytes()}function Nc(e){try{return yr.Point.fromBytes(e),e}catch(t){throw new ze(String(t))}}function Lc(e,t){let{Type:r,Data:n}=te.decode(e),o=n??new Uint8Array;switch(r){case it.RSA:return Xi(o,t);case it.Ed25519:return Ii(o);case it.secp256k1:return ss(o);case it.ECDSA:return ti(o);default:throw new Ze}}function On(e){let{Type:t,Data:r}=te.decode(e.digest),n=r??new Uint8Array;switch(t){case it.Ed25519:return Ii(n);case it.secp256k1:return ss(n);case it.ECDSA:return ti(n);default:throw new Ze}}function er(e){return te.encode({Type:it[e.type],Data:e.raw})}var Oc=Symbol.for("nodejs.util.inspect.custom"),bh=114,Yr=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()})`}[vo]=!0;toString(){return this.string==null&&(this.string=X.encode(this.multihash.bytes).slice(1)),this.string}toMultihash(){return this.multihash}toCID(){return j.createV1(bh,this.multihash)}toJSON(){return this.toString()}equals(t){if(t==null)return!1;if(t instanceof Uint8Array)return Y(this.multihash.bytes,t);if(typeof t=="string")return this.toString()===t;if(t?.toMultihash()?.bytes!=null)return Y(this.multihash.bytes,t.toMultihash().bytes);throw new Error("not valid Id")}[Oc](){return`PeerId(${this.toString()})`}},kn=class extends Yr{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},Kn=class extends Yr{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.publicKey}},Vn=class extends Yr{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.publicKey}},wh=2336,Wr=class{type="url";multihash;publicKey;url;constructor(t){this.url=t.toString(),this.multihash=Bt.digest(H(this.url))}[Oc](){return`PeerId(${this.url})`}[vo]=!0;toString(){return this.toCID().toString()}toMultihash(){return this.multihash}toCID(){return j.createV1(wh,this.toMultihash())}toJSON(){return this.toString()}equals(t){return t==null?!1:(t instanceof Uint8Array&&(t=z(t)),t.toString()===this.toString())}};var Eh=114,kc=2336;function Kc(e,t){let r;if(e.charAt(0)==="1"||e.charAt(0)==="Q")r=Re(X.decode(`z${e}`));else{if(e.startsWith("k51qzi5uqu5")||e.startsWith("kzwfwjn5ji4")||e.startsWith("k2k4r8")||e.startsWith("bafz"))return as(j.parse(e));if(t==null)throw new st('Please pass a multibase decoder for strings that do not start with "1" or "Q"');r=Re(t.decode(e))}return Vc(r)}function Vc(e){if(vh(e))return new kn({multihash:e});if(Sh(e))try{let t=On(e);if(t.type==="Ed25519")return new Kn({multihash:e,publicKey:t});if(t.type==="secp256k1")return new Vn({multihash:e,publicKey:t})}catch{let r=z(e.digest);return new Wr(new URL(r))}throw new Ge("Supplied PeerID Multihash is invalid")}function as(e){if(e?.multihash==null||e.version==null||e.version===1&&e.code!==Eh&&e.code!==kc)throw new dn("Supplied PeerID CID is invalid");if(e.code===kc){let t=z(e.multihash.digest);return new Wr(new URL(t))}return Vc(e.multihash)}function Sh(e){return e.code===Bt.code}function vh(e){return e.code===Dr.code}var pt=class extends Error{static name="InvalidMultiaddrError";name="InvalidMultiaddrError"},pe=class extends Error{static name="ValidationError";name="ValidationError"},Mn=class extends Error{static name="InvalidParametersError";name="InvalidParametersError"},Fn=class extends Error{static name="UnknownProtocolError";name="UnknownProtocolError"};var $n=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let r=this.index,n=t();return n===void 0&&(this.index=r),n}parseWith(t){let r=t();if(this.index===this.input.length)return r}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 r=this.readChar();if(r===t)return r})}readSeparator(t,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,r,n,o){return this.readAtomically(()=>{let i=0,s=0,c=this.peekChar();if(c===void 0)return;let a=c==="0",f=2**(8*o)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let y=Number.parseInt(l,t);if(!Number.isNaN(y))return y});if(u===void 0)break;if(i*=t,i+=u,i>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&a&&s>1?void 0:i})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let r=0;r<t.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[r]=n}return t})}readIPv6Addr(){let t=r=>{for(let n=0;n<r.length/2;n++){let o=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[o]=s[0],r[o+1]=s[1],r[o+2]=s[2],r[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];r[o]=i>>8,r[o+1]=i&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,o]=t(r);if(n===16)return r;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 r.set(i.subarray(0,c),16-c),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Ah=45,Ih=15,qn=new $n;function Mc(e){if(!(e.length>Ih))return qn.new(e).parseWith(()=>qn.readIPv4Addr())}function Fc(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Ah))return qn.new(e).parseWith(()=>qn.readIPv6Addr())}function Hn(e){return!!Mc(e)}function $c(e){return!!Fc(e)}function us(e){return t=>z(t,e)}function fs(e){return t=>H(t,e)}function gr(e){return new DataView(e.buffer).getUint16(e.byteOffset).toString()}function $e(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,typeof e=="string"?parseInt(e):e),new Uint8Array(t)}function qc(e){let t=e.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 r=H(t[0],"base32"),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let o=$e(n);return Ot([r,o],r.length+o.length)}function Hc(e){let t=e.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 r=Yt.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=$e(n);return Ot([r,o],r.length+o.length)}function ls(e){let t=e.subarray(0,e.length-2),r=e.subarray(e.length-2),n=z(t,"base32"),o=gr(r);return`${n}:${o}`}var ds=function(e){e=e.toString().trim();let t=new Uint8Array(4);return e.split(/\./g).forEach((r,n)=>{let o=parseInt(r,10);if(isNaN(o)||o<0||o>255)throw new pt("Invalid byte value in IP address");t[n]=o}),t},zc=function(e){let t=0;e=e.toString().trim();let r=e.split(":",8),n;for(n=0;n<r.length;n++){let i=Hn(r[n]),s;i&&(s=ds(r[n]),r[n]=z(s.subarray(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,z(s.subarray(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let i=[n,1];for(n=9-r.length;n>0;n--)i.push("0");r.splice.apply(r,i)}let o=new Uint8Array(t+16);for(n=0;n<r.length;n++){r[n]===""&&(r[n]="0");let i=parseInt(r[n],16);if(isNaN(i)||i<0||i>65535)throw new pt("Invalid byte value in IP address");o[t++]=i>>8&255,o[t++]=i&255}return o},Gc=function(e){if(e.byteLength!==4)throw new pt("IPv4 address was incorrect length");let t=[];for(let r=0;r<e.byteLength;r++)t.push(e[r]);return t.join(".")},Zc=function(e){if(e.byteLength!==16)throw new pt("IPv6 address was incorrect length");let t=[];for(let n=0;n<e.byteLength;n+=2){let o=e[n],i=e[n+1],s=`${o.toString(16).padStart(2,"0")}${i.toString(16).padStart(2,"0")}`;t.push(s)}let r=t.join(":");try{let n=new URL(`http://[${r}]`);return n.hostname.substring(1,n.hostname.length-1)}catch{throw new pt(`Invalid IPv6 address "${r}"`)}};function jc(e){try{let t=new URL(`http://[${e}]`);return t.hostname.substring(1,t.hostname.length-1)}catch{throw new pt(`Invalid IPv6 address "${e}"`)}}var cs=Object.values(Rr).map(e=>e.decoder),Th=(function(){let e=cs[0].or(cs[1]);return cs.slice(2).forEach(t=>e=e.or(t)),e})();function Yc(e){return Th.decode(e)}function Wc(e){return t=>e.encoder.encode(t)}function Ch(e){if(parseInt(e).toString()!==e)throw new pe("Value must be an integer")}function Bh(e){if(e<0)throw new pe("Value must be a positive integer, or zero")}function _h(e){return t=>{if(t>e)throw new pe(`Value must be smaller than or equal to ${e}`)}}function Dh(...e){return t=>{for(let r of e)r(t)}}var Xr=Dh(Ch,Bh,_h(65535));var ft=-1,hs=class{protocolsByCode=new Map;protocolsByName=new Map;getProtocol(t){let r;if(typeof t=="string"?r=this.protocolsByName.get(t):r=this.protocolsByCode.get(t),r==null)throw new Fn(`Protocol ${t} was unknown`);return r}addProtocol(t){this.protocolsByCode.set(t.code,t),this.protocolsByName.set(t.name,t),t.aliases?.forEach(r=>{this.protocolsByName.set(r,t)})}removeProtocol(t){let r=this.protocolsByCode.get(t);r!=null&&(this.protocolsByCode.delete(r.code),this.protocolsByName.delete(r.name),r.aliases?.forEach(n=>{this.protocolsByName.delete(n)}))}},me=new hs,gp=[{code:4,name:"ip4",size:32,valueToBytes:ds,bytesToValue:Gc,validate:e=>{if(!Hn(e))throw new pe(`Invalid IPv4 address "${e}"`)}},{code:6,name:"tcp",size:16,valueToBytes:$e,bytesToValue:gr,validate:Xr},{code:273,name:"udp",size:16,valueToBytes:$e,bytesToValue:gr,validate:Xr},{code:33,name:"dccp",size:16,valueToBytes:$e,bytesToValue:gr,validate:Xr},{code:41,name:"ip6",size:128,valueToBytes:zc,bytesToValue:Zc,stringToValue:jc,validate:e=>{if(!$c(e))throw new pe(`Invalid IPv6 address "${e}"`)}},{code:42,name:"ip6zone",size:ft},{code:43,name:"ipcidr",size:8,bytesToValue:us("base10"),valueToBytes:fs("base10")},{code:53,name:"dns",size:ft},{code:54,name:"dns4",size:ft},{code:55,name:"dns6",size:ft},{code:56,name:"dnsaddr",size:ft},{code:132,name:"sctp",size:16,valueToBytes:$e,bytesToValue:gr,validate:Xr},{code:301,name:"udt"},{code:302,name:"utp"},{code:400,name:"unix",size:ft,stringToValue:e=>decodeURIComponent(e),valueToString:e=>encodeURIComponent(e)},{code:421,name:"p2p",aliases:["ipfs"],size:ft,bytesToValue:us("base58btc"),valueToBytes:e=>e.startsWith("Q")||e.startsWith("1")?fs("base58btc")(e):j.parse(e).multihash.bytes},{code:444,name:"onion",size:96,bytesToValue:ls,valueToBytes:qc},{code:445,name:"onion3",size:296,bytesToValue:ls,valueToBytes:Hc},{code:446,name:"garlic64",size:ft},{code:447,name:"garlic32",size:ft},{code:448,name:"tls"},{code:449,name:"sni",size:ft},{code:454,name:"noise"},{code:460,name:"quic"},{code:461,name:"quic-v1"},{code:465,name:"webtransport"},{code:466,name:"certhash",size:ft,bytesToValue:Wc(Ro),valueToBytes:Yc},{code:480,name:"http"},{code:481,name:"http-path",size:ft,stringToValue:e=>`/${decodeURIComponent(e)}`,valueToString:e=>encodeURIComponent(e.substring(1))},{code:443,name:"https"},{code:477,name:"ws"},{code:478,name:"wss"},{code:479,name:"p2p-websocket-star"},{code:277,name:"p2p-stardust"},{code:275,name:"p2p-webrtc-star"},{code:276,name:"p2p-webrtc-direct"},{code:280,name:"webrtc-direct"},{code:281,name:"webrtc"},{code:290,name:"p2p-circuit"},{code:777,name:"memory",size:ft}];gp.forEach(e=>{me.addProtocol(e)});function Xc(e){let t=[],r=0;for(;r<e.length;){let n=Ri(e,r),o=me.getProtocol(n),i=Qt(n),s=xp(o,e,r+i),c=0;s>0&&o.size===ft&&(c=Qt(s));let a=i+c+s,f={code:n,name:o.name,bytes:e.subarray(r,r+a)};if(s>0){let u=r+i+c,l=e.subarray(u,u+s);f.value=o.bytesToValue?.(l)??z(l)}t.push(f),r+=a}return t}function Jc(e){let t=0,r=[];for(let n of e){if(n.bytes==null){let o=me.getProtocol(n.code),i=Qt(n.code),s,c=0,a=0;n.value!=null&&(s=o.valueToBytes?.(n.value)??H(n.value),c=s.byteLength,o.size===ft&&(a=Qt(c)));let f=new Uint8Array(i+a+c),u=0;qr(n.code,f,u),u+=i,s!=null&&(o.size===ft&&(qr(c,f,u),u+=a),f.set(s,u)),n.bytes=f}r.push(n.bytes),t+=n.bytes.byteLength}return Ot(r,t)}function Qc(e){if(e.charAt(0)!=="/")throw new pt('String multiaddr must start with "/"');let t=[],r="protocol",n="",o="";for(let i=1;i<e.length;i++){let s=e.charAt(i);s!=="/"&&(r==="protocol"?o+=e.charAt(i):n+=e.charAt(i));let c=i===e.length-1;if(s==="/"||c){let a=me.getProtocol(o);if(r==="protocol"){if(a.size==null||a.size===0){t.push({code:a.code,name:a.name}),n="",o="",r="protocol";continue}else if(c)throw new pt(`Component ${o} was missing value`);r="value"}else if(r==="value"){let f={code:a.code,name:a.name};if(a.size!=null&&a.size!==0){if(n==="")throw new pt(`Component ${o} was missing value`);f.value=a.stringToValue?.(n)??n}t.push(f),n="",o="",r="protocol"}}}if(o!==""&&n!=="")throw new pt("Incomplete multiaddr");return t}function tu(e){return`/${e.flatMap(t=>{if(t.value==null)return t.name;let r=me.getProtocol(t.code);if(r==null)throw new pt(`Unknown protocol code ${t.code}`);return[t.name,r.valueToString?.(t.value)??t.value]}).join("/")}`}function xp(e,t,r){return e.size==null||e.size===0?0:e.size>0?e.size/8:Ri(t,r)}var bp=Symbol.for("nodejs.util.inspect.custom"),ps=Symbol.for("@multiformats/multiaddr");function wp(e){if(e==null&&(e="/"),eu(e))return e.getComponents();if(e instanceof Uint8Array)return Xc(e);if(typeof e=="string")return e=e.replace(/\/(\/)+/,"/").replace(/(\/)+$/,""),e===""&&(e="/"),Qc(e);if(Array.isArray(e))return e;throw new pt("Must be a string, Uint8Array, Component[], or another Multiaddr")}var zn=class e{[ps]=!0;#t;#n;#r;constructor(t="/",r={}){this.#t=wp(t),r.validate!==!1&&Ep(this)}get bytes(){return this.#r==null&&(this.#r=Jc(this.#t)),this.#r}toString(){return this.#n==null&&(this.#n=tu(this.#t)),this.#n}toJSON(){return this.toString()}getComponents(){return[...this.#t.map(t=>({...t}))]}encapsulate(t){let r=new e(t);return new e([...this.#t,...r.getComponents()],{validate:!1})}decapsulate(t){let r=t.toString(),n=this.toString(),o=n.lastIndexOf(r);if(o<0)throw new Mn(`Address ${this.toString()} does not contain subaddress: ${r}`);return new e(n.slice(0,o),{validate:!1})}decapsulateCode(t){let r;for(let n=this.#t.length-1;n>-1;n--)if(this.#t[n].code===t){r=n;break}return new e(this.#t.slice(0,r),{validate:!1})}equals(t){return Y(this.bytes,t.bytes)}[bp](){return`Multiaddr(${this.toString()})`}};function Ep(e){e.getComponents().forEach(t=>{let r=me.getProtocol(t.code);t.value!=null&&r.validate?.(t.value)})}function eu(e){return!!e?.[ps]}function Gn(e){return new zn(e)}function Jr(e){let t=new globalThis.AbortController;function r(){t.abort();for(let i of e)i?.removeEventListener!=null&&i.removeEventListener("abort",r)}for(let i of e){if(i?.aborted===!0){r();break}i?.addEventListener!=null&&i.addEventListener("abort",r)}function n(){for(let i of e)i?.removeEventListener!=null&&i.removeEventListener("abort",r)}let o=t.signal;return o.clear=n,o}async function*Zn(e,t={}){let r=e.getReader();try{for(;;){let n=await r.read();if(n.done)return;yield n.value}}finally{t.preventCancel!==!0&&await r.cancel(),r.releaseLock()}}var e0=So(ys(),1);var $t=class extends Error{static name="SignatureVerificationError";constructor(t="Record signature verification failed"){super(t),this.name="SignatureVerificationError"}},jn=class extends Error{static name="RecordExpiredError";constructor(t="Record has expired"){super(t),this.name="RecordExpiredError"}},xr=class extends Error{static name="UnsupportedValidityError";constructor(t="The validity type is unsupported"){super(t),this.name="UnsupportedValidityError"}},Yn=class extends Error{static name="RecordTooLargeError";constructor(t="The record is too large"){super(t),this.name="RecordTooLargeError"}},Wn=class extends Error{static name="InvalidValueError";constructor(t="Value must be a valid content path starting with /"){super(t),this.name="InvalidValueError"}},Xn=class extends Error{static name="InvalidRecordDataError";constructor(t="Invalid record data"){super(t),this.name="InvalidRecordDataError"}},Qr=class extends Error{static name="InvalidEmbeddedPublicKeyError";constructor(t="Invalid embedded public key"){super(t),this.name="InvalidEmbeddedPublicKeyError"}};var qt;(function(e){let t;(function(o){o.EOL="EOL"})(t=e.ValidityType||(e.ValidityType={}));let r;(function(o){o[o.EOL=0]="EOL"})(r||(r={})),(function(o){o.codec=()=>Gr(r)})(t=e.ValidityType||(e.ValidityType={}));let n;e.codec=()=>(n==null&&(n=hr((o,i,s={})=>{s.lengthDelimited!==!1&&i.fork(),o.value!=null&&(i.uint32(10),i.bytes(o.value)),o.signatureV1!=null&&(i.uint32(18),i.bytes(o.signatureV1)),o.validityType!=null&&(i.uint32(24),e.ValidityType.codec().encode(o.validityType,i)),o.validity!=null&&(i.uint32(34),i.bytes(o.validity)),o.sequence!=null&&(i.uint32(40),i.uint64(o.sequence)),o.ttl!=null&&(i.uint32(48),i.uint64(o.ttl)),o.pubKey!=null&&(i.uint32(58),i.bytes(o.pubKey)),o.signatureV2!=null&&(i.uint32(66),i.bytes(o.signatureV2)),o.data!=null&&(i.uint32(74),i.bytes(o.data)),s.lengthDelimited!==!1&&i.ldelim()},(o,i,s={})=>{let c={},a=i==null?o.len:o.pos+i;for(;o.pos<a;){let f=o.uint32();switch(f>>>3){case 1:{c.value=o.bytes();break}case 2:{c.signatureV1=o.bytes();break}case 3:{c.validityType=e.ValidityType.codec().decode(o);break}case 4:{c.validity=o.bytes();break}case 5:{c.sequence=o.uint64();break}case 6:{c.ttl=o.uint64();break}case 7:{c.pubKey=o.bytes();break}case 8:{c.signatureV2=o.bytes();break}case 9:{c.data=o.bytes();break}default:{o.skipType(f&7);break}}}return c})),n),e.encode=o=>lr(o,e.codec()),e.decode=(o,i)=>fr(o,e.codec(),i)})(qt||(qt={}));var Sp=["string","number","bigint","symbol"],vp=["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 ru(e){if(e===null)return"null";if(e===void 0)return"undefined";if(e===!0||e===!1)return"boolean";let t=typeof e;if(Sp.includes(t))return t;if(t==="function")return"Function";if(Array.isArray(e))return"Array";if(Ap(e))return"Buffer";let r=Ip(e);return r||"Object"}function Ap(e){return e&&e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer.call(null,e)}function Ip(e){let t=Object.prototype.toString.call(e).slice(8,-1);if(vp.includes(t))return t}var b=class{constructor(t,r,n){this.major=t,this.majorEncoded=t<<5,this.name=r,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(t){return this.major<t.major?-1:this.major>t.major?1:0}};b.uint=new b(0,"uint",!0);b.negint=new b(1,"negint",!0);b.bytes=new b(2,"bytes",!0);b.string=new b(3,"string",!0);b.array=new b(4,"array",!1);b.map=new b(5,"map",!1);b.tag=new b(6,"tag",!1);b.float=new b(7,"float",!0);b.false=new b(7,"false",!0);b.true=new b(7,"true",!0);b.null=new b(7,"null",!0);b.undefined=new b(7,"undefined",!0);b.break=new b(7,"break",!0);var U=class{constructor(t,r,n){this.type=t,this.value=r,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var br=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",Tp=new TextDecoder,Cp=new TextEncoder;function Jn(e){return br&&globalThis.Buffer.isBuffer(e)}function su(e){return e instanceof Uint8Array?Jn(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e:Uint8Array.from(e)}var au=br?(e,t,r)=>r-t>64?globalThis.Buffer.from(e.subarray(t,r)).toString("utf8"):ou(e,t,r):(e,t,r)=>r-t>64?Tp.decode(e.subarray(t,r)):ou(e,t,r),cu=br?e=>e.length>64?globalThis.Buffer.from(e):nu(e):e=>e.length>64?Cp.encode(e):nu(e);var wr=br?(e,t,r)=>Jn(e)?new Uint8Array(e.subarray(t,r)):e.slice(t,r):(e,t,r)=>e.slice(t,r),uu=br?(e,t)=>(e=e.map(r=>r instanceof Uint8Array?r:globalThis.Buffer.from(r)),su(globalThis.Buffer.concat(e,t))):(e,t)=>{let r=new Uint8Array(t),n=0;for(let o of e)n+o.length>r.length&&(o=o.subarray(0,r.length-n)),r.set(o,n),n+=o.length;return r},fu=br?e=>globalThis.Buffer.allocUnsafe(e):e=>new Uint8Array(e);function lu(e,t){if(Jn(e)&&Jn(t))return e.compare(t);for(let r=0;r<e.length;r++)if(e[r]!==t[r])return e[r]<t[r]?-1:1;return 0}function nu(e){let t=[],r=0;for(let n=0;n<e.length;n++){let o=e.charCodeAt(n);o<128?t[r++]=o:o<2048?(t[r++]=o>>6|192,t[r++]=o&63|128):(o&64512)===55296&&n+1<e.length&&(e.charCodeAt(n+1)&64512)===56320?(o=65536+((o&1023)<<10)+(e.charCodeAt(++n)&1023),t[r++]=o>>18|240,t[r++]=o>>12&63|128,t[r++]=o>>6&63|128,t[r++]=o&63|128):(t[r++]=o>>12|224,t[r++]=o>>6&63|128,t[r++]=o&63|128)}return t}function ou(e,t,r){let n=[];for(;t<r;){let o=e[t],i=null,s=o>239?4:o>223?3:o>191?2:1;if(t+s<=r){let c,a,f,u;switch(s){case 1:o<128&&(i=o);break;case 2:c=e[t+1],(c&192)===128&&(u=(o&31)<<6|c&63,u>127&&(i=u));break;case 3:c=e[t+1],a=e[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=e[t+1],a=e[t+2],f=e[t+3],(c&192)===128&&(a&192)===128&&(f&192)===128&&(u=(o&15)<<18|(c&63)<<12|(a&63)<<6|f&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 Bp(n)}var iu=4096;function Bp(e){let t=e.length;if(t<=iu)return String.fromCharCode.apply(String,e);let r="",n=0;for(;n<t;)r+=String.fromCharCode.apply(String,e.slice(n,n+=iu));return r}var _p=256,Qn=class{constructor(t=_p){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 r=this.chunks[this.chunks.length-1];if(this.cursor+t.length<=this.maxCursor+1){let o=r.length-(this.maxCursor-this.cursor)-1;r.set(t,o)}else{if(r){let o=r.length-(this.maxCursor-this.cursor)-1;o<r.length&&(this.chunks[this.chunks.length-1]=r.subarray(0,o),this.maxCursor=this.cursor-1)}t.length<64&&t.length<this.chunkSize?(r=fu(this.chunkSize),this.chunks.push(r),this.maxCursor+=r.length,this._initReuseChunk===null&&(this._initReuseChunk=r),r.set(t,0)):(this.chunks.push(t),this.maxCursor+=t.length)}this.cursor+=t.length}toBytes(t=!1){let r;if(this.chunks.length===1){let n=this.chunks[0];t&&this.cursor>n.length/2?(r=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):r=wr(n,0,this.cursor)}else r=uu(this.chunks,this.cursor);return t&&this.reset(),r}};var F="CBOR decode error:",gs="CBOR encode error:",tn=[];tn[23]=1;tn[24]=2;tn[25]=3;tn[26]=5;tn[27]=9;function ye(e,t,r){if(e.length-t<r)throw new Error(`${F} not enough data for type`)}var lt=[24,256,65536,4294967296,BigInt("18446744073709551616")];function Pt(e,t,r){ye(e,t,1);let n=e[t];if(r.strict===!0&&n<lt[0])throw new Error(`${F} integer encoded in more bytes than necessary (strict decode)`);return n}function Ut(e,t,r){ye(e,t,2);let n=e[t]<<8|e[t+1];if(r.strict===!0&&n<lt[1])throw new Error(`${F} integer encoded in more bytes than necessary (strict decode)`);return n}function Nt(e,t,r){ye(e,t,4);let n=e[t]*16777216+(e[t+1]<<16)+(e[t+2]<<8)+e[t+3];if(r.strict===!0&&n<lt[2])throw new Error(`${F} integer encoded in more bytes than necessary (strict decode)`);return n}function Lt(e,t,r){ye(e,t,8);let n=e[t]*16777216+(e[t+1]<<16)+(e[t+2]<<8)+e[t+3],o=e[t+4]*16777216+(e[t+5]<<16)+(e[t+6]<<8)+e[t+7],i=(BigInt(n)<<BigInt(32))+BigInt(o);if(r.strict===!0&&i<lt[3])throw new Error(`${F} integer encoded in more bytes than necessary (strict decode)`);if(i<=Number.MAX_SAFE_INTEGER)return Number(i);if(r.allowBigInt===!0)return i;throw new Error(`${F} integers outside of the safe integer range are not supported`)}function du(e,t,r,n){return new U(b.uint,Pt(e,t+1,n),2)}function hu(e,t,r,n){return new U(b.uint,Ut(e,t+1,n),3)}function pu(e,t,r,n){return new U(b.uint,Nt(e,t+1,n),5)}function mu(e,t,r,n){return new U(b.uint,Lt(e,t+1,n),9)}function Kt(e,t){return mt(e,0,t.value)}function mt(e,t,r){if(r<lt[0]){let n=Number(r);e.push([t|n])}else if(r<lt[1]){let n=Number(r);e.push([t|24,n])}else if(r<lt[2]){let n=Number(r);e.push([t|25,n>>>8,n&255])}else if(r<lt[3]){let n=Number(r);e.push([t|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(r);if(n<lt[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,e.push(o)}else throw new Error(`${F} encountered BigInt larger than allowable range`)}}Kt.encodedSize=function(t){return mt.encodedSize(t.value)};mt.encodedSize=function(t){return t<lt[0]?1:t<lt[1]?2:t<lt[2]?3:t<lt[3]?5:9};Kt.compareTokens=function(t,r){return t.value<r.value?-1:t.value>r.value?1:0};function yu(e,t,r,n){return new U(b.negint,-1-Pt(e,t+1,n),2)}function gu(e,t,r,n){return new U(b.negint,-1-Ut(e,t+1,n),3)}function xu(e,t,r,n){return new U(b.negint,-1-Nt(e,t+1,n),5)}var xs=BigInt(-1),bu=BigInt(1);function wu(e,t,r,n){let o=Lt(e,t+1,n);if(typeof o!="bigint"){let i=-1-o;if(i>=Number.MIN_SAFE_INTEGER)return new U(b.negint,i,9)}if(n.allowBigInt!==!0)throw new Error(`${F} integers outside of the safe integer range are not supported`);return new U(b.negint,xs-BigInt(o),9)}function to(e,t){let r=t.value,n=typeof r=="bigint"?r*xs-bu:r*-1-1;mt(e,t.type.majorEncoded,n)}to.encodedSize=function(t){let r=t.value,n=typeof r=="bigint"?r*xs-bu:r*-1-1;return n<lt[0]?1:n<lt[1]?2:n<lt[2]?3:n<lt[3]?5:9};to.compareTokens=function(t,r){return t.value<r.value?1:t.value>r.value?-1:0};function en(e,t,r,n){ye(e,t,r+n);let o=wr(e,t+r,t+r+n);return new U(b.bytes,o,r+n)}function Eu(e,t,r,n){return en(e,t,1,r)}function Su(e,t,r,n){return en(e,t,2,Pt(e,t+1,n))}function vu(e,t,r,n){return en(e,t,3,Ut(e,t+1,n))}function Au(e,t,r,n){return en(e,t,5,Nt(e,t+1,n))}function Iu(e,t,r,n){let o=Lt(e,t+1,n);if(typeof o=="bigint")throw new Error(`${F} 64-bit integer bytes lengths not supported`);return en(e,t,9,o)}function eo(e){return e.encodedBytes===void 0&&(e.encodedBytes=e.type===b.string?cu(e.value):e.value),e.encodedBytes}function Er(e,t){let r=eo(t);mt(e,t.type.majorEncoded,r.length),e.push(r)}Er.encodedSize=function(t){let r=eo(t);return mt.encodedSize(r.length)+r.length};Er.compareTokens=function(t,r){return Rp(eo(t),eo(r))};function Rp(e,t){return e.length<t.length?-1:e.length>t.length?1:lu(e,t)}function rn(e,t,r,n,o){let i=r+n;ye(e,t,i);let s=new U(b.string,au(e,t+r,t+i),i);return o.retainStringBytes===!0&&(s.byteValue=wr(e,t+r,t+i)),s}function Tu(e,t,r,n){return rn(e,t,1,r,n)}function Cu(e,t,r,n){return rn(e,t,2,Pt(e,t+1,n),n)}function Bu(e,t,r,n){return rn(e,t,3,Ut(e,t+1,n),n)}function _u(e,t,r,n){return rn(e,t,5,Nt(e,t+1,n),n)}function Du(e,t,r,n){let o=Lt(e,t+1,n);if(typeof o=="bigint")throw new Error(`${F} 64-bit integer string lengths not supported`);return rn(e,t,9,o,n)}var Ru=Er;function Sr(e,t,r,n){return new U(b.array,n,r)}function Pu(e,t,r,n){return Sr(e,t,1,r)}function Uu(e,t,r,n){return Sr(e,t,2,Pt(e,t+1,n))}function Nu(e,t,r,n){return Sr(e,t,3,Ut(e,t+1,n))}function Lu(e,t,r,n){return Sr(e,t,5,Nt(e,t+1,n))}function Ou(e,t,r,n){let o=Lt(e,t+1,n);if(typeof o=="bigint")throw new Error(`${F} 64-bit integer array lengths not supported`);return Sr(e,t,9,o)}function ku(e,t,r,n){if(n.allowIndefinite===!1)throw new Error(`${F} indefinite length items not allowed`);return Sr(e,t,1,1/0)}function ro(e,t){mt(e,b.array.majorEncoded,t.value)}ro.compareTokens=Kt.compareTokens;ro.encodedSize=function(t){return mt.encodedSize(t.value)};function vr(e,t,r,n){return new U(b.map,n,r)}function Ku(e,t,r,n){return vr(e,t,1,r)}function Vu(e,t,r,n){return vr(e,t,2,Pt(e,t+1,n))}function Mu(e,t,r,n){return vr(e,t,3,Ut(e,t+1,n))}function Fu(e,t,r,n){return vr(e,t,5,Nt(e,t+1,n))}function $u(e,t,r,n){let o=Lt(e,t+1,n);if(typeof o=="bigint")throw new Error(`${F} 64-bit integer map lengths not supported`);return vr(e,t,9,o)}function qu(e,t,r,n){if(n.allowIndefinite===!1)throw new Error(`${F} indefinite length items not allowed`);return vr(e,t,1,1/0)}function no(e,t){mt(e,b.map.majorEncoded,t.value)}no.compareTokens=Kt.compareTokens;no.encodedSize=function(t){return mt.encodedSize(t.value)};function Hu(e,t,r,n){return new U(b.tag,r,1)}function zu(e,t,r,n){return new U(b.tag,Pt(e,t+1,n),2)}function Gu(e,t,r,n){return new U(b.tag,Ut(e,t+1,n),3)}function Zu(e,t,r,n){return new U(b.tag,Nt(e,t+1,n),5)}function ju(e,t,r,n){return new U(b.tag,Lt(e,t+1,n),9)}function oo(e,t){mt(e,b.tag.majorEncoded,t.value)}oo.compareTokens=Kt.compareTokens;oo.encodedSize=function(t){return mt.encodedSize(t.value)};var kp=20,Kp=21,Vp=22,Mp=23;function Yu(e,t,r,n){if(n.allowUndefined===!1)throw new Error(`${F} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new U(b.null,null,1):new U(b.undefined,void 0,1)}function Wu(e,t,r,n){if(n.allowIndefinite===!1)throw new Error(`${F} indefinite length items not allowed`);return new U(b.break,void 0,1)}function bs(e,t,r){if(r){if(r.allowNaN===!1&&Number.isNaN(e))throw new Error(`${F} NaN values are not supported`);if(r.allowInfinity===!1&&(e===1/0||e===-1/0))throw new Error(`${F} Infinity values are not supported`)}return new U(b.float,e,t)}function Xu(e,t,r,n){return bs(ws(e,t+1),3,n)}function Ju(e,t,r,n){return bs(Es(e,t+1),5,n)}function Qu(e,t,r,n){return bs(nf(e,t+1),9,n)}function io(e,t,r){let n=t.value;if(n===!1)e.push([b.float.majorEncoded|kp]);else if(n===!0)e.push([b.float.majorEncoded|Kp]);else if(n===null)e.push([b.float.majorEncoded|Vp]);else if(n===void 0)e.push([b.float.majorEncoded|Mp]);else{let o,i=!1;(!r||r.float64!==!0)&&(ef(n),o=ws(Ht,1),n===o||Number.isNaN(n)?(Ht[0]=249,e.push(Ht.slice(0,3)),i=!0):(rf(n),o=Es(Ht,1),n===o&&(Ht[0]=250,e.push(Ht.slice(0,5)),i=!0))),i||(Fp(n),o=nf(Ht,1),Ht[0]=251,e.push(Ht.slice(0,9)))}}io.encodedSize=function(t,r){let n=t.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!r||r.float64!==!0){ef(n);let o=ws(Ht,1);if(n===o||Number.isNaN(n))return 3;if(rf(n),o=Es(Ht,1),n===o)return 5}return 9};var tf=new ArrayBuffer(9),Vt=new DataView(tf,1),Ht=new Uint8Array(tf,0);function ef(e){if(e===1/0)Vt.setUint16(0,31744,!1);else if(e===-1/0)Vt.setUint16(0,64512,!1);else if(Number.isNaN(e))Vt.setUint16(0,32256,!1);else{Vt.setFloat32(0,e);let t=Vt.getUint32(0),r=(t&2139095040)>>23,n=t&8388607;if(r===255)Vt.setUint16(0,31744,!1);else if(r===0)Vt.setUint16(0,(e&2147483648)>>16|n>>13,!1);else{let o=r-127;o<-24?Vt.setUint16(0,0):o<-14?Vt.setUint16(0,(t&2147483648)>>16|1<<24+o,!1):Vt.setUint16(0,(t&2147483648)>>16|o+15<<10|n>>13,!1)}}}function ws(e,t){if(e.length-t<2)throw new Error(`${F} not enough data for float16`);let r=(e[t]<<8)+e[t+1];if(r===31744)return 1/0;if(r===64512)return-1/0;if(r===32256)return NaN;let n=r>>10&31,o=r&1023,i;return n===0?i=o*2**-24:n!==31?i=(o+1024)*2**(n-25):i=o===0?1/0:NaN,r&32768?-i:i}function rf(e){Vt.setFloat32(0,e,!1)}function Es(e,t){if(e.length-t<4)throw new Error(`${F} not enough data for float32`);let r=(e.byteOffset||0)+t;return new DataView(e.buffer,r,4).getFloat32(0,!1)}function Fp(e){Vt.setFloat64(0,e,!1)}function nf(e,t){if(e.length-t<8)throw new Error(`${F} not enough data for float64`);let r=(e.byteOffset||0)+t;return new DataView(e.buffer,r,8).getFloat64(0,!1)}io.compareTokens=Kt.compareTokens;function Z(e,t,r){throw new Error(`${F} encountered invalid minor (${r}) for major ${e[t]>>>5}`)}function so(e){return()=>{throw new Error(`${F} ${e}`)}}var B=[];for(let e=0;e<=23;e++)B[e]=Z;B[24]=du;B[25]=hu;B[26]=pu;B[27]=mu;B[28]=Z;B[29]=Z;B[30]=Z;B[31]=Z;for(let e=32;e<=55;e++)B[e]=Z;B[56]=yu;B[57]=gu;B[58]=xu;B[59]=wu;B[60]=Z;B[61]=Z;B[62]=Z;B[63]=Z;for(let e=64;e<=87;e++)B[e]=Eu;B[88]=Su;B[89]=vu;B[90]=Au;B[91]=Iu;B[92]=Z;B[93]=Z;B[94]=Z;B[95]=so("indefinite length bytes/strings are not supported");for(let e=96;e<=119;e++)B[e]=Tu;B[120]=Cu;B[121]=Bu;B[122]=_u;B[123]=Du;B[124]=Z;B[125]=Z;B[126]=Z;B[127]=so("indefinite length bytes/strings are not supported");for(let e=128;e<=151;e++)B[e]=Pu;B[152]=Uu;B[153]=Nu;B[154]=Lu;B[155]=Ou;B[156]=Z;B[157]=Z;B[158]=Z;B[159]=ku;for(let e=160;e<=183;e++)B[e]=Ku;B[184]=Vu;B[185]=Mu;B[186]=Fu;B[187]=$u;B[188]=Z;B[189]=Z;B[190]=Z;B[191]=qu;for(let e=192;e<=215;e++)B[e]=Hu;B[216]=zu;B[217]=Gu;B[218]=Zu;B[219]=ju;B[220]=Z;B[221]=Z;B[222]=Z;B[223]=Z;for(let e=224;e<=243;e++)B[e]=so("simple values are not supported");B[244]=Z;B[245]=Z;B[246]=Z;B[247]=Yu;B[248]=so("simple values are not supported");B[249]=Xu;B[250]=Ju;B[251]=Qu;B[252]=Z;B[253]=Z;B[254]=Z;B[255]=Wu;var zt=[];for(let e=0;e<24;e++)zt[e]=new U(b.uint,e,1);for(let e=-1;e>=-24;e--)zt[31-e]=new U(b.negint,e,1);zt[64]=new U(b.bytes,new Uint8Array(0),1);zt[96]=new U(b.string,"",1);zt[128]=new U(b.array,0,1);zt[160]=new U(b.map,0,1);zt[244]=new U(b.false,!1,1);zt[245]=new U(b.true,!0,1);zt[246]=new U(b.null,null,1);function qp(){let e=[];return e[b.uint.major]=Kt,e[b.negint.major]=to,e[b.bytes.major]=Er,e[b.string.major]=Ru,e[b.array.major]=ro,e[b.map.major]=no,e[b.tag.major]=oo,e[b.float.major]=io,e}var h1=qp(),p1=new Qn,ao=class e{constructor(t,r){this.obj=t,this.parent=r}includes(t){let r=this;do if(r.obj===t)return!0;while(r=r.parent);return!1}static createCheck(t,r){if(t&&t.includes(r))throw new Error(`${gs} object contains circular references`);return new e(r,t)}},Ce={null:new U(b.null,null),undefined:new U(b.undefined,void 0),true:new U(b.true,!0),false:new U(b.false,!1),emptyArray:new U(b.array,0),emptyMap:new U(b.map,0)},Be={number(e,t,r,n){return!Number.isInteger(e)||!Number.isSafeInteger(e)?new U(b.float,e):e>=0?new U(b.uint,e):new U(b.negint,e)},bigint(e,t,r,n){return e>=BigInt(0)?new U(b.uint,e):new U(b.negint,e)},Uint8Array(e,t,r,n){return new U(b.bytes,e)},string(e,t,r,n){return new U(b.string,e)},boolean(e,t,r,n){return e?Ce.true:Ce.false},null(e,t,r,n){return Ce.null},undefined(e,t,r,n){return Ce.undefined},ArrayBuffer(e,t,r,n){return new U(b.bytes,new Uint8Array(e))},DataView(e,t,r,n){return new U(b.bytes,new Uint8Array(e.buffer,e.byteOffset,e.byteLength))},Array(e,t,r,n){if(!e.length)return r.addBreakTokens===!0?[Ce.emptyArray,new U(b.break)]:Ce.emptyArray;n=ao.createCheck(n,e);let o=[],i=0;for(let s of e)o[i++]=Ss(s,r,n);return r.addBreakTokens?[new U(b.array,e.length),o,new U(b.break)]:[new U(b.array,e.length),o]},Object(e,t,r,n){let o=t!=="Object",i=o?e.keys():Object.keys(e),s=o?e.size:i.length;if(!s)return r.addBreakTokens===!0?[Ce.emptyMap,new U(b.break)]:Ce.emptyMap;n=ao.createCheck(n,e);let c=[],a=0;for(let f of i)c[a++]=[Ss(f,r,n),Ss(o?e.get(f):e[f],r,n)];return Hp(c,r),r.addBreakTokens?[new U(b.map,s),c,new U(b.break)]:[new U(b.map,s),c]}};Be.Map=Be.Object;Be.Buffer=Be.Uint8Array;for(let e of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))Be[`${e}Array`]=Be.DataView;function Ss(e,t={},r){let n=ru(e),o=t&&t.typeEncoders&&t.typeEncoders[n]||Be[n];if(typeof o=="function"){let s=o(e,n,t,r);if(s!=null)return s}let i=Be[n];if(!i)throw new Error(`${gs} unsupported type: ${n}`);return i(e,n,t,r)}function Hp(e,t){t.mapSorter&&e.sort(t.mapSorter)}var zp={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},co=class{constructor(t,r={}){this._pos=0,this.data=t,this.options=r}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let t=this.data[this._pos],r=zt[t];if(r===void 0){let n=B[t];if(!n)throw new Error(`${F} no decoder for major type ${t>>>5} (byte 0x${t.toString(16).padStart(2,"0")})`);let o=t&31;r=n(this.data,this._pos,o,this.options)}return this._pos+=r.encodedLength,r}},nn=Symbol.for("DONE"),uo=Symbol.for("BREAK");function Gp(e,t,r){let n=[];for(let o=0;o<e.value;o++){let i=Ar(t,r);if(i===uo){if(e.value===1/0)break;throw new Error(`${F} got unexpected break to lengthed array`)}if(i===nn)throw new Error(`${F} found array but not enough entries (got ${o}, expected ${e.value})`);n[o]=i}return n}function Zp(e,t,r){let n=r.useMaps===!0,o=n?void 0:{},i=n?new Map:void 0;for(let s=0;s<e.value;s++){let c=Ar(t,r);if(c===uo){if(e.value===1/0)break;throw new Error(`${F} got unexpected break to lengthed map`)}if(c===nn)throw new Error(`${F} found map but not enough entries (got ${s} [no key], expected ${e.value})`);if(n!==!0&&typeof c!="string")throw new Error(`${F} non-string keys not supported (got ${typeof c})`);if(r.rejectDuplicateMapKeys===!0&&(n&&i.has(c)||!n&&c in o))throw new Error(`${F} found repeat map key "${c}"`);let a=Ar(t,r);if(a===nn)throw new Error(`${F} found map but not enough entries (got ${s} [no value], expected ${e.value})`);n?i.set(c,a):o[c]=a}return n?i:o}function Ar(e,t){if(e.done())return nn;let r=e.next();if(r.type===b.break)return uo;if(r.type.terminal)return r.value;if(r.type===b.array)return Gp(r,e,t);if(r.type===b.map)return Zp(r,e,t);if(r.type===b.tag){if(t.tags&&typeof t.tags[r.value]=="function"){let n=Ar(e,t);return t.tags[r.value](n)}throw new Error(`${F} tag not supported (${r.value})`)}throw new Error("unsupported")}function of(e,t){if(!(e instanceof Uint8Array))throw new Error(`${F} data to decode must be a Uint8Array`);t=Object.assign({},zp,t);let r=t.tokenizer||new co(e,t),n=Ar(r,t);if(n===nn)throw new Error(`${F} did not find any content to decode`);if(n===uo)throw new Error(`${F} got unexpected break`);return[n,e.subarray(r.pos())]}function vs(e,t){let[r,n]=of(e,t);if(n.length>0)throw new Error(`${F} too many terminals, data makes no sense`);return r}var Wp=oe("ipns:utils"),sf=H("/ipns/");var Xp=0,Jp=18;function af(e){let t;if(e.pubKey!=null)try{t=Lc(e.pubKey)}catch(r){throw Wp.error(r),r}if(t!=null)return t}function cf(e){let t=H("ipns-signature:");return Ot([t,e])}function He(e){return"signatureV1"in e?qt.encode({value:H(e.value),signatureV1:e.signatureV1,validityType:e.validityType,validity:H(e.validity),sequence:e.sequence,ttl:e.ttl,pubKey:e.pubKey,signatureV2:e.signatureV2,data:e.data}):qt.encode({pubKey:e.pubKey,signatureV2:e.signatureV2,data:e.data})}function ee(e){let t=qt.decode(e);if(t.sequence!=null&&(t.sequence=BigInt(t.sequence)),t.ttl!=null&&(t.ttl=BigInt(t.ttl)),t.signatureV2==null||t.data==null)throw new $t("Missing data or signatureV2");let r=uf(t.data),n=Qp(r.Value),o=z(r.Validity);if(t.value!=null&&t.signatureV1!=null)return t0(t),{value:n,validityType:qt.ValidityType.EOL,validity:o,sequence:r.Sequence,ttl:r.TTL,pubKey:t.pubKey,signatureV1:t.signatureV1,signatureV2:t.signatureV2,data:t.data};if(t.signatureV2!=null)return{value:n,validityType:qt.ValidityType.EOL,validity:o,sequence:r.Sequence,ttl:r.TTL,pubKey:t.pubKey,signatureV2:t.signatureV2,data:t.data};throw new Error("invalid record: does not include signatureV1 or signatureV2")}function on(e){return Ot([sf,e.bytes])}function ge(e){let t=Re(e.slice(sf.length));if(!fo(t,Xp)&&!fo(t,Jp))throw new Ge("Multihash in IPNS key was not identity or sha2-256");return t}function uf(e){let t=vs(e);if(t.ValidityType===0)t.ValidityType=qt.ValidityType.EOL;else throw new xr("The validity type is unsupported");return Number.isInteger(t.Sequence)&&(t.Sequence=BigInt(t.Sequence)),Number.isInteger(t.TTL)&&(t.TTL=BigInt(t.TTL)),t}function Qp(e){let t=z(e).trim();if(t.startsWith("/"))return t;try{return`/ipfs/${j.decode(e).toV1().toString()}`}catch{}try{return`/ipfs/${j.parse(t).toV1().toString()}`}catch{}throw new Wn("Value must be a valid content path starting with /")}function t0(e){if(e.data==null)throw new Xn("Record data is missing");let t=uf(e.data);if(!Y(t.Value,e.value??new Uint8Array(0)))throw new $t('Field "value" did not match between protobuf and CBOR');if(!Y(t.Validity,e.validity??new Uint8Array(0)))throw new $t('Field "validity" did not match between protobuf and CBOR');if(t.ValidityType!==e.validityType)throw new $t('Field "validityType" did not match between protobuf and CBOR');if(t.Sequence!==e.sequence)throw new $t('Field "sequence" did not match between protobuf and CBOR');if(t.TTL!==e.ttl)throw new $t('Field "ttl" did not match between protobuf and CBOR')}function fo(e,t){return e.code===t}var k1=oe("ipns"),K1=300*1e9,r0="/ipns/",V1=r0.length;var ff=So(ys(),1);var lo=oe("ipns:validator"),n0=1024*10;async function o0(e,t){let r=ee(t),n;try{let o=cf(r.data);n=await e.verify(o,r.signatureV2)}catch{n=!1}if(!n)throw lo.error("record signature verification failed"),new $t("Record signature verification failed");if(r.validityType===qt.ValidityType.EOL){if(ff.default.fromString(r.validity).toDate().getTime()<Date.now())throw lo.error("record has expired"),new jn("record has expired")}else if(r.validityType!=null)throw lo.error("the validity type is unsupported"),new xr("The validity type is unsupported");lo("ipns record for %s is valid",r.value)}async function lf(e,t){if(t.byteLength>n0)throw new Yn("The record is too large");let r=ge(e),n;fo(r,0)&&(n=On(r));let o=ee(t),i=af(o)??n;if(i==null)throw new Qr("Could not extract public key from IPNS record or routing key");let s=on(i.toMultihash());if(!Y(s,e))throw new Qr("Embedded public key did not match routing key");await o0(i,t)}var ho=class extends Error{name="InvalidMessageLengthError";code="ERR_INVALID_MESSAGE_LENGTH"};async function*sn(e,t={}){let r=/\r?\n/,n=new TextDecoder("utf8"),o="";for await(let i of e){if(typeof i=="string"&&(i=new TextEncoder().encode(i)),Qe(i)&&(i=i.subarray()),o+=n.decode(i,{stream:!0}),o.length>(t?.maxMessageLength??o.length))throw new ho("Incoming message too long");let s=o.split(r);o=s.pop()??"";for(let c=0;c<s.length;c++)yield JSON.parse(s[c])}o+=n.decode(),o!==""&&(yield JSON.parse(o))}function re(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var Is=So(hf(),1);var Ts=class e extends Error{name="TimeoutError";constructor(t,r){super(t,r),Error.captureStackTrace?.(this,e)}},pf=e=>e.reason??new DOMException("This operation was aborted.","AbortError");function Cs(e,t){let{milliseconds:r,fallback:n,message:o,customTimers:i={setTimeout,clearTimeout},signal:s}=t,c,a,u=new Promise((l,y)=>{if(typeof r!="number"||Math.sign(r)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${r}\``);if(s?.aborted){y(pf(s));return}if(s&&(a=()=>{y(pf(s))},s.addEventListener("abort",a,{once:!0})),e.then(l,y),r===Number.POSITIVE_INFINITY)return;let v=new Ts;c=i.setTimeout.call(void 0,()=>{if(n){try{l(n())}catch(x){y(x)}return}typeof e.cancel=="function"&&e.cancel(),o===!1?l():o instanceof Error?y(o):(v.message=o??`Promise timed out after ${r} milliseconds`,y(v))},r)}).finally(()=>{u.clear(),a&&s&&s.removeEventListener("abort",a)});return u.clear=()=>{i.clearTimeout.call(void 0,c),c=void 0},u}function Bs(e,t,r){let n=0,o=e.length;for(;o>0;){let i=Math.trunc(o/2),s=n+i;r(e[s],t)<=0?(n=++s,o-=i+1):o=i}return n}var cn=class{#t=[];enqueue(t,r){let{priority:n=0,id:o}=r??{},i={priority:n,id:o,run:t};if(this.size===0||this.#t[this.size-1].priority>=n){this.#t.push(i);return}let s=Bs(this.#t,i,(c,a)=>a.priority-c.priority);this.#t.splice(s,0,i)}setPriority(t,r){let n=this.#t.findIndex(i=>i.id===t);if(n===-1)throw new ReferenceError(`No promise function with the id "${t}" exists in the queue.`);let[o]=this.#t.splice(n,1);this.enqueue(o.run,{priority:r,id:t})}dequeue(){return this.#t.shift()?.run}filter(t){return this.#t.filter(r=>r.priority===t.priority).map(r=>r.run)}get size(){return this.#t.length}};var un=class extends Is.default{#t;#n;#r=0;#h;#p=!1;#m=!1;#u;#b=0;#y=0;#i;#s;#e;#w;#o=0;#f;#a;#T=1n;#l=new Map;timeout;constructor(t){if(super(),t={carryoverIntervalCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:cn,...t},!(typeof t.intervalCap=="number"&&t.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${t.intervalCap?.toString()??""}\` (${typeof t.intervalCap})`);if(t.interval===void 0||!(Number.isFinite(t.interval)&&t.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${t.interval?.toString()??""}\` (${typeof t.interval})`);if(this.#t=t.carryoverIntervalCount??t.carryoverConcurrencyCount??!1,this.#n=t.intervalCap===Number.POSITIVE_INFINITY||t.interval===0,this.#h=t.intervalCap,this.#u=t.interval,this.#e=new t.queueClass,this.#w=t.queueClass,this.concurrency=t.concurrency,t.timeout!==void 0&&!(Number.isFinite(t.timeout)&&t.timeout>0))throw new TypeError(`Expected \`timeout\` to be a positive finite number, got \`${t.timeout}\` (${typeof t.timeout})`);this.timeout=t.timeout,this.#a=t.autoStart===!1,this.#N()}get#C(){return this.#n||this.#r<this.#h}get#B(){return this.#o<this.#f}#_(){this.#o--,this.#o===0&&this.emit("pendingZero"),this.#g(),this.emit("next")}#D(){this.#A(),this.#v(),this.#s=void 0}get#R(){let t=Date.now();if(this.#i===void 0){let r=this.#b-t;if(r<0){if(this.#y>0){let n=t-this.#y;if(n<this.#u)return this.#E(this.#u-n),!0}this.#r=this.#t?this.#o:0}else return this.#E(r),!0}return!1}#E(t){this.#s===void 0&&(this.#s=setTimeout(()=>{this.#D()},t))}#S(){this.#i&&(clearInterval(this.#i),this.#i=void 0)}#P(){this.#s&&(clearTimeout(this.#s),this.#s=void 0)}#g(){if(this.#e.size===0)return this.#S(),this.emit("empty"),this.#o===0&&(this.#P(),this.emit("idle")),!1;let t=!1;if(!this.#a){let r=!this.#R;if(this.#C&&this.#B){let n=this.#e.dequeue();this.#n||(this.#r++,this.#d()),this.emit("active"),this.#y=Date.now(),n(),r&&this.#v(),t=!0}}return t}#v(){this.#n||this.#i!==void 0||(this.#i=setInterval(()=>{this.#A()},this.#u),this.#b=Date.now()+this.#u)}#A(){this.#r===0&&this.#o===0&&this.#i&&this.#S(),this.#r=this.#t?this.#o:0,this.#x(),this.#d()}#x(){for(;this.#g(););}get concurrency(){return this.#f}set concurrency(t){if(!(typeof t=="number"&&t>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${t}\` (${typeof t})`);this.#f=t,this.#x()}async#U(t){return new Promise((r,n)=>{t.addEventListener("abort",()=>{n(t.reason)},{once:!0})})}setPriority(t,r){if(typeof r!="number"||!Number.isFinite(r))throw new TypeError(`Expected \`priority\` to be a finite number, got \`${r}\` (${typeof r})`);this.#e.setPriority(t,r)}async add(t,r={}){return r.id??=(this.#T++).toString(),r={timeout:this.timeout,...r},new Promise((n,o)=>{let i=Symbol(`task-${r.id}`);this.#e.enqueue(async()=>{this.#o++,this.#l.set(i,{id:r.id,priority:r.priority??0,startTime:Date.now(),timeout:r.timeout});try{try{r.signal?.throwIfAborted()}catch(a){throw this.#n||this.#r--,this.#l.delete(i),a}let s=t({signal:r.signal});r.timeout&&(s=Cs(Promise.resolve(s),{milliseconds:r.timeout,message:`Task timed out after ${r.timeout}ms (queue has ${this.#o} running, ${this.#e.size} waiting)`})),r.signal&&(s=Promise.race([s,this.#U(r.signal)]));let c=await s;n(c),this.emit("completed",c)}catch(s){o(s),this.emit("error",s)}finally{this.#l.delete(i),queueMicrotask(()=>{this.#_()})}},r),this.emit("add"),this.#g()})}async addAll(t,r){return Promise.all(t.map(async n=>this.add(n,r)))}start(){return this.#a?(this.#a=!1,this.#x(),this):this}pause(){this.#a=!0}clear(){this.#e=new this.#w,this.#I()}async onEmpty(){this.#e.size!==0&&await this.#c("empty")}async onSizeLessThan(t){this.#e.size<t||await this.#c("next",()=>this.#e.size<t)}async onIdle(){this.#o===0&&this.#e.size===0||await this.#c("idle")}async onPendingZero(){this.#o!==0&&await this.#c("pendingZero")}async onRateLimit(){this.isRateLimited||await this.#c("rateLimit")}async onRateLimitCleared(){this.isRateLimited&&await this.#c("rateLimitCleared")}async onError(){return new Promise((t,r)=>{let n=o=>{this.off("error",n),r(o)};this.on("error",n)})}async#c(t,r){return new Promise(n=>{let o=()=>{r&&!r()||(this.off(t,o),n())};this.on(t,o)})}get size(){return this.#e.size}sizeBy(t){return this.#e.filter(t).length}get pending(){return this.#o}get isPaused(){return this.#a}#N(){this.#n||(this.on("add",()=>{this.#e.size>0&&this.#d()}),this.on("next",()=>{this.#d()}))}#d(){this.#n||this.#m||(this.#m=!0,queueMicrotask(()=>{this.#m=!1,this.#I()}))}#I(){let t=this.#p,r=!this.#n&&this.#r>=this.#h&&this.#e.size>0;r!==t&&(this.#p=r,this.emit(r?"rateLimit":"rateLimitCleared"))}get isRateLimited(){return this.#p}get isSaturated(){return this.#o===this.#f&&this.#e.size>0||this.isRateLimited&&this.#e.size>0}get runningTasks(){return[...this.#l.values()].map(t=>({...t}))}};var Ir=class extends Error{static name="InvalidRequestError";constructor(t="Invalid request"){super(t),this.name="InvalidRequestError"}},Gt=class extends Error{static name="BadResponseError";constructor(t="Bad response"){super(t),this.name="BadResponseError"}};function a0(e){return e[Symbol.asyncIterator]!=null}function c0(e){if(a0(e))return(async()=>{for await(let t of e)return t})();for(let t of e)return t}var mo=c0;function u0(e){let[t,r]=e[Symbol.asyncIterator]!=null?[e[Symbol.asyncIterator](),Symbol.asyncIterator]:[e[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(),[r](){return this}}}var mf=u0;function f0(e){return e[Symbol.asyncIterator]!=null}function l0(e,t){let r=0;if(f0(e))return(async function*(){for await(let a of e)yield t(a,r++)})();let n=mf(e),{value:o,done:i}=n.next();if(i===!0)return(function*(){})();let s=t(o,r++);if(typeof s.then=="function")return(async function*(){yield await s;for(let a of n)yield t(a,r++)})();let c=t;return(function*(){yield s;for(let a of n)yield c(a,r++)})()}var Tr=l0;var yf=H("/ipns/");function gf(e){return Y(e.subarray(0,yf.byteLength),yf)}var yo=class{client;constructor(t){this.client=t}async*findProviders(t,r={}){try{yield*Tr(this.client.getProviders(t,r),n=>({id:n.ID,multiaddrs:n.Addrs??[]}))}catch(n){if(n instanceof At)return;throw n}}async provide(){}async cancelReprovide(){}async put(t,r,n){if(!gf(t))return;let o=ge(t),i=j.createV1(114,o),s=ee(r);await this.client.putIPNS(i,s,n)}async get(t,r){if(!gf(t))throw new At("Not found");let n=ge(t),o=j.createV1(114,n);try{let i=await this.client.getIPNS(o,r);return He(i)}catch(i){throw i.name==="BadResponseError"?new At("Not found"):i}}},go=class{client;constructor(t){this.client=t}async findPeer(t,r={}){let n=await mo(this.client.getPeers(t,r));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new At("Not found")}async*getClosestPeers(t,r={}){}};var yt=oe("delegated-routing-v1-http-api-client"),xo={concurrentRequests:4,timeout:3e4,cacheTTL:300*1e3,cacheName:"delegated-routing-v1-cache"},bo=class{started;httpQueue;shutDownController;clientUrl;timeout;contentRouting;peerRouting;filterAddrs;filterProtocols;inFlightRequests;cacheName;cache;cacheTTL;constructor(t,r={}){this.started=!1,this.shutDownController=new AbortController,this.shutDownController.signal,this.httpQueue=new un({concurrency:r.concurrentRequests??xo.concurrentRequests}),this.inFlightRequests=new Map,this.clientUrl=t instanceof URL?t:new URL(t),this.timeout=r.timeout??xo.timeout,this.filterAddrs=r.filterAddrs,this.filterProtocols=r.filterProtocols,this.contentRouting=new yo(this),this.peerRouting=new go(this),this.cacheName=r.cacheName??xo.cacheName,this.cacheTTL=r.cacheTTL??xo.cacheTTL}get[qs](){return this.contentRouting}get[Hs](){return this.peerRouting}isStarted(){return this.started}async start(){this.started||(this.started=!0,this.cacheTTL>0&&(this.cache=await globalThis.caches?.open(this.cacheName),this.cache!=null&&yt("cache enabled with ttl %d",this.cacheTTL)))}async stop(){this.httpQueue.clear(),this.shutDownController.abort(),await globalThis.caches?.delete(this.cacheName),this.started=!1}async*getProviders(t,r={}){yt("getProviders starts: %c",t);let n=AbortSignal.timeout(this.timeout),o=Jr([this.shutDownController.signal,n,r.signal]);let i=re(),s=re();this.httpQueue.add(async()=>(i.resolve(),s.promise));try{await i.promise;let c=new URL(`${this.clientUrl}routing/v1/providers/${t}`);this.#n(c,r.filterAddrs,r.filterProtocols);let a={headers:{Accept:"application/x-ndjson"},signal:o},f=await this.#r(c.toString(),a);if(!f.ok){if(f.status===404)return;throw f.status===422?new Ir("Request does not conform to schema or semantic constraints"):new Gt(`Unexpected status code: ${f.status}`)}if(f.body==null)throw new Gt("Routing response had no body");let u=f.headers.get("Content-Type");if(u==null)throw new Gt("No Content-Type header received");if(u.startsWith("application/json")){let y=(await f.json()).Providers??[];for(let v of y){let x=this.#t(v);x!=null&&(yield x)}}else if(u.includes("application/x-ndjson"))for await(let l of sn(Zn(f.body))){let y=this.#t(l);y!=null&&(yield y)}else throw new Gt(`Unsupported Content-Type: ${u}`)}finally{o.clear(),s.resolve(),yt("getProviders finished: %c",t)}}async*getPeers(t,r={}){yt("getPeers starts: %c",t);let n=AbortSignal.timeout(this.timeout),o=Jr([this.shutDownController.signal,n,r.signal]);let i=re(),s=re();this.httpQueue.add(async()=>(i.resolve(),s.promise));try{await i.promise;let c=new URL(`${this.clientUrl}routing/v1/peers/${t.toCID().toString()}`);this.#n(c,r.filterAddrs,r.filterProtocols);let a={headers:{Accept:"application/x-ndjson"},signal:o},f=await this.#r(c.toString(),a);if(f.status===404)return;if(f.status===422)throw new Ir("Request does not conform to schema or semantic constraints");if(f.body==null)throw new Gt("Routing response had no body");if(f.headers.get("Content-Type")?.startsWith("application/json")){let y=(await f.json()).Peers??[];for(let v of y){let x=this.#t(v);x!=null&&(yield x)}}else for await(let l of sn(Zn(f.body))){let y=this.#t(l);y!=null&&(yield y)}}catch(c){yt.error("getPeers errored:",c)}finally{o.clear(),s.resolve(),yt("getPeers finished: %c",t)}}async getIPNS(t,r={}){yt("getIPNS starts: %s",t);let n=AbortSignal.timeout(this.timeout),o=Jr([this.shutDownController.signal,n,r.signal]);let i=re(),s=re();this.httpQueue.add(async()=>(i.resolve(),s.promise));let c=`${this.clientUrl}routing/v1/ipns/${t}`;try{await i.promise;let a={headers:{Accept:"application/vnd.ipfs.ipns-record"},signal:o},f=await this.#r(c,a);if(yt("getIPNS GET %s %d",c,f.status),f.status===404)throw new At("No matching records found");if(f.status===422)throw new Ir("Request does not conform to schema or semantic constraints");if(!f.ok)throw new Gt(`Unexpected status code: ${f.status}`);let u=f.headers.get("Content-Type");if(u==null||!u.includes("application/vnd.ipfs.ipns-record"))throw new At("No matching records found");if(f.body==null)throw new Gt("GET ipns response had no body");let l=await f.arrayBuffer(),y=new Uint8Array(l,0,l.byteLength);return r.validate!==!1&&await lf(on(t.multihash),y),ee(y)}catch(a){throw yt.error("getIPNS GET %s error:",c,a),a}finally{o.clear(),s.resolve(),yt("getIPNS finished: %s",t)}}async putIPNS(t,r,n={}){yt("putIPNS starts: %c",t);let o=AbortSignal.timeout(this.timeout),i=Jr([this.shutDownController.signal,o,n.signal]);let s=re(),c=re();this.httpQueue.add(async()=>(s.resolve(),c.promise));let a=`${this.clientUrl}routing/v1/ipns/${t}`;try{await s.promise;let f=He(r),u={method:"PUT",headers:{"Content-Type":"application/vnd.ipfs.ipns-record"},body:f,signal:i},l=await this.#r(a,u);if(yt("putIPNS PUT %s %d",a,l.status),l.status!==200)throw new Gt("PUT ipns response had status other than 200")}catch(f){throw yt.error("putIPNS PUT %s error:",a,f.stack),f}finally{i.clear(),c.resolve(),yt("putIPNS finished: %c",t)}}#t(t){try{let r=[],n=t.Addrs?.map(Gn)??[];return t.Protocols!=null&&r.push(...t.Protocols),t.Protocol!=null&&(r.push(t.Protocol),delete t.Protocol),{...t,Schema:"peer",ID:Kc(t.ID),Addrs:n,Protocols:r}}catch(r){yt.error("could not conform record to peer schema",r)}}#n(t,r,n){if(r!=null||this.filterAddrs!=null){let o=r?.join(",")??this.filterAddrs?.join(",")??"";o!==""&&t.searchParams.set("filter-addrs",o)}if(n!=null||this.filterProtocols!=null){let o=n?.join(",")??this.filterProtocols?.join(",")??"";o!==""&&t.searchParams.set("filter-protocols",o)}}async#r(t,r){let n=r.method??"GET",o=`${n}-${t}`;if(n==="GET"){let a=await this.cache?.match(t);if(a!=null){if(parseInt(a.headers.get("x-cache-expires")??"0",10)>Date.now())return yt("returning cached response for %s",o),a;await this.cache?.delete(t)}}let i=this.inFlightRequests.get(o);if(i!=null){let a=await i;return yt("deduplicating outgoing request for %s",o),a.clone()}let s=fetch(t,r).then(async a=>{if(this.cache!=null&&a.ok&&n==="GET"){let f=Date.now()+this.cacheTTL,u=new Headers(a.headers);u.set("x-cache-expires",f.toString());let l=new Response(a.clone().body,{status:a.status,statusText:a.statusText,headers:u});await this.cache.put(t,l)}return a}).finally(()=>{this.inFlightRequests.delete(o)});return this.inFlightRequests.set(o,s),await s}};function xf(e,t={}){return new bo(new URL(e),t)}function wo(){return{filterProtocols:["unknown","transport-bitswap","transport-ipfs-gateway-http"],filterAddrs:["https","webtransport","webrtc","webrtc-direct","wss","tls"]}}var bf=H("/ipns/");function wf(e){return Y(e.subarray(0,bf.byteLength),bf)}var _s=class{client;constructor(t,r={}){this.client=xf(t,r)}async provide(t,r){}async cancelReprovide(t,r){}async*findProviders(t,r){yield*Tr(this.client.getProviders(t,r),n=>({id:n.ID,multiaddrs:n.Addrs,protocols:n.Protocols,routing:"delegated-http-routing"}))}async put(t,r,n){if(!wf(t))return;let o=ge(t),i=j.createV1(114,o),s=ee(r);await this.client.putIPNS(i,s,n)}async get(t,r){if(!wf(t))throw new At("Not found");let n=ge(t),o=j.createV1(114,n);try{let i=await this.client.getIPNS(o,r);return He(i)}catch(i){throw i.name==="BadResponseError"?new At("Not found"):i}}async findPeer(t,r){let n=await mo(this.client.getPeers(t,r));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new At("Not found")}async*getClosestPeers(t,r){}};function Ef(e,t){let r=t??wo();return new _s(new URL(e),r)}var Sf="[a-fA-F\\d:]",_e=e=>e&&e.includeBoundaries?`(?:(?<=\\s|^)(?=${Sf})|(?<=${Sf})(?=\\s|$))`:"",Zt="(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}",at="[a-fA-F\\d]{1,4}",Eo=`
9
+ ${t}[Error list was empty]`,r.trim()}return Uo(e)};function wl(e){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=e,t.destroy=()=>!0,t.extend=()=>t,t}function ta(e){return{forComponent(t){return xe(t,e)}}}function xe(e,t){let r=wl(`${e}:trace`);return vt.enabled(`${e}:trace`)&&vt.names.map(n=>n.toString()).find(n=>n.includes(":trace"))!=null&&(r=vt(`${e}:trace`,t)),Object.assign(vt(e,t),{error:vt(`${e}:error`,t),trace:r,newScope:n=>xe(`${e}:${n}`,t)})}function Qs(e){if(e!=null&&(e=e.trim(),e.length!==0))return e}var ea=Symbol.for("@libp2p/content-routing");var st=class extends Error{static name="InvalidParametersError";constructor(t="Invalid parameters"){super(t),this.name="InvalidParametersError"}},Ge=class extends Error{static name="InvalidPublicKeyError";constructor(t="Invalid public key"){super(t),this.name="InvalidPublicKeyError"}};var At=class extends Error{static name="NotFoundError";constructor(t="Not found"){super(t),this.name="NotFoundError"}};var pn=class extends Error{static name="InvalidCIDError";constructor(t="Invalid CID"){super(t),this.name="InvalidCIDError"}},Ze=class extends Error{static name="InvalidMultihashError";constructor(t="Invalid Multihash"){super(t),this.name="InvalidMultihashError"}};var je=class extends Error{static name="UnsupportedKeyTypeError";constructor(t="Unsupported key type"){super(t),this.name="UnsupportedKeyTypeError"}};var Oo=Symbol.for("@libp2p/peer-id");var ra=Symbol.for("@libp2p/peer-routing");var ko={};St(ko,{base36:()=>Ye,base36upper:()=>El});var Ye=ge({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),El=ge({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Sl=ia,na=128,vl=127,Al=~vl,Il=Math.pow(2,31);function ia(e,t,r){t=t||[],r=r||0;for(var n=r;e>=Il;)t[r++]=e&255|na,e/=128;for(;e&Al;)t[r++]=e&255|na,e>>>=7;return t[r]=e|0,ia.bytes=r-n+1,t}var Tl=Ko,Cl=128,oa=127;function Ko(e,n){var r=0,n=n||0,o=0,i=n,s,c=e.length;do{if(i>=c)throw Ko.bytes=0,new RangeError("Could not decode varint");s=e[i++],r+=o<28?(s&oa)<<o:(s&oa)*Math.pow(2,o),o+=7}while(s>=Cl);return Ko.bytes=i-n,r}var Bl=Math.pow(2,7),_l=Math.pow(2,14),Dl=Math.pow(2,21),Rl=Math.pow(2,28),Pl=Math.pow(2,35),Nl=Math.pow(2,42),Ll=Math.pow(2,49),Ul=Math.pow(2,56),Ol=Math.pow(2,63),kl=function(e){return e<Bl?1:e<_l?2:e<Dl?3:e<Rl?4:e<Pl?5:e<Nl?6:e<Ll?7:e<Ul?8:e<Ol?9:10},Kl={encode:Sl,decode:Tl,encodingLength:kl},Vl=Kl,Tr=Vl;function Cr(e,t=0){return[Tr.decode(e,t),Tr.decode.bytes]}function We(e,t,r=0){return Tr.encode(e,t,r),t}function Xe(e){return Tr.encodingLength(e)}function Yt(e,t){let r=t.byteLength,n=Xe(e),o=n+Xe(r),i=new Uint8Array(o+r);return We(e,i,0),We(r,i,n),i.set(t,o),new Je(e,r,t,i)}function Re(e){let t=ne(e),[r,n]=Cr(t),[o,i]=Cr(t.subarray(n)),s=t.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new Je(r,o,s,t)}function sa(e,t){if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&Gs(e.bytes,r.bytes)}}var Je=class{code;size;digest;bytes;constructor(t,r,n,o){this.code=t,this.size=r,this.digest=n,this.bytes=o}};function aa(e,t){let{bytes:r,version:n}=e;switch(n){case 0:return Fl(r,Vo(e),t??X.encoder);default:return $l(r,Vo(e),t??jt.encoder)}}var ca=new WeakMap;function Vo(e){let t=ca.get(e);if(t==null){let r=new Map;return ca.set(e,r),r}return t}var j=class e{code;version;multihash;bytes;"/";constructor(t,r,n,o){this.code=r,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:r}=this;if(t!==Br)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==ql)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.createV0(r)}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:r}=this.multihash,n=Yt(t,r);return e.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 e.equals(this,t)}static equals(t,r){let n=r;return n!=null&&t.code===n.code&&t.version===n.version&&sa(t.multihash,n.multihash)}toString(t){return aa(this,t)}toJSON(){return{"/":aa(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 r=t;if(r instanceof e)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:o,multihash:i,bytes:s}=r;return new e(n,o,i,s??ua(n,o,i.bytes))}else if(r[Hl]===!0){let{version:n,multihash:o,code:i}=r,s=Re(o);return e.create(n,i,s)}else return null}static create(t,r,n){if(typeof r!="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(r!==Br)throw new Error(`Version 0 CID must use dag-pb (code: ${Br}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let o=ua(t,r,n.bytes);return new e(t,r,n,o)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,Br,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length!==0)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,o=ne(t.subarray(n,n+r.multihashSize));if(o.byteLength!==r.multihashSize)throw new Error("Incorrect length");let i=o.subarray(r.multihashSize-r.digestSize),s=new Je(r.multihashCode,r.digestSize,i,o);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,y]=Cr(t.subarray(r));return r+=y,l},o=n(),i=Br;if(o===18?(o=0,r=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=r,c=n(),a=n(),f=r+a,u=f-s;return{version:o,codec:i,multihashCode:c,digestSize:a,multihashSize:u,size:f}}static parse(t,r){let[n,o]=Ml(t,r),i=e.decode(o);if(i.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Vo(i).set(n,t),i}};function Ml(e,t){switch(e[0]){case"Q":{let r=t??X;return[X.prefix,r.decode(`${X.prefix}${e}`)]}case X.prefix:{let r=t??X;return[X.prefix,r.decode(e)]}case jt.prefix:{let r=t??jt;return[jt.prefix,r.decode(e)]}case Ye.prefix:{let r=t??Ye;return[Ye.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}}function Fl(e,t,r){let{prefix:n}=r;if(n!==X.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let o=t.get(n);if(o==null){let i=r.encode(e).slice(1);return t.set(n,i),i}else return o}function $l(e,t,r){let{prefix:n}=r,o=t.get(n);if(o==null){let i=r.encode(e);return t.set(n,i),i}else return o}var Br=112,ql=18;function ua(e,t,r){let n=Xe(e),o=n+Xe(t),i=new Uint8Array(o+r.byteLength);return We(e,i,0),We(t,i,n),i.set(r,o),i}var Hl=Symbol.for("@ipld/js-cid/CID");var Mo={};St(Mo,{identity:()=>Ct});var fa=0,zl="identity",la=ne;function Gl(e,t){if(t?.truncate!=null&&t.truncate!==e.byteLength){if(t.truncate<0||t.truncate>e.byteLength)throw new Error(`Invalid truncate option, must be less than or equal to ${e.byteLength}`);e=e.subarray(0,t.truncate)}return Yt(fa,la(e))}var Ct={code:fa,name:zl,encode:la,digest:Gl};function Y(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}function oe(e=0){return new Uint8Array(e)}function Bt(e=0){return new Uint8Array(e)}function Ut(e,t){t==null&&(t=e.reduce((o,i)=>o+i.length,0));let r=Bt(t),n=0;for(let o of e)r.set(o,n),n+=o.length;return r}var ha=Symbol.for("@achingbrain/uint8arraylist");function da(e,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let r=0;for(let n of e){let o=r+n.byteLength;if(t<o)return{buf:n,index:t-r};r=o}throw new RangeError("index is out of bounds")}function Qe(e){return!!e?.[ha]}var _t=class e{bufs;length;[ha]=!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 r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(Qe(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...t){this.prependAll(t)}prependAll(t){let r=0;for(let n of t.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(Qe(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(t){let r=da(this.bufs,t);return r.buf[r.index]}set(t,r){let n=da(this.bufs,t);n.buf[n.index]=r}write(t,r=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(r+n,t[n]);else if(Qe(t))for(let n=0;n<t.length;n++)this.set(r+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,r){let{bufs:n,length:o}=this._subList(t,r);return Ut(n,o)}subarray(t,r){let{bufs:n,length:o}=this._subList(t,r);return n.length===1?n[0]:Ut(n,o)}sublist(t,r){let{bufs:n,length:o}=this._subList(t,r),i=new e;return i.length=o,i.bufs=[...n],i}_subList(t,r){if(t=t??0,r=r??this.length,t<0&&(t=this.length+t),r<0&&(r=this.length+r),t<0||r>this.length)throw new RangeError("index is out of bounds");if(t===r)return{bufs:[],length:0};if(t===0&&r===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 f=t>=c&&t<a,u=r>c&&r<=a;if(f&&u){if(t===c&&r===a){n.push(s);break}let l=t-c;n.push(s.subarray(l,l+(r-t)));break}if(f){if(t===0){n.push(s);continue}n.push(s.subarray(t-c));continue}if(u){if(r===a){n.push(s);break}n.push(s.subarray(0,r-c));break}n.push(s)}return{bufs:n,length:r-t}}indexOf(t,r=0){if(!Qe(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(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.length===0)return r>this.length?this.length:r;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 l=0;l<i;l++)s[l]=-1;for(let l=0;l<o;l++)s[n[l]]=l;let c=s,a=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=a;l+=u){u=0;for(let y=f;y>=0;y--){let v=this.get(l+y);if(n[y]!==v){u=Math.max(1,y-c[v]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=Bt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let o=oe(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt16(0,r,n),this.write(o,t)}getInt32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(t,r,n){let o=oe(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt32(0,r,n),this.write(o,t)}getBigInt64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(t,r,n){let o=oe(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigInt64(0,r,n),this.write(o,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=Bt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let o=oe(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint16(0,r,n),this.write(o,t)}getUint32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(t,r,n){let o=oe(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint32(0,r,n),this.write(o,t)}getBigUint64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(t,r,n){let o=oe(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigUint64(0,r,n),this.write(o,t)}getFloat32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(t,r,n){let o=oe(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat32(0,r,n),this.write(o,t)}getFloat64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(t,r,n){let o=oe(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat64(0,r,n),this.write(o,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!Y(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((o,i)=>o+i.byteLength,0)),n.length=r,n}};var Fo={};St(Fo,{base10:()=>Zl});var Zl=ge({prefix:"9",name:"base10",alphabet:"0123456789"});var $o={};St($o,{base16:()=>jl,base16upper:()=>Yl});var jl=nt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Yl=nt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var qo={};St(qo,{base2:()=>Wl});var Wl=nt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ho={};St(Ho,{base256emoji:()=>ed});var pa=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}"),Xl=pa.reduce((e,t,r)=>(e[r]=t,e),[]),Jl=pa.reduce((e,t,r)=>{let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);return e[n]=r,e},[]);function Ql(e){return e.reduce((t,r)=>(t+=Xl[r],t),"")}function td(e){let t=[];for(let r of e){let n=r.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${r}`);let o=Jl[n];if(o==null)throw new Error(`Non-base256emoji character: ${r}`);t.push(o)}return new Uint8Array(t)}var ed=ze({prefix:"\u{1F680}",name:"base256emoji",encode:Ql,decode:td});var zo={};St(zo,{base8:()=>rd});var rd=nt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Go={};St(Go,{identity:()=>nd});var nd=ze({prefix:"\0",name:"identity",encode:e=>js(e),decode:e=>Zs(e)});var Vm=new TextEncoder,Mm=new TextDecoder;var Yo={};St(Yo,{sha256:()=>_r,sha512:()=>ad});var sd=20;function jo({name:e,code:t,encode:r,minDigestLength:n,maxDigestLength:o}){return new Zo(e,t,r,n,o)}var Zo=class{name;code;encode;minDigestLength;maxDigestLength;constructor(t,r,n,o,i){this.name=t,this.code=r,this.encode=n,this.minDigestLength=o??sd,this.maxDigestLength=i}digest(t,r){if(r?.truncate!=null){if(r.truncate<this.minDigestLength)throw new Error(`Invalid truncate option, must be greater than or equal to ${this.minDigestLength}`);if(this.maxDigestLength!=null&&r.truncate>this.maxDigestLength)throw new Error(`Invalid truncate option, must be less than or equal to ${this.maxDigestLength}`)}if(t instanceof Uint8Array){let n=this.encode(t);return n instanceof Uint8Array?ma(n,this.code,r?.truncate):n.then(o=>ma(o,this.code,r?.truncate))}else throw Error("Unknown type, must be binary type")}};function ma(e,t,r){if(r!=null&&r!==e.byteLength){if(r>e.byteLength)throw new Error(`Invalid truncate option, must be less than or equal to ${e.byteLength}`);e=e.subarray(0,r)}return Yt(t,e)}function ga(e){return async t=>new Uint8Array(await crypto.subtle.digest(e,t))}var _r=jo({name:"sha2-256",code:18,encode:ga("SHA-256")}),ad=jo({name:"sha2-512",code:19,encode:ga("SHA-512")});var Dr={...Go,...qo,...zo,...Fo,...$o,..._o,...ko,...Do,...No,...Ho},Jm={...Yo,...Mo};function ba(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var xa=ba("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),Wo=ba("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=Bt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),cd={utf8:xa,"utf-8":xa,hex:Dr.base16,latin1:Wo,ascii:Wo,binary:Wo,...Dr},yn=cd;function H(e,t="utf8"){let r=yn[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return r.decoder.decode(`${r.prefix}${e}`)}function z(e,t="utf8"){let r=yn[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return r.encoder.encode(e).substring(1)}var ud=parseInt("11111",2),Xo=parseInt("10000000",2),fd=parseInt("01111111",2),wa={0:Rr,1:Rr,2:ld,3:pd,4:md,5:hd,6:dd,16:Rr,22:Rr,48:Rr};function ie(e,t={offset:0}){let r=e[t.offset]&ud;if(t.offset++,wa[r]!=null)return wa[r](e,t);throw new Error("No decoder for tag "+r)}function Pr(e,t){let r=0;if((e[t.offset]&Xo)===Xo){let n=e[t.offset]&fd,o="0x";t.offset++;for(let i=0;i<n;i++,t.offset++)o+=e[t.offset].toString(16).padStart(2,"0");r=parseInt(o,16)}else r=e[t.offset],t.offset++;return r}function Rr(e,t){Pr(e,t);let r=[];for(;!(t.offset>=e.byteLength);){let n=ie(e,t);if(n===null)break;r.push(n)}return r}function ld(e,t){let r=Pr(e,t),n=t.offset,o=t.offset+r,i=[];for(let s=n;s<o;s++)s===n&&e[s]===0||i.push(e[s]);return t.offset+=r,Uint8Array.from(i)}function dd(e,t){let r=Pr(e,t),n=t.offset+r,o=e[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 f=e[t.offset];if(t.offset++,a.push(f&127),f<128){a.reverse();let u=0;for(let l=0;l<a.length;l++)u+=a[l]<<l*7;c+=`.${u}`,a=[]}}return c}function hd(e,t){return t.offset++,null}function pd(e,t){let r=Pr(e,t),n=e[t.offset];t.offset++;let o=e.subarray(t.offset,t.offset+r-1);if(t.offset+=r,n!==0)throw new Error("Unused bits in bit string is unimplemented");return o}function md(e,t){let r=Pr(e,t),n=e.subarray(t.offset,t.offset+r);return t.offset+=r,n}function yd(e){let t=e.toString(16);t.length%2===1&&(t="0"+t);let r=new _t;for(let n=0;n<t.length;n+=2)r.append(Uint8Array.from([parseInt(`${t[n]}${t[n+1]}`,16)]));return r}function Jo(e){if(e.byteLength<128)return Uint8Array.from([e.byteLength]);let t=yd(e.byteLength);return new _t(Uint8Array.from([t.byteLength|Xo]),t)}function It(e){let t=new _t,r=128;return(e.subarray()[0]&r)===r&&t.append(Uint8Array.from([0])),t.append(e),new _t(Uint8Array.from([2]),Jo(t),t)}function gn(e){let t=Uint8Array.from([0]),r=new _t(t,e);return new _t(Uint8Array.from([3]),Jo(r),r)}function be(e,t=48){let r=new _t;for(let n of e)r.append(n);return new _t(Uint8Array.from([t]),Jo(r),r)}async function Ea(e,t,r,n){let o=await crypto.subtle.importKey("jwk",e,{name:"ECDSA",namedCurve:e.crv??"P-256"},!1,["verify"]);n?.signal?.throwIfAborted();let i=await crypto.subtle.verify({name:"ECDSA",hash:{name:"SHA-256"}},o,t,r.subarray());return n?.signal?.throwIfAborted(),i}var gd=Uint8Array.from([6,8,42,134,72,206,61,3,1,7]),xd=Uint8Array.from([6,5,43,129,4,0,34]),bd=Uint8Array.from([6,5,43,129,4,0,35]),wd={ext:!0,kty:"EC",crv:"P-256"},Ed={ext:!0,kty:"EC",crv:"P-384"},Sd={ext:!0,kty:"EC",crv:"P-521"},Qo=32,ti=48,ei=66;function ri(e){let t=ie(e);return Sa(t)}function Sa(e){let t=e[1][1][0],r=1,n,o;if(t.byteLength===Qo*2+1)return n=z(t.subarray(r,r+Qo),"base64url"),o=z(t.subarray(r+Qo),"base64url"),new tr({...wd,key_ops:["verify"],x:n,y:o});if(t.byteLength===ti*2+1)return n=z(t.subarray(r,r+ti),"base64url"),o=z(t.subarray(r+ti),"base64url"),new tr({...Ed,key_ops:["verify"],x:n,y:o});if(t.byteLength===ei*2+1)return n=z(t.subarray(r,r+ei),"base64url"),o=z(t.subarray(r+ei),"base64url"),new tr({...Sd,key_ops:["verify"],x:n,y:o});throw new st(`coordinates were wrong length, got ${t.byteLength}, expected 65, 97 or 133`)}function va(e){return be([It(Uint8Array.from([1])),be([vd(e.crv)],160),be([gn(new _t(Uint8Array.from([4]),H(e.x??"","base64url"),H(e.y??"","base64url")))],161)]).subarray()}function vd(e){if(e==="P-256")return gd;if(e==="P-384")return xd;if(e==="P-521")return bd;throw new st(`Invalid curve ${e}`)}var tr=class{type="ECDSA";jwk;_raw;constructor(t){this.jwk=t}get raw(){return this._raw==null&&(this._raw=va(this.jwk)),this._raw}toMultihash(){return Ct.digest(er(this))}toCID(){return j.createV1(114,this.toMultihash())}toString(){return X.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Y(this.raw,t.raw)}async verify(t,r,n){return Ea(this.jwk,r,t,n)}};function Ne(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Wt(e,t=""){if(!Number.isSafeInteger(e)||e<0){let r=t&&`"${t}" `;throw new Error(`${r}expected integer >= 0, got ${e}`)}}function q(e,t,r=""){let n=Ne(e),o=e?.length,i=t!==void 0;if(!n||i&&o!==t){let s=r&&`"${r}" `,c=i?` of length ${t}`:"",a=n?`length=${o}`:`type=${typeof e}`;throw new Error(s+"expected Uint8Array"+c+", got "+a)}return e}function xn(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash must wrapped by utils.createHasher");Wt(e.outputLen),Wt(e.blockLen)}function rr(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Ia(e,t){q(e,void 0,"digestInto() output");let r=t.outputLen;if(e.length<r)throw new Error('"digestInto() output" expected to be of length >='+r)}function ae(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function bn(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Vt(e,t){return e<<32-t|e>>>t}var Ta=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",Ad=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function ce(e){if(q(e),Ta)return e.toHex();let t="";for(let r=0;r<e.length;r++)t+=Ad[e[r]];return t}var se={_0:48,_9:57,A:65,F:70,a:97,f:102};function Aa(e){if(e>=se._0&&e<=se._9)return e-se._0;if(e>=se.A&&e<=se.F)return e-(se.A-10);if(e>=se.a&&e<=se.f)return e-(se.a-10)}function ue(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);if(Ta)return Uint8Array.fromHex(e);let t=e.length,r=t/2;if(t%2)throw new Error("hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(r);for(let o=0,i=0;o<r;o++,i+=2){let s=Aa(e.charCodeAt(i)),c=Aa(e.charCodeAt(i+1));if(s===void 0||c===void 0){let a=e[i]+e[i+1];throw new Error('hex string expected, got non-hex character "'+a+'" at index '+i)}n[o]=s*16+c}return n}function Tt(...e){let t=0;for(let n=0;n<e.length;n++){let o=e[n];q(o),t+=o.length}let r=new Uint8Array(t);for(let n=0,o=0;n<e.length;n++){let i=e[n];r.set(i,o),o+=i.length}return r}function ni(e,t={}){let r=(o,i)=>e(i).update(o).digest(),n=e(void 0);return r.outputLen=n.outputLen,r.blockLen=n.blockLen,r.create=o=>e(o),Object.assign(r,t),Object.freeze(r)}function nr(e=32){let t=typeof globalThis=="object"?globalThis.crypto:null;if(typeof t?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");return t.getRandomValues(new Uint8Array(e))}var oi=e=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,e])});function Ca(e,t,r){return e&t^~e&r}function Ba(e,t,r){return e&t^e&r^t&r}var Nr=class{blockLen;outputLen;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor(t,r,n,o){this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=o,this.buffer=new Uint8Array(t),this.view=bn(this.buffer)}update(t){rr(this),q(t);let{view:r,buffer:n,blockLen:o}=this,i=t.length;for(let s=0;s<i;){let c=Math.min(o-this.pos,i-s);if(c===o){let a=bn(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(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){rr(this),Ia(t,this),this.finished=!0;let{buffer:r,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;r[s++]=128,ae(this.buffer.subarray(s)),this.padOffset>o-s&&(this.process(n,0),s=0);for(let l=s;l<o;l++)r[l]=0;n.setBigUint64(o-8,BigInt(this.length*8),i),this.process(n,0);let c=bn(t),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let f=a/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)c.setUint32(4*l,u[l],i)}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||=new this.constructor,t.set(...this.get());let{blockLen:r,buffer:n,length:o,finished:i,destroyed:s,pos:c}=this;return t.destroyed=s,t.finished=i,t.length=o,t.pos=c,o%r&&t.buffer.set(n),t}clone(){return this._cloneInto()}},fe=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var ht=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var wn=BigInt(4294967295),_a=BigInt(32);function Id(e,t=!1){return t?{h:Number(e&wn),l:Number(e>>_a&wn)}:{h:Number(e>>_a&wn)|0,l:Number(e&wn)|0}}function Da(e,t=!1){let r=e.length,n=new Uint32Array(r),o=new Uint32Array(r);for(let i=0;i<r;i++){let{h:s,l:c}=Id(e[i],t);[n[i],o[i]]=[s,c]}return[n,o]}var ii=(e,t,r)=>e>>>r,si=(e,t,r)=>e<<32-r|t>>>r,Le=(e,t,r)=>e>>>r|t<<32-r,Ue=(e,t,r)=>e<<32-r|t>>>r,Lr=(e,t,r)=>e<<64-r|t>>>r-32,Ur=(e,t,r)=>e>>>r-32|t<<64-r;function Xt(e,t,r,n){let o=(t>>>0)+(n>>>0);return{h:e+r+(o/2**32|0)|0,l:o|0}}var Ra=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),Pa=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,Na=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),La=(e,t,r,n,o)=>t+r+n+o+(e/2**32|0)|0,Ua=(e,t,r,n,o)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(o>>>0),Oa=(e,t,r,n,o,i)=>t+r+n+o+i+(e/2**32|0)|0;var Cd=Uint32Array.from([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]),we=new Uint32Array(64),ai=class extends Nr{constructor(t){super(64,t,8,!1)}get(){let{A:t,B:r,C:n,D:o,E:i,F:s,G:c,H:a}=this;return[t,r,n,o,i,s,c,a]}set(t,r,n,o,i,s,c,a){this.A=t|0,this.B=r|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,r){for(let l=0;l<16;l++,r+=4)we[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let y=we[l-15],v=we[l-2],b=Vt(y,7)^Vt(y,18)^y>>>3,T=Vt(v,17)^Vt(v,19)^v>>>10;we[l]=T+we[l-7]+b+we[l-16]|0}let{A:n,B:o,C:i,D:s,E:c,F:a,G:f,H:u}=this;for(let l=0;l<64;l++){let y=Vt(c,6)^Vt(c,11)^Vt(c,25),v=u+y+Ca(c,a,f)+Cd[l]+we[l]|0,T=(Vt(n,2)^Vt(n,13)^Vt(n,22))+Ba(n,o,i)|0;u=f,f=a,a=c,c=s+v|0,s=i,i=o,o=n,n=v+T|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,f=f+this.G|0,u=u+this.H|0,this.set(n,o,i,s,c,a,f,u)}roundClean(){ae(we)}destroy(){this.set(0,0,0,0,0,0,0,0),ae(this.buffer)}},ci=class extends ai{A=fe[0]|0;B=fe[1]|0;C=fe[2]|0;D=fe[3]|0;E=fe[4]|0;F=fe[5]|0;G=fe[6]|0;H=fe[7]|0;constructor(){super(32)}};var ka=Da(["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(e=>BigInt(e))),Bd=ka[0],_d=ka[1],Ee=new Uint32Array(80),Se=new Uint32Array(80),ui=class extends Nr{constructor(t){super(128,t,16,!1)}get(){let{Ah:t,Al:r,Bh:n,Bl:o,Ch:i,Cl:s,Dh:c,Dl:a,Eh:f,El:u,Fh:l,Fl:y,Gh:v,Gl:b,Hh:T,Hl:I}=this;return[t,r,n,o,i,s,c,a,f,u,l,y,v,b,T,I]}set(t,r,n,o,i,s,c,a,f,u,l,y,v,b,T,I){this.Ah=t|0,this.Al=r|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=f|0,this.El=u|0,this.Fh=l|0,this.Fl=y|0,this.Gh=v|0,this.Gl=b|0,this.Hh=T|0,this.Hl=I|0}process(t,r){for(let S=0;S<16;S++,r+=4)Ee[S]=t.getUint32(r),Se[S]=t.getUint32(r+=4);for(let S=16;S<80;S++){let L=Ee[S-15]|0,k=Se[S-15]|0,M=Le(L,k,1)^Le(L,k,8)^ii(L,k,7),V=Ue(L,k,1)^Ue(L,k,8)^si(L,k,7),h=Ee[S-2]|0,p=Se[S-2]|0,_=Le(h,p,19)^Lr(h,p,61)^ii(h,p,6),D=Ue(h,p,19)^Ur(h,p,61)^si(h,p,6),A=Na(V,D,Se[S-7],Se[S-16]),m=La(A,M,_,Ee[S-7],Ee[S-16]);Ee[S]=m|0,Se[S]=A|0}let{Ah:n,Al:o,Bh:i,Bl:s,Ch:c,Cl:a,Dh:f,Dl:u,Eh:l,El:y,Fh:v,Fl:b,Gh:T,Gl:I,Hh:w,Hl:C}=this;for(let S=0;S<80;S++){let L=Le(l,y,14)^Le(l,y,18)^Lr(l,y,41),k=Ue(l,y,14)^Ue(l,y,18)^Ur(l,y,41),M=l&v^~l&T,V=y&b^~y&I,h=Ua(C,k,V,_d[S],Se[S]),p=Oa(h,w,L,M,Bd[S],Ee[S]),_=h|0,D=Le(n,o,28)^Lr(n,o,34)^Lr(n,o,39),A=Ue(n,o,28)^Ur(n,o,34)^Ur(n,o,39),m=n&i^n&c^i&c,g=o&s^o&a^s&a;w=T|0,C=I|0,T=v|0,I=b|0,v=l|0,b=y|0,{h:l,l:y}=Xt(f|0,u|0,p|0,_|0),f=c|0,u=a|0,c=i|0,a=s|0,i=n|0,s=o|0;let d=Ra(_,A,g);n=Pa(d,p,D,m),o=d|0}({h:n,l:o}=Xt(this.Ah|0,this.Al|0,n|0,o|0)),{h:i,l:s}=Xt(this.Bh|0,this.Bl|0,i|0,s|0),{h:c,l:a}=Xt(this.Ch|0,this.Cl|0,c|0,a|0),{h:f,l:u}=Xt(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:y}=Xt(this.Eh|0,this.El|0,l|0,y|0),{h:v,l:b}=Xt(this.Fh|0,this.Fl|0,v|0,b|0),{h:T,l:I}=Xt(this.Gh|0,this.Gl|0,T|0,I|0),{h:w,l:C}=Xt(this.Hh|0,this.Hl|0,w|0,C|0),this.set(n,o,i,s,c,a,f,u,l,y,v,b,T,I,w,C)}roundClean(){ae(Ee,Se)}destroy(){ae(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},fi=class extends ui{Ah=ht[0]|0;Al=ht[1]|0;Bh=ht[2]|0;Bl=ht[3]|0;Ch=ht[4]|0;Cl=ht[5]|0;Dh=ht[6]|0;Dl=ht[7]|0;Eh=ht[8]|0;El=ht[9]|0;Fh=ht[10]|0;Fl=ht[11]|0;Gh=ht[12]|0;Gl=ht[13]|0;Hh=ht[14]|0;Hl=ht[15]|0;constructor(){super(64)}};var or=ni(()=>new ci,oi(1));var Ka=ni(()=>new fi,oi(3));var di=BigInt(0),li=BigInt(1);function le(e,t=""){if(typeof e!="boolean"){let r=t&&`"${t}" `;throw new Error(r+"expected boolean, got type="+typeof e)}return e}function Va(e){if(typeof e=="bigint"){if(!En(e))throw new Error("positive bigint expected, got "+e)}else Wt(e);return e}function Or(e){let t=Va(e).toString(16);return t.length&1?"0"+t:t}function Ma(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return e===""?di:BigInt("0x"+e)}function ir(e){return Ma(ce(e))}function Oe(e){return Ma(ce(vn(q(e)).reverse()))}function Sn(e,t){Wt(t),e=Va(e);let r=ue(e.toString(16).padStart(t*2,"0"));if(r.length!==t)throw new Error("number too large");return r}function hi(e,t){return Sn(e,t).reverse()}function vn(e){return Uint8Array.from(e)}var En=e=>typeof e=="bigint"&&di<=e;function Dd(e,t,r){return En(e)&&En(t)&&En(r)&&t<=e&&e<r}function kr(e,t,r,n){if(!Dd(t,r,n))throw new Error("expected valid "+e+": "+r+" <= n < "+n+", got "+t)}function pi(e){let t;for(t=0;e>di;e>>=li,t+=1);return t}var Kr=e=>(li<<BigInt(e))-li;function Fa(e,t,r){if(Wt(e,"hashLen"),Wt(t,"qByteLen"),typeof r!="function")throw new Error("hmacFn must be a function");let n=I=>new Uint8Array(I),o=Uint8Array.of(),i=Uint8Array.of(0),s=Uint8Array.of(1),c=1e3,a=n(e),f=n(e),u=0,l=()=>{a.fill(1),f.fill(0),u=0},y=(...I)=>r(f,Tt(a,...I)),v=(I=o)=>{f=y(i,I),a=y(),I.length!==0&&(f=y(s,I),a=y())},b=()=>{if(u++>=c)throw new Error("drbg: tried max amount of iterations");let I=0,w=[];for(;I<t;){a=y();let C=a.slice();w.push(C),I+=a.length}return Tt(...w)};return(I,w)=>{l(),v(I);let C;for(;!(C=w(b()));)v();return l(),C}}function ve(e,t={},r={}){if(!e||typeof e!="object")throw new Error("expected valid options object");function n(i,s,c){let a=e[i];if(c&&a===void 0)return;let f=typeof a;if(f!==s||a===null)throw new Error(`param "${i}" is invalid: expected ${s}, got ${f}`)}let o=(i,s)=>Object.entries(i).forEach(([c,a])=>n(c,a,s));o(t,!1),o(r,!0)}function sr(e){let t=new WeakMap;return(r,...n)=>{let o=t.get(r);if(o!==void 0)return o;let i=e(r,...n);return t.set(r,i),i}}var wt=BigInt(0),ct=BigInt(1),ke=BigInt(2),Ha=BigInt(3),za=BigInt(4),Ga=BigInt(5),Rd=BigInt(7),Za=BigInt(8),Pd=BigInt(9),ja=BigInt(16);function ot(e,t){let r=e%t;return r>=wt?r:t+r}function J(e,t,r){let n=e;for(;t-- >wt;)n*=n,n%=r;return n}function $a(e,t){if(e===wt)throw new Error("invert: expected non-zero number");if(t<=wt)throw new Error("invert: expected positive modulus, got "+t);let r=ot(e,t),n=t,o=wt,i=ct,s=ct,c=wt;for(;r!==wt;){let f=n/r,u=n%r,l=o-s*f,y=i-c*f;n=r,r=u,o=s,i=c,s=l,c=y}if(n!==ct)throw new Error("invert: does not exist");return ot(o,t)}function yi(e,t,r){if(!e.eql(e.sqr(t),r))throw new Error("Cannot find square root")}function Ya(e,t){let r=(e.ORDER+ct)/za,n=e.pow(t,r);return yi(e,n,t),n}function Nd(e,t){let r=(e.ORDER-Ga)/Za,n=e.mul(t,ke),o=e.pow(n,r),i=e.mul(t,o),s=e.mul(e.mul(i,ke),o),c=e.mul(i,e.sub(s,e.ONE));return yi(e,c,t),c}function Ld(e){let t=ar(e),r=Wa(e),n=r(t,t.neg(t.ONE)),o=r(t,n),i=r(t,t.neg(n)),s=(e+Rd)/ja;return(c,a)=>{let f=c.pow(a,s),u=c.mul(f,n),l=c.mul(f,o),y=c.mul(f,i),v=c.eql(c.sqr(u),a),b=c.eql(c.sqr(l),a);f=c.cmov(f,u,v),u=c.cmov(y,l,b);let T=c.eql(c.sqr(u),a),I=c.cmov(f,u,T);return yi(c,I,a),I}}function Wa(e){if(e<Ha)throw new Error("sqrt is not defined for small field");let t=e-ct,r=0;for(;t%ke===wt;)t/=ke,r++;let n=ke,o=ar(e);for(;qa(o,n)===1;)if(n++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(r===1)return Ya;let i=o.pow(n,t),s=(t+ct)/ke;return function(a,f){if(a.is0(f))return f;if(qa(a,f)!==1)throw new Error("Cannot find square root");let u=r,l=a.mul(a.ONE,i),y=a.pow(f,t),v=a.pow(f,s);for(;!a.eql(y,a.ONE);){if(a.is0(y))return a.ZERO;let b=1,T=a.sqr(y);for(;!a.eql(T,a.ONE);)if(b++,T=a.sqr(T),b===u)throw new Error("Cannot find square root");let I=ct<<BigInt(u-b-1),w=a.pow(l,I);u=b,l=a.sqr(w),y=a.mul(y,l),v=a.mul(v,w)}return v}}function Ud(e){return e%za===Ha?Ya:e%Za===Ga?Nd:e%ja===Pd?Ld(e):Wa(e)}var Xa=(e,t)=>(ot(e,t)&ct)===ct,Od=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function gi(e){let t={ORDER:"bigint",BYTES:"number",BITS:"number"},r=Od.reduce((n,o)=>(n[o]="function",n),t);return ve(e,r),e}function kd(e,t,r){if(r<wt)throw new Error("invalid exponent, negatives unsupported");if(r===wt)return e.ONE;if(r===ct)return t;let n=e.ONE,o=t;for(;r>wt;)r&ct&&(n=e.mul(n,o)),o=e.sqr(o),r>>=ct;return n}function Vr(e,t,r=!1){let n=new Array(t.length).fill(r?e.ZERO:void 0),o=t.reduce((s,c,a)=>e.is0(c)?s:(n[a]=s,e.mul(s,c)),e.ONE),i=e.inv(o);return t.reduceRight((s,c,a)=>e.is0(c)?s:(n[a]=e.mul(s,n[a]),e.mul(s,c)),i),n}function qa(e,t){let r=(e.ORDER-ct)/ke,n=e.pow(t,r),o=e.eql(n,e.ONE),i=e.eql(n,e.ZERO),s=e.eql(n,e.neg(e.ONE));if(!o&&!i&&!s)throw new Error("invalid Legendre symbol result");return o?1:i?0:-1}function Kd(e,t){t!==void 0&&Wt(t);let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}var mi=class{ORDER;BITS;BYTES;isLE;ZERO=wt;ONE=ct;_lengths;_sqrt;_mod;constructor(t,r={}){if(t<=wt)throw new Error("invalid field: expected ORDER > 0, got "+t);let n;this.isLE=!1,r!=null&&typeof r=="object"&&(typeof r.BITS=="number"&&(n=r.BITS),typeof r.sqrt=="function"&&(this.sqrt=r.sqrt),typeof r.isLE=="boolean"&&(this.isLE=r.isLE),r.allowedLengths&&(this._lengths=r.allowedLengths?.slice()),typeof r.modFromBytes=="boolean"&&(this._mod=r.modFromBytes));let{nBitLength:o,nByteLength:i}=Kd(t,n);if(i>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=t,this.BITS=o,this.BYTES=i,this._sqrt=void 0,Object.preventExtensions(this)}create(t){return ot(t,this.ORDER)}isValid(t){if(typeof t!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof t);return wt<=t&&t<this.ORDER}is0(t){return t===wt}isValidNot0(t){return!this.is0(t)&&this.isValid(t)}isOdd(t){return(t&ct)===ct}neg(t){return ot(-t,this.ORDER)}eql(t,r){return t===r}sqr(t){return ot(t*t,this.ORDER)}add(t,r){return ot(t+r,this.ORDER)}sub(t,r){return ot(t-r,this.ORDER)}mul(t,r){return ot(t*r,this.ORDER)}pow(t,r){return kd(this,t,r)}div(t,r){return ot(t*$a(r,this.ORDER),this.ORDER)}sqrN(t){return t*t}addN(t,r){return t+r}subN(t,r){return t-r}mulN(t,r){return t*r}inv(t){return $a(t,this.ORDER)}sqrt(t){return this._sqrt||(this._sqrt=Ud(this.ORDER)),this._sqrt(this,t)}toBytes(t){return this.isLE?hi(t,this.BYTES):Sn(t,this.BYTES)}fromBytes(t,r=!1){q(t);let{_lengths:n,BYTES:o,isLE:i,ORDER:s,_mod:c}=this;if(n){if(!n.includes(t.length)||t.length>o)throw new Error("Field.fromBytes: expected "+n+" bytes, got "+t.length);let f=new Uint8Array(o);f.set(t,i?0:f.length-t.length),t=f}if(t.length!==o)throw new Error("Field.fromBytes: expected "+o+" bytes, got "+t.length);let a=i?Oe(t):ir(t);if(c&&(a=ot(a,s)),!r&&!this.isValid(a))throw new Error("invalid field element: outside of range 0..ORDER");return a}invertBatch(t){return Vr(this,t)}cmov(t,r,n){return n?r:t}};function ar(e,t={}){return new mi(e,t)}function Ja(e){if(typeof e!="bigint")throw new Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}function xi(e){let t=Ja(e);return t+Math.ceil(t/2)}function bi(e,t,r=!1){q(e);let n=e.length,o=Ja(t),i=xi(t);if(n<16||n<i||n>1024)throw new Error("expected "+i+"-1024 bytes of input, got "+n);let s=r?Oe(e):ir(e),c=ot(s,t-ct)+ct;return r?hi(c,o):Sn(c,o)}var cr=BigInt(0),Ke=BigInt(1);function Mr(e,t){let r=t.negate();return e?r:t}function Ve(e,t){let r=Vr(e.Fp,t.map(n=>n.Z));return t.map((n,o)=>e.fromAffine(n.toAffine(r[o])))}function rc(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+e)}function wi(e,t){rc(e,t);let r=Math.ceil(t/e)+1,n=2**(e-1),o=2**e,i=Kr(e),s=BigInt(e);return{windows:r,windowSize:n,mask:i,maxNumber:o,shiftBy:s}}function Qa(e,t,r){let{windowSize:n,mask:o,maxNumber:i,shiftBy:s}=r,c=Number(e&o),a=e>>s;c>n&&(c-=i,a+=Ke);let f=t*n,u=f+Math.abs(c)-1,l=c===0,y=c<0,v=t%2!==0;return{nextN:a,offset:u,isZero:l,isNeg:y,isNegF:v,offsetF:f}}var Ei=new WeakMap,nc=new WeakMap;function Si(e){return nc.get(e)||1}function tc(e){if(e!==cr)throw new Error("invalid wNAF")}var ur=class{BASE;ZERO;Fn;bits;constructor(t,r){this.BASE=t.BASE,this.ZERO=t.ZERO,this.Fn=t.Fn,this.bits=r}_unsafeLadder(t,r,n=this.ZERO){let o=t;for(;r>cr;)r&Ke&&(n=n.add(o)),o=o.double(),r>>=Ke;return n}precomputeWindow(t,r){let{windows:n,windowSize:o}=wi(r,this.bits),i=[],s=t,c=s;for(let a=0;a<n;a++){c=s,i.push(c);for(let f=1;f<o;f++)c=c.add(s),i.push(c);s=c.double()}return i}wNAF(t,r,n){if(!this.Fn.isValid(n))throw new Error("invalid scalar");let o=this.ZERO,i=this.BASE,s=wi(t,this.bits);for(let c=0;c<s.windows;c++){let{nextN:a,offset:f,isZero:u,isNeg:l,isNegF:y,offsetF:v}=Qa(n,c,s);n=a,u?i=i.add(Mr(y,r[v])):o=o.add(Mr(l,r[f]))}return tc(n),{p:o,f:i}}wNAFUnsafe(t,r,n,o=this.ZERO){let i=wi(t,this.bits);for(let s=0;s<i.windows&&n!==cr;s++){let{nextN:c,offset:a,isZero:f,isNeg:u}=Qa(n,s,i);if(n=c,!f){let l=r[a];o=o.add(u?l.negate():l)}}return tc(n),o}getPrecomputes(t,r,n){let o=Ei.get(r);return o||(o=this.precomputeWindow(r,t),t!==1&&(typeof n=="function"&&(o=n(o)),Ei.set(r,o))),o}cached(t,r,n){let o=Si(t);return this.wNAF(o,this.getPrecomputes(o,t,n),r)}unsafe(t,r,n,o){let i=Si(t);return i===1?this._unsafeLadder(t,r,o):this.wNAFUnsafe(i,this.getPrecomputes(i,t,n),r,o)}createCache(t,r){rc(r,this.bits),nc.set(t,r),Ei.delete(t)}hasCache(t){return Si(t)!==1}};function oc(e,t,r,n){let o=t,i=e.ZERO,s=e.ZERO;for(;r>cr||n>cr;)r&Ke&&(i=i.add(o)),n&Ke&&(s=s.add(o)),o=o.double(),r>>=Ke,n>>=Ke;return{p1:i,p2:s}}function ec(e,t,r){if(t){if(t.ORDER!==e)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return gi(t),t}else return ar(e,{isLE:r})}function An(e,t,r={},n){if(n===void 0&&(n=e==="edwards"),!t||typeof t!="object")throw new Error(`expected valid ${e} CURVE object`);for(let a of["p","n","h"]){let f=t[a];if(!(typeof f=="bigint"&&f>cr))throw new Error(`CURVE.${a} must be positive bigint`)}let o=ec(t.p,r.Fp,n),i=ec(t.n,r.Fn,n),c=["Gx","Gy","a",e==="weierstrass"?"b":"d"];for(let a of c)if(!o.isValid(t[a]))throw new Error(`CURVE.${a} must be valid field element of CURVE.Fp`);return t=Object.freeze(Object.assign({},t)),{CURVE:t,Fp:o,Fn:i}}function In(e,t){return function(n){let o=e(n);return{secretKey:o,publicKey:t(o)}}}var Ae=BigInt(0),ut=BigInt(1),vi=BigInt(2),Vd=BigInt(8);function Md(e,t,r,n){let o=e.sqr(r),i=e.sqr(n),s=e.add(e.mul(t.a,o),i),c=e.add(e.ONE,e.mul(t.d,e.mul(o,i)));return e.eql(s,c)}function ic(e,t={}){let r=An("edwards",e,t,t.FpFnLE),{Fp:n,Fn:o}=r,i=r.CURVE,{h:s}=i;ve(t,{},{uvRatio:"function"});let c=vi<<BigInt(o.BYTES*8)-ut,a=I=>n.create(I),f=t.uvRatio||((I,w)=>{try{return{isValid:!0,value:n.sqrt(n.div(I,w))}}catch{return{isValid:!1,value:Ae}}});if(!Md(n,i,i.Gx,i.Gy))throw new Error("bad curve params: generator point");function u(I,w,C=!1){let S=C?ut:Ae;return kr("coordinate "+I,w,S,c),w}function l(I){if(!(I instanceof b))throw new Error("EdwardsPoint expected")}let y=sr((I,w)=>{let{X:C,Y:S,Z:L}=I,k=I.is0();w==null&&(w=k?Vd:n.inv(L));let M=a(C*w),V=a(S*w),h=n.mul(L,w);if(k)return{x:Ae,y:ut};if(h!==ut)throw new Error("invZ was invalid");return{x:M,y:V}}),v=sr(I=>{let{a:w,d:C}=i;if(I.is0())throw new Error("bad point: ZERO");let{X:S,Y:L,Z:k,T:M}=I,V=a(S*S),h=a(L*L),p=a(k*k),_=a(p*p),D=a(V*w),A=a(p*a(D+h)),m=a(_+a(C*a(V*h)));if(A!==m)throw new Error("bad point: equation left != right (1)");let g=a(S*L),d=a(k*M);if(g!==d)throw new Error("bad point: equation left != right (2)");return!0});class b{static BASE=new b(i.Gx,i.Gy,ut,a(i.Gx*i.Gy));static ZERO=new b(Ae,ut,ut,Ae);static Fp=n;static Fn=o;X;Y;Z;T;constructor(w,C,S,L){this.X=u("x",w),this.Y=u("y",C),this.Z=u("z",S,!0),this.T=u("t",L),Object.freeze(this)}static CURVE(){return i}static fromAffine(w){if(w instanceof b)throw new Error("extended point not allowed");let{x:C,y:S}=w||{};return u("x",C),u("y",S),new b(C,S,ut,a(C*S))}static fromBytes(w,C=!1){let S=n.BYTES,{a:L,d:k}=i;w=vn(q(w,S,"point")),le(C,"zip215");let M=vn(w),V=w[S-1];M[S-1]=V&-129;let h=Oe(M),p=C?c:n.ORDER;kr("point.y",h,Ae,p);let _=a(h*h),D=a(_-ut),A=a(k*_-L),{isValid:m,value:g}=f(D,A);if(!m)throw new Error("bad point: invalid y coordinate");let d=(g&ut)===ut,E=(V&128)!==0;if(!C&&g===Ae&&E)throw new Error("bad point: x=0 and x_0=1");return E!==d&&(g=a(-g)),b.fromAffine({x:g,y:h})}static fromHex(w,C=!1){return b.fromBytes(ue(w),C)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(w=8,C=!0){return T.createCache(this,w),C||this.multiply(vi),this}assertValidity(){v(this)}equals(w){l(w);let{X:C,Y:S,Z:L}=this,{X:k,Y:M,Z:V}=w,h=a(C*V),p=a(k*L),_=a(S*V),D=a(M*L);return h===p&&_===D}is0(){return this.equals(b.ZERO)}negate(){return new b(a(-this.X),this.Y,this.Z,a(-this.T))}double(){let{a:w}=i,{X:C,Y:S,Z:L}=this,k=a(C*C),M=a(S*S),V=a(vi*a(L*L)),h=a(w*k),p=C+S,_=a(a(p*p)-k-M),D=h+M,A=D-V,m=h-M,g=a(_*A),d=a(D*m),E=a(_*m),R=a(A*D);return new b(g,d,R,E)}add(w){l(w);let{a:C,d:S}=i,{X:L,Y:k,Z:M,T:V}=this,{X:h,Y:p,Z:_,T:D}=w,A=a(L*h),m=a(k*p),g=a(V*S*D),d=a(M*_),E=a((L+k)*(h+p)-A-m),R=d-g,N=d+g,U=a(m-C*A),O=a(E*R),K=a(N*U),$=a(E*U),tt=a(R*N);return new b(O,K,tt,$)}subtract(w){return this.add(w.negate())}multiply(w){if(!o.isValidNot0(w))throw new Error("invalid scalar: expected 1 <= sc < curve.n");let{p:C,f:S}=T.cached(this,w,L=>Ve(b,L));return Ve(b,[C,S])[0]}multiplyUnsafe(w,C=b.ZERO){if(!o.isValid(w))throw new Error("invalid scalar: expected 0 <= sc < curve.n");return w===Ae?b.ZERO:this.is0()||w===ut?this:T.unsafe(this,w,S=>Ve(b,S),C)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}isTorsionFree(){return T.unsafe(this,i.n).is0()}toAffine(w){return y(this,w)}clearCofactor(){return s===ut?this:this.multiplyUnsafe(s)}toBytes(){let{x:w,y:C}=this.toAffine(),S=n.toBytes(C);return S[S.length-1]|=w&ut?128:0,S}toHex(){return ce(this.toBytes())}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let T=new ur(b,o.BITS);return b.BASE.precompute(8),b}function sc(e,t,r={}){if(typeof t!="function")throw new Error('"hash" function param is required');ve(r,{},{adjustScalarBytes:"function",randomBytes:"function",domain:"function",prehash:"function",mapToCurve:"function"});let{prehash:n}=r,{BASE:o,Fp:i,Fn:s}=e,c=r.randomBytes||nr,a=r.adjustScalarBytes||(h=>h),f=r.domain||((h,p,_)=>{if(le(_,"phflag"),p.length||_)throw new Error("Contexts/pre-hash are not supported");return h});function u(h){return s.create(Oe(h))}function l(h){let p=S.secretKey;q(h,S.secretKey,"secretKey");let _=q(t(h),2*p,"hashedSecretKey"),D=a(_.slice(0,p)),A=_.slice(p,2*p),m=u(D);return{head:D,prefix:A,scalar:m}}function y(h){let{head:p,prefix:_,scalar:D}=l(h),A=o.multiply(D),m=A.toBytes();return{head:p,prefix:_,scalar:D,point:A,pointBytes:m}}function v(h){return y(h).pointBytes}function b(h=Uint8Array.of(),...p){let _=Tt(...p);return u(t(f(_,q(h,void 0,"context"),!!n)))}function T(h,p,_={}){h=q(h,void 0,"message"),n&&(h=n(h));let{prefix:D,scalar:A,pointBytes:m}=y(p),g=b(_.context,D,h),d=o.multiply(g).toBytes(),E=b(_.context,d,m,h),R=s.create(g+E*A);if(!s.isValid(R))throw new Error("sign failed: invalid s");let N=Tt(d,s.toBytes(R));return q(N,S.signature,"result")}let I={zip215:!0};function w(h,p,_,D=I){let{context:A,zip215:m}=D,g=S.signature;h=q(h,g,"signature"),p=q(p,void 0,"message"),_=q(_,S.publicKey,"publicKey"),m!==void 0&&le(m,"zip215"),n&&(p=n(p));let d=g/2,E=h.subarray(0,d),R=Oe(h.subarray(d,g)),N,U,O;try{N=e.fromBytes(_,m),U=e.fromBytes(E,m),O=o.multiplyUnsafe(R)}catch{return!1}if(!m&&N.isSmallOrder())return!1;let K=b(A,U.toBytes(),N.toBytes(),p);return U.add(N.multiplyUnsafe(K)).subtract(O).clearCofactor().is0()}let C=i.BYTES,S={secretKey:C,publicKey:C,signature:2*C,seed:C};function L(h=c(S.seed)){return q(h,S.seed,"seed")}function k(h){return Ne(h)&&h.length===s.BYTES}function M(h,p){try{return!!e.fromBytes(h,p)}catch{return!1}}let V={getExtendedPublicKey:y,randomSecretKey:L,isValidSecretKey:k,isValidPublicKey:M,toMontgomery(h){let{y:p}=e.fromBytes(h),_=S.publicKey,D=_===32;if(!D&&_!==57)throw new Error("only defined for 25519 and 448");let A=D?i.div(ut+p,ut-p):i.div(p-ut,p+ut);return i.toBytes(A)},toMontgomerySecret(h){let p=S.secretKey;q(h,p);let _=t(h.subarray(0,p));return a(_).subarray(0,p)}};return Object.freeze({keygen:In(L,v),getPublicKey:v,sign:T,verify:w,utils:V,Point:e,lengths:S})}var Fd=BigInt(1),ac=BigInt(2);var $d=BigInt(5),qd=BigInt(8),Ai=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),Hd={p:Ai,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),h:qd,a:BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"),d:BigInt("0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3"),Gx:BigInt("0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a"),Gy:BigInt("0x6666666666666666666666666666666666666666666666666666666666666658")};function zd(e){let t=BigInt(10),r=BigInt(20),n=BigInt(40),o=BigInt(80),i=Ai,c=e*e%i*e%i,a=J(c,ac,i)*c%i,f=J(a,Fd,i)*e%i,u=J(f,$d,i)*f%i,l=J(u,t,i)*u%i,y=J(l,r,i)*l%i,v=J(y,n,i)*y%i,b=J(v,o,i)*v%i,T=J(b,o,i)*v%i,I=J(T,t,i)*u%i;return{pow_p_5_8:J(I,ac,i)*e%i,b2:c}}function Gd(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}var cc=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");function Zd(e,t){let r=Ai,n=ot(t*t*t,r),o=ot(n*n*t,r),i=zd(e*o).pow_p_5_8,s=ot(e*n*i,r),c=ot(t*s*s,r),a=s,f=ot(s*cc,r),u=c===e,l=c===ot(-e,r),y=c===ot(-e*cc,r);return u&&(s=a),(l||y)&&(s=f),Xa(s,r)&&(s=ot(-s,r)),{isValid:u||l,value:s}}var jd=ic(Hd,{uvRatio:Zd});function Yd(e){return sc(jd,Ka,Object.assign({adjustScalarBytes:Gd},e))}var uc=Yd({});var Fr=class extends Error{constructor(t="An error occurred while verifying a message"){super(t),this.name="VerificationError"}},Tn=class extends Error{constructor(t="Missing Web Crypto API"){super(t),this.name="WebCryptoMissingError"}};var fc={get(e=globalThis){let t=e.crypto;if(t?.subtle==null)throw new Tn("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p/blob/main/packages/crypto/README.md#web-crypto-api");return t}};var Ot=fc;var Cn=32;var Ii,Wd=(async()=>{try{return await Ot.get().subtle.generateKey({name:"Ed25519"},!0,["sign","verify"]),!0}catch{return!1}})();async function Xd(e,t,r){if(e.buffer instanceof ArrayBuffer){let n=await Ot.get().subtle.importKey("raw",e.buffer,{name:"Ed25519"},!1,["verify"]);return await Ot.get().subtle.verify({name:"Ed25519"},n,t,r instanceof Uint8Array?r:r.subarray())}throw new TypeError("WebCrypto does not support SharedArrayBuffer for Ed25519 keys")}function Jd(e,t,r){return uc.verify(t,r instanceof Uint8Array?r:r.subarray(),e)}async function lc(e,t,r){return Ii==null&&(Ii=await Wd),Ii?Xd(e,t,r):Jd(e,t,r)}function Bn(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var _n=class{type="Ed25519";raw;constructor(t){this.raw=Ti(t,Cn)}toMultihash(){return Ct.digest(er(this))}toCID(){return j.createV1(114,this.toMultihash())}toString(){return X.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Y(this.raw,t.raw)}verify(t,r,n){n?.signal?.throwIfAborted();let o=lc(this.raw,r,t);return Bn(o)?o.then(i=>(n?.signal?.throwIfAborted(),i)):o}};function Ci(e){return e=Ti(e,Cn),new _n(e)}function Ti(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new st(`Key must be a Uint8Array of length ${t}, got ${e.length}`);return e}var th=Math.pow(2,7),eh=Math.pow(2,14),rh=Math.pow(2,21),Bi=Math.pow(2,28),_i=Math.pow(2,35),Di=Math.pow(2,42),Ri=Math.pow(2,49),Q=128,gt=127;function Jt(e){if(e<th)return 1;if(e<eh)return 2;if(e<rh)return 3;if(e<Bi)return 4;if(e<_i)return 5;if(e<Di)return 6;if(e<Ri)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function $r(e,t,r=0){switch(Jt(e)){case 8:t[r++]=e&255|Q,e/=128;case 7:t[r++]=e&255|Q,e/=128;case 6:t[r++]=e&255|Q,e/=128;case 5:t[r++]=e&255|Q,e/=128;case 4:t[r++]=e&255|Q,e>>>=7;case 3:t[r++]=e&255|Q,e>>>=7;case 2:t[r++]=e&255|Q,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function Pi(e,t){let r=e[t],n=0;if(n+=r&gt,r<Q||(r=e[t+1],n+=(r&gt)<<7,r<Q)||(r=e[t+2],n+=(r&gt)<<14,r<Q)||(r=e[t+3],n+=(r&gt)<<21,r<Q)||(r=e[t+4],n+=(r&gt)*Bi,r<Q)||(r=e[t+5],n+=(r&gt)*_i,r<Q)||(r=e[t+6],n+=(r&gt)*Di,r<Q)||(r=e[t+7],n+=(r&gt)*Ri,r<Q))return n;throw new RangeError("Could not decode varint")}function nh(e,t){let r=e.get(t),n=0;if(n+=r&gt,r<Q||(r=e.get(t+1),n+=(r&gt)<<7,r<Q)||(r=e.get(t+2),n+=(r&gt)<<14,r<Q)||(r=e.get(t+3),n+=(r&gt)<<21,r<Q)||(r=e.get(t+4),n+=(r&gt)*Bi,r<Q)||(r=e.get(t+5),n+=(r&gt)*_i,r<Q)||(r=e.get(t+6),n+=(r&gt)*Di,r<Q)||(r=e.get(t+7),n+=(r&gt)*Ri,r<Q))return n;throw new RangeError("Could not decode varint")}function Ni(e,t=0){return e instanceof Uint8Array?Pi(e,t):nh(e,t)}var Li=new Float32Array([-0]),Ie=new Uint8Array(Li.buffer);function hc(e,t,r){Li[0]=e,t[r]=Ie[0],t[r+1]=Ie[1],t[r+2]=Ie[2],t[r+3]=Ie[3]}function pc(e,t){return Ie[0]=e[t],Ie[1]=e[t+1],Ie[2]=e[t+2],Ie[3]=e[t+3],Li[0]}var Ui=new Float64Array([-0]),xt=new Uint8Array(Ui.buffer);function mc(e,t,r){Ui[0]=e,t[r]=xt[0],t[r+1]=xt[1],t[r+2]=xt[2],t[r+3]=xt[3],t[r+4]=xt[4],t[r+5]=xt[5],t[r+6]=xt[6],t[r+7]=xt[7]}function yc(e,t){return xt[0]=e[t],xt[1]=e[t+1],xt[2]=e[t+2],xt[3]=e[t+3],xt[4]=e[t+4],xt[5]=e[t+5],xt[6]=e[t+6],xt[7]=e[t+7],Ui[0]}var ih=BigInt(Number.MAX_SAFE_INTEGER),sh=BigInt(Number.MIN_SAFE_INTEGER),Dt=class e{lo;hi;constructor(t,r){this.lo=t|0,this.hi=r|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(r+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 r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(BigInt(r)+(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,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?t<16384?t<128?1:2:t<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return Me;if(t<ih&&t>sh)return this.fromNumber(Number(t));let r=t<0n;r&&(t=-t);let n=t>>32n,o=t-(n<<32n);return r&&(n=~n|0n,o=~o|0n,++o>gc&&(o=0n,++n>gc&&(n=0n))),new e(Number(o),Number(n))}static fromNumber(t){if(t===0)return Me;let r=t<0;r&&(t=-t);let n=t>>>0,o=(t-n)/4294967296>>>0;return r&&(o=~o>>>0,n=~n>>>0,++n>4294967295&&(n=0,++o>4294967295&&(o=0))),new e(n,o)}static from(t){return typeof t=="number"?e.fromNumber(t):typeof t=="bigint"?e.fromBigInt(t):typeof t=="string"?e.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new e(t.low>>>0,t.high>>>0):Me}},Me=new Dt(0,0);Me.toBigInt=function(){return 0n};Me.zzEncode=Me.zzDecode=function(){return this};Me.length=function(){return 1};var gc=4294967296n;function xc(e){let t=0,r=0;for(let n=0;n<e.length;++n)r=e.charCodeAt(n),r<128?t+=1:r<2048?t+=2:(r&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function bc(e,t,r){if(r-t<1)return"";let o,i=[],s=0,c;for(;t<r;)c=e[t++],c<128?i[s++]=c:c>191&&c<224?i[s++]=(c&31)<<6|e[t++]&63:c>239&&c<365?(c=((c&7)<<18|(e[t++]&63)<<12|(e[t++]&63)<<6|e[t++]&63)-65536,i[s++]=55296+(c>>10),i[s++]=56320+(c&1023)):i[s++]=(c&15)<<12|(e[t++]&63)<<6|e[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 Oi(e,t,r){let n=r,o,i;for(let s=0;s<e.length;++s)o=e.charCodeAt(s),o<128?t[r++]=o:o<2048?(t[r++]=o>>6|192,t[r++]=o&63|128):(o&64512)===55296&&((i=e.charCodeAt(s+1))&64512)===56320?(o=65536+((o&1023)<<10)+(i&1023),++s,t[r++]=o>>18|240,t[r++]=o>>12&63|128,t[r++]=o>>6&63|128,t[r++]=o&63|128):(t[r++]=o>>12|224,t[r++]=o>>6&63|128,t[r++]=o&63|128);return r-n}function Mt(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function Dn(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var ki=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,Mt(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 Mt(this,4);return Dn(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Mt(this,4);return Dn(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Mt(this,4);let t=pc(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw Mt(this,4);let t=yc(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw Mt(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return bc(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw Mt(this,t);this.pos+=t}else do if(this.pos>=this.len)throw Mt(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 Dt(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*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;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw Mt(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,t}if(this.len-this.pos>4){for(;r<5;++r)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;r<5;++r){if(this.pos>=this.len)throw Mt(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw Mt(this,8);let t=Dn(this.buf,this.pos+=4),r=Dn(this.buf,this.pos+=4);return new Dt(t,r)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let t=Pi(this.buf,this.pos);return this.pos+=Jt(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 Ki(e){return new ki(e instanceof Uint8Array?e:e.subarray())}function fr(e,t,r){let n=Ki(e);return t.decode(n,void 0,r)}function Vi(e){let t=e??8192,r=t>>>1,n,o=t;return function(s){if(s<1||s>r)return Bt(s);o+s>t&&(n=Bt(t),o=0);let c=n.subarray(o,o+=s);return(o&7)!==0&&(o=(o|7)+1),c}}var Fe=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function Mi(){}var $i=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},ah=Vi();function ch(e){return globalThis.Buffer!=null?Bt(e):ah(e)}var Hr=class{len;head;tail;states;constructor(){this.len=0,this.head=new Fe(Mi,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Fe(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new qi((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(Rn,10,Dt.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=Dt.fromBigInt(t);return this._push(Rn,r.length(),r)}uint64Number(t){return this._push($r,Jt(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 r=Dt.fromBigInt(t).zzEncode();return this._push(Rn,r.length(),r)}sint64Number(t){let r=Dt.fromNumber(t).zzEncode();return this._push(Rn,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(Fi,1,t?1:0)}fixed32(t){return this._push(qr,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=Dt.fromBigInt(t);return this._push(qr,4,r.lo)._push(qr,4,r.hi)}fixed64Number(t){let r=Dt.fromNumber(t);return this._push(qr,4,r.lo)._push(qr,4,r.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(hc,4,t)}double(t){return this._push(mc,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(Fi,1,0):this.uint32(r)._push(fh,r,t)}string(t){let r=xc(t);return r!==0?this.uint32(r)._push(Oi,r,t):this._push(Fi,1,0)}fork(){return this.states=new $i(this),this.head=this.tail=new Fe(Mi,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 Fe(Mi,0,0),this.len=0),this}ldelim(){let t=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=r,this.len+=n),this}finish(){let t=this.head.next,r=ch(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function Fi(e,t,r){t[r]=e&255}function uh(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var qi=class extends Fe{next;constructor(t,r){super(uh,t,r),this.next=void 0}};function Rn(e,t,r){for(;e.hi!==0;)t[r++]=e.lo&127|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[r++]=e.lo&127|128,e.lo=e.lo>>>7;t[r++]=e.lo}function qr(e,t,r){t[r]=e&255,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}function fh(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(Hr.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(lh,t,e),this},Hr.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(dh,t,e),this});function lh(e,t,r){t.set(e,r)}function dh(e,t,r){e.length<40?Oi(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(H(e),r)}function Hi(){return new Hr}function lr(e,t){let r=Hi();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var dr;(function(e){e[e.VARINT=0]="VARINT",e[e.BIT64=1]="BIT64",e[e.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",e[e.START_GROUP=3]="START_GROUP",e[e.END_GROUP=4]="END_GROUP",e[e.BIT32=5]="BIT32"})(dr||(dr={}));function Pn(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function zr(e){function t(o){if(e[o.toString()]==null)throw new Error("Invalid enum value");return e[o]}let r=function(i,s){let c=t(i);s.int32(c)},n=function(i){let s=i.int32();return t(s)};return Pn("enum",dr.VARINT,r,n)}function hr(e,t){return Pn("message",dr.LENGTH_DELIMITED,e,t)}var it;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.secp256k1="secp256k1",e.ECDSA="ECDSA"})(it||(it={}));var zi;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.secp256k1=2]="secp256k1",e[e.ECDSA=3]="ECDSA"})(zi||(zi={}));(function(e){e.codec=()=>zr(zi)})(it||(it={}));var Qt;(function(e){let t;e.codec=()=>(t==null&&(t=hr((r,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),it.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),o.lengthDelimited!==!1&&n.ldelim()},(r,n,o={})=>{let i={},s=n==null?r.len:r.pos+n;for(;r.pos<s;){let c=r.uint32();switch(c>>>3){case 1:{i.Type=it.codec().decode(r);break}case 2:{i.Data=r.bytes();break}default:{r.skipType(c&7);break}}}return i})),t),e.encode=r=>lr(r,e.codec()),e.decode=(r,n)=>fr(r,e.codec(),n)})(Qt||(Qt={}));var Gi;(function(e){let t;e.codec=()=>(t==null&&(t=hr((r,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),it.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),o.lengthDelimited!==!1&&n.ldelim()},(r,n,o={})=>{let i={},s=n==null?r.len:r.pos+n;for(;r.pos<s;){let c=r.uint32();switch(c>>>3){case 1:{i.Type=it.codec().decode(r);break}case 2:{i.Data=r.bytes();break}default:{r.skipType(c&7);break}}}return i})),t),e.encode=r=>lr(r,e.codec()),e.decode=(r,n)=>fr(r,e.codec(),n)})(Gi||(Gi={}));var Zr={};St(Zr,{MAX_RSA_KEY_SIZE:()=>Zi,generateRSAKeyPair:()=>Ic,jwkToJWKKeyPair:()=>Tc,jwkToPkcs1:()=>yh,jwkToPkix:()=>Xi,jwkToRSAPrivateKey:()=>es,pkcs1MessageToJwk:()=>Yi,pkcs1MessageToRSAPrivateKey:()=>Ji,pkcs1ToJwk:()=>mh,pkcs1ToRSAPrivateKey:()=>Ac,pkixMessageToJwk:()=>Wi,pkixMessageToRSAPublicKey:()=>ts,pkixToJwk:()=>gh,pkixToRSAPublicKey:()=>Qi});var pr=class{type="RSA";jwk;_raw;_multihash;constructor(t,r){this.jwk=t,this._multihash=r}get raw(){return this._raw==null&&(this._raw=Zr.jwkToPkix(this.jwk)),this._raw}toMultihash(){return this._multihash}toCID(){return j.createV1(114,this._multihash)}toString(){return X.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Y(this.raw,t.raw)}verify(t,r,n){return vc(this.jwk,r,t,n)}},Gr=class{type="RSA";jwk;_raw;publicKey;constructor(t,r){this.jwk=t,this.publicKey=r}get raw(){return this._raw==null&&(this._raw=Zr.jwkToPkcs1(this.jwk)),this._raw}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Y(this.raw,t.raw)}sign(t,r){return Sc(this.jwk,t,r)}};var Zi=8192,ji=18,hh=1062,ph=Uint8Array.from([48,13,6,9,42,134,72,134,247,13,1,1,1,5,0]);function mh(e){let t=ie(e);return Yi(t)}function Yi(e){return{n:z(e[1],"base64url"),e:z(e[2],"base64url"),d:z(e[3],"base64url"),p:z(e[4],"base64url"),q:z(e[5],"base64url"),dp:z(e[6],"base64url"),dq:z(e[7],"base64url"),qi:z(e[8],"base64url"),kty:"RSA"}}function yh(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new st("JWK was missing components");return be([It(Uint8Array.from([0])),It(H(e.n,"base64url")),It(H(e.e,"base64url")),It(H(e.d,"base64url")),It(H(e.p,"base64url")),It(H(e.q,"base64url")),It(H(e.dp,"base64url")),It(H(e.dq,"base64url")),It(H(e.qi,"base64url"))]).subarray()}function gh(e){let t=ie(e,{offset:0});return Wi(t)}function Wi(e){let t=ie(e[1],{offset:0});return{kty:"RSA",n:z(t[0],"base64url"),e:z(t[1],"base64url")}}function Xi(e){if(e.n==null||e.e==null)throw new st("JWK was missing components");return be([ph,gn(be([It(H(e.n,"base64url")),It(H(e.e,"base64url"))]))]).subarray()}function Ac(e){let t=ie(e);return Ji(t)}function Ji(e){let t=Yi(e);return es(t)}function Qi(e,t){if(e.byteLength>=hh)throw new Ge("Key size is too large");let r=ie(e,{offset:0});return ts(r,e,t)}function ts(e,t,r){let n=Wi(e);if(r==null){let o=or(Qt.encode({Type:it.RSA,Data:t}));r=Yt(ji,o)}return new pr(n,r)}function es(e){if(Bc(e)>Zi)throw new st("Key size is too large");let t=Tc(e),r=or(Qt.encode({Type:it.RSA,Data:Xi(t.publicKey)})),n=Yt(ji,r);return new Gr(t.privateKey,new pr(t.publicKey,n))}async function Ic(e){if(e>Zi)throw new st("Key size is too large");let t=await Cc(e),r=or(Qt.encode({Type:it.RSA,Data:Xi(t.publicKey)})),n=Yt(ji,r);return new Gr(t.privateKey,new pr(t.publicKey,n))}function Tc(e){if(e==null)throw new st("Missing key parameter");return{privateKey:e,publicKey:{kty:e.kty,n:e.n,e:e.e}}}async function Cc(e,t){let r=await Ot.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]);t?.signal?.throwIfAborted();let n=await xh(r,t);return{privateKey:n[0],publicKey:n[1]}}async function Sc(e,t,r){let n=await Ot.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]);r?.signal?.throwIfAborted();let o=await Ot.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},n,t instanceof Uint8Array?t:t.subarray());return r?.signal?.throwIfAborted(),new Uint8Array(o,0,o.byteLength)}async function vc(e,t,r,n){let o=await Ot.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);n?.signal?.throwIfAborted();let i=await Ot.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},o,t,r instanceof Uint8Array?r:r.subarray());return n?.signal?.throwIfAborted(),i}async function xh(e,t){if(e.privateKey==null||e.publicKey==null)throw new st("Private and public key are required");let r=await Promise.all([Ot.get().subtle.exportKey("jwk",e.privateKey),Ot.get().subtle.exportKey("jwk",e.publicKey)]);return t?.signal?.throwIfAborted(),r}function Bc(e){if(e.kty!=="RSA")throw new st("invalid key type");if(e.n==null)throw new st("invalid key modulus");return H(e.n,"base64url").length*8}var Nn=class{oHash;iHash;blockLen;outputLen;finished=!1;destroyed=!1;constructor(t,r){if(xn(t),q(r,void 0,"key"),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 n=this.blockLen,o=new Uint8Array(n);o.set(r.length>n?t.create().update(r).digest():r);for(let i=0;i<o.length;i++)o[i]^=54;this.iHash.update(o),this.oHash=t.create();for(let i=0;i<o.length;i++)o[i]^=106;this.oHash.update(o),ae(o)}update(t){return rr(this),this.iHash.update(t),this}digestInto(t){rr(this),q(t,this.outputLen,"output"),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||=Object.create(Object.getPrototypeOf(this),{});let{oHash:r,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=r._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},rs=(e,t,r)=>new Nn(e,t).update(r).digest();rs.create=(e,t)=>new Nn(e,t);var _c=(e,t)=>(e+(e>=0?t:-t)/Dc)/t;function bh(e,t,r){let[[n,o],[i,s]]=t,c=_c(s*e,r),a=_c(-o*e,r),f=e-c*n-a*i,u=-c*o-a*s,l=f<de,y=u<de;l&&(f=-f),y&&(u=-u);let v=Kr(Math.ceil(pi(r)/2))+mr;if(f<de||f>=v||u<de||u>=v)throw new Error("splitScalar (endomorphism): failed, k="+e);return{k1neg:l,k1:f,k2neg:y,k2:u}}function os(e){if(!["compact","recovered","der"].includes(e))throw new Error('Signature format must be "compact", "recovered", or "der"');return e}function ns(e,t){let r={};for(let n of Object.keys(t))r[n]=e[n]===void 0?t[n]:e[n];return le(r.lowS,"lowS"),le(r.prehash,"prehash"),r.format!==void 0&&os(r.format),r}var is=class extends Error{constructor(t=""){super(t)}},Te={Err:is,_tlv:{encode:(e,t)=>{let{Err:r}=Te;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(t.length&1)throw new r("tlv.encode: unpadded data");let n=t.length/2,o=Or(n);if(o.length/2&128)throw new r("tlv.encode: long form length too big");let i=n>127?Or(o.length/2|128):"";return Or(e)+i+o+t},decode(e,t){let{Err:r}=Te,n=0;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(t.length<2||t[n++]!==e)throw new r("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 r("tlv.decode(long): indefinite length not supported");if(a>4)throw new r("tlv.decode(long): byte length is too big");let f=t.subarray(n,n+a);if(f.length!==a)throw new r("tlv.decode: length bytes not complete");if(f[0]===0)throw new r("tlv.decode(long): zero leftmost byte");for(let u of f)s=s<<8|u;if(n+=a,s<128)throw new r("tlv.decode(long): not minimal encoding")}let c=t.subarray(n,n+s);if(c.length!==s)throw new r("tlv.decode: wrong value length");return{v:c,l:t.subarray(n+s)}}},_int:{encode(e){let{Err:t}=Te;if(e<de)throw new t("integer: negative integers are not allowed");let r=Or(e);if(Number.parseInt(r[0],16)&8&&(r="00"+r),r.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return r},decode(e){let{Err:t}=Te;if(e[0]&128)throw new t("invalid signature integer: negative");if(e[0]===0&&!(e[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return ir(e)}},toSig(e){let{Err:t,_int:r,_tlv:n}=Te,o=q(e,void 0,"signature"),{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:f,l:u}=n.decode(2,a);if(u.length)throw new t("invalid signature: left bytes after parsing");return{r:r.decode(c),s:r.decode(f)}},hexFromSig(e){let{_tlv:t,_int:r}=Te,n=t.encode(2,r.encode(e.r)),o=t.encode(2,r.encode(e.s)),i=n+o;return t.encode(48,i)}},de=BigInt(0),mr=BigInt(1),Dc=BigInt(2),Ln=BigInt(3),wh=BigInt(4);function Rc(e,t={}){let r=An("weierstrass",e,t),{Fp:n,Fn:o}=r,i=r.CURVE,{h:s,n:c}=i;ve(t,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});let{endo:a}=t;if(a&&(!n.is0(i.a)||typeof a.beta!="bigint"||!Array.isArray(a.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');let f=Nc(n,o);function u(){if(!n.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function l(A,m,g){let{x:d,y:E}=m.toAffine(),R=n.toBytes(d);if(le(g,"isCompressed"),g){u();let N=!n.isOdd(E);return Tt(Pc(N),R)}else return Tt(Uint8Array.of(4),R,n.toBytes(E))}function y(A){q(A,void 0,"Point");let{publicKey:m,publicKeyUncompressed:g}=f,d=A.length,E=A[0],R=A.subarray(1);if(d===m&&(E===2||E===3)){let N=n.fromBytes(R);if(!n.isValid(N))throw new Error("bad point: is not on curve, wrong x");let U=T(N),O;try{O=n.sqrt(U)}catch(tt){let W=tt instanceof Error?": "+tt.message:"";throw new Error("bad point: is not on curve, sqrt error"+W)}u();let K=n.isOdd(O);return(E&1)===1!==K&&(O=n.neg(O)),{x:N,y:O}}else if(d===g&&E===4){let N=n.BYTES,U=n.fromBytes(R.subarray(0,N)),O=n.fromBytes(R.subarray(N,N*2));if(!I(U,O))throw new Error("bad point: is not on curve");return{x:U,y:O}}else throw new Error(`bad point: got length ${d}, expected compressed=${m} or uncompressed=${g}`)}let v=t.toBytes||l,b=t.fromBytes||y;function T(A){let m=n.sqr(A),g=n.mul(m,A);return n.add(n.add(g,n.mul(A,i.a)),i.b)}function I(A,m){let g=n.sqr(m),d=T(A);return n.eql(g,d)}if(!I(i.Gx,i.Gy))throw new Error("bad curve params: generator point");let w=n.mul(n.pow(i.a,Ln),wh),C=n.mul(n.sqr(i.b),BigInt(27));if(n.is0(n.add(w,C)))throw new Error("bad curve params: a or b");function S(A,m,g=!1){if(!n.isValid(m)||g&&n.is0(m))throw new Error(`bad point coordinate ${A}`);return m}function L(A){if(!(A instanceof p))throw new Error("Weierstrass Point expected")}function k(A){if(!a||!a.basises)throw new Error("no endo");return bh(A,a.basises,o.ORDER)}let M=sr((A,m)=>{let{X:g,Y:d,Z:E}=A;if(n.eql(E,n.ONE))return{x:g,y:d};let R=A.is0();m==null&&(m=R?n.ONE:n.inv(E));let N=n.mul(g,m),U=n.mul(d,m),O=n.mul(E,m);if(R)return{x:n.ZERO,y:n.ZERO};if(!n.eql(O,n.ONE))throw new Error("invZ was invalid");return{x:N,y:U}}),V=sr(A=>{if(A.is0()){if(t.allowInfinityPoint&&!n.is0(A.Y))return;throw new Error("bad point: ZERO")}let{x:m,y:g}=A.toAffine();if(!n.isValid(m)||!n.isValid(g))throw new Error("bad point: x or y not field elements");if(!I(m,g))throw new Error("bad point: equation left != right");if(!A.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function h(A,m,g,d,E){return g=new p(n.mul(g.X,A),g.Y,g.Z),m=Mr(d,m),g=Mr(E,g),m.add(g)}class p{static BASE=new p(i.Gx,i.Gy,n.ONE);static ZERO=new p(n.ZERO,n.ONE,n.ZERO);static Fp=n;static Fn=o;X;Y;Z;constructor(m,g,d){this.X=S("x",m),this.Y=S("y",g,!0),this.Z=S("z",d),Object.freeze(this)}static CURVE(){return i}static fromAffine(m){let{x:g,y:d}=m||{};if(!m||!n.isValid(g)||!n.isValid(d))throw new Error("invalid affine point");if(m instanceof p)throw new Error("projective point not allowed");return n.is0(g)&&n.is0(d)?p.ZERO:new p(g,d,n.ONE)}static fromBytes(m){let g=p.fromAffine(b(q(m,void 0,"point")));return g.assertValidity(),g}static fromHex(m){return p.fromBytes(ue(m))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(m=8,g=!0){return D.createCache(this,m),g||this.multiply(Ln),this}assertValidity(){V(this)}hasEvenY(){let{y:m}=this.toAffine();if(!n.isOdd)throw new Error("Field doesn't support isOdd");return!n.isOdd(m)}equals(m){L(m);let{X:g,Y:d,Z:E}=this,{X:R,Y:N,Z:U}=m,O=n.eql(n.mul(g,U),n.mul(R,E)),K=n.eql(n.mul(d,U),n.mul(N,E));return O&&K}negate(){return new p(this.X,n.neg(this.Y),this.Z)}double(){let{a:m,b:g}=i,d=n.mul(g,Ln),{X:E,Y:R,Z:N}=this,U=n.ZERO,O=n.ZERO,K=n.ZERO,$=n.mul(E,E),tt=n.mul(R,R),W=n.mul(N,N),G=n.mul(E,R);return G=n.add(G,G),K=n.mul(E,N),K=n.add(K,K),U=n.mul(m,K),O=n.mul(d,W),O=n.add(U,O),U=n.sub(tt,O),O=n.add(tt,O),O=n.mul(U,O),U=n.mul(G,U),K=n.mul(d,K),W=n.mul(m,W),G=n.sub($,W),G=n.mul(m,G),G=n.add(G,K),K=n.add($,$),$=n.add(K,$),$=n.add($,W),$=n.mul($,G),O=n.add(O,$),W=n.mul(R,N),W=n.add(W,W),$=n.mul(W,G),U=n.sub(U,$),K=n.mul(W,tt),K=n.add(K,K),K=n.add(K,K),new p(U,O,K)}add(m){L(m);let{X:g,Y:d,Z:E}=this,{X:R,Y:N,Z:U}=m,O=n.ZERO,K=n.ZERO,$=n.ZERO,tt=i.a,W=n.mul(i.b,Ln),G=n.mul(g,R),et=n.mul(d,N),dt=n.mul(E,U),Zt=n.add(g,d),rt=n.add(R,N);Zt=n.mul(Zt,rt),rt=n.add(G,et),Zt=n.sub(Zt,rt),rt=n.add(g,E);let yt=n.add(R,U);return rt=n.mul(rt,yt),yt=n.add(G,dt),rt=n.sub(rt,yt),yt=n.add(d,E),O=n.add(N,U),yt=n.mul(yt,O),O=n.add(et,dt),yt=n.sub(yt,O),$=n.mul(tt,rt),O=n.mul(W,dt),$=n.add(O,$),O=n.sub(et,$),$=n.add(et,$),K=n.mul(O,$),et=n.add(G,G),et=n.add(et,G),dt=n.mul(tt,dt),rt=n.mul(W,rt),et=n.add(et,dt),dt=n.sub(G,dt),dt=n.mul(tt,dt),rt=n.add(rt,dt),G=n.mul(et,rt),K=n.add(K,G),G=n.mul(yt,rt),O=n.mul(Zt,O),O=n.sub(O,G),G=n.mul(Zt,et),$=n.mul(yt,$),$=n.add($,G),new p(O,K,$)}subtract(m){return this.add(m.negate())}is0(){return this.equals(p.ZERO)}multiply(m){let{endo:g}=t;if(!o.isValidNot0(m))throw new Error("invalid scalar: out of range");let d,E,R=N=>D.cached(this,N,U=>Ve(p,U));if(g){let{k1neg:N,k1:U,k2neg:O,k2:K}=k(m),{p:$,f:tt}=R(U),{p:W,f:G}=R(K);E=tt.add(G),d=h(g.beta,$,W,N,O)}else{let{p:N,f:U}=R(m);d=N,E=U}return Ve(p,[d,E])[0]}multiplyUnsafe(m){let{endo:g}=t,d=this;if(!o.isValid(m))throw new Error("invalid scalar: out of range");if(m===de||d.is0())return p.ZERO;if(m===mr)return d;if(D.hasCache(this))return this.multiply(m);if(g){let{k1neg:E,k1:R,k2neg:N,k2:U}=k(m),{p1:O,p2:K}=oc(p,d,R,U);return h(g.beta,O,K,E,N)}else return D.unsafe(d,m)}toAffine(m){return M(this,m)}isTorsionFree(){let{isTorsionFree:m}=t;return s===mr?!0:m?m(p,this):D.unsafe(this,c).is0()}clearCofactor(){let{clearCofactor:m}=t;return s===mr?this:m?m(p,this):this.multiplyUnsafe(s)}isSmallOrder(){return this.multiplyUnsafe(s).is0()}toBytes(m=!0){return le(m,"isCompressed"),this.assertValidity(),v(p,this,m)}toHex(m=!0){return ce(this.toBytes(m))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}let _=o.BITS,D=new ur(p,t.endo?Math.ceil(_/2):_);return p.BASE.precompute(8),p}function Pc(e){return Uint8Array.of(e?2:3)}function Nc(e,t){return{secretKey:t.BYTES,publicKey:1+e.BYTES,publicKeyUncompressed:1+2*e.BYTES,publicKeyHasPrefix:!0,signature:2*t.BYTES}}function Eh(e,t={}){let{Fn:r}=e,n=t.randomBytes||nr,o=Object.assign(Nc(e.Fp,r),{seed:xi(r.ORDER)});function i(v){try{let b=r.fromBytes(v);return r.isValidNot0(b)}catch{return!1}}function s(v,b){let{publicKey:T,publicKeyUncompressed:I}=o;try{let w=v.length;return b===!0&&w!==T||b===!1&&w!==I?!1:!!e.fromBytes(v)}catch{return!1}}function c(v=n(o.seed)){return bi(q(v,o.seed,"seed"),r.ORDER)}function a(v,b=!0){return e.BASE.multiply(r.fromBytes(v)).toBytes(b)}function f(v){let{secretKey:b,publicKey:T,publicKeyUncompressed:I}=o;if(!Ne(v)||"_lengths"in r&&r._lengths||b===T)return;let w=q(v,void 0,"key").length;return w===T||w===I}function u(v,b,T=!0){if(f(v)===!0)throw new Error("first arg must be private key");if(f(b)===!1)throw new Error("second arg must be public key");let I=r.fromBytes(v);return e.fromBytes(b).multiply(I).toBytes(T)}let l={isValidSecretKey:i,isValidPublicKey:s,randomSecretKey:c},y=In(c,a);return Object.freeze({getPublicKey:a,getSharedSecret:u,keygen:y,Point:e,utils:l,lengths:o})}function Lc(e,t,r={}){xn(t),ve(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"}),r=Object.assign({},r);let n=r.randomBytes||nr,o=r.hmac||((g,d)=>rs(t,g,d)),{Fp:i,Fn:s}=e,{ORDER:c,BITS:a}=s,{keygen:f,getPublicKey:u,getSharedSecret:l,utils:y,lengths:v}=Eh(e,r),b={prehash:!0,lowS:typeof r.lowS=="boolean"?r.lowS:!0,format:"compact",extraEntropy:!1},T=c*Dc<i.ORDER;function I(g){let d=c>>mr;return g>d}function w(g,d){if(!s.isValidNot0(d))throw new Error(`invalid signature ${g}: out of range 1..Point.Fn.ORDER`);return d}function C(){if(T)throw new Error('"recovered" sig type is not supported for cofactor >2 curves')}function S(g,d){os(d);let E=v.signature,R=d==="compact"?E:d==="recovered"?E+1:void 0;return q(g,R)}class L{r;s;recovery;constructor(d,E,R){if(this.r=w("r",d),this.s=w("s",E),R!=null){if(C(),![0,1,2,3].includes(R))throw new Error("invalid recovery id");this.recovery=R}Object.freeze(this)}static fromBytes(d,E=b.format){S(d,E);let R;if(E==="der"){let{r:K,s:$}=Te.toSig(q(d));return new L(K,$)}E==="recovered"&&(R=d[0],E="compact",d=d.subarray(1));let N=v.signature/2,U=d.subarray(0,N),O=d.subarray(N,N*2);return new L(s.fromBytes(U),s.fromBytes(O),R)}static fromHex(d,E){return this.fromBytes(ue(d),E)}assertRecovery(){let{recovery:d}=this;if(d==null)throw new Error("invalid recovery id: must be present");return d}addRecoveryBit(d){return new L(this.r,this.s,d)}recoverPublicKey(d){let{r:E,s:R}=this,N=this.assertRecovery(),U=N===2||N===3?E+c:E;if(!i.isValid(U))throw new Error("invalid recovery id: sig.r+curve.n != R.x");let O=i.toBytes(U),K=e.fromBytes(Tt(Pc((N&1)===0),O)),$=s.inv(U),tt=M(q(d,void 0,"msgHash")),W=s.create(-tt*$),G=s.create(R*$),et=e.BASE.multiplyUnsafe(W).add(K.multiplyUnsafe(G));if(et.is0())throw new Error("invalid recovery: point at infinify");return et.assertValidity(),et}hasHighS(){return I(this.s)}toBytes(d=b.format){if(os(d),d==="der")return ue(Te.hexFromSig(this));let{r:E,s:R}=this,N=s.toBytes(E),U=s.toBytes(R);return d==="recovered"?(C(),Tt(Uint8Array.of(this.assertRecovery()),N,U)):Tt(N,U)}toHex(d){return ce(this.toBytes(d))}}let k=r.bits2int||function(d){if(d.length>8192)throw new Error("input is too large");let E=ir(d),R=d.length*8-a;return R>0?E>>BigInt(R):E},M=r.bits2int_modN||function(d){return s.create(k(d))},V=Kr(a);function h(g){return kr("num < 2^"+a,g,de,V),s.toBytes(g)}function p(g,d){return q(g,void 0,"message"),d?q(t(g),void 0,"prehashed message"):g}function _(g,d,E){let{lowS:R,prehash:N,extraEntropy:U}=ns(E,b);g=p(g,N);let O=M(g),K=s.fromBytes(d);if(!s.isValidNot0(K))throw new Error("invalid private key");let $=[h(K),h(O)];if(U!=null&&U!==!1){let et=U===!0?n(v.secretKey):U;$.push(q(et,void 0,"extraEntropy"))}let tt=Tt(...$),W=O;function G(et){let dt=k(et);if(!s.isValidNot0(dt))return;let Zt=s.inv(dt),rt=e.BASE.multiply(dt).toAffine(),yt=s.create(rt.x);if(yt===de)return;let fn=s.create(Zt*s.create(W+yt*K));if(fn===de)return;let $s=(rt.x===yt?0:2)|Number(rt.y&mr),qs=fn;return R&&I(fn)&&(qs=s.neg(fn),$s^=1),new L(yt,qs,T?void 0:$s)}return{seed:tt,k2sig:G}}function D(g,d,E={}){let{seed:R,k2sig:N}=_(g,d,E);return Fa(t.outputLen,s.BYTES,o)(R,N).toBytes(E.format)}function A(g,d,E,R={}){let{lowS:N,prehash:U,format:O}=ns(R,b);if(E=q(E,void 0,"publicKey"),d=p(d,U),!Ne(g)){let K=g instanceof L?", use sig.toBytes()":"";throw new Error("verify expects Uint8Array signature"+K)}S(g,O);try{let K=L.fromBytes(g,O),$=e.fromBytes(E);if(N&&K.hasHighS())return!1;let{r:tt,s:W}=K,G=M(d),et=s.inv(W),dt=s.create(G*et),Zt=s.create(tt*et),rt=e.BASE.multiplyUnsafe(dt).add($.multiplyUnsafe(Zt));return rt.is0()?!1:s.create(rt.x)===tt}catch{return!1}}function m(g,d,E={}){let{prehash:R}=ns(E,b);return d=p(d,R),L.fromBytes(g,"recovered").recoverPublicKey(d).toBytes()}return Object.freeze({keygen:f,getPublicKey:u,getSharedSecret:l,utils:y,lengths:v,Point:e,sign:D,verify:A,recoverPublicKey:m,Signature:L,hash:t})}var as={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},Sh={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]};var Uc=BigInt(2);function vh(e){let t=as.p,r=BigInt(3),n=BigInt(6),o=BigInt(11),i=BigInt(22),s=BigInt(23),c=BigInt(44),a=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=J(u,r,t)*u%t,y=J(l,r,t)*u%t,v=J(y,Uc,t)*f%t,b=J(v,o,t)*v%t,T=J(b,i,t)*b%t,I=J(T,c,t)*T%t,w=J(I,a,t)*I%t,C=J(w,c,t)*T%t,S=J(C,r,t)*u%t,L=J(S,s,t)*b%t,k=J(L,n,t)*f%t,M=J(k,Uc,t);if(!ss.eql(ss.sqr(M),e))throw new Error("Cannot find square root");return M}var ss=ar(as.p,{sqrt:vh}),Ah=Rc(as,{Fp:ss,endo:Sh}),yr=Lc(Ah,or);function Oc(e,t,r,n){let o=_r.digest(r instanceof Uint8Array?r:r.subarray());if(Bn(o))return o.then(({digest:i})=>(n?.signal?.throwIfAborted(),yr.verify(t,i,e,{prehash:!1,format:"der"}))).catch(i=>{throw i.name==="AbortError"?i:new Fr(String(i))});try{return n?.signal?.throwIfAborted(),yr.verify(t,o.digest,e,{prehash:!1,format:"der"})}catch(i){throw new Fr(String(i))}}var Un=class{type="secp256k1";raw;_key;constructor(t){this._key=Kc(t),this.raw=kc(this._key)}toMultihash(){return Ct.digest(er(this))}toCID(){return j.createV1(114,this.toMultihash())}toString(){return X.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:Y(this.raw,t.raw)}verify(t,r,n){return Oc(this._key,r,t,n)}};function cs(e){return new Un(e)}function kc(e){return yr.Point.fromBytes(e).toBytes()}function Kc(e){try{return yr.Point.fromBytes(e),e}catch(t){throw new Ge(String(t))}}function Vc(e,t){let{Type:r,Data:n}=Qt.decode(e),o=n??new Uint8Array;switch(r){case it.RSA:return Qi(o,t);case it.Ed25519:return Ci(o);case it.secp256k1:return cs(o);case it.ECDSA:return ri(o);default:throw new je}}function On(e){let{Type:t,Data:r}=Qt.decode(e.digest),n=r??new Uint8Array;switch(t){case it.Ed25519:return Ci(n);case it.secp256k1:return cs(n);case it.ECDSA:return ri(n);default:throw new je}}function er(e){return Qt.encode({Type:it[e.type],Data:e.raw})}var Mc=Symbol.for("nodejs.util.inspect.custom"),Ih=114,jr=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()})`}[Oo]=!0;toString(){return this.string==null&&(this.string=X.encode(this.multihash.bytes).slice(1)),this.string}toMultihash(){return this.multihash}toCID(){return j.createV1(Ih,this.multihash)}toJSON(){return this.toString()}equals(t){if(t==null)return!1;if(t instanceof Uint8Array)return Y(this.multihash.bytes,t);if(typeof t=="string")return this.toString()===t;if(t?.toMultihash()?.bytes!=null)return Y(this.multihash.bytes,t.toMultihash().bytes);throw new Error("not valid Id")}[Mc](){return`PeerId(${this.toString()})`}},kn=class extends jr{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},Kn=class extends jr{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.publicKey}},Vn=class extends jr{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.publicKey}},Th=2336,Yr=class{type="url";multihash;publicKey;url;constructor(t){this.url=t.toString(),this.multihash=Ct.digest(H(this.url))}[Mc](){return`PeerId(${this.url})`}[Oo]=!0;toString(){return this.toCID().toString()}toMultihash(){return this.multihash}toCID(){return j.createV1(Th,this.toMultihash())}toJSON(){return this.toString()}equals(t){return t==null?!1:(t instanceof Uint8Array&&(t=z(t)),t.toString()===this.toString())}};var Ch=114,Fc=2336;function $c(e,t){let r;if(e.charAt(0)==="1"||e.charAt(0)==="Q")r=Re(X.decode(`z${e}`));else{if(e.startsWith("k51qzi5uqu5")||e.startsWith("kzwfwjn5ji4")||e.startsWith("k2k4r8")||e.startsWith("bafz"))return us(j.parse(e));if(t==null)throw new st('Please pass a multibase decoder for strings that do not start with "1" or "Q"');r=Re(t.decode(e))}return qc(r)}function qc(e){if(_h(e))return new kn({multihash:e});if(Bh(e))try{let t=On(e);if(t.type==="Ed25519")return new Kn({multihash:e,publicKey:t});if(t.type==="secp256k1")return new Vn({multihash:e,publicKey:t})}catch{let r=z(e.digest);return new Yr(new URL(r))}throw new Ze("Supplied PeerID Multihash is invalid")}function us(e){if(e?.multihash==null||e.version==null||e.version===1&&e.code!==Ch&&e.code!==Fc)throw new pn("Supplied PeerID CID is invalid");if(e.code===Fc){let t=z(e.multihash.digest);return new Yr(new URL(t))}return qc(e.multihash)}function Bh(e){return e.code===Ct.code}function _h(e){return e.code===_r.code}var pt=class extends Error{static name="InvalidMultiaddrError";name="InvalidMultiaddrError"},he=class extends Error{static name="ValidationError";name="ValidationError"},Mn=class extends Error{static name="InvalidParametersError";name="InvalidParametersError"},Fn=class extends Error{static name="UnknownProtocolError";name="UnknownProtocolError"};var $n=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let r=this.index,n=t();return n===void 0&&(this.index=r),n}parseWith(t){let r=t();if(this.index===this.input.length)return r}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 r=this.readChar();if(r===t)return r})}readSeparator(t,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,r,n,o){return this.readAtomically(()=>{let i=0,s=0,c=this.peekChar();if(c===void 0)return;let a=c==="0",f=2**(8*o)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let y=Number.parseInt(l,t);if(!Number.isNaN(y))return y});if(u===void 0)break;if(i*=t,i+=u,i>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&a&&s>1?void 0:i})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let r=0;r<t.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[r]=n}return t})}readIPv6Addr(){let t=r=>{for(let n=0;n<r.length/2;n++){let o=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[o]=s[0],r[o+1]=s[1],r[o+2]=s[2],r[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];r[o]=i>>8,r[o+1]=i&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,o]=t(r);if(n===16)return r;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 r.set(i.subarray(0,c),16-c),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Dh=45,Rh=15,qn=new $n;function Hc(e){if(!(e.length>Rh))return qn.new(e).parseWith(()=>qn.readIPv4Addr())}function zc(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Dh))return qn.new(e).parseWith(()=>qn.readIPv6Addr())}function Hn(e){return!!Hc(e)}function Gc(e){return!!zc(e)}function ls(e){return t=>z(t,e)}function ds(e){return t=>H(t,e)}function gr(e){return new DataView(e.buffer).getUint16(e.byteOffset).toString()}function $e(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,typeof e=="string"?parseInt(e):e),new Uint8Array(t)}function Zc(e){let t=e.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 r=H(t[0],"base32"),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let o=$e(n);return Ut([r,o],r.length+o.length)}function jc(e){let t=e.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 r=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=$e(n);return Ut([r,o],r.length+o.length)}function hs(e){let t=e.subarray(0,e.length-2),r=e.subarray(e.length-2),n=z(t,"base32"),o=gr(r);return`${n}:${o}`}var ps=function(e){e=e.toString().trim();let t=new Uint8Array(4);return e.split(/\./g).forEach((r,n)=>{let o=parseInt(r,10);if(isNaN(o)||o<0||o>255)throw new pt("Invalid byte value in IP address");t[n]=o}),t},Yc=function(e){let t=0;e=e.toString().trim();let r=e.split(":",8),n;for(n=0;n<r.length;n++){let i=Hn(r[n]),s;i&&(s=ps(r[n]),r[n]=z(s.subarray(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,z(s.subarray(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let i=[n,1];for(n=9-r.length;n>0;n--)i.push("0");r.splice.apply(r,i)}let o=new Uint8Array(t+16);for(n=0;n<r.length;n++){r[n]===""&&(r[n]="0");let i=parseInt(r[n],16);if(isNaN(i)||i<0||i>65535)throw new pt("Invalid byte value in IP address");o[t++]=i>>8&255,o[t++]=i&255}return o},Wc=function(e){if(e.byteLength!==4)throw new pt("IPv4 address was incorrect length");let t=[];for(let r=0;r<e.byteLength;r++)t.push(e[r]);return t.join(".")},Xc=function(e){if(e.byteLength!==16)throw new pt("IPv6 address was incorrect length");let t=[];for(let n=0;n<e.byteLength;n+=2){let o=e[n],i=e[n+1],s=`${o.toString(16).padStart(2,"0")}${i.toString(16).padStart(2,"0")}`;t.push(s)}let r=t.join(":");try{let n=new URL(`http://[${r}]`);return n.hostname.substring(1,n.hostname.length-1)}catch{throw new pt(`Invalid IPv6 address "${r}"`)}};function Jc(e){try{let t=new URL(`http://[${e}]`);return t.hostname.substring(1,t.hostname.length-1)}catch{throw new pt(`Invalid IPv6 address "${e}"`)}}var fs=Object.values(Dr).map(e=>e.decoder),Ph=(function(){let e=fs[0].or(fs[1]);return fs.slice(2).forEach(t=>e=e.or(t)),e})();function Qc(e){return Ph.decode(e)}function tu(e){return t=>e.encoder.encode(t)}function Nh(e){if(parseInt(e).toString()!==e)throw new he("Value must be an integer")}function Lh(e){if(e<0)throw new he("Value must be a positive integer, or zero")}function Uh(e){return t=>{if(t>e)throw new he(`Value must be smaller than or equal to ${e}`)}}function Oh(...e){return t=>{for(let r of e)r(t)}}var Wr=Oh(Nh,Lh,Uh(65535));var ft=-1,ms=class{protocolsByCode=new Map;protocolsByName=new Map;getProtocol(t){let r;if(typeof t=="string"?r=this.protocolsByName.get(t):r=this.protocolsByCode.get(t),r==null)throw new Fn(`Protocol ${t} was unknown`);return r}addProtocol(t){this.protocolsByCode.set(t.code,t),this.protocolsByName.set(t.name,t),t.aliases?.forEach(r=>{this.protocolsByName.set(r,t)})}removeProtocol(t){let r=this.protocolsByCode.get(t);r!=null&&(this.protocolsByCode.delete(r.code),this.protocolsByName.delete(r.name),r.aliases?.forEach(n=>{this.protocolsByName.delete(n)}))}},pe=new ms,vp=[{code:4,name:"ip4",size:32,valueToBytes:ps,bytesToValue:Wc,validate:e=>{if(!Hn(e))throw new he(`Invalid IPv4 address "${e}"`)}},{code:6,name:"tcp",size:16,valueToBytes:$e,bytesToValue:gr,validate:Wr},{code:273,name:"udp",size:16,valueToBytes:$e,bytesToValue:gr,validate:Wr},{code:33,name:"dccp",size:16,valueToBytes:$e,bytesToValue:gr,validate:Wr},{code:41,name:"ip6",size:128,valueToBytes:Yc,bytesToValue:Xc,stringToValue:Jc,validate:e=>{if(!Gc(e))throw new he(`Invalid IPv6 address "${e}"`)}},{code:42,name:"ip6zone",size:ft},{code:43,name:"ipcidr",size:8,bytesToValue:ls("base10"),valueToBytes:ds("base10")},{code:53,name:"dns",size:ft},{code:54,name:"dns4",size:ft},{code:55,name:"dns6",size:ft},{code:56,name:"dnsaddr",size:ft},{code:132,name:"sctp",size:16,valueToBytes:$e,bytesToValue:gr,validate:Wr},{code:301,name:"udt"},{code:302,name:"utp"},{code:400,name:"unix",size:ft,stringToValue:e=>decodeURIComponent(e),valueToString:e=>encodeURIComponent(e)},{code:421,name:"p2p",aliases:["ipfs"],size:ft,bytesToValue:ls("base58btc"),valueToBytes:e=>e.startsWith("Q")||e.startsWith("1")?ds("base58btc")(e):j.parse(e).multihash.bytes},{code:444,name:"onion",size:96,bytesToValue:hs,valueToBytes:Zc},{code:445,name:"onion3",size:296,bytesToValue:hs,valueToBytes:jc},{code:446,name:"garlic64",size:ft},{code:447,name:"garlic32",size:ft},{code:448,name:"tls"},{code:449,name:"sni",size:ft},{code:454,name:"noise"},{code:460,name:"quic"},{code:461,name:"quic-v1"},{code:465,name:"webtransport"},{code:466,name:"certhash",size:ft,bytesToValue:tu(Po),valueToBytes:Qc},{code:480,name:"http"},{code:481,name:"http-path",size:ft,stringToValue:e=>`/${decodeURIComponent(e)}`,valueToString:e=>encodeURIComponent(e.substring(1))},{code:443,name:"https"},{code:477,name:"ws"},{code:478,name:"wss"},{code:479,name:"p2p-websocket-star"},{code:277,name:"p2p-stardust"},{code:275,name:"p2p-webrtc-star"},{code:276,name:"p2p-webrtc-direct"},{code:280,name:"webrtc-direct"},{code:281,name:"webrtc"},{code:290,name:"p2p-circuit"},{code:777,name:"memory",size:ft}];vp.forEach(e=>{pe.addProtocol(e)});function eu(e){let t=[],r=0;for(;r<e.length;){let n=Ni(e,r),o=pe.getProtocol(n),i=Jt(n),s=Ap(o,e,r+i),c=0;s>0&&o.size===ft&&(c=Jt(s));let a=i+c+s,f={code:n,name:o.name,bytes:e.subarray(r,r+a)};if(s>0){let u=r+i+c,l=e.subarray(u,u+s);f.value=o.bytesToValue?.(l)??z(l)}t.push(f),r+=a}return t}function ru(e){let t=0,r=[];for(let n of e){if(n.bytes==null){let o=pe.getProtocol(n.code),i=Jt(n.code),s,c=0,a=0;n.value!=null&&(s=o.valueToBytes?.(n.value)??H(n.value),c=s.byteLength,o.size===ft&&(a=Jt(c)));let f=new Uint8Array(i+a+c),u=0;$r(n.code,f,u),u+=i,s!=null&&(o.size===ft&&($r(c,f,u),u+=a),f.set(s,u)),n.bytes=f}r.push(n.bytes),t+=n.bytes.byteLength}return Ut(r,t)}function nu(e){if(e.charAt(0)!=="/")throw new pt('String multiaddr must start with "/"');let t=[],r="protocol",n="",o="";for(let i=1;i<e.length;i++){let s=e.charAt(i);s!=="/"&&(r==="protocol"?o+=e.charAt(i):n+=e.charAt(i));let c=i===e.length-1;if(s==="/"||c){let a=pe.getProtocol(o);if(r==="protocol"){if(a.size==null||a.size===0){t.push({code:a.code,name:a.name}),n="",o="",r="protocol";continue}else if(c)throw new pt(`Component ${o} was missing value`);r="value"}else if(r==="value"){let f={code:a.code,name:a.name};if(a.size!=null&&a.size!==0){if(n==="")throw new pt(`Component ${o} was missing value`);f.value=a.stringToValue?.(n)??n}t.push(f),n="",o="",r="protocol"}}}if(o!==""&&n!=="")throw new pt("Incomplete multiaddr");return t}function ou(e){return`/${e.flatMap(t=>{if(t.value==null)return t.name;let r=pe.getProtocol(t.code);if(r==null)throw new pt(`Unknown protocol code ${t.code}`);return[t.name,r.valueToString?.(t.value)??t.value]}).join("/")}`}function Ap(e,t,r){return e.size==null||e.size===0?0:e.size>0?e.size/8:Ni(t,r)}var Ip=Symbol.for("nodejs.util.inspect.custom"),ys=Symbol.for("@multiformats/multiaddr");function Tp(e){if(e==null&&(e="/"),iu(e))return e.getComponents();if(e instanceof Uint8Array)return eu(e);if(typeof e=="string")return e=e.replace(/\/(\/)+/,"/").replace(/(\/)+$/,""),e===""&&(e="/"),nu(e);if(Array.isArray(e))return e;throw new pt("Must be a string, Uint8Array, Component[], or another Multiaddr")}var zn=class e{[ys]=!0;#t;#n;#r;constructor(t="/",r={}){this.#t=Tp(t),r.validate!==!1&&Cp(this)}get bytes(){return this.#r==null&&(this.#r=ru(this.#t)),this.#r}toString(){return this.#n==null&&(this.#n=ou(this.#t)),this.#n}toJSON(){return this.toString()}getComponents(){return[...this.#t.map(t=>({...t}))]}encapsulate(t){let r=new e(t);return new e([...this.#t,...r.getComponents()],{validate:!1})}decapsulate(t){let r=t.toString(),n=this.toString(),o=n.lastIndexOf(r);if(o<0)throw new Mn(`Address ${this.toString()} does not contain subaddress: ${r}`);return new e(n.slice(0,o),{validate:!1})}decapsulateCode(t){let r;for(let n=this.#t.length-1;n>-1;n--)if(this.#t[n].code===t){r=n;break}return new e(this.#t.slice(0,r),{validate:!1})}equals(t){return Y(this.bytes,t.bytes)}[Ip](){return`Multiaddr(${this.toString()})`}};function Cp(e){e.getComponents().forEach(t=>{let r=pe.getProtocol(t.code);t.value!=null&&r.validate?.(t.value)})}function iu(e){return!!e?.[ys]}function Gn(e){return new zn(e)}function Xr(e){let t=new globalThis.AbortController;function r(){t.abort();for(let i of e)i?.removeEventListener!=null&&i.removeEventListener("abort",r)}for(let i of e){if(i?.aborted===!0){r();break}i?.addEventListener!=null&&i.addEventListener("abort",r)}function n(){for(let i of e)i?.removeEventListener!=null&&i.removeEventListener("abort",r)}let o=t.signal;return o.clear=n,o}async function*Zn(e,t={}){let r=e.getReader();try{for(;;){let n=await r.read();if(n.done)return;yield n.value}}finally{t.preventCancel!==!0&&await r.cancel(),r.releaseLock()}}var f0=Ao(xs(),1);var Ft=class extends Error{static name="SignatureVerificationError";constructor(t="Record signature verification failed"){super(t),this.name="SignatureVerificationError"}},jn=class extends Error{static name="RecordExpiredError";constructor(t="Record has expired"){super(t),this.name="RecordExpiredError"}},xr=class extends Error{static name="UnsupportedValidityError";constructor(t="The validity type is unsupported"){super(t),this.name="UnsupportedValidityError"}},Yn=class extends Error{static name="RecordTooLargeError";constructor(t="The record is too large"){super(t),this.name="RecordTooLargeError"}},Wn=class extends Error{static name="InvalidValueError";constructor(t="Value must be a valid content path starting with /"){super(t),this.name="InvalidValueError"}},Xn=class extends Error{static name="InvalidRecordDataError";constructor(t="Invalid record data"){super(t),this.name="InvalidRecordDataError"}},Jr=class extends Error{static name="InvalidEmbeddedPublicKeyError";constructor(t="Invalid embedded public key"){super(t),this.name="InvalidEmbeddedPublicKeyError"}};var $t;(function(e){let t;(function(o){o.EOL="EOL"})(t=e.ValidityType||(e.ValidityType={}));let r;(function(o){o[o.EOL=0]="EOL"})(r||(r={})),(function(o){o.codec=()=>zr(r)})(t=e.ValidityType||(e.ValidityType={}));let n;e.codec=()=>(n==null&&(n=hr((o,i,s={})=>{s.lengthDelimited!==!1&&i.fork(),o.value!=null&&(i.uint32(10),i.bytes(o.value)),o.signatureV1!=null&&(i.uint32(18),i.bytes(o.signatureV1)),o.validityType!=null&&(i.uint32(24),e.ValidityType.codec().encode(o.validityType,i)),o.validity!=null&&(i.uint32(34),i.bytes(o.validity)),o.sequence!=null&&(i.uint32(40),i.uint64(o.sequence)),o.ttl!=null&&(i.uint32(48),i.uint64(o.ttl)),o.pubKey!=null&&(i.uint32(58),i.bytes(o.pubKey)),o.signatureV2!=null&&(i.uint32(66),i.bytes(o.signatureV2)),o.data!=null&&(i.uint32(74),i.bytes(o.data)),s.lengthDelimited!==!1&&i.ldelim()},(o,i,s={})=>{let c={},a=i==null?o.len:o.pos+i;for(;o.pos<a;){let f=o.uint32();switch(f>>>3){case 1:{c.value=o.bytes();break}case 2:{c.signatureV1=o.bytes();break}case 3:{c.validityType=e.ValidityType.codec().decode(o);break}case 4:{c.validity=o.bytes();break}case 5:{c.sequence=o.uint64();break}case 6:{c.ttl=o.uint64();break}case 7:{c.pubKey=o.bytes();break}case 8:{c.signatureV2=o.bytes();break}case 9:{c.data=o.bytes();break}default:{o.skipType(f&7);break}}}return c})),n),e.encode=o=>lr(o,e.codec()),e.decode=(o,i)=>fr(o,e.codec(),i)})($t||($t={}));var Bp=["string","number","bigint","symbol"],_p=["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 su(e){if(e===null)return"null";if(e===void 0)return"undefined";if(e===!0||e===!1)return"boolean";let t=typeof e;if(Bp.includes(t))return t;if(t==="function")return"Function";if(Array.isArray(e))return"Array";if(Dp(e))return"Buffer";let r=Rp(e);return r||"Object"}function Dp(e){return e&&e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer.call(null,e)}function Rp(e){let t=Object.prototype.toString.call(e).slice(8,-1);if(_p.includes(t))return t}var x=class{constructor(t,r,n){this.major=t,this.majorEncoded=t<<5,this.name=r,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(t){return this.major<t.major?-1:this.major>t.major?1:0}};x.uint=new x(0,"uint",!0);x.negint=new x(1,"negint",!0);x.bytes=new x(2,"bytes",!0);x.string=new x(3,"string",!0);x.array=new x(4,"array",!1);x.map=new x(5,"map",!1);x.tag=new x(6,"tag",!1);x.float=new x(7,"float",!0);x.false=new x(7,"false",!0);x.true=new x(7,"true",!0);x.null=new x(7,"null",!0);x.undefined=new x(7,"undefined",!0);x.break=new x(7,"break",!0);var P=class{constructor(t,r,n){this.type=t,this.value=r,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var br=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",Pp=new TextDecoder,Np=new TextEncoder;function Jn(e){return br&&globalThis.Buffer.isBuffer(e)}function bs(e){return e instanceof Uint8Array?Jn(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e:Uint8Array.from(e)}var fu=br?(e,t,r)=>r-t>64?globalThis.Buffer.from(e.subarray(t,r)).toString("utf8"):cu(e,t,r):(e,t,r)=>r-t>64?Pp.decode(e.subarray(t,r)):cu(e,t,r),lu=br?e=>e.length>64?globalThis.Buffer.from(e):au(e):e=>e.length>64?Np.encode(e):au(e),te=e=>Uint8Array.from(e),wr=br?(e,t,r)=>Jn(e)?new Uint8Array(e.subarray(t,r)):e.slice(t,r):(e,t,r)=>e.slice(t,r),du=br?(e,t)=>(e=e.map(r=>r instanceof Uint8Array?r:globalThis.Buffer.from(r)),bs(globalThis.Buffer.concat(e,t))):(e,t)=>{let r=new Uint8Array(t),n=0;for(let o of e)n+o.length>r.length&&(o=o.subarray(0,r.length-n)),r.set(o,n),n+=o.length;return r},hu=br?e=>globalThis.Buffer.allocUnsafe(e):e=>new Uint8Array(e);function Qn(e,t){if(Jn(e)&&Jn(t))return e.compare(t);for(let r=0;r<e.length;r++)if(e[r]!==t[r])return e[r]<t[r]?-1:1;return 0}function au(e){let t=[],r=0;for(let n=0;n<e.length;n++){let o=e.charCodeAt(n);o<128?t[r++]=o:o<2048?(t[r++]=o>>6|192,t[r++]=o&63|128):(o&64512)===55296&&n+1<e.length&&(e.charCodeAt(n+1)&64512)===56320?(o=65536+((o&1023)<<10)+(e.charCodeAt(++n)&1023),t[r++]=o>>18|240,t[r++]=o>>12&63|128,t[r++]=o>>6&63|128,t[r++]=o&63|128):(t[r++]=o>>12|224,t[r++]=o>>6&63|128,t[r++]=o&63|128)}return t}function cu(e,t,r){let n=[];for(;t<r;){let o=e[t],i=null,s=o>239?4:o>223?3:o>191?2:1;if(t+s<=r){let c,a,f,u;switch(s){case 1:o<128&&(i=o);break;case 2:c=e[t+1],(c&192)===128&&(u=(o&31)<<6|c&63,u>127&&(i=u));break;case 3:c=e[t+1],a=e[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=e[t+1],a=e[t+2],f=e[t+3],(c&192)===128&&(a&192)===128&&(f&192)===128&&(u=(o&15)<<18|(c&63)<<12|(a&63)<<6|f&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 Lp(n)}var uu=4096;function Lp(e){let t=e.length;if(t<=uu)return String.fromCharCode.apply(String,e);let r="",n=0;for(;n<t;)r+=String.fromCharCode.apply(String,e.slice(n,n+=uu));return r}var Up=256,Qr=class{constructor(t=Up){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 r=this.chunks[this.chunks.length-1];if(this.cursor+t.length<=this.maxCursor+1){let o=r.length-(this.maxCursor-this.cursor)-1;r.set(t,o)}else{if(r){let o=r.length-(this.maxCursor-this.cursor)-1;o<r.length&&(this.chunks[this.chunks.length-1]=r.subarray(0,o),this.maxCursor=this.cursor-1)}t.length<64&&t.length<this.chunkSize?(r=hu(this.chunkSize),this.chunks.push(r),this.maxCursor+=r.length,this._initReuseChunk===null&&(this._initReuseChunk=r),r.set(t,0)):(this.chunks.push(t),this.maxCursor+=t.length)}this.cursor+=t.length}toBytes(t=!1){let r;if(this.chunks.length===1){let n=this.chunks[0];t&&this.cursor>n.length/2?(r=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):r=wr(n,0,this.cursor)}else r=du(this.chunks,this.cursor);return t&&this.reset(),r}};var F="CBOR decode error:",ws="CBOR encode error:",tn=[];tn[23]=1;tn[24]=2;tn[25]=3;tn[26]=5;tn[27]=9;function me(e,t,r){if(e.length-t<r)throw new Error(`${F} not enough data for type`)}var lt=[24,256,65536,4294967296,BigInt("18446744073709551616")];function Rt(e,t,r){me(e,t,1);let n=e[t];if(r.strict===!0&&n<lt[0])throw new Error(`${F} integer encoded in more bytes than necessary (strict decode)`);return n}function Pt(e,t,r){me(e,t,2);let n=e[t]<<8|e[t+1];if(r.strict===!0&&n<lt[1])throw new Error(`${F} integer encoded in more bytes than necessary (strict decode)`);return n}function Nt(e,t,r){me(e,t,4);let n=e[t]*16777216+(e[t+1]<<16)+(e[t+2]<<8)+e[t+3];if(r.strict===!0&&n<lt[2])throw new Error(`${F} integer encoded in more bytes than necessary (strict decode)`);return n}function Lt(e,t,r){me(e,t,8);let n=e[t]*16777216+(e[t+1]<<16)+(e[t+2]<<8)+e[t+3],o=e[t+4]*16777216+(e[t+5]<<16)+(e[t+6]<<8)+e[t+7],i=(BigInt(n)<<BigInt(32))+BigInt(o);if(r.strict===!0&&i<lt[3])throw new Error(`${F} integer encoded in more bytes than necessary (strict decode)`);if(i<=Number.MAX_SAFE_INTEGER)return Number(i);if(r.allowBigInt===!0)return i;throw new Error(`${F} integers outside of the safe integer range are not supported`)}function pu(e,t,r,n){return new P(x.uint,Rt(e,t+1,n),2)}function mu(e,t,r,n){return new P(x.uint,Pt(e,t+1,n),3)}function yu(e,t,r,n){return new P(x.uint,Nt(e,t+1,n),5)}function gu(e,t,r,n){return new P(x.uint,Lt(e,t+1,n),9)}function kt(e,t){return mt(e,0,t.value)}function mt(e,t,r){if(r<lt[0]){let n=Number(r);e.push([t|n])}else if(r<lt[1]){let n=Number(r);e.push([t|24,n])}else if(r<lt[2]){let n=Number(r);e.push([t|25,n>>>8,n&255])}else if(r<lt[3]){let n=Number(r);e.push([t|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(r);if(n<lt[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,e.push(o)}else throw new Error(`${F} encountered BigInt larger than allowable range`)}}kt.encodedSize=function(t){return mt.encodedSize(t.value)};mt.encodedSize=function(t){return t<lt[0]?1:t<lt[1]?2:t<lt[2]?3:t<lt[3]?5:9};kt.compareTokens=function(t,r){return t.value<r.value?-1:t.value>r.value?1:0};function xu(e,t,r,n){return new P(x.negint,-1-Rt(e,t+1,n),2)}function bu(e,t,r,n){return new P(x.negint,-1-Pt(e,t+1,n),3)}function wu(e,t,r,n){return new P(x.negint,-1-Nt(e,t+1,n),5)}var Es=BigInt(-1),Eu=BigInt(1);function Su(e,t,r,n){let o=Lt(e,t+1,n);if(typeof o!="bigint"){let i=-1-o;if(i>=Number.MIN_SAFE_INTEGER)return new P(x.negint,i,9)}if(n.allowBigInt!==!0)throw new Error(`${F} integers outside of the safe integer range are not supported`);return new P(x.negint,Es-BigInt(o),9)}function to(e,t){let r=t.value,n=typeof r=="bigint"?r*Es-Eu:r*-1-1;mt(e,t.type.majorEncoded,n)}to.encodedSize=function(t){let r=t.value,n=typeof r=="bigint"?r*Es-Eu:r*-1-1;return n<lt[0]?1:n<lt[1]?2:n<lt[2]?3:n<lt[3]?5:9};to.compareTokens=function(t,r){return t.value<r.value?1:t.value>r.value?-1:0};function en(e,t,r,n){me(e,t,r+n);let o=wr(e,t+r,t+r+n);return new P(x.bytes,o,r+n)}function vu(e,t,r,n){return en(e,t,1,r)}function Au(e,t,r,n){return en(e,t,2,Rt(e,t+1,n))}function Iu(e,t,r,n){return en(e,t,3,Pt(e,t+1,n))}function Tu(e,t,r,n){return en(e,t,5,Nt(e,t+1,n))}function Cu(e,t,r,n){let o=Lt(e,t+1,n);if(typeof o=="bigint")throw new Error(`${F} 64-bit integer bytes lengths not supported`);return en(e,t,9,o)}function eo(e){return e.encodedBytes===void 0&&(e.encodedBytes=e.type===x.string?lu(e.value):e.value),e.encodedBytes}function Er(e,t){let r=eo(t);mt(e,t.type.majorEncoded,r.length),e.push(r)}Er.encodedSize=function(t){let r=eo(t);return mt.encodedSize(r.length)+r.length};Er.compareTokens=function(t,r){return kp(eo(t),eo(r))};function kp(e,t){return e.length<t.length?-1:e.length>t.length?1:Qn(e,t)}function rn(e,t,r,n,o){let i=r+n;me(e,t,i);let s=new P(x.string,fu(e,t+r,t+i),i);return o.retainStringBytes===!0&&(s.byteValue=wr(e,t+r,t+i)),s}function Bu(e,t,r,n){return rn(e,t,1,r,n)}function _u(e,t,r,n){return rn(e,t,2,Rt(e,t+1,n),n)}function Du(e,t,r,n){return rn(e,t,3,Pt(e,t+1,n),n)}function Ru(e,t,r,n){return rn(e,t,5,Nt(e,t+1,n),n)}function Pu(e,t,r,n){let o=Lt(e,t+1,n);if(typeof o=="bigint")throw new Error(`${F} 64-bit integer string lengths not supported`);return rn(e,t,9,o,n)}var Nu=Er;function Sr(e,t,r,n){return new P(x.array,n,r)}function Lu(e,t,r,n){return Sr(e,t,1,r)}function Uu(e,t,r,n){return Sr(e,t,2,Rt(e,t+1,n))}function Ou(e,t,r,n){return Sr(e,t,3,Pt(e,t+1,n))}function ku(e,t,r,n){return Sr(e,t,5,Nt(e,t+1,n))}function Ku(e,t,r,n){let o=Lt(e,t+1,n);if(typeof o=="bigint")throw new Error(`${F} 64-bit integer array lengths not supported`);return Sr(e,t,9,o)}function Vu(e,t,r,n){if(n.allowIndefinite===!1)throw new Error(`${F} indefinite length items not allowed`);return Sr(e,t,1,1/0)}function ro(e,t){mt(e,x.array.majorEncoded,t.value)}ro.compareTokens=kt.compareTokens;ro.encodedSize=function(t){return mt.encodedSize(t.value)};function vr(e,t,r,n){return new P(x.map,n,r)}function Mu(e,t,r,n){return vr(e,t,1,r)}function Fu(e,t,r,n){return vr(e,t,2,Rt(e,t+1,n))}function $u(e,t,r,n){return vr(e,t,3,Pt(e,t+1,n))}function qu(e,t,r,n){return vr(e,t,5,Nt(e,t+1,n))}function Hu(e,t,r,n){let o=Lt(e,t+1,n);if(typeof o=="bigint")throw new Error(`${F} 64-bit integer map lengths not supported`);return vr(e,t,9,o)}function zu(e,t,r,n){if(n.allowIndefinite===!1)throw new Error(`${F} indefinite length items not allowed`);return vr(e,t,1,1/0)}function no(e,t){mt(e,x.map.majorEncoded,t.value)}no.compareTokens=kt.compareTokens;no.encodedSize=function(t){return mt.encodedSize(t.value)};function Gu(e,t,r,n){return new P(x.tag,r,1)}function Zu(e,t,r,n){return new P(x.tag,Rt(e,t+1,n),2)}function ju(e,t,r,n){return new P(x.tag,Pt(e,t+1,n),3)}function Yu(e,t,r,n){return new P(x.tag,Nt(e,t+1,n),5)}function Wu(e,t,r,n){return new P(x.tag,Lt(e,t+1,n),9)}function oo(e,t){mt(e,x.tag.majorEncoded,t.value)}oo.compareTokens=kt.compareTokens;oo.encodedSize=function(t){return mt.encodedSize(t.value)};var qp=20,Hp=21,zp=22,Gp=23;function Xu(e,t,r,n){if(n.allowUndefined===!1)throw new Error(`${F} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new P(x.null,null,1):new P(x.undefined,void 0,1)}function Ju(e,t,r,n){if(n.allowIndefinite===!1)throw new Error(`${F} indefinite length items not allowed`);return new P(x.break,void 0,1)}function Ss(e,t,r){if(r){if(r.allowNaN===!1&&Number.isNaN(e))throw new Error(`${F} NaN values are not supported`);if(r.allowInfinity===!1&&(e===1/0||e===-1/0))throw new Error(`${F} Infinity values are not supported`)}return new P(x.float,e,t)}function Qu(e,t,r,n){return Ss(vs(e,t+1),3,n)}function tf(e,t,r,n){return Ss(As(e,t+1),5,n)}function ef(e,t,r,n){return Ss(sf(e,t+1),9,n)}function io(e,t,r){let n=t.value;if(n===!1)e.push([x.float.majorEncoded|qp]);else if(n===!0)e.push([x.float.majorEncoded|Hp]);else if(n===null)e.push([x.float.majorEncoded|zp]);else if(n===void 0)e.push([x.float.majorEncoded|Gp]);else{let o,i=!1;(!r||r.float64!==!0)&&(nf(n),o=vs(qt,1),n===o||Number.isNaN(n)?(qt[0]=249,e.push(qt.slice(0,3)),i=!0):(of(n),o=As(qt,1),n===o&&(qt[0]=250,e.push(qt.slice(0,5)),i=!0))),i||(Zp(n),o=sf(qt,1),qt[0]=251,e.push(qt.slice(0,9)))}}io.encodedSize=function(t,r){let n=t.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!r||r.float64!==!0){nf(n);let o=vs(qt,1);if(n===o||Number.isNaN(n))return 3;if(of(n),o=As(qt,1),n===o)return 5}return 9};var rf=new ArrayBuffer(9),Kt=new DataView(rf,1),qt=new Uint8Array(rf,0);function nf(e){if(e===1/0)Kt.setUint16(0,31744,!1);else if(e===-1/0)Kt.setUint16(0,64512,!1);else if(Number.isNaN(e))Kt.setUint16(0,32256,!1);else{Kt.setFloat32(0,e);let t=Kt.getUint32(0),r=(t&2139095040)>>23,n=t&8388607;if(r===255)Kt.setUint16(0,31744,!1);else if(r===0)Kt.setUint16(0,(e&2147483648)>>16|n>>13,!1);else{let o=r-127;o<-24?Kt.setUint16(0,0):o<-14?Kt.setUint16(0,(t&2147483648)>>16|1<<24+o,!1):Kt.setUint16(0,(t&2147483648)>>16|o+15<<10|n>>13,!1)}}}function vs(e,t){if(e.length-t<2)throw new Error(`${F} not enough data for float16`);let r=(e[t]<<8)+e[t+1];if(r===31744)return 1/0;if(r===64512)return-1/0;if(r===32256)return NaN;let n=r>>10&31,o=r&1023,i;return n===0?i=o*2**-24:n!==31?i=(o+1024)*2**(n-25):i=o===0?1/0:NaN,r&32768?-i:i}function of(e){Kt.setFloat32(0,e,!1)}function As(e,t){if(e.length-t<4)throw new Error(`${F} not enough data for float32`);let r=(e.byteOffset||0)+t;return new DataView(e.buffer,r,4).getFloat32(0,!1)}function Zp(e){Kt.setFloat64(0,e,!1)}function sf(e,t){if(e.length-t<8)throw new Error(`${F} not enough data for float64`);let r=(e.byteOffset||0)+t;return new DataView(e.buffer,r,8).getFloat64(0,!1)}io.compareTokens=kt.compareTokens;function Z(e,t,r){throw new Error(`${F} encountered invalid minor (${r}) for major ${e[t]>>>5}`)}function so(e){return()=>{throw new Error(`${F} ${e}`)}}var B=[];for(let e=0;e<=23;e++)B[e]=Z;B[24]=pu;B[25]=mu;B[26]=yu;B[27]=gu;B[28]=Z;B[29]=Z;B[30]=Z;B[31]=Z;for(let e=32;e<=55;e++)B[e]=Z;B[56]=xu;B[57]=bu;B[58]=wu;B[59]=Su;B[60]=Z;B[61]=Z;B[62]=Z;B[63]=Z;for(let e=64;e<=87;e++)B[e]=vu;B[88]=Au;B[89]=Iu;B[90]=Tu;B[91]=Cu;B[92]=Z;B[93]=Z;B[94]=Z;B[95]=so("indefinite length bytes/strings are not supported");for(let e=96;e<=119;e++)B[e]=Bu;B[120]=_u;B[121]=Du;B[122]=Ru;B[123]=Pu;B[124]=Z;B[125]=Z;B[126]=Z;B[127]=so("indefinite length bytes/strings are not supported");for(let e=128;e<=151;e++)B[e]=Lu;B[152]=Uu;B[153]=Ou;B[154]=ku;B[155]=Ku;B[156]=Z;B[157]=Z;B[158]=Z;B[159]=Vu;for(let e=160;e<=183;e++)B[e]=Mu;B[184]=Fu;B[185]=$u;B[186]=qu;B[187]=Hu;B[188]=Z;B[189]=Z;B[190]=Z;B[191]=zu;for(let e=192;e<=215;e++)B[e]=Gu;B[216]=Zu;B[217]=ju;B[218]=Yu;B[219]=Wu;B[220]=Z;B[221]=Z;B[222]=Z;B[223]=Z;for(let e=224;e<=243;e++)B[e]=so("simple values are not supported");B[244]=Z;B[245]=Z;B[246]=Z;B[247]=Xu;B[248]=so("simple values are not supported");B[249]=Qu;B[250]=tf;B[251]=ef;B[252]=Z;B[253]=Z;B[254]=Z;B[255]=Ju;var Ht=[];for(let e=0;e<24;e++)Ht[e]=new P(x.uint,e,1);for(let e=-1;e>=-24;e--)Ht[31-e]=new P(x.negint,e,1);Ht[64]=new P(x.bytes,new Uint8Array(0),1);Ht[96]=new P(x.string,"",1);Ht[128]=new P(x.array,0,1);Ht[160]=new P(x.map,0,1);Ht[244]=new P(x.false,!1,1);Ht[245]=new P(x.true,!0,1);Ht[246]=new P(x.null,null,1);function af(e){switch(e.type){case x.false:return te([244]);case x.true:return te([245]);case x.null:return te([246]);case x.bytes:return e.value.length?void 0:te([64]);case x.string:return e.value===""?te([96]):void 0;case x.array:return e.value===0?te([128]):void 0;case x.map:return e.value===0?te([160]):void 0;case x.uint:return e.value<24?te([Number(e.value)]):void 0;case x.negint:if(e.value>=-24)return te([31-Number(e.value)])}}var uf=Object.freeze({float64:!0,mapSorter:Jp,quickEncodeToken:af});function Yp(){let e=[];return e[x.uint.major]=kt,e[x.negint.major]=to,e[x.bytes.major]=Er,e[x.string.major]=Nu,e[x.array.major]=ro,e[x.map.major]=no,e[x.tag.major]=oo,e[x.float.major]=io,e}var Wp=Yp(),Is=new Qr,co=class e{constructor(t,r){this.obj=t,this.parent=r}includes(t){let r=this;do if(r.obj===t)return!0;while(r=r.parent);return!1}static createCheck(t,r){if(t&&t.includes(r))throw new Error(`${ws} object contains circular references`);return new e(r,t)}},Ce={null:new P(x.null,null),undefined:new P(x.undefined,void 0),true:new P(x.true,!0),false:new P(x.false,!1),emptyArray:new P(x.array,0),emptyMap:new P(x.map,0)},Be={number(e,t,r,n){return!Number.isInteger(e)||!Number.isSafeInteger(e)?new P(x.float,e):e>=0?new P(x.uint,e):new P(x.negint,e)},bigint(e,t,r,n){return e>=BigInt(0)?new P(x.uint,e):new P(x.negint,e)},Uint8Array(e,t,r,n){return new P(x.bytes,e)},string(e,t,r,n){return new P(x.string,e)},boolean(e,t,r,n){return e?Ce.true:Ce.false},null(e,t,r,n){return Ce.null},undefined(e,t,r,n){return Ce.undefined},ArrayBuffer(e,t,r,n){return new P(x.bytes,new Uint8Array(e))},DataView(e,t,r,n){return new P(x.bytes,new Uint8Array(e.buffer,e.byteOffset,e.byteLength))},Array(e,t,r,n){if(!e.length)return r.addBreakTokens===!0?[Ce.emptyArray,new P(x.break)]:Ce.emptyArray;n=co.createCheck(n,e);let o=[],i=0;for(let s of e)o[i++]=ao(s,r,n);return r.addBreakTokens?[new P(x.array,e.length),o,new P(x.break)]:[new P(x.array,e.length),o]},Object(e,t,r,n){let o=t!=="Object",i=o?e.keys():Object.keys(e),s=o?e.size:i.length;if(!s)return r.addBreakTokens===!0?[Ce.emptyMap,new P(x.break)]:Ce.emptyMap;n=co.createCheck(n,e);let c=[],a=0;for(let f of i)c[a++]=[ao(f,r,n),ao(o?e.get(f):e[f],r,n)];return Xp(c,r),r.addBreakTokens?[new P(x.map,s),c,new P(x.break)]:[new P(x.map,s),c]}};Be.Map=Be.Object;Be.Buffer=Be.Uint8Array;for(let e of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))Be[`${e}Array`]=Be.DataView;function ao(e,t={},r){let n=su(e),o=t&&t.typeEncoders&&t.typeEncoders[n]||Be[n];if(typeof o=="function"){let s=o(e,n,t,r);if(s!=null)return s}let i=Be[n];if(!i)throw new Error(`${ws} unsupported type: ${n}`);return i(e,n,t,r)}function Xp(e,t){t.mapSorter&&e.sort(t.mapSorter)}function Jp(e,t){if(e[0]instanceof P&&t[0]instanceof P){let r=e[0],n=t[0];return r._keyBytes||(r._keyBytes=cf(r.value)),n._keyBytes||(n._keyBytes=cf(n.value)),Qn(r._keyBytes,n._keyBytes)}throw new Error("rfc8949MapSorter: complex key types are not supported yet")}function cf(e){return Qp(e,Wp,uf)}function ff(e,t,r,n){if(Array.isArray(t))for(let o of t)ff(e,o,r,n);else r[t.type.major](e,t,n)}function Qp(e,t,r){let n=ao(e,r);if(!Array.isArray(n)&&r.quickEncodeToken){let o=r.quickEncodeToken(n);if(o)return o;let i=t[n.type.major];if(i.encodedSize){let s=i.encodedSize(n,r),c=new Qr(s);if(i(c,n,r),c.chunks.length!==1)throw new Error(`Unexpected error: pre-calculated length for ${n} was wrong`);return bs(c.chunks[0])}}return Is.reset(),ff(Is,n,t,r),Is.toBytes(!0)}var t0={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},uo=class{constructor(t,r={}){this._pos=0,this.data=t,this.options=r}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let t=this.data[this._pos],r=Ht[t];if(r===void 0){let n=B[t];if(!n)throw new Error(`${F} no decoder for major type ${t>>>5} (byte 0x${t.toString(16).padStart(2,"0")})`);let o=t&31;r=n(this.data,this._pos,o,this.options)}return this._pos+=r.encodedLength,r}},nn=Symbol.for("DONE"),fo=Symbol.for("BREAK");function e0(e,t,r){let n=[];for(let o=0;o<e.value;o++){let i=Ar(t,r);if(i===fo){if(e.value===1/0)break;throw new Error(`${F} got unexpected break to lengthed array`)}if(i===nn)throw new Error(`${F} found array but not enough entries (got ${o}, expected ${e.value})`);n[o]=i}return n}function r0(e,t,r){let n=r.useMaps===!0,o=n?void 0:{},i=n?new Map:void 0;for(let s=0;s<e.value;s++){let c=Ar(t,r);if(c===fo){if(e.value===1/0)break;throw new Error(`${F} got unexpected break to lengthed map`)}if(c===nn)throw new Error(`${F} found map but not enough entries (got ${s} [no key], expected ${e.value})`);if(n!==!0&&typeof c!="string")throw new Error(`${F} non-string keys not supported (got ${typeof c})`);if(r.rejectDuplicateMapKeys===!0&&(n&&i.has(c)||!n&&c in o))throw new Error(`${F} found repeat map key "${c}"`);let a=Ar(t,r);if(a===nn)throw new Error(`${F} found map but not enough entries (got ${s} [no value], expected ${e.value})`);n?i.set(c,a):o[c]=a}return n?i:o}function Ar(e,t){if(e.done())return nn;let r=e.next();if(r.type===x.break)return fo;if(r.type.terminal)return r.value;if(r.type===x.array)return e0(r,e,t);if(r.type===x.map)return r0(r,e,t);if(r.type===x.tag){if(t.tags&&typeof t.tags[r.value]=="function"){let n=Ar(e,t);return t.tags[r.value](n)}throw new Error(`${F} tag not supported (${r.value})`)}throw new Error("unsupported")}function lf(e,t){if(!(e instanceof Uint8Array))throw new Error(`${F} data to decode must be a Uint8Array`);t=Object.assign({},t0,t);let r=t.tokenizer||new uo(e,t),n=Ar(r,t);if(n===nn)throw new Error(`${F} did not find any content to decode`);if(n===fo)throw new Error(`${F} got unexpected break`);return[n,e.subarray(r.pos())]}function Ts(e,t){let[r,n]=lf(e,t);if(n.length>0)throw new Error(`${F} too many terminals, data makes no sense`);return r}var i0=xe("ipns:utils"),df=H("/ipns/");var s0=0,a0=18;function hf(e){let t;if(e.pubKey!=null)try{t=Vc(e.pubKey)}catch(r){throw i0.error(r),r}if(t!=null)return t}function pf(e){let t=H("ipns-signature:");return Ut([t,e])}function He(e){return"signatureV1"in e?$t.encode({value:H(e.value),signatureV1:e.signatureV1,validityType:e.validityType,validity:H(e.validity),sequence:e.sequence,ttl:e.ttl,pubKey:e.pubKey,signatureV2:e.signatureV2,data:e.data}):$t.encode({pubKey:e.pubKey,signatureV2:e.signatureV2,data:e.data})}function ee(e){let t=$t.decode(e);if(t.sequence!=null&&(t.sequence=BigInt(t.sequence)),t.ttl!=null&&(t.ttl=BigInt(t.ttl)),t.signatureV2==null||t.data==null)throw new Ft("Missing data or signatureV2");let r=mf(t.data),n=c0(r.Value),o=z(r.Validity);if(t.value!=null&&t.signatureV1!=null)return u0(t),{value:n,validityType:$t.ValidityType.EOL,validity:o,sequence:r.Sequence,ttl:r.TTL,pubKey:t.pubKey,signatureV1:t.signatureV1,signatureV2:t.signatureV2,data:t.data};if(t.signatureV2!=null)return{value:n,validityType:$t.ValidityType.EOL,validity:o,sequence:r.Sequence,ttl:r.TTL,pubKey:t.pubKey,signatureV2:t.signatureV2,data:t.data};throw new Error("invalid record: does not include signatureV1 or signatureV2")}function on(e){return Ut([df,e.bytes])}function ye(e){let t=Re(e.slice(df.length));if(!lo(t,s0)&&!lo(t,a0))throw new Ze("Multihash in IPNS key was not identity or sha2-256");return t}function mf(e){let t=Ts(e);if(t.ValidityType===0)t.ValidityType=$t.ValidityType.EOL;else throw new xr("The validity type is unsupported");return Number.isInteger(t.Sequence)&&(t.Sequence=BigInt(t.Sequence)),Number.isInteger(t.TTL)&&(t.TTL=BigInt(t.TTL)),t}function c0(e){let t=z(e).trim();if(t.startsWith("/"))return t;try{return`/ipfs/${j.decode(e).toV1().toString()}`}catch{}try{return`/ipfs/${j.parse(t).toV1().toString()}`}catch{}throw new Wn("Value must be a valid content path starting with /")}function u0(e){if(e.data==null)throw new Xn("Record data is missing");let t=mf(e.data);if(!Y(t.Value,e.value??new Uint8Array(0)))throw new Ft('Field "value" did not match between protobuf and CBOR');if(!Y(t.Validity,e.validity??new Uint8Array(0)))throw new Ft('Field "validity" did not match between protobuf and CBOR');if(t.ValidityType!==e.validityType)throw new Ft('Field "validityType" did not match between protobuf and CBOR');if(t.Sequence!==e.sequence)throw new Ft('Field "sequence" did not match between protobuf and CBOR');if(t.TTL!==e.ttl)throw new Ft('Field "ttl" did not match between protobuf and CBOR')}function lo(e,t){return e.code===t}var $1=xe("ipns"),q1=300*1e9,l0="/ipns/",H1=l0.length;var yf=Ao(xs(),1);var ho=xe("ipns:validator"),d0=1024*10;async function h0(e,t){let r=ee(t),n;try{let o=pf(r.data);n=await e.verify(o,r.signatureV2)}catch{n=!1}if(!n)throw ho.error("record signature verification failed"),new Ft("Record signature verification failed");if(r.validityType===$t.ValidityType.EOL){if(yf.default.fromString(r.validity).toDate().getTime()<Date.now())throw ho.error("record has expired"),new jn("record has expired")}else if(r.validityType!=null)throw ho.error("the validity type is unsupported"),new xr("The validity type is unsupported");ho("ipns record for %s is valid",r.value)}async function gf(e,t){if(t.byteLength>d0)throw new Yn("The record is too large");let r=ye(e),n;lo(r,0)&&(n=On(r));let o=ee(t),i=hf(o)??n;if(i==null)throw new Jr("Could not extract public key from IPNS record or routing key");let s=on(i.toMultihash());if(!Y(s,e))throw new Jr("Embedded public key did not match routing key");await h0(i,t)}var po=class extends Error{name="InvalidMessageLengthError";code="ERR_INVALID_MESSAGE_LENGTH"};async function*sn(e,t={}){let r=/\r?\n/,n=new TextDecoder("utf8"),o="";for await(let i of e){if(typeof i=="string"&&(i=new TextEncoder().encode(i)),Qe(i)&&(i=i.subarray()),o+=n.decode(i,{stream:!0}),o.length>(t?.maxMessageLength??o.length))throw new po("Incoming message too long");let s=o.split(r);o=s.pop()??"";for(let c=0;c<s.length;c++)yield JSON.parse(s[c])}o+=n.decode(),o!==""&&(yield JSON.parse(o))}function re(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var Bs=Ao(bf(),1);var _s=class e extends Error{name="TimeoutError";constructor(t,r){super(t,r),Error.captureStackTrace?.(this,e)}},wf=e=>e.reason??new DOMException("This operation was aborted.","AbortError");function Ds(e,t){let{milliseconds:r,fallback:n,message:o,customTimers:i={setTimeout,clearTimeout},signal:s}=t,c,a,u=new Promise((l,y)=>{if(typeof r!="number"||Math.sign(r)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${r}\``);if(s?.aborted){y(wf(s));return}if(s&&(a=()=>{y(wf(s))},s.addEventListener("abort",a,{once:!0})),e.then(l,y),r===Number.POSITIVE_INFINITY)return;let v=new _s;c=i.setTimeout.call(void 0,()=>{if(n){try{l(n())}catch(b){y(b)}return}typeof e.cancel=="function"&&e.cancel(),o===!1?l():o instanceof Error?y(o):(v.message=o??`Promise timed out after ${r} milliseconds`,y(v))},r)}).finally(()=>{u.clear(),a&&s&&s.removeEventListener("abort",a)});return u.clear=()=>{i.clearTimeout.call(void 0,c),c=void 0},u}function Rs(e,t,r){let n=0,o=e.length;for(;o>0;){let i=Math.trunc(o/2),s=n+i;r(e[s],t)<=0?(n=++s,o-=i+1):o=i}return n}var cn=class{#t=[];enqueue(t,r){let{priority:n=0,id:o}=r??{},i={priority:n,id:o,run:t};if(this.size===0||this.#t[this.size-1].priority>=n){this.#t.push(i);return}let s=Rs(this.#t,i,(c,a)=>a.priority-c.priority);this.#t.splice(s,0,i)}setPriority(t,r){let n=this.#t.findIndex(i=>i.id===t);if(n===-1)throw new ReferenceError(`No promise function with the id "${t}" exists in the queue.`);let[o]=this.#t.splice(n,1);this.enqueue(o.run,{priority:r,id:t})}dequeue(){return this.#t.shift()?.run}filter(t){return this.#t.filter(r=>r.priority===t.priority).map(r=>r.run)}get size(){return this.#t.length}};var un=class extends Bs.default{#t;#n;#r=0;#h;#p=!1;#m=!1;#u;#b=0;#y=0;#i;#s;#e;#w;#o=0;#f;#a;#T=1n;#l=new Map;timeout;constructor(t){if(super(),t={carryoverIntervalCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:cn,...t},!(typeof t.intervalCap=="number"&&t.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${t.intervalCap?.toString()??""}\` (${typeof t.intervalCap})`);if(t.interval===void 0||!(Number.isFinite(t.interval)&&t.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${t.interval?.toString()??""}\` (${typeof t.interval})`);if(this.#t=t.carryoverIntervalCount??t.carryoverConcurrencyCount??!1,this.#n=t.intervalCap===Number.POSITIVE_INFINITY||t.interval===0,this.#h=t.intervalCap,this.#u=t.interval,this.#e=new t.queueClass,this.#w=t.queueClass,this.concurrency=t.concurrency,t.timeout!==void 0&&!(Number.isFinite(t.timeout)&&t.timeout>0))throw new TypeError(`Expected \`timeout\` to be a positive finite number, got \`${t.timeout}\` (${typeof t.timeout})`);this.timeout=t.timeout,this.#a=t.autoStart===!1,this.#L()}get#C(){return this.#n||this.#r<this.#h}get#B(){return this.#o<this.#f}#_(){this.#o--,this.#o===0&&this.emit("pendingZero"),this.#g(),this.emit("next")}#D(){this.#A(),this.#v(),this.#s=void 0}get#R(){let t=Date.now();if(this.#i===void 0){let r=this.#b-t;if(r<0){if(this.#y>0){let n=t-this.#y;if(n<this.#u)return this.#E(this.#u-n),!0}this.#r=this.#t?this.#o:0}else return this.#E(r),!0}return!1}#E(t){this.#s===void 0&&(this.#s=setTimeout(()=>{this.#D()},t))}#S(){this.#i&&(clearInterval(this.#i),this.#i=void 0)}#P(){this.#s&&(clearTimeout(this.#s),this.#s=void 0)}#g(){if(this.#e.size===0)return this.#S(),this.emit("empty"),this.#o===0&&(this.#P(),this.emit("idle")),!1;let t=!1;if(!this.#a){let r=!this.#R;if(this.#C&&this.#B){let n=this.#e.dequeue();this.#n||(this.#r++,this.#d()),this.emit("active"),this.#y=Date.now(),n(),r&&this.#v(),t=!0}}return t}#v(){this.#n||this.#i!==void 0||(this.#i=setInterval(()=>{this.#A()},this.#u),this.#b=Date.now()+this.#u)}#A(){this.#r===0&&this.#o===0&&this.#i&&this.#S(),this.#r=this.#t?this.#o:0,this.#x(),this.#d()}#x(){for(;this.#g(););}get concurrency(){return this.#f}set concurrency(t){if(!(typeof t=="number"&&t>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${t}\` (${typeof t})`);this.#f=t,this.#x()}async#N(t){return new Promise((r,n)=>{t.addEventListener("abort",()=>{n(t.reason)},{once:!0})})}setPriority(t,r){if(typeof r!="number"||!Number.isFinite(r))throw new TypeError(`Expected \`priority\` to be a finite number, got \`${r}\` (${typeof r})`);this.#e.setPriority(t,r)}async add(t,r={}){return r.id??=(this.#T++).toString(),r={timeout:this.timeout,...r},new Promise((n,o)=>{let i=Symbol(`task-${r.id}`);this.#e.enqueue(async()=>{this.#o++,this.#l.set(i,{id:r.id,priority:r.priority??0,startTime:Date.now(),timeout:r.timeout});try{try{r.signal?.throwIfAborted()}catch(a){throw this.#n||this.#r--,this.#l.delete(i),a}let s=t({signal:r.signal});r.timeout&&(s=Ds(Promise.resolve(s),{milliseconds:r.timeout,message:`Task timed out after ${r.timeout}ms (queue has ${this.#o} running, ${this.#e.size} waiting)`})),r.signal&&(s=Promise.race([s,this.#N(r.signal)]));let c=await s;n(c),this.emit("completed",c)}catch(s){o(s),this.emit("error",s)}finally{this.#l.delete(i),queueMicrotask(()=>{this.#_()})}},r),this.emit("add"),this.#g()})}async addAll(t,r){return Promise.all(t.map(async n=>this.add(n,r)))}start(){return this.#a?(this.#a=!1,this.#x(),this):this}pause(){this.#a=!0}clear(){this.#e=new this.#w,this.#I()}async onEmpty(){this.#e.size!==0&&await this.#c("empty")}async onSizeLessThan(t){this.#e.size<t||await this.#c("next",()=>this.#e.size<t)}async onIdle(){this.#o===0&&this.#e.size===0||await this.#c("idle")}async onPendingZero(){this.#o!==0&&await this.#c("pendingZero")}async onRateLimit(){this.isRateLimited||await this.#c("rateLimit")}async onRateLimitCleared(){this.isRateLimited&&await this.#c("rateLimitCleared")}async onError(){return new Promise((t,r)=>{let n=o=>{this.off("error",n),r(o)};this.on("error",n)})}async#c(t,r){return new Promise(n=>{let o=()=>{r&&!r()||(this.off(t,o),n())};this.on(t,o)})}get size(){return this.#e.size}sizeBy(t){return this.#e.filter(t).length}get pending(){return this.#o}get isPaused(){return this.#a}#L(){this.#n||(this.on("add",()=>{this.#e.size>0&&this.#d()}),this.on("next",()=>{this.#d()}))}#d(){this.#n||this.#m||(this.#m=!0,queueMicrotask(()=>{this.#m=!1,this.#I()}))}#I(){let t=this.#p,r=!this.#n&&this.#r>=this.#h&&this.#e.size>0;r!==t&&(this.#p=r,this.emit(r?"rateLimit":"rateLimitCleared"))}get isRateLimited(){return this.#p}get isSaturated(){return this.#o===this.#f&&this.#e.size>0||this.isRateLimited&&this.#e.size>0}get runningTasks(){return[...this.#l.values()].map(t=>({...t}))}};var Ir=class extends Error{static name="InvalidRequestError";constructor(t="Invalid request"){super(t),this.name="InvalidRequestError"}},zt=class extends Error{static name="BadResponseError";constructor(t="Bad response"){super(t),this.name="BadResponseError"}};function y0(e){return e[Symbol.asyncIterator]!=null}function g0(e){if(y0(e))return(async()=>{for await(let t of e)return t})();for(let t of e)return t}var yo=g0;function x0(e){let[t,r]=e[Symbol.asyncIterator]!=null?[e[Symbol.asyncIterator](),Symbol.asyncIterator]:[e[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(),[r](){return this}}}var Ef=x0;function b0(e){return e[Symbol.asyncIterator]!=null}function w0(e,t){let r=0;if(b0(e))return(async function*(){for await(let a of e)yield t(a,r++)})();let n=Ef(e),{value:o,done:i}=n.next();if(i===!0)return(function*(){})();let s=t(o,r++);if(typeof s.then=="function")return(async function*(){yield await s;for(let a of n)yield t(a,r++)})();let c=t;return(function*(){yield s;for(let a of n)yield c(a,r++)})()}var go=w0;var Sf=H("/ipns/");function vf(e){return Y(e.subarray(0,Sf.byteLength),Sf)}var xo=class{client;constructor(t){this.client=t}async*findProviders(t,r={}){try{yield*go(this.client.getProviders(t,r),n=>({id:n.ID,multiaddrs:n.Addrs??[],routing:"delegated-http-routing-v1"}))}catch(n){if(n instanceof At)return;throw n}}async provide(){}async cancelReprovide(){}async put(t,r,n){if(!vf(t))return;let o=ye(t),i=j.createV1(114,o),s=ee(r);await this.client.putIPNS(i,s,n)}async get(t,r){if(!vf(t))throw new At("Not found");let n=ye(t),o=j.createV1(114,n);try{let i=await this.client.getIPNS(o,r);return He(i)}catch(i){throw i.name==="BadResponseError"?new At("Not found"):i}}toString(){return`DelegatedRoutingV1HttpApiClientContentRouting(${this.client.url})`}},bo=class{client;constructor(t){this.client=t}async findPeer(t,r={}){let n=await yo(this.client.getPeers(t,r));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new At("Not found")}async*getClosestPeers(t,r={}){}toString(){return`DelegatedRoutingV1HttpApiClientPeerRouting(${this.client.url})`}};var wo={concurrentRequests:4,timeout:3e4,cacheTTL:300*1e3,cacheName:"delegated-routing-v1-cache"},Eo=class{url;started;httpQueue;shutDownController;timeout;contentRouting;peerRouting;filterAddrs;filterProtocols;inFlightRequests;cacheName;cache;cacheTTL;log;constructor(t,r){this.log=t.logger.forComponent("delegated-routing-v1-http-api-client"),this.started=!1,this.shutDownController=new AbortController,this.shutDownController.signal,this.httpQueue=new un({concurrency:r.concurrentRequests??wo.concurrentRequests}),this.inFlightRequests=new Map,this.url=r.url instanceof URL?r.url:new URL(r.url),this.timeout=r.timeout??wo.timeout,this.filterAddrs=r.filterAddrs,this.filterProtocols=r.filterProtocols,this.contentRouting=new xo(this),this.peerRouting=new bo(this),this.cacheName=r.cacheName??wo.cacheName,this.cacheTTL=r.cacheTTL??wo.cacheTTL}get[ea](){return this.contentRouting}get[ra](){return this.peerRouting}isStarted(){return this.started}async start(){this.started||(this.started=!0,this.cacheTTL>0&&(this.cache=await globalThis.caches?.open(this.cacheName),this.cache!=null&&this.log("cache enabled with ttl %d",this.cacheTTL)))}async stop(){this.httpQueue.clear(),this.shutDownController.abort(),await globalThis.caches?.delete(this.cacheName),this.started=!1}async*getProviders(t,r={}){this.log("getProviders starts: %c",t);let n=AbortSignal.timeout(this.timeout),o=Xr([this.shutDownController.signal,n,r.signal]);let i=re(),s=re();this.httpQueue.add(async()=>(i.resolve(),s.promise));try{await i.promise;let c=new URL(`${this.url}routing/v1/providers/${t}`);this.#n(c,r.filterAddrs,r.filterProtocols);let a={headers:{Accept:"application/x-ndjson"},signal:o},f=await this.#r(c.toString(),a);if(!f.ok){if(f.status===404)return;throw f.status===422?new Ir("Request does not conform to schema or semantic constraints"):new zt(`Unexpected status code: ${f.status}`)}if(f.body==null)throw new zt("Routing response had no body");let u=f.headers.get("Content-Type");if(u==null)throw new zt("No Content-Type header received");if(u.startsWith("application/json")){let y=(await f.json()).Providers??[];for(let v of y){let b=this.#t(v);b!=null&&(yield b)}}else if(u.includes("application/x-ndjson"))for await(let l of sn(Zn(f.body))){let y=this.#t(l);y!=null&&(yield y)}else throw new zt(`Unsupported Content-Type: ${u}`)}finally{o.clear(),s.resolve(),this.log("getProviders finished: %c",t)}}async*getPeers(t,r={}){this.log("getPeers starts: %c",t);let n=AbortSignal.timeout(this.timeout),o=Xr([this.shutDownController.signal,n,r.signal]);let i=re(),s=re();this.httpQueue.add(async()=>(i.resolve(),s.promise));try{await i.promise;let c=new URL(`${this.url}routing/v1/peers/${t.toCID().toString()}`);this.#n(c,r.filterAddrs,r.filterProtocols);let a={headers:{Accept:"application/x-ndjson"},signal:o},f=await this.#r(c.toString(),a);if(f.status===404)return;if(f.status===422)throw new Ir("Request does not conform to schema or semantic constraints");if(f.body==null)throw new zt("Routing response had no body");if(f.headers.get("Content-Type")?.startsWith("application/json")){let y=(await f.json()).Peers??[];for(let v of y){let b=this.#t(v);b!=null&&(yield b)}}else for await(let l of sn(Zn(f.body))){let y=this.#t(l);y!=null&&(yield y)}}catch(c){this.log.error("getPeers errored - %e",c)}finally{o.clear(),s.resolve(),this.log("getPeers finished: %c",t)}}async getIPNS(t,r={}){this.log("getIPNS starts: %s",t);let n=AbortSignal.timeout(this.timeout),o=Xr([this.shutDownController.signal,n,r.signal]);let i=re(),s=re();this.httpQueue.add(async()=>(i.resolve(),s.promise));let c=`${this.url}routing/v1/ipns/${t}`;try{await i.promise;let a={headers:{Accept:"application/vnd.ipfs.ipns-record"},signal:o},f=await this.#r(c,a);if(this.log("getIPNS GET %s %d",c,f.status),f.status===404)throw new At("No matching records found");if(f.status===422)throw new Ir("Request does not conform to schema or semantic constraints");if(!f.ok)throw new zt(`Unexpected status code: ${f.status}`);let u=f.headers.get("Content-Type");if(u==null||!u.includes("application/vnd.ipfs.ipns-record"))throw new At("No matching records found");if(f.body==null)throw new zt("GET ipns response had no body");let l=await f.arrayBuffer(),y=new Uint8Array(l,0,l.byteLength);return r.validate!==!1&&await gf(on(t.multihash),y),ee(y)}catch(a){throw this.log.error("getIPNS GET %s error - %e",c,a),a}finally{o.clear(),s.resolve(),this.log("getIPNS finished: %s",t)}}async putIPNS(t,r,n={}){this.log("putIPNS starts: %c",t);let o=AbortSignal.timeout(this.timeout),i=Xr([this.shutDownController.signal,o,n.signal]);let s=re(),c=re();this.httpQueue.add(async()=>(s.resolve(),c.promise));let a=`${this.url}routing/v1/ipns/${t}`;try{await s.promise;let f=He(r),u={method:"PUT",headers:{"Content-Type":"application/vnd.ipfs.ipns-record"},body:f,signal:i},l=await this.#r(a,u);if(this.log("putIPNS PUT %s %d",a,l.status),l.status!==200)throw new zt("PUT ipns response had status other than 200")}catch(f){throw this.log.error("putIPNS PUT %s error - %e",a,f.stack),f}finally{i.clear(),c.resolve(),this.log("putIPNS finished: %c",t)}}#t(t){try{let r=[],n=t.Addrs?.map(Gn)??[];return t.Protocols!=null&&r.push(...t.Protocols),t.Protocol!=null&&(r.push(t.Protocol),delete t.Protocol),{...t,Schema:"peer",ID:$c(t.ID),Addrs:n,Protocols:r}}catch(r){this.log.error("could not conform record to peer schema - %e",r)}}#n(t,r,n){if(r!=null||this.filterAddrs!=null){let o=r?.join(",")??this.filterAddrs?.join(",")??"";o!==""&&t.searchParams.set("filter-addrs",o)}if(n!=null||this.filterProtocols!=null){let o=n?.join(",")??this.filterProtocols?.join(",")??"";o!==""&&t.searchParams.set("filter-protocols",o)}}async#r(t,r){let n=r.method??"GET",o=`${n}-${t}`;if(n==="GET"){let a=await this.cache?.match(t);if(a!=null){if(parseInt(a.headers.get("x-cache-expires")??"0",10)>Date.now())return this.log("returning cached response for %s",o),a;await this.cache?.delete(t)}}let i=this.inFlightRequests.get(o);if(i!=null){let a=await i;return this.log("deduplicating outgoing request for %s",o),a.clone()}let s=fetch(t,r).then(async a=>{if(this.cache!=null&&a.ok&&n==="GET"){let f=Date.now()+this.cacheTTL,u=new Headers(a.headers);u.set("x-cache-expires",f.toString());let l=new Response(a.clone().body,{status:a.status,statusText:a.statusText,headers:u});await this.cache.put(t,l)}return a}).finally(()=>{this.inFlightRequests.delete(o)});return this.inFlightRequests.set(o,s),await s}toString(){return`DefaultDelegatedRoutingV1HttpApiClient(${this.url})`}};function Af(e,t={}){return new Eo({logger:ta()},{...t,url:new URL(e)})}function So(){return{filterProtocols:["unknown","transport-bitswap","transport-ipfs-gateway-http"],filterAddrs:["https","webtransport","webrtc","webrtc-direct","wss","tls"]}}var If=H("/ipns/");function Tf(e){return Y(e.subarray(0,If.byteLength),If)}var Ps=class{client;constructor(t,r={}){this.client=Af(t,r)}async provide(t,r){}async cancelReprovide(t,r){}async*findProviders(t,r){yield*go(this.client.getProviders(t,r),n=>({id:n.ID,multiaddrs:n.Addrs,protocols:n.Protocols,routing:"delegated-http-routing"}))}async put(t,r,n){if(!Tf(t))return;let o=ye(t),i=j.createV1(114,o),s=ee(r);await this.client.putIPNS(i,s,n)}async get(t,r){if(!Tf(t))throw new At("Not found");let n=ye(t),o=j.createV1(114,n);try{let i=await this.client.getIPNS(o,r);return He(i)}catch(i){throw i.name==="BadResponseError"?new At("Not found"):i}}async findPeer(t,r){let n=await yo(this.client.getPeers(t,r));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new At("Not found")}async*getClosestPeers(t,r){}};function Cf(e,t){let r=t??So();return new Ps(new URL(e),r)}var Bf="[a-fA-F\\d:]",_e=e=>e&&e.includeBoundaries?`(?:(?<=\\s|^)(?=${Bf})|(?<=${Bf})(?=\\s|$))`:"",Gt="(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}",at="[a-fA-F\\d]{1,4}",vo=`
10
10
  (?:
11
11
  (?:${at}:){7}(?:${at}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8
12
- (?:${at}:){6}(?:${Zt}|:${at}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4
13
- (?:${at}:){5}(?::${Zt}|(?::${at}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4
14
- (?:${at}:){4}(?:(?::${at}){0,1}:${Zt}|(?::${at}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4
15
- (?:${at}:){3}(?:(?::${at}){0,2}:${Zt}|(?::${at}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4
16
- (?:${at}:){2}(?:(?::${at}){0,3}:${Zt}|(?::${at}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4
17
- (?:${at}:){1}(?:(?::${at}){0,4}:${Zt}|(?::${at}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4
18
- (?::(?:(?::${at}){0,5}:${Zt}|(?::${at}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4
12
+ (?:${at}:){6}(?:${Gt}|:${at}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4
13
+ (?:${at}:){5}(?::${Gt}|(?::${at}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4
14
+ (?:${at}:){4}(?:(?::${at}){0,1}:${Gt}|(?::${at}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4
15
+ (?:${at}:){3}(?:(?::${at}){0,2}:${Gt}|(?::${at}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4
16
+ (?:${at}:){2}(?:(?::${at}){0,3}:${Gt}|(?::${at}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4
17
+ (?:${at}:){1}(?:(?::${at}){0,4}:${Gt}|(?::${at}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4
18
+ (?::(?:(?::${at}){0,5}:${Gt}|(?::${at}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4
19
19
  )(?:%[0-9a-zA-Z]{1,})? // %eth0 %1
20
- `.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),d0=new RegExp(`(?:^${Zt}$)|(?:^${Eo}$)`),h0=new RegExp(`^${Zt}$`),p0=new RegExp(`^${Eo}$`),Ds=e=>e&&e.exact?d0:new RegExp(`(?:${_e(e)}${Zt}${_e(e)})|(?:${_e(e)}${Eo}${_e(e)})`,"g");Ds.v4=e=>e&&e.exact?h0:new RegExp(`${_e(e)}${Zt}${_e(e)}`,"g");Ds.v6=e=>e&&e.exact?p0:new RegExp(`${_e(e)}${Eo}${_e(e)}`,"g");var Rs=Ds;function Ps(e){let t=(...r)=>e(...r);return Object.defineProperty(t,"name",{value:`functionTimeout(${e.name||"<anonymous>"})`,configurable:!0}),t}function vf(){return!1}var{toString:m0}=Object.prototype;function Us(e){return m0.call(e)==="[object RegExp]"}var Af={global:"g",ignoreCase:"i",multiline:"m",dotAll:"s",sticky:"y",unicode:"u"};function Ns(e,t={}){if(!Us(e))throw new TypeError("Expected a RegExp instance");let r=Object.keys(Af).map(o=>(typeof t[o]=="boolean"?t[o]:e[o])?Af[o]:"").join(""),n=new RegExp(t.source||e.source,r);return n.lastIndex=typeof t.lastIndex=="number"?t.lastIndex:e.lastIndex,n}function Ls(e,t,{timeout:r}={}){try{return Ps(()=>Ns(e).test(t),{timeout:r})()}catch(n){if(vf(n))return!1;throw n}}var y0=15,g0=45,If={timeout:400};function Os(e){return e.length>g0?!1:Ls(Rs.v6({exact:!0}),e,If)}function Tf(e){return e.length>y0?!1:Ls(Rs.v4({exact:!0}),e,If)}var Cf={http:"80",https:"443",ws:"80",wss:"443"},x0=["http","https","ws","wss"];function Bf(e,t){t=t??{};let r=t.defaultDnsType??"dns",{scheme:n,hostname:o,port:i,path:s}=b0(e),c=[w0(o,r),E0(i,n),S0(n)];s!=null&&c.push(v0(s));let a="/"+c.filter(f=>!!f).reduce((f,u)=>f.concat(u),[]).join("/");return Gn(a)}function b0(e){let[t]=e.split(":");x0.includes(t)||(e="http"+e.substring(t.length));let{protocol:r,hostname:n,port:o,pathname:i,search:s}=new URL(e);if(o==null||o===""){let a=A0(t);a!=null&&(o=a),a==null&&r==="http:"&&(o="80")}let c;return i!=null&&i!==""&&i!=="/"&&(i.startsWith("/")&&(i=i.substring(1)),c=i),s!=null&&s!==""&&(c=c??"",c+=s),{scheme:t,hostname:n,port:o,path:c}}function w0(e,t){if(!(e==null||e==="")){if(Tf(e))return["ip4",e];if(Os(e))return["ip6",e];if(e[0]==="["){let r=e.substring(1,e.length-1);if(Os(r))return["ip6",r]}return[t,e]}}function E0(e,t){if(!(e==null||e===""))return t==="udp"?["udp",e]:["tcp",e]}function S0(e){if(e.match(/^tcp$|^udp$/)==null)return e==="https"?["/tls/http"]:e==="wss"?["/tls/ws"]:[e]}function v0(e){if(!(e==null||e===""))return["http-path",encodeURIComponent(e)]}function A0(e){if(!(e==null||e===""||Cf[e]==null))return Cf[e]}var I0=["https://trustless-gateway.link","https://4everland.io"],T0=2336;function C0(e){return e=e.toString(),{id:as(j.createV1(T0,Bt.digest(H(e)))),multiaddrs:[Bf(e)]}}var ks=class{gateways;shuffle;constructor(t={}){this.gateways=(t.gateways??I0).map(r=>C0(r)),this.shuffle=t.shuffle??!0}async*findProviders(t,r){yield*(this.shuffle?this.gateways.toSorted(()=>Math.random()>.5?1:-1):this.gateways).map(n=>({...n,protocols:["transport-ipfs-gateway-http"],routing:"http-gateway-routing"}))}};function _f(e={}){return new ks(e)}var Ks=class{libp2p;constructor(t){this.libp2p=t}async provide(t,r){await this.libp2p.contentRouting.provide(t,r)}async cancelReprovide(t,r){await this.libp2p.contentRouting.cancelReprovide(t,r)}async*findProviders(t,r){yield*Tr(this.libp2p.contentRouting.findProviders(t,r),n=>({...n,routing:"libp2p"}))}async put(t,r,n){await this.libp2p.contentRouting.put(t,r,n)}async get(t,r){return this.libp2p.contentRouting.get(t,r)}async findPeer(t,r){return this.libp2p.peerRouting.findPeer(t,r)}async*getClosestPeers(t,r){yield*this.libp2p.peerRouting.getClosestPeers(t,r)}};function Df(e){return new Ks(e)}return Of(B0);})();
20
+ `.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),E0=new RegExp(`(?:^${Gt}$)|(?:^${vo}$)`),S0=new RegExp(`^${Gt}$`),v0=new RegExp(`^${vo}$`),Ns=e=>e&&e.exact?E0:new RegExp(`(?:${_e(e)}${Gt}${_e(e)})|(?:${_e(e)}${vo}${_e(e)})`,"g");Ns.v4=e=>e&&e.exact?S0:new RegExp(`${_e(e)}${Gt}${_e(e)}`,"g");Ns.v6=e=>e&&e.exact?v0:new RegExp(`${_e(e)}${vo}${_e(e)}`,"g");var Ls=Ns;function Us(e){let t=(...r)=>e(...r);return Object.defineProperty(t,"name",{value:`functionTimeout(${e.name||"<anonymous>"})`,configurable:!0}),t}function _f(){return!1}var{toString:A0}=Object.prototype;function Os(e){return A0.call(e)==="[object RegExp]"}var Df={global:"g",ignoreCase:"i",multiline:"m",dotAll:"s",sticky:"y",unicode:"u"};function ks(e,t={}){if(!Os(e))throw new TypeError("Expected a RegExp instance");let r=Object.keys(Df).map(o=>(typeof t[o]=="boolean"?t[o]:e[o])?Df[o]:"").join(""),n=new RegExp(t.source||e.source,r);return n.lastIndex=typeof t.lastIndex=="number"?t.lastIndex:e.lastIndex,n}function Ks(e,t,{timeout:r}={}){try{return Us(()=>ks(e).test(t),{timeout:r})()}catch(n){if(_f(n))return!1;throw n}}var I0=15,T0=45,Rf={timeout:400};function Vs(e){return e.length>T0?!1:Ks(Ls.v6({exact:!0}),e,Rf)}function Pf(e){return e.length>I0?!1:Ks(Ls.v4({exact:!0}),e,Rf)}var Nf={http:"80",https:"443",ws:"80",wss:"443"},C0=["http","https","ws","wss"];function Lf(e,t){t=t??{};let r=t.defaultDnsType??"dns",{scheme:n,hostname:o,port:i,path:s}=B0(e),c=[_0(o,r),D0(i,n),R0(n)];s!=null&&c.push(P0(s));let a="/"+c.filter(f=>!!f).reduce((f,u)=>f.concat(u),[]).join("/");return Gn(a)}function B0(e){let[t]=e.split(":");C0.includes(t)||(e="http"+e.substring(t.length));let{protocol:r,hostname:n,port:o,pathname:i,search:s}=new URL(e);if(o==null||o===""){let a=N0(t);a!=null&&(o=a),a==null&&r==="http:"&&(o="80")}let c;return i!=null&&i!==""&&i!=="/"&&(i.startsWith("/")&&(i=i.substring(1)),c=i),s!=null&&s!==""&&(c=c??"",c+=s),{scheme:t,hostname:n,port:o,path:c}}function _0(e,t){if(!(e==null||e==="")){if(Pf(e))return["ip4",e];if(Vs(e))return["ip6",e];if(e[0]==="["){let r=e.substring(1,e.length-1);if(Vs(r))return["ip6",r]}return[t,e]}}function D0(e,t){if(!(e==null||e===""))return t==="udp"?["udp",e]:["tcp",e]}function R0(e){if(e.match(/^tcp$|^udp$/)==null)return e==="https"?["/tls/http"]:e==="wss"?["/tls/ws"]:[e]}function P0(e){if(!(e==null||e===""))return["http-path",encodeURIComponent(e)]}function N0(e){if(!(e==null||e===""||Nf[e]==null))return Nf[e]}var L0=["https://trustless-gateway.link","https://4everland.io"],U0=2336;function O0(e){return e=e.toString(),{id:us(j.createV1(U0,Ct.digest(H(e)))),multiaddrs:[Lf(e)]}}var Ms=class{gateways;shuffle;constructor(t={}){this.gateways=(t.gateways??L0).map(r=>O0(r)),this.shuffle=t.shuffle??!0}async*findProviders(t,r){yield*(this.shuffle?this.gateways.toSorted(()=>Math.random()>.5?1:-1):this.gateways).map(n=>({...n,protocols:["transport-ipfs-gateway-http"],routing:"http-gateway-routing"}))}};function Uf(e={}){return new Ms(e)}var Fs=class{libp2p;constructor(t){this.libp2p=t}async provide(t,r){await this.libp2p.contentRouting.provide(t,r)}async cancelReprovide(t,r){await this.libp2p.contentRouting.cancelReprovide(t,r)}async*findProviders(t,r){yield*this.libp2p.contentRouting.findProviders(t,r)}async put(t,r,n){await this.libp2p.contentRouting.put(t,r,n)}async get(t,r){return this.libp2p.contentRouting.get(t,r)}async findPeer(t,r){return this.libp2p.peerRouting.findPeer(t,r)}async*getClosestPeers(t,r){yield*this.libp2p.peerRouting.getClosestPeers(t,r)}};function Of(e){return new Fs(e)}return $f(k0);})();
21
21
  /*! Bundled license information:
22
22
 
23
23
  @noble/hashes/utils.js: