@helia/routers 2.1.0 → 2.2.0

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,21 +1,21 @@
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 ud=Object.create;var Rn=Object.defineProperty;var ld=Object.getOwnPropertyDescriptor;var fd=Object.getOwnPropertyNames;var dd=Object.getPrototypeOf,hd=Object.prototype.hasOwnProperty;var Ui=(r,t)=>()=>(t||r((t={exports:{}}).exports,t),t.exports),kt=(r,t)=>{for(var e in t)Rn(r,e,{get:t[e],enumerable:!0})},za=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of fd(t))!hd.call(r,o)&&o!==e&&Rn(r,o,{get:()=>t[o],enumerable:!(n=ld(t,o))||n.enumerable});return r};var _n=(r,t,e)=>(e=r!=null?ud(dd(r)):{},za(t||!r||!r.__esModule?Rn(e,"default",{value:r,enumerable:!0}):e,r)),pd=r=>za(Rn({},"__esModule",{value:!0}),r);var Zc=Ui(Nr=>{"use strict";var J0="[object ArrayBuffer]",ve=class r{static isArrayBuffer(t){return Object.prototype.toString.call(t)===J0}static toArrayBuffer(t){return this.isArrayBuffer(t)?t:t.byteLength===t.buffer.byteLength||t.byteOffset===0&&t.byteLength===t.buffer.byteLength?t.buffer:this.toUint8Array(t.buffer).slice(t.byteOffset,t.byteOffset+t.byteLength).buffer}static toUint8Array(t){return this.toView(t,Uint8Array)}static toView(t,e){if(t.constructor===e)return t;if(this.isArrayBuffer(t))return new e(t);if(this.isArrayBufferView(t))return new e(t.buffer,t.byteOffset,t.byteLength);throw new TypeError("The provided value is not of type '(ArrayBuffer or ArrayBufferView)'")}static isBufferSource(t){return this.isArrayBufferView(t)||this.isArrayBuffer(t)}static isArrayBufferView(t){return ArrayBuffer.isView(t)||t&&this.isArrayBuffer(t.buffer)}static isEqual(t,e){let n=r.toUint8Array(t),o=r.toUint8Array(e);if(n.length!==o.byteLength)return!1;for(let i=0;i<n.length;i++)if(n[i]!==o[i])return!1;return!0}static concat(...t){let e;Array.isArray(t[0])&&!(t[1]instanceof Function)||Array.isArray(t[0])&&t[1]instanceof Function?e=t[0]:t[t.length-1]instanceof Function?e=t.slice(0,t.length-1):e=t;let n=0;for(let s of e)n+=s.byteLength;let o=new Uint8Array(n),i=0;for(let s of e){let a=this.toUint8Array(s);o.set(a,i),i+=a.length}return t[t.length-1]instanceof Function?this.toView(o,t[t.length-1]):o.buffer}},Ms="string",X0=/^[0-9a-f]+$/i,Q0=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,tp=/^[a-zA-Z0-9-_]+$/,ro=class{static fromString(t){let e=unescape(encodeURIComponent(t)),n=new Uint8Array(e.length);for(let o=0;o<e.length;o++)n[o]=e.charCodeAt(o);return n.buffer}static toString(t){let e=ve.toUint8Array(t),n="";for(let i=0;i<e.length;i++)n+=String.fromCharCode(e[i]);return decodeURIComponent(escape(n))}},qt=class{static toString(t,e=!1){let n=ve.toArrayBuffer(t),o=new DataView(n),i="";for(let s=0;s<n.byteLength;s+=2){let a=o.getUint16(s,e);i+=String.fromCharCode(a)}return i}static fromString(t,e=!1){let n=new ArrayBuffer(t.length*2),o=new DataView(n);for(let i=0;i<t.length;i++)o.setUint16(i*2,t.charCodeAt(i),e);return n}},no=class r{static isHex(t){return typeof t===Ms&&X0.test(t)}static isBase64(t){return typeof t===Ms&&Q0.test(t)}static isBase64Url(t){return typeof t===Ms&&tp.test(t)}static ToString(t,e="utf8"){let n=ve.toUint8Array(t);switch(e.toLowerCase()){case"utf8":return this.ToUtf8String(n);case"binary":return this.ToBinary(n);case"hex":return this.ToHex(n);case"base64":return this.ToBase64(n);case"base64url":return this.ToBase64Url(n);case"utf16le":return qt.toString(n,!0);case"utf16":case"utf16be":return qt.toString(n);default:throw new Error(`Unknown type of encoding '${e}'`)}}static FromString(t,e="utf8"){if(!t)return new ArrayBuffer(0);switch(e.toLowerCase()){case"utf8":return this.FromUtf8String(t);case"binary":return this.FromBinary(t);case"hex":return this.FromHex(t);case"base64":return this.FromBase64(t);case"base64url":return this.FromBase64Url(t);case"utf16le":return qt.fromString(t,!0);case"utf16":case"utf16be":return qt.fromString(t);default:throw new Error(`Unknown type of encoding '${e}'`)}}static ToBase64(t){let e=ve.toUint8Array(t);if(typeof btoa<"u"){let n=this.ToString(e,"binary");return btoa(n)}else return Buffer.from(e).toString("base64")}static FromBase64(t){let e=this.formatString(t);if(!e)return new ArrayBuffer(0);if(!r.isBase64(e))throw new TypeError("Argument 'base64Text' is not Base64 encoded");return typeof atob<"u"?this.FromBinary(atob(e)):new Uint8Array(Buffer.from(e,"base64")).buffer}static FromBase64Url(t){let e=this.formatString(t);if(!e)return new ArrayBuffer(0);if(!r.isBase64Url(e))throw new TypeError("Argument 'base64url' is not Base64Url encoded");return this.FromBase64(this.Base64Padding(e.replace(/\-/g,"+").replace(/\_/g,"/")))}static ToBase64Url(t){return this.ToBase64(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")}static FromUtf8String(t,e=r.DEFAULT_UTF8_ENCODING){switch(e){case"ascii":return this.FromBinary(t);case"utf8":return ro.fromString(t);case"utf16":case"utf16be":return qt.fromString(t);case"utf16le":case"usc2":return qt.fromString(t,!0);default:throw new Error(`Unknown type of encoding '${e}'`)}}static ToUtf8String(t,e=r.DEFAULT_UTF8_ENCODING){switch(e){case"ascii":return this.ToBinary(t);case"utf8":return ro.toString(t);case"utf16":case"utf16be":return qt.toString(t);case"utf16le":case"usc2":return qt.toString(t,!0);default:throw new Error(`Unknown type of encoding '${e}'`)}}static FromBinary(t){let e=t.length,n=new Uint8Array(e);for(let o=0;o<e;o++)n[o]=t.charCodeAt(o);return n.buffer}static ToBinary(t){let e=ve.toUint8Array(t),n="";for(let o=0;o<e.length;o++)n+=String.fromCharCode(e[o]);return n}static ToHex(t){let e=ve.toUint8Array(t),n="",o=e.length;for(let i=0;i<o;i++){let s=e[i];s<16&&(n+="0"),n+=s.toString(16)}return n}static FromHex(t){let e=this.formatString(t);if(!e)return new ArrayBuffer(0);if(!r.isHex(e))throw new TypeError("Argument 'hexString' is not HEX encoded");e.length%2&&(e=`0${e}`);let n=new Uint8Array(e.length/2);for(let o=0;o<e.length;o=o+2){let i=e.slice(o,o+2);n[o/2]=parseInt(i,16)}return n.buffer}static ToUtf16String(t,e=!1){return qt.toString(t,e)}static FromUtf16String(t,e=!1){return qt.fromString(t,e)}static Base64Padding(t){let e=4-t.length%4;if(e<4)for(let n=0;n<e;n++)t+="=";return t}static formatString(t){return t?.replace(/[\n\r\t ]/g,"")||""}};no.DEFAULT_UTF8_ENCODING="utf8";function ep(r,...t){let e=arguments[0];for(let n=1;n<arguments.length;n++){let o=arguments[n];for(let i in o)e[i]=o[i]}return e}function rp(...r){let t=r.map(o=>o.byteLength).reduce((o,i)=>o+i),e=new Uint8Array(t),n=0;return r.map(o=>new Uint8Array(o)).forEach(o=>{for(let i of o)e[n++]=i}),e.buffer}function np(r,t){if(!(r&&t)||r.byteLength!==t.byteLength)return!1;let e=new Uint8Array(r),n=new Uint8Array(t);for(let o=0;o<r.byteLength;o++)if(e[o]!==n[o])return!1;return!0}Nr.BufferSourceConverter=ve;Nr.Convert=no;Nr.assign=ep;Nr.combine=rp;Nr.isEqual=np});var ma=Ui((u2,pa)=>{var c2=function(){typeof pa<"u"&&(pa.exports=w);var r=86400,t=3200,e=146097*t/400,n=r*e,o=1e3*n,i=864e13,s=4294967296,a=1e6,c="000000000",f=Math.trunc||function(g){var v=g-g%1;return v==0&&(g<0||g===0&&1/g!=1/0)?-0:v},u=w.prototype,l=(w.fromDate=function(g){return new w(+g)},w.fromInt64BE=T(0,1,2,3,0,4),w.fromInt64LE=T(3,2,1,0,4,0),w.fromString=function(R){var v,O=new w,R=(R+="").replace(/^\s*[+\-]?\d+/,function(H){var H=+H,A=1970+(H-1970)%400;return O.year=H-A,A}).replace(/(?:Z|([+\-]\d{2}):?(\d{2}))$/,function(N,H,A){return H<0&&(A*=-1),v=6e4*(60*+H+ +A),""}).replace(/\.\d+$/,function(N){return O.nano=+(N+c).substr(1,9),""}).split(/\D+/);if(1<R.length?R[1]--:R[1]=0,O.time=v=Date.UTC.apply(Date,R)-(v||0),isNaN(v))throw new TypeError("Invalid Date");return h(O)},w.fromTimeT=function(g){return C(g,0)},u.year=0,u.time=0,u.nano=0,u.addNano=function(g){return this.nano+=+g||0,this},u.getNano=function(){var g=h(this);return(g.time%1e3*a+ +g.nano+1e9)%1e9},u.getTimeT=function(){var v=h(this),g=Math.floor(v.time/1e3),v=v.year;return v&&(g+=v*e*r/t),g},u.getYear=function(){return this.toDate().getUTCFullYear()+this.year},u.toDate=function(){return E(h(this).time)},u.toJSON=function(){return this.toString().replace(/0{1,6}Z$/,"Z")},u.toString=function(g){var v=this,O=v.toDate(),R={H:function(){return V(O.getUTCHours())},L:function(){return U(O.getUTCMilliseconds(),3)},M:function(){return V(O.getUTCMinutes())},N:function(){return U(v.getNano(),9)},S:function(){return V(O.getUTCSeconds())},Y:function(){var N=v.getYear();return 999999<N?"+"+N:9999<N?"+"+U(N,6):0<=N?U(N,4):-999999<=N?"-"+U(-N,6):N},a:function(){return b[O.getUTCDay()]},b:function(){return d[O.getUTCMonth()]},d:function(){return V(O.getUTCDate())},e:function(){return function(N){return(9<N?"":" ")+(0|N)}(O.getUTCDate())},m:function(){return V(O.getUTCMonth()+1)}};return function N(H){return H.replace(/%./g,function(A){var m=A[1],S=I[m],m=R[m];return S?N(S):m?m():A})}(g||l)},u.writeInt64BE=x(0,1,2,3,0,4),u.writeInt64LE=x(3,2,1,0,4,0),"%Y-%m-%dT%H:%M:%S.%NZ"),d=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],b=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],I={"%":"%",F:"%Y-%m-%d",n:`
3
- `,R:"%H:%M",T:"%H:%M:%S",t:" ",X:"%T",Z:"GMT",z:"+0000"};return w;function w(g,v,O){var R=this;if(!(R instanceof w))return new w(g,v,O);R.time=+g||0,R.nano=+v||0,R.year=+O||0,h(R)}function h(g){var v,O,R,N=g.year,H=g.time,A=g.nano,S=((A<0||a<=A)&&(A-=(O=Math.floor(A/a))*a,H+=O,O=1),N%t);return(H<-i||i<H||S)&&((v=f(H/o))&&(N+=v*t,H-=v*o),(R=E(H)).setUTCFullYear(S+R.getUTCFullYear()),R=(H=+R)+(v=f((N-=S)/t))*o,v&&-i<=R&&R<=i&&(N-=v*t,H=R),O=1),O&&(g.year=N,g.time=H,g.nano=A),g}function E(g){var v=new Date(0);return v.setTime(g),v}function C(N,R){N=+N||0;var O=f((R=(R|0)*s)/n)+f(N/n),R=R%n+N%n,N=f(R/n);return N&&(O+=N,R-=N*n),new w(1e3*R,0,O*t)}function x(g,v,O,R,N,H){return function(S,m){var B=h(this);S=S||new Array(8),F(S,m|=0);var P=Math.floor(B.time/1e3),B=B.year*(e*r/t),p=f(B/s)+f(P/s),B=B%s+P%s,P=Math.floor(B/s);return P&&(p+=P,B-=P*s),A(S,m+N,p),A(S,m+H,B),S};function A(S,m,p){S[m+g]=p>>24&255,S[m+v]=p>>16&255,S[m+O]=p>>8&255,S[m+R]=255&p}}function T(g,v,O,R,N,H){return function(S,m){F(S,m|=0);var p=A(S,m+N);return C(A(S,m+H),p)};function A(S,m){return 16777216*S[m+g]+(S[m+v]<<16|S[m+O]<<8|S[m+R])}}function F(g,v){if(g=g&&g.length,g==null)throw new TypeError("Invalid Buffer");if(g<v+8)throw new RangeError("Out of range")}function V(g){return(9<g?"":"0")+(0|g)}function U(g,v){return(c+(0|g)).substr(-v)}}()});var Lf=Ui((Jv,Ba)=>{"use strict";var Nm=Object.prototype.hasOwnProperty,Tt="~";function Cn(){}Object.create&&(Cn.prototype=Object.create(null),new Cn().__proto__||(Tt=!1));function Um(r,t,e){this.fn=r,this.context=t,this.once=e||!1}function _f(r,t,e,n,o){if(typeof e!="function")throw new TypeError("The listener must be a function");var i=new Um(e,n||r,o),s=Tt?Tt+t:t;return r._events[s]?r._events[s].fn?r._events[s]=[r._events[s],i]:r._events[s].push(i):(r._events[s]=i,r._eventsCount++),r}function Bi(r,t){--r._eventsCount===0?r._events=new Cn:delete r._events[t]}function St(){this._events=new Cn,this._eventsCount=0}St.prototype.eventNames=function(){var t=[],e,n;if(this._eventsCount===0)return t;for(n in e=this._events)Nm.call(e,n)&&t.push(Tt?n.slice(1):n);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(e)):t};St.prototype.listeners=function(t){var e=Tt?Tt+t:t,n=this._events[e];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};St.prototype.listenerCount=function(t){var e=Tt?Tt+t:t,n=this._events[e];return n?n.fn?1:n.length:0};St.prototype.emit=function(t,e,n,o,i,s){var a=Tt?Tt+t:t;if(!this._events[a])return!1;var c=this._events[a],f=arguments.length,u,l;if(c.fn){switch(c.once&&this.removeListener(t,c.fn,void 0,!0),f){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,n),!0;case 4:return c.fn.call(c.context,e,n,o),!0;case 5:return c.fn.call(c.context,e,n,o,i),!0;case 6:return c.fn.call(c.context,e,n,o,i,s),!0}for(l=1,u=new Array(f-1);l<f;l++)u[l-1]=arguments[l];c.fn.apply(c.context,u)}else{var d=c.length,b;for(l=0;l<d;l++)switch(c[l].once&&this.removeListener(t,c[l].fn,void 0,!0),f){case 1:c[l].fn.call(c[l].context);break;case 2:c[l].fn.call(c[l].context,e);break;case 3:c[l].fn.call(c[l].context,e,n);break;case 4:c[l].fn.call(c[l].context,e,n,o);break;default:if(!u)for(b=1,u=new Array(f-1);b<f;b++)u[b-1]=arguments[b];c[l].fn.apply(c[l].context,u)}}return!0};St.prototype.on=function(t,e,n){return _f(this,t,e,n,!1)};St.prototype.once=function(t,e,n){return _f(this,t,e,n,!0)};St.prototype.removeListener=function(t,e,n,o){var i=Tt?Tt+t:t;if(!this._events[i])return this;if(!e)return Bi(this,i),this;var s=this._events[i];if(s.fn)s.fn===e&&(!o||s.once)&&(!n||s.context===n)&&Bi(this,i);else{for(var a=0,c=[],f=s.length;a<f;a++)(s[a].fn!==e||o&&!s[a].once||n&&s[a].context!==n)&&c.push(s[a]);c.length?this._events[i]=c.length===1?c[0]:c:Bi(this,i)}return this};St.prototype.removeAllListeners=function(t){var e;return t?(e=Tt?Tt+t:t,this._events[e]&&Bi(this,e)):(this._events=new Cn,this._eventsCount=0),this};St.prototype.off=St.prototype.removeListener;St.prototype.addListener=St.prototype.on;St.prefixed=Tt;St.EventEmitter=St;typeof Ba<"u"&&(Ba.exports=St)});var Xm={};kt(Xm,{delegatedHTTPRouting:()=>zf,httpGatewayRouting:()=>Qf,libp2pRouting:()=>td});var ja=Symbol.for("@libp2p/content-routing");var Ri=Symbol.for("@libp2p/peer-id");var Ga=Symbol.for("@libp2p/peer-routing");var vt=class extends Error{static name="InvalidParametersError";constructor(t="Invalid parameters"){super(t),this.name="InvalidParametersError"}},lr=class extends Error{static name="InvalidPublicKeyError";constructor(t="Invalid public key"){super(t),this.name="InvalidPublicKeyError"}};var Rt=class extends Error{static name="NotFoundError";constructor(t="Not found"){super(t),this.name="NotFoundError"}};var Ln=class extends Error{static name="InvalidCIDError";constructor(t="Invalid CID"){super(t),this.name="InvalidCIDError"}},fr=class extends Error{static name="InvalidMultihashError";constructor(t="Invalid Multihash"){super(t),this.name="InvalidMultihashError"}};var dr=class extends Error{static name="UnsupportedKeyTypeError";constructor(t="Unsupported key type"){super(t),this.name="UnsupportedKeyTypeError"}};var hr=(r,...t)=>{try{[...t]}catch{}};var Fi={};kt(Fi,{base32:()=>Gt,base32hex:()=>Bd,base32hexpad:()=>Sd,base32hexpadupper:()=>Id,base32hexupper:()=>Ad,base32pad:()=>vd,base32padupper:()=>Ed,base32upper:()=>bd,base32z:()=>kd});var ig=new Uint8Array(0);function Za(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function me(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function Wa(r){return new TextEncoder().encode(r)}function Ya(r){return new TextDecoder().decode(r)}function md(r,t){if(r.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),n=0;n<e.length;n++)e[n]=255;for(var o=0;o<r.length;o++){var i=r.charAt(o),s=i.charCodeAt(0);if(e[s]!==255)throw new TypeError(i+" is ambiguous");e[s]=o}var a=r.length,c=r.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(I){if(I instanceof Uint8Array||(ArrayBuffer.isView(I)?I=new Uint8Array(I.buffer,I.byteOffset,I.byteLength):Array.isArray(I)&&(I=Uint8Array.from(I))),!(I instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(I.length===0)return"";for(var w=0,h=0,E=0,C=I.length;E!==C&&I[E]===0;)E++,w++;for(var x=(C-E)*u+1>>>0,T=new Uint8Array(x);E!==C;){for(var F=I[E],V=0,U=x-1;(F!==0||V<h)&&U!==-1;U--,V++)F+=256*T[U]>>>0,T[U]=F%a>>>0,F=F/a>>>0;if(F!==0)throw new Error("Non-zero carry");h=V,E++}for(var g=x-h;g!==x&&T[g]===0;)g++;for(var v=c.repeat(w);g<x;++g)v+=r.charAt(T[g]);return v}function d(I){if(typeof I!="string")throw new TypeError("Expected String");if(I.length===0)return new Uint8Array;var w=0;if(I[w]!==" "){for(var h=0,E=0;I[w]===c;)h++,w++;for(var C=(I.length-w)*f+1>>>0,x=new Uint8Array(C);I[w];){var T=e[I.charCodeAt(w)];if(T===255)return;for(var F=0,V=C-1;(T!==0||F<E)&&V!==-1;V--,F++)T+=a*x[V]>>>0,x[V]=T%256>>>0,T=T/256>>>0;if(T!==0)throw new Error("Non-zero carry");E=F,w++}if(I[w]!==" "){for(var U=C-E;U!==C&&x[U]===0;)U++;for(var g=new Uint8Array(h+(C-U)),v=h;U!==C;)g[v++]=x[U++];return g}}}function b(I){var w=d(I);if(w)return w;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:d,decode:b}}var gd=md,yd=gd,Xa=yd;var _i=class{name;prefix;baseEncode;constructor(t,e,n){this.name=t,this.prefix=e,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},Li=class{name;prefix;baseDecode;prefixCodePoint;constructor(t,e,n){this.name=t,this.prefix=e;let o=e.codePointAt(0);if(o===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=o,this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return Qa(this,t)}},Vi=class{decoders;constructor(t){this.decoders=t}or(t){return Qa(this,t)}decode(t){let e=t[0],n=this.decoders[e];if(n!=null)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Qa(r,t){return new Vi({...r.decoders??{[r.prefix]:r},...t.decoders??{[t.prefix]:t}})}var Pi=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,e,n,o){this.name=t,this.prefix=e,this.baseEncode=n,this.baseDecode=o,this.encoder=new _i(t,e,n),this.decoder=new Li(t,e,o)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function pr({name:r,prefix:t,encode:e,decode:n}){return new Pi(r,t,e,n)}function Ue({name:r,prefix:t,alphabet:e}){let{encode:n,decode:o}=Xa(e,r);return pr({prefix:t,name:r,encode:n,decode:i=>me(o(i))})}function wd(r,t,e,n){let o={};for(let u=0;u<t.length;++u)o[t[u]]=u;let i=r.length;for(;r[i-1]==="=";)--i;let s=new Uint8Array(i*e/8|0),a=0,c=0,f=0;for(let u=0;u<i;++u){let l=o[r[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<e|l,a+=e,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=e||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s}function xd(r,t,e){let n=t[t.length-1]==="=",o=(1<<e)-1,i="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>e;)s-=e,i+=t[o&a>>s];if(s!==0&&(i+=t[o&a<<e-s]),n)for(;i.length*e&7;)i+="=";return i}function st({name:r,prefix:t,bitsPerChar:e,alphabet:n}){return pr({prefix:t,name:r,encode(o){return xd(o,n,e)},decode(o){return wd(o,n,e,r)}})}var Gt=st({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),bd=st({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),vd=st({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Ed=st({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Bd=st({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Ad=st({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Sd=st({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Id=st({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),kd=st({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Oi={};kt(Oi,{base58btc:()=>nt,base58flickr:()=>Cd});var nt=Ue({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Cd=Ue({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Mi={};kt(Mi,{base64:()=>Di,base64pad:()=>Td,base64url:()=>Nd,base64urlpad:()=>Ud});var Di=st({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Td=st({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Nd=st({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Ud=st({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});function Rd(r,t){try{if(typeof r=="string"&&r.length>0)return _d(r);if(typeof r=="number"&&isFinite(r))return t?.long?Vd(r):Ld(r);throw new Error("Value is not a string or number.")}catch(e){let n=Pd(e)?`${e.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function _d(r){if(r=String(r),r.length>100)throw new Error("Value exceeds the maximum length of 100 characters.");let t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(!t)return NaN;let e=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return e*315576e5;case"weeks":case"week":case"w":return e*6048e5;case"days":case"day":case"d":return e*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return e*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return e*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return e*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return e;default:throw new Error(`The unit ${n} was matched, but no matching case exists.`)}}var Pn=Rd;function Ld(r){let t=Math.abs(r);return t>=864e5?`${Math.round(r/864e5)}d`:t>=36e5?`${Math.round(r/36e5)}h`:t>=6e4?`${Math.round(r/6e4)}m`:t>=1e3?`${Math.round(r/1e3)}s`:`${r}ms`}function Vd(r){let t=Math.abs(r);return t>=864e5?Vn(r,t,864e5,"day"):t>=36e5?Vn(r,t,36e5,"hour"):t>=6e4?Vn(r,t,6e4,"minute"):t>=1e3?Vn(r,t,1e3,"second"):`${r} ms`}function Vn(r,t,e,n){let o=t>=e*1.5;return`${Math.round(r/e)} ${n}${o?"s":""}`}function Pd(r){return typeof r=="object"&&r!==null&&"message"in r}function $i(r){e.debug=e,e.default=e,e.coerce=c,e.disable=i,e.enable=o,e.enabled=s,e.humanize=Pn,e.destroy=f,Object.keys(r).forEach(u=>{e[u]=r[u]}),e.names=[],e.skips=[],e.formatters={};function t(u){let l=0;for(let d=0;d<u.length;d++)l=(l<<5)-l+u.charCodeAt(d),l|=0;return e.colors[Math.abs(l)%e.colors.length]}e.selectColor=t;function e(u){let l,d=null,b,I;function w(...h){if(!w.enabled)return;let E=w,C=Number(new Date),x=C-(l||C);E.diff=x,E.prev=l,E.curr=C,l=C,h[0]=e.coerce(h[0]),typeof h[0]!="string"&&h.unshift("%O");let T=0;h[0]=h[0].replace(/%([a-zA-Z%])/g,(V,U)=>{if(V==="%%")return"%";T++;let g=e.formatters[U];if(typeof g=="function"){let v=h[T];V=g.call(E,v),h.splice(T,1),T--}return V}),e.formatArgs.call(E,h),(E.log||e.log).apply(E,h)}return w.namespace=u,w.useColors=e.useColors(),w.color=e.selectColor(u),w.extend=n,w.destroy=e.destroy,Object.defineProperty(w,"enabled",{enumerable:!0,configurable:!1,get:()=>d!==null?d:(b!==e.namespaces&&(b=e.namespaces,I=e.enabled(u)),I),set:h=>{d=h}}),typeof e.init=="function"&&e.init(w),w}function n(u,l){let d=e(this.namespace+(typeof l>"u"?":":l)+u);return d.log=this.log,d}function o(u){e.save(u),e.namespaces=u,e.names=[],e.skips=[];let l,d=(typeof u=="string"?u:"").split(/[\s,]+/),b=d.length;for(l=0;l<b;l++)d[l]&&(u=d[l].replace(/\*/g,".*?"),u[0]==="-"?e.skips.push(new RegExp("^"+u.substr(1)+"$")):e.names.push(new RegExp("^"+u+"$")))}function i(){let u=[...e.names.map(a),...e.skips.map(a).map(l=>"-"+l)].join(",");return e.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let l,d;for(l=0,d=e.skips.length;l<d;l++)if(e.skips[l].test(u))return!1;for(l=0,d=e.names.length;l<d;l++)if(e.names[l].test(u))return!0;return!1}function a(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}function c(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 e.setupFormatters(e.formatters),e.enable(e.load()),e}var Fn=Kd(),Fd=["#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 Od(){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 Dd(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+Pn(this.diff),!this.useColors)return;let t="color: "+this.color;r.splice(1,0,t,"color: inherit");let e=0,n=0;r[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(e++,o==="%c"&&(n=e))}),r.splice(n,0,t)}var Md=console.debug??console.log??(()=>{});function $d(r){try{r?Fn?.setItem("debug",r):Fn?.removeItem("debug")}catch{}}function Hd(){let r;try{r=Fn?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function Kd(){try{return localStorage}catch{}}function qd(r){r.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}}var tc=$i({formatArgs:Dd,save:$d,load:Hd,useColors:Od,setupFormatters:qd,colors:Fd,storage:Fn,log:Md});var _t=tc;_t.formatters.b=r=>r==null?"undefined":nt.baseEncode(r);_t.formatters.t=r=>r==null?"undefined":Gt.baseEncode(r);_t.formatters.m=r=>r==null?"undefined":Di.baseEncode(r);_t.formatters.p=r=>r==null?"undefined":r.toString();_t.formatters.c=r=>r==null?"undefined":r.toString();_t.formatters.k=r=>r==null?"undefined":r.toString();_t.formatters.a=r=>r==null?"undefined":r.toString();_t.formatters.e=r=>r==null?"undefined":ec(r.stack)??ec(r.message)??r.toString();function zd(r){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=r,t.destroy=()=>!0,t.extend=()=>t,t}function Re(r){let t=zd(`${r}:trace`);return _t.enabled(`${r}:trace`)&&_t.names.map(e=>e.toString()).find(e=>e.includes(":trace"))!=null&&(t=_t(`${r}:trace`)),Object.assign(_t(r),{error:_t(`${r}:error`),trace:t})}function ec(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}var Hi={};kt(Hi,{base36:()=>mr,base36upper:()=>jd});var mr=Ue({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),jd=Ue({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Gd=oc,rc=128,Zd=127,Wd=~Zd,Yd=Math.pow(2,31);function oc(r,t,e){t=t||[],e=e||0;for(var n=e;r>=Yd;)t[e++]=r&255|rc,r/=128;for(;r&Wd;)t[e++]=r&255|rc,r>>>=7;return t[e]=r|0,oc.bytes=e-n+1,t}var Jd=Ki,Xd=128,nc=127;function Ki(r,n){var e=0,n=n||0,o=0,i=n,s,a=r.length;do{if(i>=a)throw Ki.bytes=0,new RangeError("Could not decode varint");s=r[i++],e+=o<28?(s&nc)<<o:(s&nc)*Math.pow(2,o),o+=7}while(s>=Xd);return Ki.bytes=i-n,e}var Qd=Math.pow(2,7),th=Math.pow(2,14),eh=Math.pow(2,21),rh=Math.pow(2,28),nh=Math.pow(2,35),oh=Math.pow(2,42),ih=Math.pow(2,49),sh=Math.pow(2,56),ah=Math.pow(2,63),ch=function(r){return r<Qd?1:r<th?2:r<eh?3:r<rh?4:r<nh?5:r<oh?6:r<ih?7:r<sh?8:r<ah?9:10},uh={encode:Gd,decode:Jd,encodingLength:ch},lh=uh,Zr=lh;function Wr(r,t=0){return[Zr.decode(r,t),Zr.decode.bytes]}function gr(r,t,e=0){return Zr.encode(r,t,e),t}function yr(r){return Zr.encodingLength(r)}function Zt(r,t){let e=t.byteLength,n=yr(r),o=n+yr(e),i=new Uint8Array(o+e);return gr(r,i,0),gr(e,i,n),i.set(t,o),new wr(r,e,t,i)}function ge(r){let t=me(r),[e,n]=Wr(t),[o,i]=Wr(t.subarray(n)),s=t.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new wr(e,o,s,t)}function ic(r,t){if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&Za(r.bytes,e.bytes)}}var wr=class{code;size;digest;bytes;constructor(t,e,n,o){this.code=t,this.size=e,this.digest=n,this.bytes=o}};function sc(r,t){let{bytes:e,version:n}=r;switch(n){case 0:return dh(e,qi(r),t??nt.encoder);default:return hh(e,qi(r),t??Gt.encoder)}}var ac=new WeakMap;function qi(r){let t=ac.get(r);if(t==null){let e=new Map;return ac.set(r,e),e}return t}var Q=class r{code;version;multihash;bytes;"/";constructor(t,e,n,o){this.code=e,this.version=t,this.multihash=n,this.bytes=o,this["/"]=o}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:e}=this;if(t!==Yr)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==ph)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(e)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:e}=this.multihash,n=Zt(t,e);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return r.equals(this,t)}static equals(t,e){let n=e;return n!=null&&t.code===n.code&&t.version===n.version&&ic(t.multihash,n.multihash)}toString(t){return sc(this,t)}toJSON(){return{"/":sc(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let e=t;if(e instanceof r)return e;if(e["/"]!=null&&e["/"]===e.bytes||e.asCID===e){let{version:n,code:o,multihash:i,bytes:s}=e;return new r(n,o,i,s??cc(n,o,i.bytes))}else if(e[mh]===!0){let{version:n,multihash:o,code:i}=e,s=ge(o);return r.create(n,i,s)}else return null}static create(t,e,n){if(typeof e!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(e!==Yr)throw new Error(`Version 0 CID must use dag-pb (code: ${Yr}) block encoding`);return new r(t,e,n,n.bytes)}case 1:{let o=cc(t,e,n.bytes);return new r(t,e,n,o)}default:throw new Error("Invalid version")}}static createV0(t){return r.create(0,Yr,t)}static createV1(t,e){return r.create(1,t,e)}static decode(t){let[e,n]=r.decodeFirst(t);if(n.length!==0)throw new Error("Incorrect length");return e}static decodeFirst(t){let e=r.inspectBytes(t),n=e.size-e.multihashSize,o=me(t.subarray(n,n+e.multihashSize));if(o.byteLength!==e.multihashSize)throw new Error("Incorrect length");let i=o.subarray(e.multihashSize-e.digestSize),s=new wr(e.multihashCode,e.digestSize,i,o);return[e.version===0?r.createV0(s):r.createV1(e.codec,s),t.subarray(e.size)]}static inspectBytes(t){let e=0,n=()=>{let[l,d]=Wr(t.subarray(e));return e+=d,l},o=n(),i=Yr;if(o===18?(o=0,e=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=e,a=n(),c=n(),f=e+c,u=f-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(t,e){let[n,o]=fh(t,e),i=r.decode(o);if(i.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return qi(i).set(n,t),i}};function fh(r,t){switch(r[0]){case"Q":{let e=t??nt;return[nt.prefix,e.decode(`${nt.prefix}${r}`)]}case nt.prefix:{let e=t??nt;return[nt.prefix,e.decode(r)]}case Gt.prefix:{let e=t??Gt;return[Gt.prefix,e.decode(r)]}case mr.prefix:{let e=t??mr;return[mr.prefix,e.decode(r)]}default:{if(t==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],t.decode(r)]}}}function dh(r,t,e){let{prefix:n}=e;if(n!==nt.prefix)throw Error(`Cannot string encode V0 in ${e.name} encoding`);let o=t.get(n);if(o==null){let i=e.encode(r).slice(1);return t.set(n,i),i}else return o}function hh(r,t,e){let{prefix:n}=e,o=t.get(n);if(o==null){let i=e.encode(r);return t.set(n,i),i}else return o}var Yr=112,ph=18;function cc(r,t,e){let n=yr(r),o=n+yr(t),i=new Uint8Array(o+e.byteLength);return gr(r,i,0),gr(t,i,n),i.set(e,o),i}var mh=Symbol.for("@ipld/js-cid/CID");var zi={};kt(zi,{identity:()=>Wt});var uc=0,gh="identity",lc=me;function yh(r){return Zt(uc,lc(r))}var Wt={code:uc,name:gh,encode:lc,digest:yh};function ct(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function fc(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`positive integer expected, not ${r}`)}function wh(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function xr(r,...t){if(!wh(r))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(r.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${r.length}`)}function dc(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");fc(r.outputLen),fc(r.blockLen)}function br(r,t=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(t&&r.finished)throw new Error("Hash#digest() has already been called")}function hc(r,t){xr(r);let e=t.outputLen;if(r.length<e)throw new Error(`digestInto() expects output buffer of length at least ${e}`)}var We=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Dn=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),Yt=(r,t)=>r<<32-t|r>>>t;var Hg=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function pc(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function Jr(r){return typeof r=="string"&&(r=pc(r)),xr(r),r}function ji(...r){let t=0;for(let n=0;n<r.length;n++){let o=r[n];xr(o),t+=o.length}let e=new Uint8Array(t);for(let n=0,o=0;n<r.length;n++){let i=r[n];e.set(i,o),o+=i.length}return e}var vr=class{clone(){return this._cloneInto()}},Kg={}.toString;function Mn(r){let t=n=>r().update(Jr(n)).digest(),e=r();return t.outputLen=e.outputLen,t.blockLen=e.blockLen,t.create=()=>r(),t}function $n(r=32){if(We&&typeof We.getRandomValues=="function")return We.getRandomValues(new Uint8Array(r));if(We&&typeof We.randomBytes=="function")return We.randomBytes(r);throw new Error("crypto.getRandomValues must be defined")}function xh(r,t,e,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(t,e,n);let o=BigInt(32),i=BigInt(4294967295),s=Number(e>>o&i),a=Number(e&i),c=n?4:0,f=n?0:4;r.setUint32(t+c,s,n),r.setUint32(t+f,a,n)}var mc=(r,t,e)=>r&t^~r&e,gc=(r,t,e)=>r&t^r&e^t&e,Er=class extends vr{constructor(t,e,n,o){super(),this.blockLen=t,this.outputLen=e,this.padOffset=n,this.isLE=o,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=Dn(this.buffer)}update(t){br(this);let{view:e,buffer:n,blockLen:o}=this;t=Jr(t);let i=t.length;for(let s=0;s<i;){let a=Math.min(o-this.pos,i-s);if(a===o){let c=Dn(t);for(;o<=i-s;s+=o)this.process(c,s);continue}n.set(t.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===o&&(this.process(e,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){br(this),hc(t,this),this.finished=!0;let{buffer:e,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;e[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>o-s&&(this.process(n,0),s=0);for(let l=s;l<o;l++)e[l]=0;xh(n,o-8,BigInt(this.length*8),i),this.process(n,0);let a=Dn(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],i)}digest(){let{buffer:t,outputLen:e}=this;this.digestInto(t);let n=t.slice(0,e);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:e,buffer:n,length:o,finished:i,destroyed:s,pos:a}=this;return t.length=o,t.pos=a,t.finished=i,t.destroyed=s,o%e&&t.buffer.set(n),t}};var Hn=BigInt(4294967295),Gi=BigInt(32);function yc(r,t=!1){return t?{h:Number(r&Hn),l:Number(r>>Gi&Hn)}:{h:Number(r>>Gi&Hn)|0,l:Number(r&Hn)|0}}function bh(r,t=!1){let e=new Uint32Array(r.length),n=new Uint32Array(r.length);for(let o=0;o<r.length;o++){let{h:i,l:s}=yc(r[o],t);[e[o],n[o]]=[i,s]}return[e,n]}var vh=(r,t)=>BigInt(r>>>0)<<Gi|BigInt(t>>>0),Eh=(r,t,e)=>r>>>e,Bh=(r,t,e)=>r<<32-e|t>>>e,Ah=(r,t,e)=>r>>>e|t<<32-e,Sh=(r,t,e)=>r<<32-e|t>>>e,Ih=(r,t,e)=>r<<64-e|t>>>e-32,kh=(r,t,e)=>r>>>e-32|t<<64-e,Ch=(r,t)=>t,Th=(r,t)=>r,Nh=(r,t,e)=>r<<e|t>>>32-e,Uh=(r,t,e)=>t<<e|r>>>32-e,Rh=(r,t,e)=>t<<e-32|r>>>64-e,_h=(r,t,e)=>r<<e-32|t>>>64-e;function Lh(r,t,e,n){let o=(t>>>0)+(n>>>0);return{h:r+e+(o/2**32|0)|0,l:o|0}}var Vh=(r,t,e)=>(r>>>0)+(t>>>0)+(e>>>0),Ph=(r,t,e,n)=>t+e+n+(r/2**32|0)|0,Fh=(r,t,e,n)=>(r>>>0)+(t>>>0)+(e>>>0)+(n>>>0),Oh=(r,t,e,n,o)=>t+e+n+o+(r/2**32|0)|0,Dh=(r,t,e,n,o)=>(r>>>0)+(t>>>0)+(e>>>0)+(n>>>0)+(o>>>0),Mh=(r,t,e,n,o,i)=>t+e+n+o+i+(r/2**32|0)|0;var $h={fromBig:yc,split:bh,toBig:vh,shrSH:Eh,shrSL:Bh,rotrSH:Ah,rotrSL:Sh,rotrBH:Ih,rotrBL:kh,rotr32H:Ch,rotr32L:Th,rotlSH:Nh,rotlSL:Uh,rotlBH:Rh,rotlBL:_h,add:Lh,add3L:Vh,add3H:Ph,add4L:Fh,add4H:Oh,add5H:Mh,add5L:Dh},K=$h;var[Hh,Kh]=K.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(r=>BigInt(r))),Le=new Uint32Array(80),Ve=new Uint32Array(80),Zi=class extends Er{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:e,Bh:n,Bl:o,Ch:i,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:d,Gh:b,Gl:I,Hh:w,Hl:h}=this;return[t,e,n,o,i,s,a,c,f,u,l,d,b,I,w,h]}set(t,e,n,o,i,s,a,c,f,u,l,d,b,I,w,h){this.Ah=t|0,this.Al=e|0,this.Bh=n|0,this.Bl=o|0,this.Ch=i|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=d|0,this.Gh=b|0,this.Gl=I|0,this.Hh=w|0,this.Hl=h|0}process(t,e){for(let x=0;x<16;x++,e+=4)Le[x]=t.getUint32(e),Ve[x]=t.getUint32(e+=4);for(let x=16;x<80;x++){let T=Le[x-15]|0,F=Ve[x-15]|0,V=K.rotrSH(T,F,1)^K.rotrSH(T,F,8)^K.shrSH(T,F,7),U=K.rotrSL(T,F,1)^K.rotrSL(T,F,8)^K.shrSL(T,F,7),g=Le[x-2]|0,v=Ve[x-2]|0,O=K.rotrSH(g,v,19)^K.rotrBH(g,v,61)^K.shrSH(g,v,6),R=K.rotrSL(g,v,19)^K.rotrBL(g,v,61)^K.shrSL(g,v,6),N=K.add4L(U,R,Ve[x-7],Ve[x-16]),H=K.add4H(N,V,O,Le[x-7],Le[x-16]);Le[x]=H|0,Ve[x]=N|0}let{Ah:n,Al:o,Bh:i,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:d,Fh:b,Fl:I,Gh:w,Gl:h,Hh:E,Hl:C}=this;for(let x=0;x<80;x++){let T=K.rotrSH(l,d,14)^K.rotrSH(l,d,18)^K.rotrBH(l,d,41),F=K.rotrSL(l,d,14)^K.rotrSL(l,d,18)^K.rotrBL(l,d,41),V=l&b^~l&w,U=d&I^~d&h,g=K.add5L(C,F,U,Kh[x],Ve[x]),v=K.add5H(g,E,T,V,Hh[x],Le[x]),O=g|0,R=K.rotrSH(n,o,28)^K.rotrBH(n,o,34)^K.rotrBH(n,o,39),N=K.rotrSL(n,o,28)^K.rotrBL(n,o,34)^K.rotrBL(n,o,39),H=n&i^n&a^i&a,A=o&s^o&c^s&c;E=w|0,C=h|0,w=b|0,h=I|0,b=l|0,I=d|0,{h:l,l:d}=K.add(f|0,u|0,v|0,O|0),f=a|0,u=c|0,a=i|0,c=s|0,i=n|0,s=o|0;let S=K.add3L(O,N,A);n=K.add3H(S,v,R,H),o=S|0}({h:n,l:o}=K.add(this.Ah|0,this.Al|0,n|0,o|0)),{h:i,l:s}=K.add(this.Bh|0,this.Bl|0,i|0,s|0),{h:a,l:c}=K.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=K.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=K.add(this.Eh|0,this.El|0,l|0,d|0),{h:b,l:I}=K.add(this.Fh|0,this.Fl|0,b|0,I|0),{h:w,l:h}=K.add(this.Gh|0,this.Gl|0,w|0,h|0),{h:E,l:C}=K.add(this.Hh|0,this.Hl|0,E|0,C|0),this.set(n,o,i,s,a,c,f,u,l,d,b,I,w,h,E,C)}roundClean(){Le.fill(0),Ve.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var wc=Mn(()=>new Zi);var qn={};kt(qn,{aInRange:()=>Lt,abool:()=>Jt,abytes:()=>Br,bitGet:()=>Wh,bitLen:()=>Qi,bitMask:()=>Qr,bitSet:()=>Yh,bytesToHex:()=>we,bytesToNumberBE:()=>xe,bytesToNumberLE:()=>Fe,concatBytes:()=>be,createHmacDrbg:()=>ts,ensureBytes:()=>at,equalBytes:()=>Gh,hexToBytes:()=>Je,hexToNumber:()=>Xi,inRange:()=>Xr,isBytes:()=>Pe,memoized:()=>Qe,notImplemented:()=>Xh,numberToBytesBE:()=>Oe,numberToBytesLE:()=>Xe,numberToHexUnpadded:()=>Ye,numberToVarBytesBE:()=>jh,utf8ToBytes:()=>Zh,validateObject:()=>ae});var Ji=BigInt(0),Kn=BigInt(1),qh=BigInt(2);function Pe(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function Br(r){if(!Pe(r))throw new Error("Uint8Array expected")}function Jt(r,t){if(typeof t!="boolean")throw new Error(`${r} must be valid boolean, got "${t}".`)}var zh=Array.from({length:256},(r,t)=>t.toString(16).padStart(2,"0"));function we(r){Br(r);let t="";for(let e=0;e<r.length;e++)t+=zh[r[e]];return t}function Ye(r){let t=r.toString(16);return t.length&1?`0${t}`:t}function Xi(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}var ye={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function xc(r){if(r>=ye._0&&r<=ye._9)return r-ye._0;if(r>=ye._A&&r<=ye._F)return r-(ye._A-10);if(r>=ye._a&&r<=ye._f)return r-(ye._a-10)}function Je(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let t=r.length,e=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(e);for(let o=0,i=0;o<e;o++,i+=2){let s=xc(r.charCodeAt(i)),a=xc(r.charCodeAt(i+1));if(s===void 0||a===void 0){let c=r[i]+r[i+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+i)}n[o]=s*16+a}return n}function xe(r){return Xi(we(r))}function Fe(r){return Br(r),Xi(we(Uint8Array.from(r).reverse()))}function Oe(r,t){return Je(r.toString(16).padStart(t*2,"0"))}function Xe(r,t){return Oe(r,t).reverse()}function jh(r){return Je(Ye(r))}function at(r,t,e){let n;if(typeof t=="string")try{n=Je(t)}catch(i){throw new Error(`${r} must be valid hex string, got "${t}". Cause: ${i}`)}else if(Pe(t))n=Uint8Array.from(t);else throw new Error(`${r} must be hex string or Uint8Array`);let o=n.length;if(typeof e=="number"&&o!==e)throw new Error(`${r} expected ${e} bytes, got ${o}`);return n}function be(...r){let t=0;for(let n=0;n<r.length;n++){let o=r[n];Br(o),t+=o.length}let e=new Uint8Array(t);for(let n=0,o=0;n<r.length;n++){let i=r[n];e.set(i,o),o+=i.length}return e}function Gh(r,t){if(r.length!==t.length)return!1;let e=0;for(let n=0;n<r.length;n++)e|=r[n]^t[n];return e===0}function Zh(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}var Wi=r=>typeof r=="bigint"&&Ji<=r;function Xr(r,t,e){return Wi(r)&&Wi(t)&&Wi(e)&&t<=r&&r<e}function Lt(r,t,e,n){if(!Xr(t,e,n))throw new Error(`expected valid ${r}: ${e} <= n < ${n}, got ${typeof t} ${t}`)}function Qi(r){let t;for(t=0;r>Ji;r>>=Kn,t+=1);return t}function Wh(r,t){return r>>BigInt(t)&Kn}function Yh(r,t,e){return r|(e?Kn:Ji)<<BigInt(t)}var Qr=r=>(qh<<BigInt(r-1))-Kn,Yi=r=>new Uint8Array(r),bc=r=>Uint8Array.from(r);function ts(r,t,e){if(typeof r!="number"||r<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof e!="function")throw new Error("hmacFn must be a function");let n=Yi(r),o=Yi(r),i=0,s=()=>{n.fill(1),o.fill(0),i=0},a=(...l)=>e(o,n,...l),c=(l=Yi())=>{o=a(bc([0]),l),n=a(),l.length!==0&&(o=a(bc([1]),l),n=a())},f=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<t;){n=a();let b=n.slice();d.push(b),l+=n.length}return be(...d)};return(l,d)=>{s(),c(l);let b;for(;!(b=d(f()));)c();return s(),b}}var Jh={bigint:r=>typeof r=="bigint",function:r=>typeof r=="function",boolean:r=>typeof r=="boolean",string:r=>typeof r=="string",stringOrUint8Array:r=>typeof r=="string"||Pe(r),isSafeInteger:r=>Number.isSafeInteger(r),array:r=>Array.isArray(r),field:(r,t)=>t.Fp.isValid(r),hash:r=>typeof r=="function"&&Number.isSafeInteger(r.outputLen)};function ae(r,t,e={}){let n=(o,i,s)=>{let a=Jh[i];if(typeof a!="function")throw new Error(`Invalid validator "${i}", expected function`);let c=r[o];if(!(s&&c===void 0)&&!a(c,r))throw new Error(`Invalid param ${String(o)}=${c} (${typeof c}), expected ${i}`)};for(let[o,i]of Object.entries(t))n(o,i,!1);for(let[o,i]of Object.entries(e))n(o,i,!0);return r}var Xh=()=>{throw new Error("not implemented")};function Qe(r){let t=new WeakMap;return(e,...n)=>{let o=t.get(e);if(o!==void 0)return o;let i=r(e,...n);return t.set(e,i),i}}var ft=BigInt(0),ot=BigInt(1),tr=BigInt(2),Qh=BigInt(3),es=BigInt(4),vc=BigInt(5),Ec=BigInt(8),t0=BigInt(9),e0=BigInt(16);function tt(r,t){let e=r%t;return e>=ft?e:t+e}function r0(r,t,e){if(e<=ft||t<ft)throw new Error("Expected power/modulo > 0");if(e===ot)return ft;let n=ot;for(;t>ft;)t&ot&&(n=n*r%e),r=r*r%e,t>>=ot;return n}function it(r,t,e){let n=r;for(;t-- >ft;)n*=n,n%=e;return n}function zn(r,t){if(r===ft||t<=ft)throw new Error(`invert: expected positive integers, got n=${r} mod=${t}`);let e=tt(r,t),n=t,o=ft,i=ot,s=ot,a=ft;for(;e!==ft;){let f=n/e,u=n%e,l=o-s*f,d=i-a*f;n=e,e=u,o=s,i=a,s=l,a=d}if(n!==ot)throw new Error("invert: does not exist");return tt(o,t)}function n0(r){let t=(r-ot)/tr,e,n,o;for(e=r-ot,n=0;e%tr===ft;e/=tr,n++);for(o=tr;o<r&&r0(o,t,r)!==r-ot;o++);if(n===1){let s=(r+ot)/es;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let i=(e+ot)/tr;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,o),e),l=a.pow(c,i),d=a.pow(c,e);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let b=1;for(let w=a.sqr(d);b<f&&!a.eql(w,a.ONE);b++)w=a.sqr(w);let I=a.pow(u,ot<<BigInt(f-b-1));u=a.sqr(I),l=a.mul(l,I),d=a.mul(d,u),f=b}return l}}function o0(r){if(r%es===Qh){let t=(r+ot)/es;return function(n,o){let i=n.pow(o,t);if(!n.eql(n.sqr(i),o))throw new Error("Cannot find square root");return i}}if(r%Ec===vc){let t=(r-vc)/Ec;return function(n,o){let i=n.mul(o,tr),s=n.pow(i,t),a=n.mul(o,s),c=n.mul(n.mul(a,tr),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),o))throw new Error("Cannot find square root");return f}}return r%e0,n0(r)}var Bc=(r,t)=>(tt(r,t)&ot)===ot,i0=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function rs(r){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},e=i0.reduce((n,o)=>(n[o]="function",n),t);return ae(r,e)}function s0(r,t,e){if(e<ft)throw new Error("Expected power > 0");if(e===ft)return r.ONE;if(e===ot)return t;let n=r.ONE,o=t;for(;e>ft;)e&ot&&(n=r.mul(n,o)),o=r.sqr(o),e>>=ot;return n}function a0(r,t){let e=new Array(t.length),n=t.reduce((i,s,a)=>r.is0(s)?i:(e[a]=i,r.mul(i,s)),r.ONE),o=r.inv(n);return t.reduceRight((i,s,a)=>r.is0(s)?i:(e[a]=r.mul(i,e[a]),r.mul(i,s)),o),e}function ns(r,t){let e=t!==void 0?t:r.toString(2).length,n=Math.ceil(e/8);return{nBitLength:e,nByteLength:n}}function De(r,t,e=!1,n={}){if(r<=ft)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:o,nByteLength:i}=ns(r,t);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=o0(r),a=Object.freeze({ORDER:r,BITS:o,BYTES:i,MASK:Qr(o),ZERO:ft,ONE:ot,create:c=>tt(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return ft<=c&&c<r},is0:c=>c===ft,isOdd:c=>(c&ot)===ot,neg:c=>tt(-c,r),eql:(c,f)=>c===f,sqr:c=>tt(c*c,r),add:(c,f)=>tt(c+f,r),sub:(c,f)=>tt(c-f,r),mul:(c,f)=>tt(c*f,r),pow:(c,f)=>s0(a,c,f),div:(c,f)=>tt(c*zn(f,r),r),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>zn(c,r),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>a0(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>e?Xe(c,i):Oe(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return e?Fe(c):xe(c)}});return Object.freeze(a)}function Ac(r){if(typeof r!="bigint")throw new Error("field order must be bigint");let t=r.toString(2).length;return Math.ceil(t/8)}function os(r){let t=Ac(r);return t+Math.ceil(t/2)}function Sc(r,t,e=!1){let n=r.length,o=Ac(t),i=os(t);if(n<16||n<i||n>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${n}`);let s=e?xe(r):Fe(r),a=tt(s,t-ot)+ot;return e?Xe(a,o):Oe(a,o)}var u0=BigInt(0),is=BigInt(1),ss=new WeakMap,Ic=new WeakMap;function jn(r,t){let e=(i,s)=>{let a=s.negate();return i?a:s},n=i=>{if(!Number.isSafeInteger(i)||i<=0||i>t)throw new Error(`Wrong window size=${i}, should be [1..${t}]`)},o=i=>{n(i);let s=Math.ceil(t/i)+1,a=2**(i-1);return{windows:s,windowSize:a}};return{constTimeNegate:e,unsafeLadder(i,s){let a=r.ZERO,c=i;for(;s>u0;)s&is&&(a=a.add(c)),c=c.double(),s>>=is;return a},precomputeWindow(i,s){let{windows:a,windowSize:c}=o(s),f=[],u=i,l=u;for(let d=0;d<a;d++){l=u,f.push(l);for(let b=1;b<c;b++)l=l.add(u),f.push(l);u=l.double()}return f},wNAF(i,s,a){let{windows:c,windowSize:f}=o(i),u=r.ZERO,l=r.BASE,d=BigInt(2**i-1),b=2**i,I=BigInt(i);for(let w=0;w<c;w++){let h=w*f,E=Number(a&d);a>>=I,E>f&&(E-=b,a+=is);let C=h,x=h+Math.abs(E)-1,T=w%2!==0,F=E<0;E===0?l=l.add(e(T,s[C])):u=u.add(e(F,s[x]))}return{p:u,f:l}},wNAFCached(i,s,a){let c=Ic.get(i)||1,f=ss.get(i);return f||(f=this.precomputeWindow(i,c),c!==1&&ss.set(i,a(f))),this.wNAF(c,f,s)},setWindowSize(i,s){n(s),Ic.set(i,s),ss.delete(i)}}}function Gn(r,t,e,n){if(!Array.isArray(e)||!Array.isArray(n)||n.length!==e.length)throw new Error("arrays of points and scalars must have equal length");n.forEach((u,l)=>{if(!t.isValid(u))throw new Error(`wrong scalar at index ${l}`)}),e.forEach((u,l)=>{if(!(u instanceof r))throw new Error(`wrong point at index ${l}`)});let o=Qi(BigInt(e.length)),i=o>12?o-3:o>4?o-2:o?2:1,s=(1<<i)-1,a=new Array(s+1).fill(r.ZERO),c=Math.floor((t.BITS-1)/i)*i,f=r.ZERO;for(let u=c;u>=0;u-=i){a.fill(r.ZERO);for(let d=0;d<n.length;d++){let b=n[d],I=Number(b>>BigInt(u)&BigInt(s));a[I]=a[I].add(e[d])}let l=r.ZERO;for(let d=a.length-1,b=r.ZERO;d>0;d--)b=b.add(a[d]),l=l.add(b);if(f=f.add(l),u!==0)for(let d=0;d<i;d++)f=f.double()}return f}function tn(r){return rs(r.Fp),ae(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...ns(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}var Xt=BigInt(0),Vt=BigInt(1),Zn=BigInt(2),l0=BigInt(8),f0={zip215:!0};function d0(r){let t=tn(r);return ae(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function kc(r){let t=d0(r),{Fp:e,n,prehash:o,hash:i,randomBytes:s,nByteLength:a,h:c}=t,f=Zn<<BigInt(a*8)-Vt,u=e.create,l=De(t.n,t.nBitLength),d=t.uvRatio||((m,p)=>{try{return{isValid:!0,value:e.sqrt(m*e.inv(p))}}catch{return{isValid:!1,value:Xt}}}),b=t.adjustScalarBytes||(m=>m),I=t.domain||((m,p,B)=>{if(Jt("phflag",B),p.length||B)throw new Error("Contexts/pre-hash are not supported");return m});function w(m,p){Lt("coordinate "+m,p,Xt,f)}function h(m){if(!(m instanceof x))throw new Error("ExtendedPoint expected")}let E=Qe((m,p)=>{let{ex:B,ey:P,ez:D}=m,M=m.is0();p==null&&(p=M?l0:e.inv(D));let q=u(B*p),G=u(P*p),z=u(D*p);if(M)return{x:Xt,y:Vt};if(z!==Vt)throw new Error("invZ was invalid");return{x:q,y:G}}),C=Qe(m=>{let{a:p,d:B}=t;if(m.is0())throw new Error("bad point: ZERO");let{ex:P,ey:D,ez:M,et:q}=m,G=u(P*P),z=u(D*D),X=u(M*M),rt=u(X*X),ht=u(G*p),pt=u(X*u(ht+z)),yt=u(rt+u(B*u(G*z)));if(pt!==yt)throw new Error("bad point: equation left != right (1)");let It=u(P*D),lt=u(M*q);if(It!==lt)throw new Error("bad point: equation left != right (2)");return!0});class x{constructor(p,B,P,D){this.ex=p,this.ey=B,this.ez=P,this.et=D,w("x",p),w("y",B),w("z",P),w("t",D),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(p){if(p instanceof x)throw new Error("extended point not allowed");let{x:B,y:P}=p||{};return w("x",B),w("y",P),new x(B,P,Vt,u(B*P))}static normalizeZ(p){let B=e.invertBatch(p.map(P=>P.ez));return p.map((P,D)=>P.toAffine(B[D])).map(x.fromAffine)}static msm(p,B){return Gn(x,l,p,B)}_setWindowSize(p){V.setWindowSize(this,p)}assertValidity(){C(this)}equals(p){h(p);let{ex:B,ey:P,ez:D}=this,{ex:M,ey:q,ez:G}=p,z=u(B*G),X=u(M*D),rt=u(P*G),ht=u(q*D);return z===X&&rt===ht}is0(){return this.equals(x.ZERO)}negate(){return new x(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:p}=t,{ex:B,ey:P,ez:D}=this,M=u(B*B),q=u(P*P),G=u(Zn*u(D*D)),z=u(p*M),X=B+P,rt=u(u(X*X)-M-q),ht=z+q,pt=ht-G,yt=z-q,It=u(rt*pt),lt=u(ht*yt),Ut=u(rt*yt),pe=u(pt*ht);return new x(It,lt,pe,Ut)}add(p){h(p);let{a:B,d:P}=t,{ex:D,ey:M,ez:q,et:G}=this,{ex:z,ey:X,ez:rt,et:ht}=p;if(B===BigInt(-1)){let Oa=u((M-D)*(X+z)),Da=u((M+D)*(X-z)),Ni=u(Da-Oa);if(Ni===Xt)return this.double();let Ma=u(q*Zn*ht),$a=u(G*Zn*rt),Ha=$a+Ma,Ka=Da+Oa,qa=$a-Ma,id=u(Ha*Ni),sd=u(Ka*qa),ad=u(Ha*qa),cd=u(Ni*Ka);return new x(id,sd,cd,ad)}let pt=u(D*z),yt=u(M*X),It=u(G*P*ht),lt=u(q*rt),Ut=u((D+M)*(z+X)-pt-yt),pe=lt-It,jr=lt+It,Gr=u(yt-B*pt),ed=u(Ut*pe),rd=u(jr*Gr),nd=u(Ut*Gr),od=u(pe*jr);return new x(ed,rd,od,nd)}subtract(p){return this.add(p.negate())}wNAF(p){return V.wNAFCached(this,p,x.normalizeZ)}multiply(p){let B=p;Lt("scalar",B,Vt,n);let{p:P,f:D}=this.wNAF(B);return x.normalizeZ([P,D])[0]}multiplyUnsafe(p){let B=p;return Lt("scalar",B,Xt,n),B===Xt?F:this.equals(F)||B===Vt?this:this.equals(T)?this.wNAF(B).p:V.unsafeLadder(this,B)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return V.unsafeLadder(this,n).is0()}toAffine(p){return E(this,p)}clearCofactor(){let{h:p}=t;return p===Vt?this:this.multiplyUnsafe(p)}static fromHex(p,B=!1){let{d:P,a:D}=t,M=e.BYTES;p=at("pointHex",p,M),Jt("zip215",B);let q=p.slice(),G=p[M-1];q[M-1]=G&-129;let z=Fe(q),X=B?f:e.ORDER;Lt("pointHex.y",z,Xt,X);let rt=u(z*z),ht=u(rt-Vt),pt=u(P*rt-D),{isValid:yt,value:It}=d(ht,pt);if(!yt)throw new Error("Point.fromHex: invalid y coordinate");let lt=(It&Vt)===Vt,Ut=(G&128)!==0;if(!B&&It===Xt&&Ut)throw new Error("Point.fromHex: x=0 and x_0=1");return Ut!==lt&&(It=u(-It)),x.fromAffine({x:It,y:z})}static fromPrivateKey(p){return v(p).point}toRawBytes(){let{x:p,y:B}=this.toAffine(),P=Xe(B,e.BYTES);return P[P.length-1]|=p&Vt?128:0,P}toHex(){return we(this.toRawBytes())}}x.BASE=new x(t.Gx,t.Gy,Vt,u(t.Gx*t.Gy)),x.ZERO=new x(Xt,Vt,Vt,Xt);let{BASE:T,ZERO:F}=x,V=jn(x,a*8);function U(m){return tt(m,n)}function g(m){return U(Fe(m))}function v(m){let p=a;m=at("private key",m,p);let B=at("hashed private key",i(m),2*p),P=b(B.slice(0,p)),D=B.slice(p,2*p),M=g(P),q=T.multiply(M),G=q.toRawBytes();return{head:P,prefix:D,scalar:M,point:q,pointBytes:G}}function O(m){return v(m).pointBytes}function R(m=new Uint8Array,...p){let B=be(...p);return g(i(I(B,at("context",m),!!o)))}function N(m,p,B={}){m=at("message",m),o&&(m=o(m));let{prefix:P,scalar:D,pointBytes:M}=v(p),q=R(B.context,P,m),G=T.multiply(q).toRawBytes(),z=R(B.context,G,M,m),X=U(q+z*D);Lt("signature.s",X,Xt,n);let rt=be(G,Xe(X,e.BYTES));return at("result",rt,a*2)}let H=f0;function A(m,p,B,P=H){let{context:D,zip215:M}=P,q=e.BYTES;m=at("signature",m,2*q),p=at("message",p),M!==void 0&&Jt("zip215",M),o&&(p=o(p));let G=Fe(m.slice(q,2*q)),z,X,rt;try{z=x.fromHex(B,M),X=x.fromHex(m.slice(0,q),M),rt=T.multiplyUnsafe(G)}catch{return!1}if(!M&&z.isSmallOrder())return!1;let ht=R(D,X.toRawBytes(),z.toRawBytes(),p);return X.add(z.multiplyUnsafe(ht)).subtract(rt).clearCofactor().equals(x.ZERO)}return T._setWindowSize(8),{CURVE:t,getPublicKey:O,sign:N,verify:A,ExtendedPoint:x,utils:{getExtendedPublicKey:v,randomPrivateKey:()=>s(e.BYTES),precompute(m=8,p=x.BASE){return p._setWindowSize(m),p.multiply(BigInt(3)),p}}}}var as=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Cc=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),dy=BigInt(0),h0=BigInt(1),Tc=BigInt(2),hy=BigInt(3),p0=BigInt(5),m0=BigInt(8);function g0(r){let t=BigInt(10),e=BigInt(20),n=BigInt(40),o=BigInt(80),i=as,a=r*r%i*r%i,c=it(a,Tc,i)*a%i,f=it(c,h0,i)*r%i,u=it(f,p0,i)*f%i,l=it(u,t,i)*u%i,d=it(l,e,i)*l%i,b=it(d,n,i)*d%i,I=it(b,o,i)*b%i,w=it(I,o,i)*b%i,h=it(w,t,i)*u%i;return{pow_p_5_8:it(h,Tc,i)*r%i,b2:a}}function y0(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function w0(r,t){let e=as,n=tt(t*t*t,e),o=tt(n*n*t,e),i=g0(r*o).pow_p_5_8,s=tt(r*n*i,e),a=tt(t*s*s,e),c=s,f=tt(s*Cc,e),u=a===r,l=a===tt(-r,e),d=a===tt(-r*Cc,e);return u&&(s=c),(l||d)&&(s=f),Bc(s,e)&&(s=tt(-s,e)),{isValid:u||l,value:s}}var x0=De(as,void 0,!0),b0={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:x0,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:m0,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:wc,randomBytes:$n,adjustScalarBytes:y0,uvRatio:w0},Nc=kc(b0);var Wn=32;function Uc(r,t,e){return Nc.verify(t,e instanceof Uint8Array?e:e.subarray(),r)}var Yn=class{type="Ed25519";raw;constructor(t){this.raw=cs(t,Wn)}toMultihash(){return Wt.digest(Jn(this))}toCID(){return Q.createV1(114,this.toMultihash())}toString(){return nt.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:ct(this.raw,t.raw)}verify(t,e){return Uc(this.raw,e,t)}};function us(r){return r=cs(r,Wn),new Yn(r)}function cs(r,t){if(r=Uint8Array.from(r??[]),r.length!==t)throw new vt(`Key must be a Uint8Array of length ${t}, got ${r.length}`);return r}function Qt(r=0){return new Uint8Array(r)}var E0=Math.pow(2,7),B0=Math.pow(2,14),A0=Math.pow(2,21),ls=Math.pow(2,28),fs=Math.pow(2,35),ds=Math.pow(2,42),hs=Math.pow(2,49),J=128,Et=127;function Pt(r){if(r<E0)return 1;if(r<B0)return 2;if(r<A0)return 3;if(r<ls)return 4;if(r<fs)return 5;if(r<ds)return 6;if(r<hs)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function ps(r,t,e=0){switch(Pt(r)){case 8:t[e++]=r&255|J,r/=128;case 7:t[e++]=r&255|J,r/=128;case 6:t[e++]=r&255|J,r/=128;case 5:t[e++]=r&255|J,r/=128;case 4:t[e++]=r&255|J,r>>>=7;case 3:t[e++]=r&255|J,r>>>=7;case 2:t[e++]=r&255|J,r>>>=7;case 1:{t[e++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return t}function S0(r,t,e=0){switch(Pt(r)){case 8:t.set(e++,r&255|J),r/=128;case 7:t.set(e++,r&255|J),r/=128;case 6:t.set(e++,r&255|J),r/=128;case 5:t.set(e++,r&255|J),r/=128;case 4:t.set(e++,r&255|J),r>>>=7;case 3:t.set(e++,r&255|J),r>>>=7;case 2:t.set(e++,r&255|J),r>>>=7;case 1:{t.set(e++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return t}function ms(r,t){let e=r[t],n=0;if(n+=e&Et,e<J||(e=r[t+1],n+=(e&Et)<<7,e<J)||(e=r[t+2],n+=(e&Et)<<14,e<J)||(e=r[t+3],n+=(e&Et)<<21,e<J)||(e=r[t+4],n+=(e&Et)*ls,e<J)||(e=r[t+5],n+=(e&Et)*fs,e<J)||(e=r[t+6],n+=(e&Et)*ds,e<J)||(e=r[t+7],n+=(e&Et)*hs,e<J))return n;throw new RangeError("Could not decode varint")}function I0(r,t){let e=r.get(t),n=0;if(n+=e&Et,e<J||(e=r.get(t+1),n+=(e&Et)<<7,e<J)||(e=r.get(t+2),n+=(e&Et)<<14,e<J)||(e=r.get(t+3),n+=(e&Et)<<21,e<J)||(e=r.get(t+4),n+=(e&Et)*ls,e<J)||(e=r.get(t+5),n+=(e&Et)*fs,e<J)||(e=r.get(t+6),n+=(e&Et)*ds,e<J)||(e=r.get(t+7),n+=(e&Et)*hs,e<J))return n;throw new RangeError("Could not decode varint")}function Ar(r,t,e=0){return t==null&&(t=Qt(Pt(r))),t instanceof Uint8Array?ps(r,t,e):S0(r,t,e)}function er(r,t=0){return r instanceof Uint8Array?ms(r,t):I0(r,t)}var gs=new Float32Array([-0]),Me=new Uint8Array(gs.buffer);function Lc(r,t,e){gs[0]=r,t[e]=Me[0],t[e+1]=Me[1],t[e+2]=Me[2],t[e+3]=Me[3]}function Vc(r,t){return Me[0]=r[t],Me[1]=r[t+1],Me[2]=r[t+2],Me[3]=r[t+3],gs[0]}var ys=new Float64Array([-0]),Bt=new Uint8Array(ys.buffer);function Pc(r,t,e){ys[0]=r,t[e]=Bt[0],t[e+1]=Bt[1],t[e+2]=Bt[2],t[e+3]=Bt[3],t[e+4]=Bt[4],t[e+5]=Bt[5],t[e+6]=Bt[6],t[e+7]=Bt[7]}function Fc(r,t){return Bt[0]=r[t],Bt[1]=r[t+1],Bt[2]=r[t+2],Bt[3]=r[t+3],Bt[4]=r[t+4],Bt[5]=r[t+5],Bt[6]=r[t+6],Bt[7]=r[t+7],ys[0]}var k0=BigInt(Number.MAX_SAFE_INTEGER),C0=BigInt(Number.MIN_SAFE_INTEGER),Ot=class r{lo;hi;constructor(t,e){this.lo=t|0,this.hi=e|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(e+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(BigInt(e)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?e===0?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return rr;if(t<k0&&t>C0)return this.fromNumber(Number(t));let e=t<0n;e&&(t=-t);let n=t>>32n,o=t-(n<<32n);return e&&(n=~n|0n,o=~o|0n,++o>Oc&&(o=0n,++n>Oc&&(n=0n))),new r(Number(o),Number(n))}static fromNumber(t){if(t===0)return rr;let e=t<0;e&&(t=-t);let n=t>>>0,o=(t-n)/4294967296>>>0;return e&&(o=~o>>>0,n=~n>>>0,++n>4294967295&&(n=0,++o>4294967295&&(o=0))),new r(n,o)}static from(t){return typeof t=="number"?r.fromNumber(t):typeof t=="bigint"?r.fromBigInt(t):typeof t=="string"?r.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new r(t.low>>>0,t.high>>>0):rr}},rr=new Ot(0,0);rr.toBigInt=function(){return 0n};rr.zzEncode=rr.zzDecode=function(){return this};rr.length=function(){return 1};var Oc=4294967296n;function Dc(r){let t=0,e=0;for(let n=0;n<r.length;++n)e=r.charCodeAt(n),e<128?t+=1:e<2048?t+=2:(e&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function Mc(r,t,e){if(e-t<1)return"";let o,i=[],s=0,a;for(;t<e;)a=r[t++],a<128?i[s++]=a:a>191&&a<224?i[s++]=(a&31)<<6|r[t++]&63:a>239&&a<365?(a=((a&7)<<18|(r[t++]&63)<<12|(r[t++]&63)<<6|r[t++]&63)-65536,i[s++]=55296+(a>>10),i[s++]=56320+(a&1023)):i[s++]=(a&15)<<12|(r[t++]&63)<<6|r[t++]&63,s>8191&&((o??(o=[])).push(String.fromCharCode.apply(String,i)),s=0);return o!=null?(s>0&&o.push(String.fromCharCode.apply(String,i.slice(0,s))),o.join("")):String.fromCharCode.apply(String,i.slice(0,s))}function ws(r,t,e){let n=e,o,i;for(let s=0;s<r.length;++s)o=r.charCodeAt(s),o<128?t[e++]=o:o<2048?(t[e++]=o>>6|192,t[e++]=o&63|128):(o&64512)===55296&&((i=r.charCodeAt(s+1))&64512)===56320?(o=65536+((o&1023)<<10)+(i&1023),++s,t[e++]=o>>18|240,t[e++]=o>>12&63|128,t[e++]=o>>6&63|128,t[e++]=o&63|128):(t[e++]=o>>12|224,t[e++]=o>>6&63|128,t[e++]=o&63|128);return e-n}function te(r,t){return RangeError(`index out of range: ${r.pos} + ${t??1} > ${r.len}`)}function Xn(r,t){return(r[t-4]|r[t-3]<<8|r[t-2]<<16|r[t-1]<<24)>>>0}var xs=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,te(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 te(this,4);return Xn(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw te(this,4);return Xn(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw te(this,4);let t=Vc(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw te(this,4);let t=Fc(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),e=this.pos,n=this.pos+t;if(n>this.len)throw te(this,t);return this.pos+=t,e===n?new Uint8Array(0):this.buf.subarray(e,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 te(this,t);this.pos+=t}else do if(this.pos>=this.len)throw te(this);while(this.buf[this.pos++]&128);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 Ot(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw te(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<e*7)>>>0,t}if(this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw te(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw te(this,8);let t=Xn(this.buf,this.pos+=4),e=Xn(this.buf,this.pos+=4);return new Ot(t,e)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let t=ms(this.buf,this.pos);return this.pos+=Pt(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 bs(r){return new xs(r instanceof Uint8Array?r:r.subarray())}function Sr(r,t,e){let n=bs(r);return t.decode(n,void 0,e)}var vs={};kt(vs,{base10:()=>T0});var T0=Ue({prefix:"9",name:"base10",alphabet:"0123456789"});var Es={};kt(Es,{base16:()=>N0,base16upper:()=>U0});var N0=st({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),U0=st({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Bs={};kt(Bs,{base2:()=>R0});var R0=st({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var As={};kt(As,{base256emoji:()=>F0});var Hc=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),_0=Hc.reduce((r,t,e)=>(r[e]=t,r),[]),L0=Hc.reduce((r,t,e)=>{let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);return r[n]=e,r},[]);function V0(r){return r.reduce((t,e)=>(t+=_0[e],t),"")}function P0(r){let t=[];for(let e of r){let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);let o=L0[n];if(o==null)throw new Error(`Non-base256emoji character: ${e}`);t.push(o)}return new Uint8Array(t)}var F0=pr({prefix:"\u{1F680}",name:"base256emoji",encode:V0,decode:P0});var Ss={};kt(Ss,{base8:()=>O0});var O0=st({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Is={};kt(Is,{identity:()=>D0});var D0=pr({prefix:"\0",name:"identity",encode:r=>Ya(r),decode:r=>Wa(r)});var Zy=new TextEncoder,Wy=new TextDecoder;var Ts={};kt(Ts,{sha256:()=>en,sha512:()=>H0});function Cs({name:r,code:t,encode:e}){return new ks(r,t,e)}var ks=class{name;code;encode;constructor(t,e,n){this.name=t,this.code=e,this.encode=n}digest(t){if(t instanceof Uint8Array){let e=this.encode(t);return e instanceof Uint8Array?Zt(this.code,e):e.then(n=>Zt(this.code,n))}else throw Error("Unknown type, must be binary type")}};function qc(r){return async t=>new Uint8Array(await crypto.subtle.digest(r,t))}var en=Cs({name:"sha2-256",code:18,encode:qc("SHA-256")}),H0=Cs({name:"sha2-512",code:19,encode:qc("SHA-512")});var rn={...Is,...Bs,...Ss,...vs,...Es,...Fi,...Hi,...Oi,...Mi,...As},aw={...Ts,...zi};function jc(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var zc=jc("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Ns=jc("ascii","a",r=>{let t="a";for(let e=0;e<r.length;e++)t+=String.fromCharCode(r[e]);return t},r=>{r=r.substring(1);let t=Qt(r.length);for(let e=0;e<r.length;e++)t[e]=r.charCodeAt(e);return t}),K0={utf8:zc,"utf-8":zc,hex:rn.base16,latin1:Ns,ascii:Ns,binary:Ns,...rn},Qn=K0;function Z(r,t="utf8"){let e=Qn[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.decoder.decode(`${e.prefix}${r}`)}function Us(r){let t=r??8192,e=t>>>1,n,o=t;return function(s){if(s<1||s>e)return Qt(s);o+s>t&&(n=Qt(t),o=0);let a=n.subarray(o,o+=s);return o&7&&(o=(o|7)+1),a}}var nr=class{fn;len;next;val;constructor(t,e,n){this.fn=t,this.len=e,this.next=void 0,this.val=n}};function Rs(){}var Ls=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},q0=Us();function z0(r){return globalThis.Buffer!=null?Qt(r):q0(r)}var on=class{len;head;tail;states;constructor(){this.len=0,this.head=new nr(Rs,0,0),this.tail=this.head,this.states=null}_push(t,e,n){return this.tail=this.tail.next=new nr(t,e,n),this.len+=e,this}uint32(t){return this.len+=(this.tail=this.tail.next=new Vs((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(to,10,Ot.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let e=Ot.fromBigInt(t);return this._push(to,e.length(),e)}uint64Number(t){return this._push(ps,Pt(t),t)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let e=Ot.fromBigInt(t).zzEncode();return this._push(to,e.length(),e)}sint64Number(t){let e=Ot.fromNumber(t).zzEncode();return this._push(to,e.length(),e)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(_s,1,t?1:0)}fixed32(t){return this._push(nn,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let e=Ot.fromBigInt(t);return this._push(nn,4,e.lo)._push(nn,4,e.hi)}fixed64Number(t){let e=Ot.fromNumber(t);return this._push(nn,4,e.lo)._push(nn,4,e.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(Lc,4,t)}double(t){return this._push(Pc,8,t)}bytes(t){let e=t.length>>>0;return e===0?this._push(_s,1,0):this.uint32(e)._push(G0,e,t)}string(t){let e=Dc(t);return e!==0?this.uint32(e)._push(ws,e,t):this._push(_s,1,0)}fork(){return this.states=new Ls(this),this.head=this.tail=new nr(Rs,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 nr(Rs,0,0),this.len=0),this}ldelim(){let t=this.head,e=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=e,this.len+=n),this}finish(){let t=this.head.next,e=z0(this.len),n=0;for(;t!=null;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e}};function _s(r,t,e){t[e]=r&255}function j0(r,t,e){for(;r>127;)t[e++]=r&127|128,r>>>=7;t[e]=r}var Vs=class extends nr{next;constructor(t,e){super(j0,t,e),this.next=void 0}};function to(r,t,e){for(;r.hi!==0;)t[e++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)t[e++]=r.lo&127|128,r.lo=r.lo>>>7;t[e++]=r.lo}function nn(r,t,e){t[e]=r&255,t[e+1]=r>>>8&255,t[e+2]=r>>>16&255,t[e+3]=r>>>24}function G0(r,t,e){t.set(r,e)}globalThis.Buffer!=null&&(on.prototype.bytes=function(r){let t=r.length>>>0;return this.uint32(t),t>0&&this._push(Z0,t,r),this},on.prototype.string=function(r){let t=globalThis.Buffer.byteLength(r);return this.uint32(t),t>0&&this._push(W0,t,r),this});function Z0(r,t,e){t.set(r,e)}function W0(r,t,e){r.length<40?ws(r,t,e):t.utf8Write!=null?t.utf8Write(r,e):t.set(Z(r),e)}function Ps(){return new on}function Ir(r,t){let e=Ps();return t.encode(r,e,{lengthDelimited:!1}),e.finish()}var kr;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(kr||(kr={}));function eo(r,t,e,n){return{name:r,type:t,encode:e,decode:n}}function sn(r){function t(o){if(r[o.toString()]==null)throw new Error("Invalid enum value");return r[o]}let e=function(i,s){let a=t(i);s.int32(a)},n=function(i){let s=i.int32();return t(s)};return eo("enum",kr.VARINT,e,n)}function Cr(r,t){return eo("message",kr.LENGTH_DELIMITED,r,t)}var dt;(function(r){r.RSA="RSA",r.Ed25519="Ed25519",r.secp256k1="secp256k1"})(dt||(dt={}));var Fs;(function(r){r[r.RSA=0]="RSA",r[r.Ed25519=1]="Ed25519",r[r.secp256k1=2]="secp256k1"})(Fs||(Fs={}));(function(r){r.codec=()=>sn(Fs)})(dt||(dt={}));var ce;(function(r){let t;r.codec=()=>(t==null&&(t=Cr((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.Type!=null&&(n.uint32(8),dt.codec().encode(e.Type,n)),e.Data!=null&&(n.uint32(18),n.bytes(e.Data)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let a=e.uint32();switch(a>>>3){case 1:{i.Type=dt.codec().decode(e);break}case 2:{i.Data=e.bytes();break}default:{e.skipType(a&7);break}}}return i})),t),r.encode=e=>Ir(e,r.codec()),r.decode=(e,n)=>Sr(e,r.codec(),n)})(ce||(ce={}));var Os;(function(r){let t;r.codec=()=>(t==null&&(t=Cr((e,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),e.Type!=null&&(n.uint32(8),dt.codec().encode(e.Type,n)),e.Data!=null&&(n.uint32(18),n.bytes(e.Data)),o.lengthDelimited!==!1&&n.ldelim()},(e,n,o={})=>{let i={},s=n==null?e.len:e.pos+n;for(;e.pos<s;){let a=e.uint32();switch(a>>>3){case 1:{i.Type=dt.codec().decode(e);break}case 2:{i.Data=e.bytes();break}default:{e.skipType(a&7);break}}}return i})),t),r.encode=e=>Ir(e,r.codec()),r.decode=(e,n)=>Sr(e,r.codec(),n)})(Os||(Os={}));var gn={};kt(gn,{MAX_RSA_KEY_SIZE:()=>Go,generateRSAKeyPair:()=>Ku,jwkToJWKKeyPair:()=>qu,jwkToPkcs1:()=>fp,jwkToPkix:()=>Gs,jwkToRSAPrivateKey:()=>Hu,pkcs1ToJwk:()=>Du,pkcs1ToRSAPrivateKey:()=>$u,pkixToJwk:()=>Mu,pkixToRSAPublicKey:()=>Zs});var Y0=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),$e=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),He=new Uint32Array(64),Ds=class extends Er{constructor(){super(64,32,8,!1),this.A=$e[0]|0,this.B=$e[1]|0,this.C=$e[2]|0,this.D=$e[3]|0,this.E=$e[4]|0,this.F=$e[5]|0,this.G=$e[6]|0,this.H=$e[7]|0}get(){let{A:t,B:e,C:n,D:o,E:i,F:s,G:a,H:c}=this;return[t,e,n,o,i,s,a,c]}set(t,e,n,o,i,s,a,c){this.A=t|0,this.B=e|0,this.C=n|0,this.D=o|0,this.E=i|0,this.F=s|0,this.G=a|0,this.H=c|0}process(t,e){for(let l=0;l<16;l++,e+=4)He[l]=t.getUint32(e,!1);for(let l=16;l<64;l++){let d=He[l-15],b=He[l-2],I=Yt(d,7)^Yt(d,18)^d>>>3,w=Yt(b,17)^Yt(b,19)^b>>>10;He[l]=w+He[l-7]+I+He[l-16]|0}let{A:n,B:o,C:i,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let d=Yt(a,6)^Yt(a,11)^Yt(a,25),b=u+d+mc(a,c,f)+Y0[l]+He[l]|0,w=(Yt(n,2)^Yt(n,13)^Yt(n,22))+gc(n,o,i)|0;u=f,f=c,c=a,a=s+b|0,s=i,i=o,o=n,n=b+w|0}n=n+this.A|0,o=o+this.B|0,i=i+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,u=u+this.H|0,this.set(n,o,i,s,a,c,f,u)}roundClean(){He.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Tr=Mn(()=>new Ds);var j=_n(Zc());function or(r,t){let e=0;if(r.length===1)return r[0];for(let n=r.length-1;n>=0;n--)e+=r[r.length-1-n]*Math.pow(2,t*n);return e}function Ke(r,t,e=-1){let n=e,o=r,i=0,s=Math.pow(2,t);for(let a=1;a<8;a++){if(r<s){let c;if(n<0)c=new ArrayBuffer(a),i=a;else{if(n<a)return new ArrayBuffer(0);c=new ArrayBuffer(n),i=n}let f=new Uint8Array(c);for(let u=a-1;u>=0;u--){let l=Math.pow(2,u*t);f[i-u-1]=Math.floor(o/l),o-=f[i-u-1]*l}return c}s*=Math.pow(2,t)}return new ArrayBuffer(0)}function oo(...r){let t=0,e=0;for(let i of r)t+=i.length;let n=new ArrayBuffer(t),o=new Uint8Array(n);for(let i of r)o.set(i,e),e+=i.length;return o}function $s(){let r=new Uint8Array(this.valueHex);if(this.valueHex.byteLength>=2){let a=r[0]===255&&r[1]&128,c=r[0]===0&&(r[1]&128)===0;(a||c)&&this.warnings.push("Needlessly long format")}let t=new ArrayBuffer(this.valueHex.byteLength),e=new Uint8Array(t);for(let a=0;a<this.valueHex.byteLength;a++)e[a]=0;e[0]=r[0]&128;let n=or(e,8),o=new ArrayBuffer(this.valueHex.byteLength),i=new Uint8Array(o);for(let a=0;a<this.valueHex.byteLength;a++)i[a]=r[a];return i[0]&=127,or(i,8)-n}function Wc(r){let t=r<0?r*-1:r,e=128;for(let n=1;n<8;n++){if(t<=e){if(r<0){let s=e-t,a=Ke(s,8,n),c=new Uint8Array(a);return c[0]|=128,a}let o=Ke(t,8,n),i=new Uint8Array(o);if(i[0]&128){let s=o.slice(0),a=new Uint8Array(s);o=new ArrayBuffer(o.byteLength+1),i=new Uint8Array(o);for(let c=0;c<s.byteLength;c++)i[c+1]=a[c];i[0]=0}return o}e*=Math.pow(2,8)}return new ArrayBuffer(0)}function Yc(r,t){if(r.byteLength!==t.byteLength)return!1;let e=new Uint8Array(r),n=new Uint8Array(t);for(let o=0;o<e.length;o++)if(e[o]!==n[o])return!1;return!0}function Ft(r,t){let e=r.toString(10);if(t<e.length)return"";let n=t-e.length,o=new Array(n);for(let s=0;s<n;s++)o[s]="0";return o.join("").concat(e)}var Hw=Math.log(2);function io(){if(typeof BigInt>"u")throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function Hs(r){let t=0,e=0;for(let o=0;o<r.length;o++){let i=r[o];t+=i.byteLength}let n=new Uint8Array(t);for(let o=0;o<r.length;o++){let i=r[o];n.set(new Uint8Array(i),e),e+=i.byteLength}return n.buffer}function Se(r,t,e,n){return t instanceof Uint8Array?t.byteLength?e<0?(r.error="Wrong parameter: inputOffset less than zero",!1):n<0?(r.error="Wrong parameter: inputLength less than zero",!1):t.byteLength-e-n<0?(r.error="End of input reached before message was fully decoded (inconsistent offset and length values)",!1):!0:(r.error="Wrong parameter: inputBuffer has zero length",!1):(r.error="Wrong parameter: inputBuffer must be 'Uint8Array'",!1)}var cn=class{constructor(){this.items=[]}write(t){this.items.push(t)}final(){return Hs(this.items)}},an=[new Uint8Array([1])],Jc="0123456789";var Lr="",ee=new ArrayBuffer(0),Ks=new Uint8Array(0),un="EndOfContent",Qc="OCTET STRING",tu="BIT STRING";function Ie(r){var t;return t=class extends r{constructor(...n){var o;super(...n);let i=n[0]||{};this.isHexOnly=(o=i.isHexOnly)!==null&&o!==void 0?o:!1,this.valueHexView=i.valueHex?j.BufferSourceConverter.toUint8Array(i.valueHex):Ks}get valueHex(){return this.valueHexView.slice().buffer}set valueHex(n){this.valueHexView=new Uint8Array(n)}fromBER(n,o,i){let s=n instanceof ArrayBuffer?new Uint8Array(n):n;if(!Se(this,s,o,i))return-1;let a=o+i;return this.valueHexView=s.subarray(o,a),this.valueHexView.length?(this.blockLength=i,a):(this.warnings.push("Zero buffer length"),o)}toBER(n=!1){return this.isHexOnly?n?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.byteLength===this.valueHexView.buffer.byteLength?this.valueHexView.buffer:this.valueHexView.slice().buffer:(this.error="Flag 'isHexOnly' is not set, abort",ee)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:j.Convert.ToHex(this.valueHexView)}}},t.NAME="hexBlock",t}var Ee=class{constructor({blockLength:t=0,error:e=Lr,warnings:n=[],valueBeforeDecode:o=Ks}={}){this.blockLength=t,this.error=e,this.warnings=n,this.valueBeforeDecodeView=j.BufferSourceConverter.toUint8Array(o)}static blockName(){return this.NAME}get valueBeforeDecode(){return this.valueBeforeDecodeView.slice().buffer}set valueBeforeDecode(t){this.valueBeforeDecodeView=new Uint8Array(t)}toJSON(){return{blockName:this.constructor.NAME,blockLength:this.blockLength,error:this.error,warnings:this.warnings,valueBeforeDecode:j.Convert.ToHex(this.valueBeforeDecodeView)}}};Ee.NAME="baseBlock";var At=class extends Ee{fromBER(t,e,n){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}toBER(t,e){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}};At.NAME="valueBlock";var so=class extends Ie(Ee){constructor({idBlock:t={}}={}){var e,n,o,i;super(),t?(this.isHexOnly=(e=t.isHexOnly)!==null&&e!==void 0?e:!1,this.valueHexView=t.valueHex?j.BufferSourceConverter.toUint8Array(t.valueHex):Ks,this.tagClass=(n=t.tagClass)!==null&&n!==void 0?n:-1,this.tagNumber=(o=t.tagNumber)!==null&&o!==void 0?o:-1,this.isConstructed=(i=t.isConstructed)!==null&&i!==void 0?i:!1):(this.tagClass=-1,this.tagNumber=-1,this.isConstructed=!1)}toBER(t=!1){let e=0;switch(this.tagClass){case 1:e|=0;break;case 2:e|=64;break;case 3:e|=128;break;case 4:e|=192;break;default:return this.error="Unknown tag class",ee}if(this.isConstructed&&(e|=32),this.tagNumber<31&&!this.isHexOnly){let o=new Uint8Array(1);if(!t){let i=this.tagNumber;i&=31,e|=i,o[0]=e}return o.buffer}if(!this.isHexOnly){let o=Ke(this.tagNumber,7),i=new Uint8Array(o),s=o.byteLength,a=new Uint8Array(s+1);if(a[0]=e|31,!t){for(let c=0;c<s-1;c++)a[c+1]=i[c]|128;a[s]=i[s-1]}return a.buffer}let n=new Uint8Array(this.valueHexView.byteLength+1);if(n[0]=e|31,!t){let o=this.valueHexView;for(let i=0;i<o.length-1;i++)n[i+1]=o[i]|128;n[this.valueHexView.byteLength]=o[o.length-1]}return n.buffer}fromBER(t,e,n){let o=j.BufferSourceConverter.toUint8Array(t);if(!Se(this,o,e,n))return-1;let i=o.subarray(e,e+n);if(i.length===0)return this.error="Zero buffer length",-1;switch(i[0]&192){case 0:this.tagClass=1;break;case 64:this.tagClass=2;break;case 128:this.tagClass=3;break;case 192:this.tagClass=4;break;default:return this.error="Unknown tag class",-1}this.isConstructed=(i[0]&32)===32,this.isHexOnly=!1;let a=i[0]&31;if(a!==31)this.tagNumber=a,this.blockLength=1;else{let c=1,f=this.valueHexView=new Uint8Array(255),u=255;for(;i[c]&128;){if(f[c-1]=i[c]&127,c++,c>=i.length)return this.error="End of input reached before message was fully decoded",-1;if(c===u){u+=255;let d=new Uint8Array(u);for(let b=0;b<f.length;b++)d[b]=f[b];f=this.valueHexView=new Uint8Array(u)}}this.blockLength=c+1,f[c-1]=i[c]&127;let l=new Uint8Array(c);for(let d=0;d<c;d++)l[d]=f[d];f=this.valueHexView=new Uint8Array(c),f.set(l),this.blockLength<=9?this.tagNumber=or(f,7):(this.isHexOnly=!0,this.warnings.push("Tag too long, represented as hex-coded"))}if(this.tagClass===1&&this.isConstructed)switch(this.tagNumber){case 1:case 2:case 5:case 6:case 9:case 13:case 14:case 23:case 24:case 31:case 32:case 33:case 34:return this.error="Constructed encoding used for primitive type",-1}return e+this.blockLength}toJSON(){return{...super.toJSON(),tagClass:this.tagClass,tagNumber:this.tagNumber,isConstructed:this.isConstructed}}};so.NAME="identificationBlock";var ao=class extends Ee{constructor({lenBlock:t={}}={}){var e,n,o;super(),this.isIndefiniteForm=(e=t.isIndefiniteForm)!==null&&e!==void 0?e:!1,this.longFormUsed=(n=t.longFormUsed)!==null&&n!==void 0?n:!1,this.length=(o=t.length)!==null&&o!==void 0?o:0}fromBER(t,e,n){let o=j.BufferSourceConverter.toUint8Array(t);if(!Se(this,o,e,n))return-1;let i=o.subarray(e,e+n);if(i.length===0)return this.error="Zero buffer length",-1;if(i[0]===255)return this.error="Length block 0xFF is reserved by standard",-1;if(this.isIndefiniteForm=i[0]===128,this.isIndefiniteForm)return this.blockLength=1,e+this.blockLength;if(this.longFormUsed=!!(i[0]&128),this.longFormUsed===!1)return this.length=i[0],this.blockLength=1,e+this.blockLength;let s=i[0]&127;if(s>8)return this.error="Too big integer",-1;if(s+1>i.length)return this.error="End of input reached before message was fully decoded",-1;let a=e+1,c=o.subarray(a,a+s);return c[s-1]===0&&this.warnings.push("Needlessly long encoded length"),this.length=or(c,8),this.longFormUsed&&this.length<=127&&this.warnings.push("Unnecessary usage of long length form"),this.blockLength=s+1,e+this.blockLength}toBER(t=!1){let e,n;if(this.length>127&&(this.longFormUsed=!0),this.isIndefiniteForm)return e=new ArrayBuffer(1),t===!1&&(n=new Uint8Array(e),n[0]=128),e;if(this.longFormUsed){let o=Ke(this.length,8);if(o.byteLength>127)return this.error="Too big length",ee;if(e=new ArrayBuffer(o.byteLength+1),t)return e;let i=new Uint8Array(o);n=new Uint8Array(e),n[0]=o.byteLength|128;for(let s=0;s<o.byteLength;s++)n[s+1]=i[s];return e}return e=new ArrayBuffer(1),t===!1&&(n=new Uint8Array(e),n[0]=this.length),e}toJSON(){return{...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,longFormUsed:this.longFormUsed,length:this.length}}};ao.NAME="lengthBlock";var _={},wt=class extends Ee{constructor({name:t=Lr,optional:e=!1,primitiveSchema:n,...o}={},i){super(o),this.name=t,this.optional=e,n&&(this.primitiveSchema=n),this.idBlock=new so(o),this.lenBlock=new ao(o),this.valueBlock=i?new i(o):new At(o)}fromBER(t,e,n){let o=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return o===-1?(this.error=this.valueBlock.error,o):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),o)}toBER(t,e){let n=e||new cn;e||eu(this);let o=this.idBlock.toBER(t);if(n.write(o),this.lenBlock.isIndefiniteForm)n.write(new Uint8Array([128]).buffer),this.valueBlock.toBER(t,n),n.write(new ArrayBuffer(2));else{let i=this.valueBlock.toBER(t);this.lenBlock.length=i.byteLength;let s=this.lenBlock.toBER(t);n.write(s),n.write(i)}return e?ee:n.final()}toJSON(){let t={...super.toJSON(),idBlock:this.idBlock.toJSON(),lenBlock:this.lenBlock.toJSON(),valueBlock:this.valueBlock.toJSON(),name:this.name,optional:this.optional};return this.primitiveSchema&&(t.primitiveSchema=this.primitiveSchema.toJSON()),t}toString(t="ascii"){return t==="ascii"?this.onAsciiEncoding():j.Convert.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${j.Convert.ToHex(this.valueBlock.valueBeforeDecodeView)}`}isEqual(t){if(this===t)return!0;if(!(t instanceof this.constructor))return!1;let e=this.toBER(),n=t.toBER();return Yc(e,n)}};wt.NAME="BaseBlock";function eu(r){if(r instanceof _.Constructed)for(let t of r.valueBlock.value)eu(t)&&(r.lenBlock.isIndefiniteForm=!0);return!!r.lenBlock.isIndefiniteForm}var co=class extends wt{constructor({value:t=Lr,...e}={},n){super(e,n),t&&this.fromString(t)}getValue(){return this.valueBlock.value}setValue(t){this.valueBlock.value=t}fromBER(t,e,n){let o=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return o===-1?(this.error=this.valueBlock.error,o):(this.fromBuffer(this.valueBlock.valueHexView),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),o)}onAsciiEncoding(){return`${this.constructor.NAME} : '${this.valueBlock.value}'`}};co.NAME="BaseStringBlock";var uo=class extends Ie(At){constructor({isHexOnly:t=!0,...e}={}){super(e),this.isHexOnly=t}};uo.NAME="PrimitiveValueBlock";var ru,lo=class extends wt{constructor(t={}){super(t,uo),this.idBlock.isConstructed=!1}};ru=lo;_.Primitive=ru;lo.NAME="PRIMITIVE";function ip(r,t){if(r instanceof t)return r;let e=new t;return e.idBlock=r.idBlock,e.lenBlock=r.lenBlock,e.warnings=r.warnings,e.valueBeforeDecodeView=r.valueBeforeDecodeView,e}function zo(r,t=0,e=r.length){let n=t,o=new wt({},At),i=new Ee;if(!Se(i,r,t,e))return o.error=i.error,{offset:-1,result:o};if(!r.subarray(t,t+e).length)return o.error="Zero buffer length",{offset:-1,result:o};let a=o.idBlock.fromBER(r,t,e);if(o.idBlock.warnings.length&&o.warnings.concat(o.idBlock.warnings),a===-1)return o.error=o.idBlock.error,{offset:-1,result:o};if(t=a,e-=o.idBlock.blockLength,a=o.lenBlock.fromBER(r,t,e),o.lenBlock.warnings.length&&o.warnings.concat(o.lenBlock.warnings),a===-1)return o.error=o.lenBlock.error,{offset:-1,result:o};if(t=a,e-=o.lenBlock.blockLength,!o.idBlock.isConstructed&&o.lenBlock.isIndefiniteForm)return o.error="Indefinite length form used for primitive encoding form",{offset:-1,result:o};let c=wt;switch(o.idBlock.tagClass){case 1:if(o.idBlock.tagNumber>=37&&o.idBlock.isHexOnly===!1)return o.error="UNIVERSAL 37 and upper tags are reserved by ASN.1 standard",{offset:-1,result:o};switch(o.idBlock.tagNumber){case 0:if(o.idBlock.isConstructed&&o.lenBlock.length>0)return o.error="Type [UNIVERSAL 0] is reserved",{offset:-1,result:o};c=_.EndOfContent;break;case 1:c=_.Boolean;break;case 2:c=_.Integer;break;case 3:c=_.BitString;break;case 4:c=_.OctetString;break;case 5:c=_.Null;break;case 6:c=_.ObjectIdentifier;break;case 10:c=_.Enumerated;break;case 12:c=_.Utf8String;break;case 13:c=_.RelativeObjectIdentifier;break;case 14:c=_.TIME;break;case 15:return o.error="[UNIVERSAL 15] is reserved by ASN.1 standard",{offset:-1,result:o};case 16:c=_.Sequence;break;case 17:c=_.Set;break;case 18:c=_.NumericString;break;case 19:c=_.PrintableString;break;case 20:c=_.TeletexString;break;case 21:c=_.VideotexString;break;case 22:c=_.IA5String;break;case 23:c=_.UTCTime;break;case 24:c=_.GeneralizedTime;break;case 25:c=_.GraphicString;break;case 26:c=_.VisibleString;break;case 27:c=_.GeneralString;break;case 28:c=_.UniversalString;break;case 29:c=_.CharacterString;break;case 30:c=_.BmpString;break;case 31:c=_.DATE;break;case 32:c=_.TimeOfDay;break;case 33:c=_.DateTime;break;case 34:c=_.Duration;break;default:{let f=o.idBlock.isConstructed?new _.Constructed:new _.Primitive;f.idBlock=o.idBlock,f.lenBlock=o.lenBlock,f.warnings=o.warnings,o=f}}break;case 2:case 3:case 4:default:c=o.idBlock.isConstructed?_.Constructed:_.Primitive}return o=ip(o,c),a=o.fromBER(r,t,o.lenBlock.isIndefiniteForm?e:o.lenBlock.length),o.valueBeforeDecodeView=r.subarray(n,n+o.blockLength),{offset:a,result:o}}function qs(r){if(!r.byteLength){let t=new wt({},At);return t.error="Input buffer has zero length",{offset:-1,result:t}}return zo(j.BufferSourceConverter.toUint8Array(r).slice(),0,r.byteLength)}function sp(r,t){return r?1:t}var ue=class extends At{constructor({value:t=[],isIndefiniteForm:e=!1,...n}={}){super(n),this.value=t,this.isIndefiniteForm=e}fromBER(t,e,n){let o=j.BufferSourceConverter.toUint8Array(t);if(!Se(this,o,e,n))return-1;if(this.valueBeforeDecodeView=o.subarray(e,e+n),this.valueBeforeDecodeView.length===0)return this.warnings.push("Zero buffer length"),e;let i=e;for(;sp(this.isIndefiniteForm,n)>0;){let s=zo(o,i,n);if(s.offset===-1)return this.error=s.result.error,this.warnings.concat(s.result.warnings),-1;if(i=s.offset,this.blockLength+=s.result.blockLength,n-=s.result.blockLength,this.value.push(s.result),this.isIndefiniteForm&&s.result.constructor.NAME===un)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===un?this.value.pop():this.warnings.push("No EndOfContent block encoded")),i}toBER(t,e){let n=e||new cn;for(let o=0;o<this.value.length;o++)this.value[o].toBER(t,n);return e?ee:n.final()}toJSON(){let t={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(let e of this.value)t.value.push(e.toJSON());return t}};ue.NAME="ConstructedValueBlock";var nu,qe=class extends wt{constructor(t={}){super(t,ue),this.idBlock.isConstructed=!0}fromBER(t,e,n){this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;let o=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return o===-1?(this.error=this.valueBlock.error,o):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),o)}onAsciiEncoding(){let t=[];for(let n of this.valueBlock.value)t.push(n.toString("ascii").split(`
2
+ "use strict";var HeliaRouters=(()=>{var uh=Object.create;var Rn=Object.defineProperty;var lh=Object.getOwnPropertyDescriptor;var fh=Object.getOwnPropertyNames;var hh=Object.getPrototypeOf,dh=Object.prototype.hasOwnProperty;var _i=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),ke=(r,e)=>{for(var t in e)Rn(r,t,{get:e[t],enumerable:!0})},Ga=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of fh(e))!dh.call(r,o)&&o!==t&&Rn(r,o,{get:()=>e[o],enumerable:!(n=lh(e,o))||n.enumerable});return r};var _n=(r,e,t)=>(t=r!=null?uh(hh(r)):{},Ga(e||!r||!r.__esModule?Rn(t,"default",{value:r,enumerable:!0}):t,r)),ph=r=>Ga(Rn({},"__esModule",{value:!0}),r);var Yc=_i(Nr=>{"use strict";var J0="[object ArrayBuffer]",vt=class r{static isArrayBuffer(e){return Object.prototype.toString.call(e)===J0}static toArrayBuffer(e){return this.isArrayBuffer(e)?e:e.byteLength===e.buffer.byteLength||e.byteOffset===0&&e.byteLength===e.buffer.byteLength?e.buffer:this.toUint8Array(e.buffer).slice(e.byteOffset,e.byteOffset+e.byteLength).buffer}static toUint8Array(e){return this.toView(e,Uint8Array)}static toView(e,t){if(e.constructor===t)return e;if(this.isArrayBuffer(e))return new t(e);if(this.isArrayBufferView(e))return new t(e.buffer,e.byteOffset,e.byteLength);throw new TypeError("The provided value is not of type '(ArrayBuffer or ArrayBufferView)'")}static isBufferSource(e){return this.isArrayBufferView(e)||this.isArrayBuffer(e)}static isArrayBufferView(e){return ArrayBuffer.isView(e)||e&&this.isArrayBuffer(e.buffer)}static isEqual(e,t){let n=r.toUint8Array(e),o=r.toUint8Array(t);if(n.length!==o.byteLength)return!1;for(let i=0;i<n.length;i++)if(n[i]!==o[i])return!1;return!0}static concat(...e){let t;Array.isArray(e[0])&&!(e[1]instanceof Function)||Array.isArray(e[0])&&e[1]instanceof Function?t=e[0]:e[e.length-1]instanceof Function?t=e.slice(0,e.length-1):t=e;let n=0;for(let s of t)n+=s.byteLength;let o=new Uint8Array(n),i=0;for(let s of t){let a=this.toUint8Array(s);o.set(a,i),i+=a.length}return e[e.length-1]instanceof Function?this.toView(o,e[e.length-1]):o.buffer}},Hs="string",X0=/^[0-9a-f]+$/i,Q0=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,ep=/^[a-zA-Z0-9-_]+$/,ro=class{static fromString(e){let t=unescape(encodeURIComponent(e)),n=new Uint8Array(t.length);for(let o=0;o<t.length;o++)n[o]=t.charCodeAt(o);return n.buffer}static toString(e){let t=vt.toUint8Array(e),n="";for(let i=0;i<t.length;i++)n+=String.fromCharCode(t[i]);return decodeURIComponent(escape(n))}},qe=class{static toString(e,t=!1){let n=vt.toArrayBuffer(e),o=new DataView(n),i="";for(let s=0;s<n.byteLength;s+=2){let a=o.getUint16(s,t);i+=String.fromCharCode(a)}return i}static fromString(e,t=!1){let n=new ArrayBuffer(e.length*2),o=new DataView(n);for(let i=0;i<e.length;i++)o.setUint16(i*2,e.charCodeAt(i),t);return n}},no=class r{static isHex(e){return typeof e===Hs&&X0.test(e)}static isBase64(e){return typeof e===Hs&&Q0.test(e)}static isBase64Url(e){return typeof e===Hs&&ep.test(e)}static ToString(e,t="utf8"){let n=vt.toUint8Array(e);switch(t.toLowerCase()){case"utf8":return this.ToUtf8String(n);case"binary":return this.ToBinary(n);case"hex":return this.ToHex(n);case"base64":return this.ToBase64(n);case"base64url":return this.ToBase64Url(n);case"utf16le":return qe.toString(n,!0);case"utf16":case"utf16be":return qe.toString(n);default:throw new Error(`Unknown type of encoding '${t}'`)}}static FromString(e,t="utf8"){if(!e)return new ArrayBuffer(0);switch(t.toLowerCase()){case"utf8":return this.FromUtf8String(e);case"binary":return this.FromBinary(e);case"hex":return this.FromHex(e);case"base64":return this.FromBase64(e);case"base64url":return this.FromBase64Url(e);case"utf16le":return qe.fromString(e,!0);case"utf16":case"utf16be":return qe.fromString(e);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToBase64(e){let t=vt.toUint8Array(e);if(typeof btoa<"u"){let n=this.ToString(t,"binary");return btoa(n)}else return Buffer.from(t).toString("base64")}static FromBase64(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!r.isBase64(t))throw new TypeError("Argument 'base64Text' is not Base64 encoded");return typeof atob<"u"?this.FromBinary(atob(t)):new Uint8Array(Buffer.from(t,"base64")).buffer}static FromBase64Url(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!r.isBase64Url(t))throw new TypeError("Argument 'base64url' is not Base64Url encoded");return this.FromBase64(this.Base64Padding(t.replace(/\-/g,"+").replace(/\_/g,"/")))}static ToBase64Url(e){return this.ToBase64(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")}static FromUtf8String(e,t=r.DEFAULT_UTF8_ENCODING){switch(t){case"ascii":return this.FromBinary(e);case"utf8":return ro.fromString(e);case"utf16":case"utf16be":return qe.fromString(e);case"utf16le":case"usc2":return qe.fromString(e,!0);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToUtf8String(e,t=r.DEFAULT_UTF8_ENCODING){switch(t){case"ascii":return this.ToBinary(e);case"utf8":return ro.toString(e);case"utf16":case"utf16be":return qe.toString(e);case"utf16le":case"usc2":return qe.toString(e,!0);default:throw new Error(`Unknown type of encoding '${t}'`)}}static FromBinary(e){let t=e.length,n=new Uint8Array(t);for(let o=0;o<t;o++)n[o]=e.charCodeAt(o);return n.buffer}static ToBinary(e){let t=vt.toUint8Array(e),n="";for(let o=0;o<t.length;o++)n+=String.fromCharCode(t[o]);return n}static ToHex(e){let t=vt.toUint8Array(e),n="",o=t.length;for(let i=0;i<o;i++){let s=t[i];s<16&&(n+="0"),n+=s.toString(16)}return n}static FromHex(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!r.isHex(t))throw new TypeError("Argument 'hexString' is not HEX encoded");t.length%2&&(t=`0${t}`);let n=new Uint8Array(t.length/2);for(let o=0;o<t.length;o=o+2){let i=t.slice(o,o+2);n[o/2]=parseInt(i,16)}return n.buffer}static ToUtf16String(e,t=!1){return qe.toString(e,t)}static FromUtf16String(e,t=!1){return qe.fromString(e,t)}static Base64Padding(e){let t=4-e.length%4;if(t<4)for(let n=0;n<t;n++)e+="=";return e}static formatString(e){return e?.replace(/[\n\r\t ]/g,"")||""}};no.DEFAULT_UTF8_ENCODING="utf8";function tp(r,...e){let t=arguments[0];for(let n=1;n<arguments.length;n++){let o=arguments[n];for(let i in o)t[i]=o[i]}return t}function rp(...r){let e=r.map(o=>o.byteLength).reduce((o,i)=>o+i),t=new Uint8Array(e),n=0;return r.map(o=>new Uint8Array(o)).forEach(o=>{for(let i of o)t[n++]=i}),t.buffer}function np(r,e){if(!(r&&e)||r.byteLength!==e.byteLength)return!1;let t=new Uint8Array(r),n=new Uint8Array(e);for(let o=0;o<r.byteLength;o++)if(t[o]!==n[o])return!1;return!0}Nr.BufferSourceConverter=vt;Nr.Convert=no;Nr.assign=tp;Nr.combine=rp;Nr.isEqual=np});var ya=_i((u2,ga)=>{var c2=function(){typeof ga<"u"&&(ga.exports=w);var r=86400,e=3200,t=146097*e/400,n=r*t,o=1e3*n,i=864e13,s=4294967296,a=1e6,c="000000000",f=Math.trunc||function(g){var v=g-g%1;return v==0&&(g<0||g===0&&1/g!=1/0)?-0:v},u=w.prototype,l=(w.fromDate=function(g){return new w(+g)},w.fromInt64BE=C(0,1,2,3,0,4),w.fromInt64LE=C(3,2,1,0,4,0),w.fromString=function(R){var v,D=new w,R=(R+="").replace(/^\s*[+\-]?\d+/,function(H){var H=+H,A=1970+(H-1970)%400;return D.year=H-A,A}).replace(/(?:Z|([+\-]\d{2}):?(\d{2}))$/,function(N,H,A){return H<0&&(A*=-1),v=6e4*(60*+H+ +A),""}).replace(/\.\d+$/,function(N){return D.nano=+(N+c).substr(1,9),""}).split(/\D+/);if(1<R.length?R[1]--:R[1]=0,D.time=v=Date.UTC.apply(Date,R)-(v||0),isNaN(v))throw new TypeError("Invalid Date");return d(D)},w.fromTimeT=function(g){return k(g,0)},u.year=0,u.time=0,u.nano=0,u.addNano=function(g){return this.nano+=+g||0,this},u.getNano=function(){var g=d(this);return(g.time%1e3*a+ +g.nano+1e9)%1e9},u.getTimeT=function(){var v=d(this),g=Math.floor(v.time/1e3),v=v.year;return v&&(g+=v*t*r/e),g},u.getYear=function(){return this.toDate().getUTCFullYear()+this.year},u.toDate=function(){return E(d(this).time)},u.toJSON=function(){return this.toString().replace(/0{1,6}Z$/,"Z")},u.toString=function(g){var v=this,D=v.toDate(),R={H:function(){return P(D.getUTCHours())},L:function(){return U(D.getUTCMilliseconds(),3)},M:function(){return P(D.getUTCMinutes())},N:function(){return U(v.getNano(),9)},S:function(){return P(D.getUTCSeconds())},Y:function(){var N=v.getYear();return 999999<N?"+"+N:9999<N?"+"+U(N,6):0<=N?U(N,4):-999999<=N?"-"+U(-N,6):N},a:function(){return b[D.getUTCDay()]},b:function(){return h[D.getUTCMonth()]},d:function(){return P(D.getUTCDate())},e:function(){return function(N){return(9<N?"":" ")+(0|N)}(D.getUTCDate())},m:function(){return P(D.getUTCMonth()+1)}};return function N(H){return H.replace(/%./g,function(A){var m=A[1],S=I[m],m=R[m];return S?N(S):m?m():A})}(g||l)},u.writeInt64BE=x(0,1,2,3,0,4),u.writeInt64LE=x(3,2,1,0,4,0),"%Y-%m-%dT%H:%M:%S.%NZ"),h=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],b=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],I={"%":"%",F:"%Y-%m-%d",n:`
3
+ `,R:"%H:%M",T:"%H:%M:%S",t:" ",X:"%T",Z:"GMT",z:"+0000"};return w;function w(g,v,D){var R=this;if(!(R instanceof w))return new w(g,v,D);R.time=+g||0,R.nano=+v||0,R.year=+D||0,d(R)}function d(g){var v,D,R,N=g.year,H=g.time,A=g.nano,S=((A<0||a<=A)&&(A-=(D=Math.floor(A/a))*a,H+=D,D=1),N%e);return(H<-i||i<H||S)&&((v=f(H/o))&&(N+=v*e,H-=v*o),(R=E(H)).setUTCFullYear(S+R.getUTCFullYear()),R=(H=+R)+(v=f((N-=S)/e))*o,v&&-i<=R&&R<=i&&(N-=v*e,H=R),D=1),D&&(g.year=N,g.time=H,g.nano=A),g}function E(g){var v=new Date(0);return v.setTime(g),v}function k(N,R){N=+N||0;var D=f((R=(R|0)*s)/n)+f(N/n),R=R%n+N%n,N=f(R/n);return N&&(D+=N,R-=N*n),new w(1e3*R,0,D*e)}function x(g,v,D,R,N,H){return function(S,m){var B=d(this);S=S||new Array(8),F(S,m|=0);var V=Math.floor(B.time/1e3),B=B.year*(t*r/e),p=f(B/s)+f(V/s),B=B%s+V%s,V=Math.floor(B/s);return V&&(p+=V,B-=V*s),A(S,m+N,p),A(S,m+H,B),S};function A(S,m,p){S[m+g]=p>>24&255,S[m+v]=p>>16&255,S[m+D]=p>>8&255,S[m+R]=255&p}}function C(g,v,D,R,N,H){return function(S,m){F(S,m|=0);var p=A(S,m+N);return k(A(S,m+H),p)};function A(S,m){return 16777216*S[m+g]+(S[m+v]<<16|S[m+D]<<8|S[m+R])}}function F(g,v){if(g=g&&g.length,g==null)throw new TypeError("Invalid Buffer");if(g<v+8)throw new RangeError("Out of range")}function P(g){return(9<g?"":"0")+(0|g)}function U(g,v){return(c+(0|g)).substr(-v)}}()});var Vf=_i((Jv,Sa)=>{"use strict";var Nm=Object.prototype.hasOwnProperty,Ne="~";function kn(){}Object.create&&(kn.prototype=Object.create(null),new kn().__proto__||(Ne=!1));function Um(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function Pf(r,e,t,n,o){if(typeof t!="function")throw new TypeError("The listener must be a function");var i=new Um(t,n||r,o),s=Ne?Ne+e:e;return r._events[s]?r._events[s].fn?r._events[s]=[r._events[s],i]:r._events[s].push(i):(r._events[s]=i,r._eventsCount++),r}function Bi(r,e){--r._eventsCount===0?r._events=new kn:delete r._events[e]}function Ie(){this._events=new kn,this._eventsCount=0}Ie.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)Nm.call(t,n)&&e.push(Ne?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};Ie.prototype.listeners=function(e){var t=Ne?Ne+e:e,n=this._events[t];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};Ie.prototype.listenerCount=function(e){var t=Ne?Ne+e:e,n=this._events[t];return n?n.fn?1:n.length:0};Ie.prototype.emit=function(e,t,n,o,i,s){var a=Ne?Ne+e:e;if(!this._events[a])return!1;var c=this._events[a],f=arguments.length,u,l;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),f){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,o),!0;case 5:return c.fn.call(c.context,t,n,o,i),!0;case 6:return c.fn.call(c.context,t,n,o,i,s),!0}for(l=1,u=new Array(f-1);l<f;l++)u[l-1]=arguments[l];c.fn.apply(c.context,u)}else{var h=c.length,b;for(l=0;l<h;l++)switch(c[l].once&&this.removeListener(e,c[l].fn,void 0,!0),f){case 1:c[l].fn.call(c[l].context);break;case 2:c[l].fn.call(c[l].context,t);break;case 3:c[l].fn.call(c[l].context,t,n);break;case 4:c[l].fn.call(c[l].context,t,n,o);break;default:if(!u)for(b=1,u=new Array(f-1);b<f;b++)u[b-1]=arguments[b];c[l].fn.apply(c[l].context,u)}}return!0};Ie.prototype.on=function(e,t,n){return Pf(this,e,t,n,!1)};Ie.prototype.once=function(e,t,n){return Pf(this,e,t,n,!0)};Ie.prototype.removeListener=function(e,t,n,o){var i=Ne?Ne+e:e;if(!this._events[i])return this;if(!t)return Bi(this,i),this;var s=this._events[i];if(s.fn)s.fn===t&&(!o||s.once)&&(!n||s.context===n)&&Bi(this,i);else{for(var a=0,c=[],f=s.length;a<f;a++)(s[a].fn!==t||o&&!s[a].once||n&&s[a].context!==n)&&c.push(s[a]);c.length?this._events[i]=c.length===1?c[0]:c:Bi(this,i)}return this};Ie.prototype.removeAllListeners=function(e){var t;return e?(t=Ne?Ne+e:e,this._events[t]&&Bi(this,t)):(this._events=new kn,this._eventsCount=0),this};Ie.prototype.off=Ie.prototype.removeListener;Ie.prototype.addListener=Ie.prototype.on;Ie.prefixed=Ne;Ie.EventEmitter=Ie;typeof Sa<"u"&&(Sa.exports=Ie)});var Xm={};ke(Xm,{delegatedHTTPRouting:()=>zf,delegatedHTTPRoutingDefaults:()=>Ni,httpGatewayRouting:()=>Qf,libp2pRouting:()=>eh});var Za=Symbol.for("@libp2p/content-routing");var Li=Symbol.for("@libp2p/peer-id");var Wa=Symbol.for("@libp2p/peer-routing");var Ee=class extends Error{static name="InvalidParametersError";constructor(e="Invalid parameters"){super(e),this.name="InvalidParametersError"}},lr=class extends Error{static name="InvalidPublicKeyError";constructor(e="Invalid public key"){super(e),this.name="InvalidPublicKeyError"}};var Re=class extends Error{static name="NotFoundError";constructor(e="Not found"){super(e),this.name="NotFoundError"}};var Ln=class extends Error{static name="InvalidCIDError";constructor(e="Invalid CID"){super(e),this.name="InvalidCIDError"}},fr=class extends Error{static name="InvalidMultihashError";constructor(e="Invalid Multihash"){super(e),this.name="InvalidMultihashError"}};var hr=class extends Error{static name="UnsupportedKeyTypeError";constructor(e="Unsupported key type"){super(e),this.name="UnsupportedKeyTypeError"}};var dr=(r,...e)=>{try{[...e]}catch{}};var Oi={};ke(Oi,{base32:()=>Ge,base32hex:()=>Bh,base32hexpad:()=>Sh,base32hexpadupper:()=>Ih,base32hexupper:()=>Ah,base32pad:()=>vh,base32padupper:()=>Eh,base32upper:()=>bh,base32z:()=>Th});var ig=new Uint8Array(0);function Ya(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}function mt(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function Ja(r){return new TextEncoder().encode(r)}function Xa(r){return new TextDecoder().decode(r)}function mh(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var o=0;o<r.length;o++){var i=r.charAt(o),s=i.charCodeAt(0);if(t[s]!==255)throw new TypeError(i+" is ambiguous");t[s]=o}var a=r.length,c=r.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(I){if(I instanceof Uint8Array||(ArrayBuffer.isView(I)?I=new Uint8Array(I.buffer,I.byteOffset,I.byteLength):Array.isArray(I)&&(I=Uint8Array.from(I))),!(I instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(I.length===0)return"";for(var w=0,d=0,E=0,k=I.length;E!==k&&I[E]===0;)E++,w++;for(var x=(k-E)*u+1>>>0,C=new Uint8Array(x);E!==k;){for(var F=I[E],P=0,U=x-1;(F!==0||P<d)&&U!==-1;U--,P++)F+=256*C[U]>>>0,C[U]=F%a>>>0,F=F/a>>>0;if(F!==0)throw new Error("Non-zero carry");d=P,E++}for(var g=x-d;g!==x&&C[g]===0;)g++;for(var v=c.repeat(w);g<x;++g)v+=r.charAt(C[g]);return v}function h(I){if(typeof I!="string")throw new TypeError("Expected String");if(I.length===0)return new Uint8Array;var w=0;if(I[w]!==" "){for(var d=0,E=0;I[w]===c;)d++,w++;for(var k=(I.length-w)*f+1>>>0,x=new Uint8Array(k);I[w];){var C=t[I.charCodeAt(w)];if(C===255)return;for(var F=0,P=k-1;(C!==0||F<E)&&P!==-1;P--,F++)C+=a*x[P]>>>0,x[P]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");E=F,w++}if(I[w]!==" "){for(var U=k-E;U!==k&&x[U]===0;)U++;for(var g=new Uint8Array(d+(k-U)),v=d;U!==k;)g[v++]=x[U++];return g}}}function b(I){var w=h(I);if(w)return w;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:b}}var gh=mh,yh=gh,ec=yh;var Pi=class{name;prefix;baseEncode;constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Vi=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let o=t.codePointAt(0);if(o===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=o,this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return tc(this,e)}},Fi=class{decoders;constructor(e){this.decoders=e}or(e){return tc(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function tc(r,e){return new Fi({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var Di=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,o){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=o,this.encoder=new Pi(e,t,n),this.decoder=new Vi(e,t,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function pr({name:r,prefix:e,encode:t,decode:n}){return new Di(r,e,t,n)}function Ut({name:r,prefix:e,alphabet:t}){let{encode:n,decode:o}=ec(t,r);return pr({prefix:e,name:r,encode:n,decode:i=>mt(o(i))})}function wh(r,e,t,n){let o={};for(let u=0;u<e.length;++u)o[e[u]]=u;let i=r.length;for(;r[i-1]==="=";)--i;let s=new Uint8Array(i*t/8|0),a=0,c=0,f=0;for(let u=0;u<i;++u){let l=o[r[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|l,a+=t,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s}function xh(r,e,t){let n=e[e.length-1]==="=",o=(1<<t)-1,i="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,i+=e[o&a>>s];if(s!==0&&(i+=e[o&a<<t-s]),n)for(;i.length*t&7;)i+="=";return i}function se({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return pr({prefix:e,name:r,encode(o){return xh(o,n,t)},decode(o){return wh(o,n,t,r)}})}var Ge=se({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),bh=se({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),vh=se({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Eh=se({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Bh=se({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Ah=se({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Sh=se({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Ih=se({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Th=se({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Mi={};ke(Mi,{base58btc:()=>re,base58flickr:()=>kh});var re=Ut({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),kh=Ut({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Hi={};ke(Hi,{base64:()=>$i,base64pad:()=>Ch,base64url:()=>Nh,base64urlpad:()=>Uh});var $i=se({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Ch=se({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Nh=se({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Uh=se({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});function Rh(r,e){try{if(typeof r=="string"&&r.length>0)return _h(r);if(typeof r=="number"&&isFinite(r))return e?.long?Ph(r):Lh(r);throw new Error("Value is not a string or number.")}catch(t){let n=Vh(t)?`${t.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function _h(r){if(r=String(r),r.length>100)throw new Error("Value exceeds the maximum length of 100 characters.");let e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(!e)return NaN;let t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*315576e5;case"weeks":case"week":case"w":return t*6048e5;case"days":case"day":case"d":return t*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return t*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return t*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return t*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:throw new Error(`The unit ${n} was matched, but no matching case exists.`)}}var Vn=Rh;function Lh(r){let e=Math.abs(r);return e>=864e5?`${Math.round(r/864e5)}d`:e>=36e5?`${Math.round(r/36e5)}h`:e>=6e4?`${Math.round(r/6e4)}m`:e>=1e3?`${Math.round(r/1e3)}s`:`${r}ms`}function Ph(r){let e=Math.abs(r);return e>=864e5?Pn(r,e,864e5,"day"):e>=36e5?Pn(r,e,36e5,"hour"):e>=6e4?Pn(r,e,6e4,"minute"):e>=1e3?Pn(r,e,1e3,"second"):`${r} ms`}function Pn(r,e,t,n){let o=e>=t*1.5;return`${Math.round(r/t)} ${n}${o?"s":""}`}function Vh(r){return typeof r=="object"&&r!==null&&"message"in r}function Ki(r){t.debug=t,t.default=t,t.coerce=c,t.disable=i,t.enable=o,t.enabled=s,t.humanize=Vn,t.destroy=f,Object.keys(r).forEach(u=>{t[u]=r[u]}),t.names=[],t.skips=[],t.formatters={};function e(u){let l=0;for(let h=0;h<u.length;h++)l=(l<<5)-l+u.charCodeAt(h),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(u){let l,h=null,b,I;function w(...d){if(!w.enabled)return;let E=w,k=Number(new Date),x=k-(l||k);E.diff=x,E.prev=l,E.curr=k,l=k,d[0]=t.coerce(d[0]),typeof d[0]!="string"&&d.unshift("%O");let C=0;d[0]=d[0].replace(/%([a-zA-Z%])/g,(P,U)=>{if(P==="%%")return"%";C++;let g=t.formatters[U];if(typeof g=="function"){let v=d[C];P=g.call(E,v),d.splice(C,1),C--}return P}),t.formatArgs.call(E,d),(E.log||t.log).apply(E,d)}return w.namespace=u,w.useColors=t.useColors(),w.color=t.selectColor(u),w.extend=n,w.destroy=t.destroy,Object.defineProperty(w,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(b!==t.namespaces&&(b=t.namespaces,I=t.enabled(u)),I),set:d=>{h=d}}),typeof t.init=="function"&&t.init(w),w}function n(u,l){let h=t(this.namespace+(typeof l>"u"?":":l)+u);return h.log=this.log,h}function o(u){t.save(u),t.namespaces=u,t.names=[],t.skips=[];let l,h=(typeof u=="string"?u:"").split(/[\s,]+/),b=h.length;for(l=0;l<b;l++)h[l]&&(u=h[l].replace(/\*/g,".*?"),u[0]==="-"?t.skips.push(new RegExp("^"+u.substr(1)+"$")):t.names.push(new RegExp("^"+u+"$")))}function i(){let u=[...t.names.map(a),...t.skips.map(a).map(l=>"-"+l)].join(",");return t.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let l,h;for(l=0,h=t.skips.length;l<h;l++)if(t.skips[l].test(u))return!1;for(l=0,h=t.names.length;l<h;l++)if(t.names[l].test(u))return!0;return!1}function a(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}function c(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 t.setupFormatters(t.formatters),t.enable(t.load()),t}var Fn=Kh(),Fh=["#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 Dh(){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 Oh(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+Vn(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(t++,o==="%c"&&(n=t))}),r.splice(n,0,e)}var Mh=console.debug??console.log??(()=>{});function $h(r){try{r?Fn?.setItem("debug",r):Fn?.removeItem("debug")}catch{}}function Hh(){let r;try{r=Fn?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function Kh(){try{return localStorage}catch{}}function qh(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var rc=Ki({formatArgs:Oh,save:$h,load:Hh,useColors:Dh,setupFormatters:qh,colors:Fh,storage:Fn,log:Mh});var _e=rc;_e.formatters.b=r=>r==null?"undefined":re.baseEncode(r);_e.formatters.t=r=>r==null?"undefined":Ge.baseEncode(r);_e.formatters.m=r=>r==null?"undefined":$i.baseEncode(r);_e.formatters.p=r=>r==null?"undefined":r.toString();_e.formatters.c=r=>r==null?"undefined":r.toString();_e.formatters.k=r=>r==null?"undefined":r.toString();_e.formatters.a=r=>r==null?"undefined":r.toString();_e.formatters.e=r=>r==null?"undefined":nc(r.stack)??nc(r.message)??r.toString();function zh(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function Rt(r){let e=zh(`${r}:trace`);return _e.enabled(`${r}:trace`)&&_e.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=_e(`${r}:trace`)),Object.assign(_e(r),{error:_e(`${r}:error`),trace:e})}function nc(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}var qi={};ke(qi,{base36:()=>mr,base36upper:()=>jh});var mr=Ut({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),jh=Ut({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Gh=sc,oc=128,Zh=127,Wh=~Zh,Yh=Math.pow(2,31);function sc(r,e,t){e=e||[],t=t||0;for(var n=t;r>=Yh;)e[t++]=r&255|oc,r/=128;for(;r&Wh;)e[t++]=r&255|oc,r>>>=7;return e[t]=r|0,sc.bytes=t-n+1,e}var Jh=zi,Xh=128,ic=127;function zi(r,n){var t=0,n=n||0,o=0,i=n,s,a=r.length;do{if(i>=a)throw zi.bytes=0,new RangeError("Could not decode varint");s=r[i++],t+=o<28?(s&ic)<<o:(s&ic)*Math.pow(2,o),o+=7}while(s>=Xh);return zi.bytes=i-n,t}var Qh=Math.pow(2,7),ed=Math.pow(2,14),td=Math.pow(2,21),rd=Math.pow(2,28),nd=Math.pow(2,35),od=Math.pow(2,42),id=Math.pow(2,49),sd=Math.pow(2,56),ad=Math.pow(2,63),cd=function(r){return r<Qh?1:r<ed?2:r<td?3:r<rd?4:r<nd?5:r<od?6:r<id?7:r<sd?8:r<ad?9:10},ud={encode:Gh,decode:Jh,encodingLength:cd},ld=ud,Zr=ld;function Wr(r,e=0){return[Zr.decode(r,e),Zr.decode.bytes]}function gr(r,e,t=0){return Zr.encode(r,e,t),e}function yr(r){return Zr.encodingLength(r)}function Ze(r,e){let t=e.byteLength,n=yr(r),o=n+yr(t),i=new Uint8Array(o+t);return gr(r,i,0),gr(t,i,n),i.set(e,o),new wr(r,t,e,i)}function gt(r){let e=mt(r),[t,n]=Wr(e),[o,i]=Wr(e.subarray(n)),s=e.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new wr(t,o,s,e)}function ac(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&Ya(r.bytes,t.bytes)}}var wr=class{code;size;digest;bytes;constructor(e,t,n,o){this.code=e,this.size=t,this.digest=n,this.bytes=o}};function cc(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return hd(t,ji(r),e??re.encoder);default:return dd(t,ji(r),e??Ge.encoder)}}var uc=new WeakMap;function ji(r){let e=uc.get(r);if(e==null){let t=new Map;return uc.set(r,t),t}return e}var X=class r{code;version;multihash;bytes;"/";constructor(e,t,n,o){this.code=t,this.version=e,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:e,multihash:t}=this;if(e!==Yr)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==pd)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(t)}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:e,digest:t}=this.multihash,n=Ze(e,t);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return r.equals(this,e)}static equals(e,t){let n=t;return n!=null&&e.code===n.code&&e.version===n.version&&ac(e.multihash,n.multihash)}toString(e){return cc(this,e)}toJSON(){return{"/":cc(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:o,multihash:i,bytes:s}=t;return new r(n,o,i,s??lc(n,o,i.bytes))}else if(t[md]===!0){let{version:n,multihash:o,code:i}=t,s=gt(o);return r.create(n,i,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==Yr)throw new Error(`Version 0 CID must use dag-pb (code: ${Yr}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let o=lc(e,t,n.bytes);return new r(e,t,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Yr,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,o=mt(e.subarray(n,n+t.multihashSize));if(o.byteLength!==t.multihashSize)throw new Error("Incorrect length");let i=o.subarray(t.multihashSize-t.digestSize),s=new wr(t.multihashCode,t.digestSize,i,o);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[l,h]=Wr(e.subarray(t));return t+=h,l},o=n(),i=Yr;if(o===18?(o=0,t=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=t,a=n(),c=n(),f=t+c,u=f-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,t){let[n,o]=fd(e,t),i=r.decode(o);if(i.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return ji(i).set(n,e),i}};function fd(r,e){switch(r[0]){case"Q":{let t=e??re;return[re.prefix,t.decode(`${re.prefix}${r}`)]}case re.prefix:{let t=e??re;return[re.prefix,t.decode(r)]}case Ge.prefix:{let t=e??Ge;return[Ge.prefix,t.decode(r)]}case mr.prefix:{let t=e??mr;return[mr.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function hd(r,e,t){let{prefix:n}=t;if(n!==re.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let o=e.get(n);if(o==null){let i=t.encode(r).slice(1);return e.set(n,i),i}else return o}function dd(r,e,t){let{prefix:n}=t,o=e.get(n);if(o==null){let i=t.encode(r);return e.set(n,i),i}else return o}var Yr=112,pd=18;function lc(r,e,t){let n=yr(r),o=n+yr(e),i=new Uint8Array(o+t.byteLength);return gr(r,i,0),gr(e,i,n),i.set(t,o),i}var md=Symbol.for("@ipld/js-cid/CID");var Gi={};ke(Gi,{identity:()=>We});var fc=0,gd="identity",hc=mt;function yd(r){return Ze(fc,hc(r))}var We={code:fc,name:gd,encode:hc,digest:yd};function ce(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}function dc(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`positive integer expected, not ${r}`)}function wd(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function xr(r,...e){if(!wd(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${r.length}`)}function pc(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");dc(r.outputLen),dc(r.blockLen)}function br(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function mc(r,e){xr(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var Wt=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var On=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),Ye=(r,e)=>r<<32-e|r>>>e;var Hg=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function gc(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function Jr(r){return typeof r=="string"&&(r=gc(r)),xr(r),r}function Zi(...r){let e=0;for(let n=0;n<r.length;n++){let o=r[n];xr(o),e+=o.length}let t=new Uint8Array(e);for(let n=0,o=0;n<r.length;n++){let i=r[n];t.set(i,o),o+=i.length}return t}var vr=class{clone(){return this._cloneInto()}},Kg={}.toString;function Mn(r){let e=n=>r().update(Jr(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function $n(r=32){if(Wt&&typeof Wt.getRandomValues=="function")return Wt.getRandomValues(new Uint8Array(r));if(Wt&&typeof Wt.randomBytes=="function")return Wt.randomBytes(r);throw new Error("crypto.getRandomValues must be defined")}function xd(r,e,t,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,n);let o=BigInt(32),i=BigInt(4294967295),s=Number(t>>o&i),a=Number(t&i),c=n?4:0,f=n?0:4;r.setUint32(e+c,s,n),r.setUint32(e+f,a,n)}var yc=(r,e,t)=>r&e^~r&t,wc=(r,e,t)=>r&e^r&t^e&t,Er=class extends vr{constructor(e,t,n,o){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=o,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=On(this.buffer)}update(e){br(this);let{view:t,buffer:n,blockLen:o}=this;e=Jr(e);let i=e.length;for(let s=0;s<i;){let a=Math.min(o-this.pos,i-s);if(a===o){let c=On(e);for(;o<=i-s;s+=o)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===o&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){br(this),mc(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;t[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>o-s&&(this.process(n,0),s=0);for(let l=s;l<o;l++)t[l]=0;xd(n,o-8,BigInt(this.length*8),i),this.process(n,0);let a=On(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:n,length:o,finished:i,destroyed:s,pos:a}=this;return e.length=o,e.pos=a,e.finished=i,e.destroyed=s,o%t&&e.buffer.set(n),e}};var Hn=BigInt(4294967295),Wi=BigInt(32);function xc(r,e=!1){return e?{h:Number(r&Hn),l:Number(r>>Wi&Hn)}:{h:Number(r>>Wi&Hn)|0,l:Number(r&Hn)|0}}function bd(r,e=!1){let t=new Uint32Array(r.length),n=new Uint32Array(r.length);for(let o=0;o<r.length;o++){let{h:i,l:s}=xc(r[o],e);[t[o],n[o]]=[i,s]}return[t,n]}var vd=(r,e)=>BigInt(r>>>0)<<Wi|BigInt(e>>>0),Ed=(r,e,t)=>r>>>t,Bd=(r,e,t)=>r<<32-t|e>>>t,Ad=(r,e,t)=>r>>>t|e<<32-t,Sd=(r,e,t)=>r<<32-t|e>>>t,Id=(r,e,t)=>r<<64-t|e>>>t-32,Td=(r,e,t)=>r>>>t-32|e<<64-t,kd=(r,e)=>e,Cd=(r,e)=>r,Nd=(r,e,t)=>r<<t|e>>>32-t,Ud=(r,e,t)=>e<<t|r>>>32-t,Rd=(r,e,t)=>e<<t-32|r>>>64-t,_d=(r,e,t)=>r<<t-32|e>>>64-t;function Ld(r,e,t,n){let o=(e>>>0)+(n>>>0);return{h:r+t+(o/2**32|0)|0,l:o|0}}var Pd=(r,e,t)=>(r>>>0)+(e>>>0)+(t>>>0),Vd=(r,e,t,n)=>e+t+n+(r/2**32|0)|0,Fd=(r,e,t,n)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0),Dd=(r,e,t,n,o)=>e+t+n+o+(r/2**32|0)|0,Od=(r,e,t,n,o)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0)+(o>>>0),Md=(r,e,t,n,o,i)=>e+t+n+o+i+(r/2**32|0)|0;var $d={fromBig:xc,split:bd,toBig:vd,shrSH:Ed,shrSL:Bd,rotrSH:Ad,rotrSL:Sd,rotrBH:Id,rotrBL:Td,rotr32H:kd,rotr32L:Cd,rotlSH:Nd,rotlSL:Ud,rotlBH:Rd,rotlBL:_d,add:Ld,add3L:Pd,add3H:Vd,add4L:Fd,add4H:Dd,add5H:Md,add5L:Od},K=$d;var[Hd,Kd]=K.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(r=>BigInt(r))),Lt=new Uint32Array(80),Pt=new Uint32Array(80),Yi=class extends Er{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:t,Bh:n,Bl:o,Ch:i,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:h,Gh:b,Gl:I,Hh:w,Hl:d}=this;return[e,t,n,o,i,s,a,c,f,u,l,h,b,I,w,d]}set(e,t,n,o,i,s,a,c,f,u,l,h,b,I,w,d){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=o|0,this.Ch=i|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=h|0,this.Gh=b|0,this.Gl=I|0,this.Hh=w|0,this.Hl=d|0}process(e,t){for(let x=0;x<16;x++,t+=4)Lt[x]=e.getUint32(t),Pt[x]=e.getUint32(t+=4);for(let x=16;x<80;x++){let C=Lt[x-15]|0,F=Pt[x-15]|0,P=K.rotrSH(C,F,1)^K.rotrSH(C,F,8)^K.shrSH(C,F,7),U=K.rotrSL(C,F,1)^K.rotrSL(C,F,8)^K.shrSL(C,F,7),g=Lt[x-2]|0,v=Pt[x-2]|0,D=K.rotrSH(g,v,19)^K.rotrBH(g,v,61)^K.shrSH(g,v,6),R=K.rotrSL(g,v,19)^K.rotrBL(g,v,61)^K.shrSL(g,v,6),N=K.add4L(U,R,Pt[x-7],Pt[x-16]),H=K.add4H(N,P,D,Lt[x-7],Lt[x-16]);Lt[x]=H|0,Pt[x]=N|0}let{Ah:n,Al:o,Bh:i,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:h,Fh:b,Fl:I,Gh:w,Gl:d,Hh:E,Hl:k}=this;for(let x=0;x<80;x++){let C=K.rotrSH(l,h,14)^K.rotrSH(l,h,18)^K.rotrBH(l,h,41),F=K.rotrSL(l,h,14)^K.rotrSL(l,h,18)^K.rotrBL(l,h,41),P=l&b^~l&w,U=h&I^~h&d,g=K.add5L(k,F,U,Kd[x],Pt[x]),v=K.add5H(g,E,C,P,Hd[x],Lt[x]),D=g|0,R=K.rotrSH(n,o,28)^K.rotrBH(n,o,34)^K.rotrBH(n,o,39),N=K.rotrSL(n,o,28)^K.rotrBL(n,o,34)^K.rotrBL(n,o,39),H=n&i^n&a^i&a,A=o&s^o&c^s&c;E=w|0,k=d|0,w=b|0,d=I|0,b=l|0,I=h|0,{h:l,l:h}=K.add(f|0,u|0,v|0,D|0),f=a|0,u=c|0,a=i|0,c=s|0,i=n|0,s=o|0;let S=K.add3L(D,N,A);n=K.add3H(S,v,R,H),o=S|0}({h:n,l:o}=K.add(this.Ah|0,this.Al|0,n|0,o|0)),{h:i,l:s}=K.add(this.Bh|0,this.Bl|0,i|0,s|0),{h:a,l:c}=K.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=K.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:h}=K.add(this.Eh|0,this.El|0,l|0,h|0),{h:b,l:I}=K.add(this.Fh|0,this.Fl|0,b|0,I|0),{h:w,l:d}=K.add(this.Gh|0,this.Gl|0,w|0,d|0),{h:E,l:k}=K.add(this.Hh|0,this.Hl|0,E|0,k|0),this.set(n,o,i,s,a,c,f,u,l,h,b,I,w,d,E,k)}roundClean(){Lt.fill(0),Pt.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var bc=Mn(()=>new Yi);var qn={};ke(qn,{aInRange:()=>Le,abool:()=>Je,abytes:()=>Br,bitGet:()=>Wd,bitLen:()=>ts,bitMask:()=>Qr,bitSet:()=>Yd,bytesToHex:()=>wt,bytesToNumberBE:()=>xt,bytesToNumberLE:()=>Ft,concatBytes:()=>bt,createHmacDrbg:()=>rs,ensureBytes:()=>ae,equalBytes:()=>Gd,hexToBytes:()=>Jt,hexToNumber:()=>es,inRange:()=>Xr,isBytes:()=>Vt,memoized:()=>Qt,notImplemented:()=>Xd,numberToBytesBE:()=>Dt,numberToBytesLE:()=>Xt,numberToHexUnpadded:()=>Yt,numberToVarBytesBE:()=>jd,utf8ToBytes:()=>Zd,validateObject:()=>at});var Qi=BigInt(0),Kn=BigInt(1),qd=BigInt(2);function Vt(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function Br(r){if(!Vt(r))throw new Error("Uint8Array expected")}function Je(r,e){if(typeof e!="boolean")throw new Error(`${r} must be valid boolean, got "${e}".`)}var zd=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function wt(r){Br(r);let e="";for(let t=0;t<r.length;t++)e+=zd[r[t]];return e}function Yt(r){let e=r.toString(16);return e.length&1?`0${e}`:e}function es(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}var yt={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function vc(r){if(r>=yt._0&&r<=yt._9)return r-yt._0;if(r>=yt._A&&r<=yt._F)return r-(yt._A-10);if(r>=yt._a&&r<=yt._f)return r-(yt._a-10)}function Jt(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let e=r.length,t=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(t);for(let o=0,i=0;o<t;o++,i+=2){let s=vc(r.charCodeAt(i)),a=vc(r.charCodeAt(i+1));if(s===void 0||a===void 0){let c=r[i]+r[i+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+i)}n[o]=s*16+a}return n}function xt(r){return es(wt(r))}function Ft(r){return Br(r),es(wt(Uint8Array.from(r).reverse()))}function Dt(r,e){return Jt(r.toString(16).padStart(e*2,"0"))}function Xt(r,e){return Dt(r,e).reverse()}function jd(r){return Jt(Yt(r))}function ae(r,e,t){let n;if(typeof e=="string")try{n=Jt(e)}catch(i){throw new Error(`${r} must be valid hex string, got "${e}". Cause: ${i}`)}else if(Vt(e))n=Uint8Array.from(e);else throw new Error(`${r} must be hex string or Uint8Array`);let o=n.length;if(typeof t=="number"&&o!==t)throw new Error(`${r} expected ${t} bytes, got ${o}`);return n}function bt(...r){let e=0;for(let n=0;n<r.length;n++){let o=r[n];Br(o),e+=o.length}let t=new Uint8Array(e);for(let n=0,o=0;n<r.length;n++){let i=r[n];t.set(i,o),o+=i.length}return t}function Gd(r,e){if(r.length!==e.length)return!1;let t=0;for(let n=0;n<r.length;n++)t|=r[n]^e[n];return t===0}function Zd(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}var Ji=r=>typeof r=="bigint"&&Qi<=r;function Xr(r,e,t){return Ji(r)&&Ji(e)&&Ji(t)&&e<=r&&r<t}function Le(r,e,t,n){if(!Xr(e,t,n))throw new Error(`expected valid ${r}: ${t} <= n < ${n}, got ${typeof e} ${e}`)}function ts(r){let e;for(e=0;r>Qi;r>>=Kn,e+=1);return e}function Wd(r,e){return r>>BigInt(e)&Kn}function Yd(r,e,t){return r|(t?Kn:Qi)<<BigInt(e)}var Qr=r=>(qd<<BigInt(r-1))-Kn,Xi=r=>new Uint8Array(r),Ec=r=>Uint8Array.from(r);function rs(r,e,t){if(typeof r!="number"||r<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof t!="function")throw new Error("hmacFn must be a function");let n=Xi(r),o=Xi(r),i=0,s=()=>{n.fill(1),o.fill(0),i=0},a=(...l)=>t(o,n,...l),c=(l=Xi())=>{o=a(Ec([0]),l),n=a(),l.length!==0&&(o=a(Ec([1]),l),n=a())},f=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<e;){n=a();let b=n.slice();h.push(b),l+=n.length}return bt(...h)};return(l,h)=>{s(),c(l);let b;for(;!(b=h(f()));)c();return s(),b}}var Jd={bigint:r=>typeof r=="bigint",function:r=>typeof r=="function",boolean:r=>typeof r=="boolean",string:r=>typeof r=="string",stringOrUint8Array:r=>typeof r=="string"||Vt(r),isSafeInteger:r=>Number.isSafeInteger(r),array:r=>Array.isArray(r),field:(r,e)=>e.Fp.isValid(r),hash:r=>typeof r=="function"&&Number.isSafeInteger(r.outputLen)};function at(r,e,t={}){let n=(o,i,s)=>{let a=Jd[i];if(typeof a!="function")throw new Error(`Invalid validator "${i}", expected function`);let c=r[o];if(!(s&&c===void 0)&&!a(c,r))throw new Error(`Invalid param ${String(o)}=${c} (${typeof c}), expected ${i}`)};for(let[o,i]of Object.entries(e))n(o,i,!1);for(let[o,i]of Object.entries(t))n(o,i,!0);return r}var Xd=()=>{throw new Error("not implemented")};function Qt(r){let e=new WeakMap;return(t,...n)=>{let o=e.get(t);if(o!==void 0)return o;let i=r(t,...n);return e.set(t,i),i}}var fe=BigInt(0),oe=BigInt(1),er=BigInt(2),Qd=BigInt(3),ns=BigInt(4),Bc=BigInt(5),Ac=BigInt(8),e0=BigInt(9),t0=BigInt(16);function Q(r,e){let t=r%e;return t>=fe?t:e+t}function r0(r,e,t){if(t<=fe||e<fe)throw new Error("Expected power/modulo > 0");if(t===oe)return fe;let n=oe;for(;e>fe;)e&oe&&(n=n*r%t),r=r*r%t,e>>=oe;return n}function ie(r,e,t){let n=r;for(;e-- >fe;)n*=n,n%=t;return n}function zn(r,e){if(r===fe||e<=fe)throw new Error(`invert: expected positive integers, got n=${r} mod=${e}`);let t=Q(r,e),n=e,o=fe,i=oe,s=oe,a=fe;for(;t!==fe;){let f=n/t,u=n%t,l=o-s*f,h=i-a*f;n=t,t=u,o=s,i=a,s=l,a=h}if(n!==oe)throw new Error("invert: does not exist");return Q(o,e)}function n0(r){let e=(r-oe)/er,t,n,o;for(t=r-oe,n=0;t%er===fe;t/=er,n++);for(o=er;o<r&&r0(o,e,r)!==r-oe;o++);if(n===1){let s=(r+oe)/ns;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let i=(t+oe)/er;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,o),t),l=a.pow(c,i),h=a.pow(c,t);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let b=1;for(let w=a.sqr(h);b<f&&!a.eql(w,a.ONE);b++)w=a.sqr(w);let I=a.pow(u,oe<<BigInt(f-b-1));u=a.sqr(I),l=a.mul(l,I),h=a.mul(h,u),f=b}return l}}function o0(r){if(r%ns===Qd){let e=(r+oe)/ns;return function(n,o){let i=n.pow(o,e);if(!n.eql(n.sqr(i),o))throw new Error("Cannot find square root");return i}}if(r%Ac===Bc){let e=(r-Bc)/Ac;return function(n,o){let i=n.mul(o,er),s=n.pow(i,e),a=n.mul(o,s),c=n.mul(n.mul(a,er),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),o))throw new Error("Cannot find square root");return f}}return r%t0,n0(r)}var Sc=(r,e)=>(Q(r,e)&oe)===oe,i0=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function os(r){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},t=i0.reduce((n,o)=>(n[o]="function",n),e);return at(r,t)}function s0(r,e,t){if(t<fe)throw new Error("Expected power > 0");if(t===fe)return r.ONE;if(t===oe)return e;let n=r.ONE,o=e;for(;t>fe;)t&oe&&(n=r.mul(n,o)),o=r.sqr(o),t>>=oe;return n}function a0(r,e){let t=new Array(e.length),n=e.reduce((i,s,a)=>r.is0(s)?i:(t[a]=i,r.mul(i,s)),r.ONE),o=r.inv(n);return e.reduceRight((i,s,a)=>r.is0(s)?i:(t[a]=r.mul(i,t[a]),r.mul(i,s)),o),t}function is(r,e){let t=e!==void 0?e:r.toString(2).length,n=Math.ceil(t/8);return{nBitLength:t,nByteLength:n}}function Ot(r,e,t=!1,n={}){if(r<=fe)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:o,nByteLength:i}=is(r,e);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=o0(r),a=Object.freeze({ORDER:r,BITS:o,BYTES:i,MASK:Qr(o),ZERO:fe,ONE:oe,create:c=>Q(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return fe<=c&&c<r},is0:c=>c===fe,isOdd:c=>(c&oe)===oe,neg:c=>Q(-c,r),eql:(c,f)=>c===f,sqr:c=>Q(c*c,r),add:(c,f)=>Q(c+f,r),sub:(c,f)=>Q(c-f,r),mul:(c,f)=>Q(c*f,r),pow:(c,f)=>s0(a,c,f),div:(c,f)=>Q(c*zn(f,r),r),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>zn(c,r),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>a0(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>t?Xt(c,i):Dt(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return t?Ft(c):xt(c)}});return Object.freeze(a)}function Ic(r){if(typeof r!="bigint")throw new Error("field order must be bigint");let e=r.toString(2).length;return Math.ceil(e/8)}function ss(r){let e=Ic(r);return e+Math.ceil(e/2)}function Tc(r,e,t=!1){let n=r.length,o=Ic(e),i=ss(e);if(n<16||n<i||n>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${n}`);let s=t?xt(r):Ft(r),a=Q(s,e-oe)+oe;return t?Xt(a,o):Dt(a,o)}var u0=BigInt(0),as=BigInt(1),cs=new WeakMap,kc=new WeakMap;function jn(r,e){let t=(i,s)=>{let a=s.negate();return i?a:s},n=i=>{if(!Number.isSafeInteger(i)||i<=0||i>e)throw new Error(`Wrong window size=${i}, should be [1..${e}]`)},o=i=>{n(i);let s=Math.ceil(e/i)+1,a=2**(i-1);return{windows:s,windowSize:a}};return{constTimeNegate:t,unsafeLadder(i,s){let a=r.ZERO,c=i;for(;s>u0;)s&as&&(a=a.add(c)),c=c.double(),s>>=as;return a},precomputeWindow(i,s){let{windows:a,windowSize:c}=o(s),f=[],u=i,l=u;for(let h=0;h<a;h++){l=u,f.push(l);for(let b=1;b<c;b++)l=l.add(u),f.push(l);u=l.double()}return f},wNAF(i,s,a){let{windows:c,windowSize:f}=o(i),u=r.ZERO,l=r.BASE,h=BigInt(2**i-1),b=2**i,I=BigInt(i);for(let w=0;w<c;w++){let d=w*f,E=Number(a&h);a>>=I,E>f&&(E-=b,a+=as);let k=d,x=d+Math.abs(E)-1,C=w%2!==0,F=E<0;E===0?l=l.add(t(C,s[k])):u=u.add(t(F,s[x]))}return{p:u,f:l}},wNAFCached(i,s,a){let c=kc.get(i)||1,f=cs.get(i);return f||(f=this.precomputeWindow(i,c),c!==1&&cs.set(i,a(f))),this.wNAF(c,f,s)},setWindowSize(i,s){n(s),kc.set(i,s),cs.delete(i)}}}function Gn(r,e,t,n){if(!Array.isArray(t)||!Array.isArray(n)||n.length!==t.length)throw new Error("arrays of points and scalars must have equal length");n.forEach((u,l)=>{if(!e.isValid(u))throw new Error(`wrong scalar at index ${l}`)}),t.forEach((u,l)=>{if(!(u instanceof r))throw new Error(`wrong point at index ${l}`)});let o=ts(BigInt(t.length)),i=o>12?o-3:o>4?o-2:o?2:1,s=(1<<i)-1,a=new Array(s+1).fill(r.ZERO),c=Math.floor((e.BITS-1)/i)*i,f=r.ZERO;for(let u=c;u>=0;u-=i){a.fill(r.ZERO);for(let h=0;h<n.length;h++){let b=n[h],I=Number(b>>BigInt(u)&BigInt(s));a[I]=a[I].add(t[h])}let l=r.ZERO;for(let h=a.length-1,b=r.ZERO;h>0;h--)b=b.add(a[h]),l=l.add(b);if(f=f.add(l),u!==0)for(let h=0;h<i;h++)f=f.double()}return f}function en(r){return os(r.Fp),at(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...is(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}var Xe=BigInt(0),Pe=BigInt(1),Zn=BigInt(2),l0=BigInt(8),f0={zip215:!0};function h0(r){let e=en(r);return at(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Cc(r){let e=h0(r),{Fp:t,n,prehash:o,hash:i,randomBytes:s,nByteLength:a,h:c}=e,f=Zn<<BigInt(a*8)-Pe,u=t.create,l=Ot(e.n,e.nBitLength),h=e.uvRatio||((m,p)=>{try{return{isValid:!0,value:t.sqrt(m*t.inv(p))}}catch{return{isValid:!1,value:Xe}}}),b=e.adjustScalarBytes||(m=>m),I=e.domain||((m,p,B)=>{if(Je("phflag",B),p.length||B)throw new Error("Contexts/pre-hash are not supported");return m});function w(m,p){Le("coordinate "+m,p,Xe,f)}function d(m){if(!(m instanceof x))throw new Error("ExtendedPoint expected")}let E=Qt((m,p)=>{let{ex:B,ey:V,ez:O}=m,M=m.is0();p==null&&(p=M?l0:t.inv(O));let q=u(B*p),G=u(V*p),z=u(O*p);if(M)return{x:Xe,y:Pe};if(z!==Pe)throw new Error("invZ was invalid");return{x:q,y:G}}),k=Qt(m=>{let{a:p,d:B}=e;if(m.is0())throw new Error("bad point: ZERO");let{ex:V,ey:O,ez:M,et:q}=m,G=u(V*V),z=u(O*O),J=u(M*M),te=u(J*J),de=u(G*p),pe=u(J*u(de+z)),we=u(te+u(B*u(G*z)));if(pe!==we)throw new Error("bad point: equation left != right (1)");let Te=u(V*O),le=u(M*q);if(Te!==le)throw new Error("bad point: equation left != right (2)");return!0});class x{constructor(p,B,V,O){this.ex=p,this.ey=B,this.ez=V,this.et=O,w("x",p),w("y",B),w("z",V),w("t",O),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(p){if(p instanceof x)throw new Error("extended point not allowed");let{x:B,y:V}=p||{};return w("x",B),w("y",V),new x(B,V,Pe,u(B*V))}static normalizeZ(p){let B=t.invertBatch(p.map(V=>V.ez));return p.map((V,O)=>V.toAffine(B[O])).map(x.fromAffine)}static msm(p,B){return Gn(x,l,p,B)}_setWindowSize(p){P.setWindowSize(this,p)}assertValidity(){k(this)}equals(p){d(p);let{ex:B,ey:V,ez:O}=this,{ex:M,ey:q,ez:G}=p,z=u(B*G),J=u(M*O),te=u(V*G),de=u(q*O);return z===J&&te===de}is0(){return this.equals(x.ZERO)}negate(){return new x(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:p}=e,{ex:B,ey:V,ez:O}=this,M=u(B*B),q=u(V*V),G=u(Zn*u(O*O)),z=u(p*M),J=B+V,te=u(u(J*J)-M-q),de=z+q,pe=de-G,we=z-q,Te=u(te*pe),le=u(de*we),Ue=u(te*we),pt=u(pe*de);return new x(Te,le,pt,Ue)}add(p){d(p);let{a:B,d:V}=e,{ex:O,ey:M,ez:q,et:G}=this,{ex:z,ey:J,ez:te,et:de}=p;if(B===BigInt(-1)){let Ma=u((M-O)*(J+z)),$a=u((M+O)*(J-z)),Ri=u($a-Ma);if(Ri===Xe)return this.double();let Ha=u(q*Zn*de),Ka=u(G*Zn*te),qa=Ka+Ha,za=$a+Ma,ja=Ka-Ha,ih=u(qa*Ri),sh=u(za*ja),ah=u(qa*ja),ch=u(Ri*za);return new x(ih,sh,ch,ah)}let pe=u(O*z),we=u(M*J),Te=u(G*V*de),le=u(q*te),Ue=u((O+M)*(z+J)-pe-we),pt=le-Te,jr=le+Te,Gr=u(we-B*pe),th=u(Ue*pt),rh=u(jr*Gr),nh=u(Ue*Gr),oh=u(pt*jr);return new x(th,rh,oh,nh)}subtract(p){return this.add(p.negate())}wNAF(p){return P.wNAFCached(this,p,x.normalizeZ)}multiply(p){let B=p;Le("scalar",B,Pe,n);let{p:V,f:O}=this.wNAF(B);return x.normalizeZ([V,O])[0]}multiplyUnsafe(p){let B=p;return Le("scalar",B,Xe,n),B===Xe?F:this.equals(F)||B===Pe?this:this.equals(C)?this.wNAF(B).p:P.unsafeLadder(this,B)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return P.unsafeLadder(this,n).is0()}toAffine(p){return E(this,p)}clearCofactor(){let{h:p}=e;return p===Pe?this:this.multiplyUnsafe(p)}static fromHex(p,B=!1){let{d:V,a:O}=e,M=t.BYTES;p=ae("pointHex",p,M),Je("zip215",B);let q=p.slice(),G=p[M-1];q[M-1]=G&-129;let z=Ft(q),J=B?f:t.ORDER;Le("pointHex.y",z,Xe,J);let te=u(z*z),de=u(te-Pe),pe=u(V*te-O),{isValid:we,value:Te}=h(de,pe);if(!we)throw new Error("Point.fromHex: invalid y coordinate");let le=(Te&Pe)===Pe,Ue=(G&128)!==0;if(!B&&Te===Xe&&Ue)throw new Error("Point.fromHex: x=0 and x_0=1");return Ue!==le&&(Te=u(-Te)),x.fromAffine({x:Te,y:z})}static fromPrivateKey(p){return v(p).point}toRawBytes(){let{x:p,y:B}=this.toAffine(),V=Xt(B,t.BYTES);return V[V.length-1]|=p&Pe?128:0,V}toHex(){return wt(this.toRawBytes())}}x.BASE=new x(e.Gx,e.Gy,Pe,u(e.Gx*e.Gy)),x.ZERO=new x(Xe,Pe,Pe,Xe);let{BASE:C,ZERO:F}=x,P=jn(x,a*8);function U(m){return Q(m,n)}function g(m){return U(Ft(m))}function v(m){let p=a;m=ae("private key",m,p);let B=ae("hashed private key",i(m),2*p),V=b(B.slice(0,p)),O=B.slice(p,2*p),M=g(V),q=C.multiply(M),G=q.toRawBytes();return{head:V,prefix:O,scalar:M,point:q,pointBytes:G}}function D(m){return v(m).pointBytes}function R(m=new Uint8Array,...p){let B=bt(...p);return g(i(I(B,ae("context",m),!!o)))}function N(m,p,B={}){m=ae("message",m),o&&(m=o(m));let{prefix:V,scalar:O,pointBytes:M}=v(p),q=R(B.context,V,m),G=C.multiply(q).toRawBytes(),z=R(B.context,G,M,m),J=U(q+z*O);Le("signature.s",J,Xe,n);let te=bt(G,Xt(J,t.BYTES));return ae("result",te,a*2)}let H=f0;function A(m,p,B,V=H){let{context:O,zip215:M}=V,q=t.BYTES;m=ae("signature",m,2*q),p=ae("message",p),M!==void 0&&Je("zip215",M),o&&(p=o(p));let G=Ft(m.slice(q,2*q)),z,J,te;try{z=x.fromHex(B,M),J=x.fromHex(m.slice(0,q),M),te=C.multiplyUnsafe(G)}catch{return!1}if(!M&&z.isSmallOrder())return!1;let de=R(O,J.toRawBytes(),z.toRawBytes(),p);return J.add(z.multiplyUnsafe(de)).subtract(te).clearCofactor().equals(x.ZERO)}return C._setWindowSize(8),{CURVE:e,getPublicKey:D,sign:N,verify:A,ExtendedPoint:x,utils:{getExtendedPublicKey:v,randomPrivateKey:()=>s(t.BYTES),precompute(m=8,p=x.BASE){return p._setWindowSize(m),p.multiply(BigInt(3)),p}}}}var us=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Nc=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),hy=BigInt(0),d0=BigInt(1),Uc=BigInt(2),dy=BigInt(3),p0=BigInt(5),m0=BigInt(8);function g0(r){let e=BigInt(10),t=BigInt(20),n=BigInt(40),o=BigInt(80),i=us,a=r*r%i*r%i,c=ie(a,Uc,i)*a%i,f=ie(c,d0,i)*r%i,u=ie(f,p0,i)*f%i,l=ie(u,e,i)*u%i,h=ie(l,t,i)*l%i,b=ie(h,n,i)*h%i,I=ie(b,o,i)*b%i,w=ie(I,o,i)*b%i,d=ie(w,e,i)*u%i;return{pow_p_5_8:ie(d,Uc,i)*r%i,b2:a}}function y0(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function w0(r,e){let t=us,n=Q(e*e*e,t),o=Q(n*n*e,t),i=g0(r*o).pow_p_5_8,s=Q(r*n*i,t),a=Q(e*s*s,t),c=s,f=Q(s*Nc,t),u=a===r,l=a===Q(-r,t),h=a===Q(-r*Nc,t);return u&&(s=c),(l||h)&&(s=f),Sc(s,t)&&(s=Q(-s,t)),{isValid:u||l,value:s}}var x0=Ot(us,void 0,!0),b0={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:x0,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:m0,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:bc,randomBytes:$n,adjustScalarBytes:y0,uvRatio:w0},Rc=Cc(b0);var Wn=32;function _c(r,e,t){return Rc.verify(e,t instanceof Uint8Array?t:t.subarray(),r)}var Yn=class{type="Ed25519";raw;constructor(e){this.raw=ls(e,Wn)}toMultihash(){return We.digest(Jn(this))}toCID(){return X.createV1(114,this.toMultihash())}toString(){return re.encode(this.toMultihash().bytes).substring(1)}equals(e){return e==null||!(e.raw instanceof Uint8Array)?!1:ce(this.raw,e.raw)}verify(e,t){return _c(this.raw,t,e)}};function fs(r){return r=ls(r,Wn),new Yn(r)}function ls(r,e){if(r=Uint8Array.from(r??[]),r.length!==e)throw new Ee(`Key must be a Uint8Array of length ${e}, got ${r.length}`);return r}function Qe(r=0){return new Uint8Array(r)}var E0=Math.pow(2,7),B0=Math.pow(2,14),A0=Math.pow(2,21),hs=Math.pow(2,28),ds=Math.pow(2,35),ps=Math.pow(2,42),ms=Math.pow(2,49),Y=128,Be=127;function Ve(r){if(r<E0)return 1;if(r<B0)return 2;if(r<A0)return 3;if(r<hs)return 4;if(r<ds)return 5;if(r<ps)return 6;if(r<ms)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function gs(r,e,t=0){switch(Ve(r)){case 8:e[t++]=r&255|Y,r/=128;case 7:e[t++]=r&255|Y,r/=128;case 6:e[t++]=r&255|Y,r/=128;case 5:e[t++]=r&255|Y,r/=128;case 4:e[t++]=r&255|Y,r>>>=7;case 3:e[t++]=r&255|Y,r>>>=7;case 2:e[t++]=r&255|Y,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function S0(r,e,t=0){switch(Ve(r)){case 8:e.set(t++,r&255|Y),r/=128;case 7:e.set(t++,r&255|Y),r/=128;case 6:e.set(t++,r&255|Y),r/=128;case 5:e.set(t++,r&255|Y),r/=128;case 4:e.set(t++,r&255|Y),r>>>=7;case 3:e.set(t++,r&255|Y),r>>>=7;case 2:e.set(t++,r&255|Y),r>>>=7;case 1:{e.set(t++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return e}function ys(r,e){let t=r[e],n=0;if(n+=t&Be,t<Y||(t=r[e+1],n+=(t&Be)<<7,t<Y)||(t=r[e+2],n+=(t&Be)<<14,t<Y)||(t=r[e+3],n+=(t&Be)<<21,t<Y)||(t=r[e+4],n+=(t&Be)*hs,t<Y)||(t=r[e+5],n+=(t&Be)*ds,t<Y)||(t=r[e+6],n+=(t&Be)*ps,t<Y)||(t=r[e+7],n+=(t&Be)*ms,t<Y))return n;throw new RangeError("Could not decode varint")}function I0(r,e){let t=r.get(e),n=0;if(n+=t&Be,t<Y||(t=r.get(e+1),n+=(t&Be)<<7,t<Y)||(t=r.get(e+2),n+=(t&Be)<<14,t<Y)||(t=r.get(e+3),n+=(t&Be)<<21,t<Y)||(t=r.get(e+4),n+=(t&Be)*hs,t<Y)||(t=r.get(e+5),n+=(t&Be)*ds,t<Y)||(t=r.get(e+6),n+=(t&Be)*ps,t<Y)||(t=r.get(e+7),n+=(t&Be)*ms,t<Y))return n;throw new RangeError("Could not decode varint")}function Ar(r,e,t=0){return e==null&&(e=Qe(Ve(r))),e instanceof Uint8Array?gs(r,e,t):S0(r,e,t)}function tr(r,e=0){return r instanceof Uint8Array?ys(r,e):I0(r,e)}var ws=new Float32Array([-0]),Mt=new Uint8Array(ws.buffer);function Vc(r,e,t){ws[0]=r,e[t]=Mt[0],e[t+1]=Mt[1],e[t+2]=Mt[2],e[t+3]=Mt[3]}function Fc(r,e){return Mt[0]=r[e],Mt[1]=r[e+1],Mt[2]=r[e+2],Mt[3]=r[e+3],ws[0]}var xs=new Float64Array([-0]),Ae=new Uint8Array(xs.buffer);function Dc(r,e,t){xs[0]=r,e[t]=Ae[0],e[t+1]=Ae[1],e[t+2]=Ae[2],e[t+3]=Ae[3],e[t+4]=Ae[4],e[t+5]=Ae[5],e[t+6]=Ae[6],e[t+7]=Ae[7]}function Oc(r,e){return Ae[0]=r[e],Ae[1]=r[e+1],Ae[2]=r[e+2],Ae[3]=r[e+3],Ae[4]=r[e+4],Ae[5]=r[e+5],Ae[6]=r[e+6],Ae[7]=r[e+7],xs[0]}var T0=BigInt(Number.MAX_SAFE_INTEGER),k0=BigInt(Number.MIN_SAFE_INTEGER),De=class r{lo;hi;constructor(e,t){this.lo=e|0,this.hi=t|0}toNumber(e=!1){if(!e&&this.hi>>>31>0){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(t+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(e=!1){if(e)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?t===0?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return rr;if(e<T0&&e>k0)return this.fromNumber(Number(e));let t=e<0n;t&&(e=-e);let n=e>>32n,o=e-(n<<32n);return t&&(n=~n|0n,o=~o|0n,++o>Mc&&(o=0n,++n>Mc&&(n=0n))),new r(Number(o),Number(n))}static fromNumber(e){if(e===0)return rr;let t=e<0;t&&(e=-e);let n=e>>>0,o=(e-n)/4294967296>>>0;return t&&(o=~o>>>0,n=~n>>>0,++n>4294967295&&(n=0,++o>4294967295&&(o=0))),new r(n,o)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):rr}},rr=new De(0,0);rr.toBigInt=function(){return 0n};rr.zzEncode=rr.zzDecode=function(){return this};rr.length=function(){return 1};var Mc=4294967296n;function $c(r){let e=0,t=0;for(let n=0;n<r.length;++n)t=r.charCodeAt(n),t<128?e+=1:t<2048?e+=2:(t&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,e+=4):e+=3;return e}function Hc(r,e,t){if(t-e<1)return"";let o,i=[],s=0,a;for(;e<t;)a=r[e++],a<128?i[s++]=a:a>191&&a<224?i[s++]=(a&31)<<6|r[e++]&63:a>239&&a<365?(a=((a&7)<<18|(r[e++]&63)<<12|(r[e++]&63)<<6|r[e++]&63)-65536,i[s++]=55296+(a>>10),i[s++]=56320+(a&1023)):i[s++]=(a&15)<<12|(r[e++]&63)<<6|r[e++]&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 bs(r,e,t){let n=t,o,i;for(let s=0;s<r.length;++s)o=r.charCodeAt(s),o<128?e[t++]=o:o<2048?(e[t++]=o>>6|192,e[t++]=o&63|128):(o&64512)===55296&&((i=r.charCodeAt(s+1))&64512)===56320?(o=65536+((o&1023)<<10)+(i&1023),++s,e[t++]=o>>18|240,e[t++]=o>>12&63|128,e[t++]=o>>6&63|128,e[t++]=o&63|128):(e[t++]=o>>12|224,e[t++]=o>>6&63|128,e[t++]=o&63|128);return t-n}function et(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Xn(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var vs=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,et(this,10);return e}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw et(this,4);return Xn(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw et(this,4);return Xn(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw et(this,4);let e=Fc(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw et(this,4);let e=Oc(this.buf,this.pos);return this.pos+=8,e}bytes(){let e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw et(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return Hc(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw et(this,e);this.pos+=e}else do if(this.pos>=this.len)throw et(this);while(this.buf[this.pos++]&128);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new De(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw et(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,e}if(this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw et(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw et(this,8);let e=Xn(this.buf,this.pos+=4),t=Xn(this.buf,this.pos+=4);return new De(e,t)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let e=ys(this.buf,this.pos);return this.pos+=Ve(e),e}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 Es(r){return new vs(r instanceof Uint8Array?r:r.subarray())}function Sr(r,e,t){let n=Es(r);return e.decode(n,void 0,t)}var Bs={};ke(Bs,{base10:()=>C0});var C0=Ut({prefix:"9",name:"base10",alphabet:"0123456789"});var As={};ke(As,{base16:()=>N0,base16upper:()=>U0});var N0=se({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),U0=se({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Ss={};ke(Ss,{base2:()=>R0});var R0=se({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Is={};ke(Is,{base256emoji:()=>F0});var qc=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}"),_0=qc.reduce((r,e,t)=>(r[t]=e,r),[]),L0=qc.reduce((r,e,t)=>{let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);return r[n]=t,r},[]);function P0(r){return r.reduce((e,t)=>(e+=_0[t],e),"")}function V0(r){let e=[];for(let t of r){let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);let o=L0[n];if(o==null)throw new Error(`Non-base256emoji character: ${t}`);e.push(o)}return new Uint8Array(e)}var F0=pr({prefix:"\u{1F680}",name:"base256emoji",encode:P0,decode:V0});var Ts={};ke(Ts,{base8:()=>D0});var D0=se({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ks={};ke(ks,{identity:()=>O0});var O0=pr({prefix:"\0",name:"identity",encode:r=>Xa(r),decode:r=>Ja(r)});var Zy=new TextEncoder,Wy=new TextDecoder;var Us={};ke(Us,{sha256:()=>tn,sha512:()=>H0});function Ns({name:r,code:e,encode:t}){return new Cs(r,e,t)}var Cs=class{name;code;encode;constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?Ze(this.code,t):t.then(n=>Ze(this.code,n))}else throw Error("Unknown type, must be binary type")}};function jc(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var tn=Ns({name:"sha2-256",code:18,encode:jc("SHA-256")}),H0=Ns({name:"sha2-512",code:19,encode:jc("SHA-512")});var rn={...ks,...Ss,...Ts,...Bs,...As,...Oi,...qi,...Mi,...Hi,...Is},aw={...Us,...Gi};function Zc(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Gc=Zc("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Rs=Zc("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=Qe(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),K0={utf8:Gc,"utf-8":Gc,hex:rn.base16,latin1:Rs,ascii:Rs,binary:Rs,...rn},Qn=K0;function Z(r,e="utf8"){let t=Qn[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function _s(r){let e=r??8192,t=e>>>1,n,o=e;return function(s){if(s<1||s>t)return Qe(s);o+s>e&&(n=Qe(e),o=0);let a=n.subarray(o,o+=s);return o&7&&(o=(o|7)+1),a}}var nr=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function Ls(){}var Vs=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},q0=_s();function z0(r){return globalThis.Buffer!=null?Qe(r):q0(r)}var on=class{len;head;tail;states;constructor(){this.len=0,this.head=new nr(Ls,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new nr(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new Fs((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this}int32(e){return e<0?this._push(eo,10,De.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=De.fromBigInt(e);return this._push(eo,t.length(),t)}uint64Number(e){return this._push(gs,Ve(e),e)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let t=De.fromBigInt(e).zzEncode();return this._push(eo,t.length(),t)}sint64Number(e){let t=De.fromNumber(e).zzEncode();return this._push(eo,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(Ps,1,e?1:0)}fixed32(e){return this._push(nn,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=De.fromBigInt(e);return this._push(nn,4,t.lo)._push(nn,4,t.hi)}fixed64Number(e){let t=De.fromNumber(e);return this._push(nn,4,t.lo)._push(nn,4,t.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(Vc,4,e)}double(e){return this._push(Dc,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(Ps,1,0):this.uint32(t)._push(G0,t,e)}string(e){let t=$c(e);return t!==0?this.uint32(t)._push(bs,t,e):this._push(Ps,1,0)}fork(){return this.states=new Vs(this),this.head=this.tail=new nr(Ls,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 nr(Ls,0,0),this.len=0),this}ldelim(){let e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=e.next,this.tail=t,this.len+=n),this}finish(){let e=this.head.next,t=z0(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function Ps(r,e,t){e[t]=r&255}function j0(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var Fs=class extends nr{next;constructor(e,t){super(j0,e,t),this.next=void 0}};function eo(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function nn(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function G0(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(on.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(Z0,e,r),this},on.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(W0,e,r),this});function Z0(r,e,t){e.set(r,t)}function W0(r,e,t){r.length<40?bs(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(Z(r),t)}function Ds(){return new on}function Ir(r,e){let t=Ds();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var Tr;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(Tr||(Tr={}));function to(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function sn(r){function e(o){if(r[o.toString()]==null)throw new Error("Invalid enum value");return r[o]}let t=function(i,s){let a=e(i);s.int32(a)},n=function(i){let s=i.int32();return e(s)};return to("enum",Tr.VARINT,t,n)}function kr(r,e){return to("message",Tr.LENGTH_DELIMITED,r,e)}var he;(function(r){r.RSA="RSA",r.Ed25519="Ed25519",r.secp256k1="secp256k1"})(he||(he={}));var Os;(function(r){r[r.RSA=0]="RSA",r[r.Ed25519=1]="Ed25519",r[r.secp256k1=2]="secp256k1"})(Os||(Os={}));(function(r){r.codec=()=>sn(Os)})(he||(he={}));var ct;(function(r){let e;r.codec=()=>(e==null&&(e=kr((t,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),he.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),o.lengthDelimited!==!1&&n.ldelim()},(t,n,o={})=>{let i={},s=n==null?t.len:t.pos+n;for(;t.pos<s;){let a=t.uint32();switch(a>>>3){case 1:{i.Type=he.codec().decode(t);break}case 2:{i.Data=t.bytes();break}default:{t.skipType(a&7);break}}}return i})),e),r.encode=t=>Ir(t,r.codec()),r.decode=(t,n)=>Sr(t,r.codec(),n)})(ct||(ct={}));var Ms;(function(r){let e;r.codec=()=>(e==null&&(e=kr((t,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),he.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),o.lengthDelimited!==!1&&n.ldelim()},(t,n,o={})=>{let i={},s=n==null?t.len:t.pos+n;for(;t.pos<s;){let a=t.uint32();switch(a>>>3){case 1:{i.Type=he.codec().decode(t);break}case 2:{i.Data=t.bytes();break}default:{t.skipType(a&7);break}}}return i})),e),r.encode=t=>Ir(t,r.codec()),r.decode=(t,n)=>Sr(t,r.codec(),n)})(Ms||(Ms={}));var gn={};ke(gn,{MAX_RSA_KEY_SIZE:()=>Go,generateRSAKeyPair:()=>zu,jwkToJWKKeyPair:()=>ju,jwkToPkcs1:()=>fp,jwkToPkix:()=>Ws,jwkToRSAPrivateKey:()=>qu,pkcs1ToJwk:()=>$u,pkcs1ToRSAPrivateKey:()=>Ku,pkixToJwk:()=>Hu,pkixToRSAPublicKey:()=>Ys});var Y0=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),$t=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ht=new Uint32Array(64),$s=class extends Er{constructor(){super(64,32,8,!1),this.A=$t[0]|0,this.B=$t[1]|0,this.C=$t[2]|0,this.D=$t[3]|0,this.E=$t[4]|0,this.F=$t[5]|0,this.G=$t[6]|0,this.H=$t[7]|0}get(){let{A:e,B:t,C:n,D:o,E:i,F:s,G:a,H:c}=this;return[e,t,n,o,i,s,a,c]}set(e,t,n,o,i,s,a,c){this.A=e|0,this.B=t|0,this.C=n|0,this.D=o|0,this.E=i|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,t){for(let l=0;l<16;l++,t+=4)Ht[l]=e.getUint32(t,!1);for(let l=16;l<64;l++){let h=Ht[l-15],b=Ht[l-2],I=Ye(h,7)^Ye(h,18)^h>>>3,w=Ye(b,17)^Ye(b,19)^b>>>10;Ht[l]=w+Ht[l-7]+I+Ht[l-16]|0}let{A:n,B:o,C:i,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let h=Ye(a,6)^Ye(a,11)^Ye(a,25),b=u+h+yc(a,c,f)+Y0[l]+Ht[l]|0,w=(Ye(n,2)^Ye(n,13)^Ye(n,22))+wc(n,o,i)|0;u=f,f=c,c=a,a=s+b|0,s=i,i=o,o=n,n=b+w|0}n=n+this.A|0,o=o+this.B|0,i=i+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,u=u+this.H|0,this.set(n,o,i,s,a,c,f,u)}roundClean(){Ht.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Cr=Mn(()=>new $s);var j=_n(Yc());function or(r,e){let t=0;if(r.length===1)return r[0];for(let n=r.length-1;n>=0;n--)t+=r[r.length-1-n]*Math.pow(2,e*n);return t}function Kt(r,e,t=-1){let n=t,o=r,i=0,s=Math.pow(2,e);for(let a=1;a<8;a++){if(r<s){let c;if(n<0)c=new ArrayBuffer(a),i=a;else{if(n<a)return new ArrayBuffer(0);c=new ArrayBuffer(n),i=n}let f=new Uint8Array(c);for(let u=a-1;u>=0;u--){let l=Math.pow(2,u*e);f[i-u-1]=Math.floor(o/l),o-=f[i-u-1]*l}return c}s*=Math.pow(2,e)}return new ArrayBuffer(0)}function oo(...r){let e=0,t=0;for(let i of r)e+=i.length;let n=new ArrayBuffer(e),o=new Uint8Array(n);for(let i of r)o.set(i,t),t+=i.length;return o}function Ks(){let r=new Uint8Array(this.valueHex);if(this.valueHex.byteLength>=2){let a=r[0]===255&&r[1]&128,c=r[0]===0&&(r[1]&128)===0;(a||c)&&this.warnings.push("Needlessly long format")}let e=new ArrayBuffer(this.valueHex.byteLength),t=new Uint8Array(e);for(let a=0;a<this.valueHex.byteLength;a++)t[a]=0;t[0]=r[0]&128;let n=or(t,8),o=new ArrayBuffer(this.valueHex.byteLength),i=new Uint8Array(o);for(let a=0;a<this.valueHex.byteLength;a++)i[a]=r[a];return i[0]&=127,or(i,8)-n}function Jc(r){let e=r<0?r*-1:r,t=128;for(let n=1;n<8;n++){if(e<=t){if(r<0){let s=t-e,a=Kt(s,8,n),c=new Uint8Array(a);return c[0]|=128,a}let o=Kt(e,8,n),i=new Uint8Array(o);if(i[0]&128){let s=o.slice(0),a=new Uint8Array(s);o=new ArrayBuffer(o.byteLength+1),i=new Uint8Array(o);for(let c=0;c<s.byteLength;c++)i[c+1]=a[c];i[0]=0}return o}t*=Math.pow(2,8)}return new ArrayBuffer(0)}function Xc(r,e){if(r.byteLength!==e.byteLength)return!1;let t=new Uint8Array(r),n=new Uint8Array(e);for(let o=0;o<t.length;o++)if(t[o]!==n[o])return!1;return!0}function Fe(r,e){let t=r.toString(10);if(e<t.length)return"";let n=e-t.length,o=new Array(n);for(let s=0;s<n;s++)o[s]="0";return o.join("").concat(t)}var Hw=Math.log(2);function io(){if(typeof BigInt>"u")throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function qs(r){let e=0,t=0;for(let o=0;o<r.length;o++){let i=r[o];e+=i.byteLength}let n=new Uint8Array(e);for(let o=0;o<r.length;o++){let i=r[o];n.set(new Uint8Array(i),t),t+=i.byteLength}return n.buffer}function St(r,e,t,n){return e instanceof Uint8Array?e.byteLength?t<0?(r.error="Wrong parameter: inputOffset less than zero",!1):n<0?(r.error="Wrong parameter: inputLength less than zero",!1):e.byteLength-t-n<0?(r.error="End of input reached before message was fully decoded (inconsistent offset and length values)",!1):!0:(r.error="Wrong parameter: inputBuffer has zero length",!1):(r.error="Wrong parameter: inputBuffer must be 'Uint8Array'",!1)}var cn=class{constructor(){this.items=[]}write(e){this.items.push(e)}final(){return qs(this.items)}},an=[new Uint8Array([1])],Qc="0123456789";var Lr="",tt=new ArrayBuffer(0),zs=new Uint8Array(0),un="EndOfContent",tu="OCTET STRING",ru="BIT STRING";function It(r){var e;return e=class extends r{constructor(...n){var o;super(...n);let i=n[0]||{};this.isHexOnly=(o=i.isHexOnly)!==null&&o!==void 0?o:!1,this.valueHexView=i.valueHex?j.BufferSourceConverter.toUint8Array(i.valueHex):zs}get valueHex(){return this.valueHexView.slice().buffer}set valueHex(n){this.valueHexView=new Uint8Array(n)}fromBER(n,o,i){let s=n instanceof ArrayBuffer?new Uint8Array(n):n;if(!St(this,s,o,i))return-1;let a=o+i;return this.valueHexView=s.subarray(o,a),this.valueHexView.length?(this.blockLength=i,a):(this.warnings.push("Zero buffer length"),o)}toBER(n=!1){return this.isHexOnly?n?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.byteLength===this.valueHexView.buffer.byteLength?this.valueHexView.buffer:this.valueHexView.slice().buffer:(this.error="Flag 'isHexOnly' is not set, abort",tt)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:j.Convert.ToHex(this.valueHexView)}}},e.NAME="hexBlock",e}var Et=class{constructor({blockLength:e=0,error:t=Lr,warnings:n=[],valueBeforeDecode:o=zs}={}){this.blockLength=e,this.error=t,this.warnings=n,this.valueBeforeDecodeView=j.BufferSourceConverter.toUint8Array(o)}static blockName(){return this.NAME}get valueBeforeDecode(){return this.valueBeforeDecodeView.slice().buffer}set valueBeforeDecode(e){this.valueBeforeDecodeView=new Uint8Array(e)}toJSON(){return{blockName:this.constructor.NAME,blockLength:this.blockLength,error:this.error,warnings:this.warnings,valueBeforeDecode:j.Convert.ToHex(this.valueBeforeDecodeView)}}};Et.NAME="baseBlock";var Se=class extends Et{fromBER(e,t,n){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}toBER(e,t){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}};Se.NAME="valueBlock";var so=class extends It(Et){constructor({idBlock:e={}}={}){var t,n,o,i;super(),e?(this.isHexOnly=(t=e.isHexOnly)!==null&&t!==void 0?t:!1,this.valueHexView=e.valueHex?j.BufferSourceConverter.toUint8Array(e.valueHex):zs,this.tagClass=(n=e.tagClass)!==null&&n!==void 0?n:-1,this.tagNumber=(o=e.tagNumber)!==null&&o!==void 0?o:-1,this.isConstructed=(i=e.isConstructed)!==null&&i!==void 0?i:!1):(this.tagClass=-1,this.tagNumber=-1,this.isConstructed=!1)}toBER(e=!1){let t=0;switch(this.tagClass){case 1:t|=0;break;case 2:t|=64;break;case 3:t|=128;break;case 4:t|=192;break;default:return this.error="Unknown tag class",tt}if(this.isConstructed&&(t|=32),this.tagNumber<31&&!this.isHexOnly){let o=new Uint8Array(1);if(!e){let i=this.tagNumber;i&=31,t|=i,o[0]=t}return o.buffer}if(!this.isHexOnly){let o=Kt(this.tagNumber,7),i=new Uint8Array(o),s=o.byteLength,a=new Uint8Array(s+1);if(a[0]=t|31,!e){for(let c=0;c<s-1;c++)a[c+1]=i[c]|128;a[s]=i[s-1]}return a.buffer}let n=new Uint8Array(this.valueHexView.byteLength+1);if(n[0]=t|31,!e){let o=this.valueHexView;for(let i=0;i<o.length-1;i++)n[i+1]=o[i]|128;n[this.valueHexView.byteLength]=o[o.length-1]}return n.buffer}fromBER(e,t,n){let o=j.BufferSourceConverter.toUint8Array(e);if(!St(this,o,t,n))return-1;let i=o.subarray(t,t+n);if(i.length===0)return this.error="Zero buffer length",-1;switch(i[0]&192){case 0:this.tagClass=1;break;case 64:this.tagClass=2;break;case 128:this.tagClass=3;break;case 192:this.tagClass=4;break;default:return this.error="Unknown tag class",-1}this.isConstructed=(i[0]&32)===32,this.isHexOnly=!1;let a=i[0]&31;if(a!==31)this.tagNumber=a,this.blockLength=1;else{let c=1,f=this.valueHexView=new Uint8Array(255),u=255;for(;i[c]&128;){if(f[c-1]=i[c]&127,c++,c>=i.length)return this.error="End of input reached before message was fully decoded",-1;if(c===u){u+=255;let h=new Uint8Array(u);for(let b=0;b<f.length;b++)h[b]=f[b];f=this.valueHexView=new Uint8Array(u)}}this.blockLength=c+1,f[c-1]=i[c]&127;let l=new Uint8Array(c);for(let h=0;h<c;h++)l[h]=f[h];f=this.valueHexView=new Uint8Array(c),f.set(l),this.blockLength<=9?this.tagNumber=or(f,7):(this.isHexOnly=!0,this.warnings.push("Tag too long, represented as hex-coded"))}if(this.tagClass===1&&this.isConstructed)switch(this.tagNumber){case 1:case 2:case 5:case 6:case 9:case 13:case 14:case 23:case 24:case 31:case 32:case 33:case 34:return this.error="Constructed encoding used for primitive type",-1}return t+this.blockLength}toJSON(){return{...super.toJSON(),tagClass:this.tagClass,tagNumber:this.tagNumber,isConstructed:this.isConstructed}}};so.NAME="identificationBlock";var ao=class extends Et{constructor({lenBlock:e={}}={}){var t,n,o;super(),this.isIndefiniteForm=(t=e.isIndefiniteForm)!==null&&t!==void 0?t:!1,this.longFormUsed=(n=e.longFormUsed)!==null&&n!==void 0?n:!1,this.length=(o=e.length)!==null&&o!==void 0?o:0}fromBER(e,t,n){let o=j.BufferSourceConverter.toUint8Array(e);if(!St(this,o,t,n))return-1;let i=o.subarray(t,t+n);if(i.length===0)return this.error="Zero buffer length",-1;if(i[0]===255)return this.error="Length block 0xFF is reserved by standard",-1;if(this.isIndefiniteForm=i[0]===128,this.isIndefiniteForm)return this.blockLength=1,t+this.blockLength;if(this.longFormUsed=!!(i[0]&128),this.longFormUsed===!1)return this.length=i[0],this.blockLength=1,t+this.blockLength;let s=i[0]&127;if(s>8)return this.error="Too big integer",-1;if(s+1>i.length)return this.error="End of input reached before message was fully decoded",-1;let a=t+1,c=o.subarray(a,a+s);return c[s-1]===0&&this.warnings.push("Needlessly long encoded length"),this.length=or(c,8),this.longFormUsed&&this.length<=127&&this.warnings.push("Unnecessary usage of long length form"),this.blockLength=s+1,t+this.blockLength}toBER(e=!1){let t,n;if(this.length>127&&(this.longFormUsed=!0),this.isIndefiniteForm)return t=new ArrayBuffer(1),e===!1&&(n=new Uint8Array(t),n[0]=128),t;if(this.longFormUsed){let o=Kt(this.length,8);if(o.byteLength>127)return this.error="Too big length",tt;if(t=new ArrayBuffer(o.byteLength+1),e)return t;let i=new Uint8Array(o);n=new Uint8Array(t),n[0]=o.byteLength|128;for(let s=0;s<o.byteLength;s++)n[s+1]=i[s];return t}return t=new ArrayBuffer(1),e===!1&&(n=new Uint8Array(t),n[0]=this.length),t}toJSON(){return{...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,longFormUsed:this.longFormUsed,length:this.length}}};ao.NAME="lengthBlock";var _={},xe=class extends Et{constructor({name:e=Lr,optional:t=!1,primitiveSchema:n,...o}={},i){super(o),this.name=e,this.optional=t,n&&(this.primitiveSchema=n),this.idBlock=new so(o),this.lenBlock=new ao(o),this.valueBlock=i?new i(o):new Se(o)}fromBER(e,t,n){let o=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return o===-1?(this.error=this.valueBlock.error,o):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),o)}toBER(e,t){let n=t||new cn;t||nu(this);let o=this.idBlock.toBER(e);if(n.write(o),this.lenBlock.isIndefiniteForm)n.write(new Uint8Array([128]).buffer),this.valueBlock.toBER(e,n),n.write(new ArrayBuffer(2));else{let i=this.valueBlock.toBER(e);this.lenBlock.length=i.byteLength;let s=this.lenBlock.toBER(e);n.write(s),n.write(i)}return t?tt:n.final()}toJSON(){let e={...super.toJSON(),idBlock:this.idBlock.toJSON(),lenBlock:this.lenBlock.toJSON(),valueBlock:this.valueBlock.toJSON(),name:this.name,optional:this.optional};return this.primitiveSchema&&(e.primitiveSchema=this.primitiveSchema.toJSON()),e}toString(e="ascii"){return e==="ascii"?this.onAsciiEncoding():j.Convert.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${j.Convert.ToHex(this.valueBlock.valueBeforeDecodeView)}`}isEqual(e){if(this===e)return!0;if(!(e instanceof this.constructor))return!1;let t=this.toBER(),n=e.toBER();return Xc(t,n)}};xe.NAME="BaseBlock";function nu(r){if(r instanceof _.Constructed)for(let e of r.valueBlock.value)nu(e)&&(r.lenBlock.isIndefiniteForm=!0);return!!r.lenBlock.isIndefiniteForm}var co=class extends xe{constructor({value:e=Lr,...t}={},n){super(t,n),e&&this.fromString(e)}getValue(){return this.valueBlock.value}setValue(e){this.valueBlock.value=e}fromBER(e,t,n){let o=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return o===-1?(this.error=this.valueBlock.error,o):(this.fromBuffer(this.valueBlock.valueHexView),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),o)}onAsciiEncoding(){return`${this.constructor.NAME} : '${this.valueBlock.value}'`}};co.NAME="BaseStringBlock";var uo=class extends It(Se){constructor({isHexOnly:e=!0,...t}={}){super(t),this.isHexOnly=e}};uo.NAME="PrimitiveValueBlock";var ou,lo=class extends xe{constructor(e={}){super(e,uo),this.idBlock.isConstructed=!1}};ou=lo;_.Primitive=ou;lo.NAME="PRIMITIVE";function ip(r,e){if(r instanceof e)return r;let t=new e;return t.idBlock=r.idBlock,t.lenBlock=r.lenBlock,t.warnings=r.warnings,t.valueBeforeDecodeView=r.valueBeforeDecodeView,t}function zo(r,e=0,t=r.length){let n=e,o=new xe({},Se),i=new Et;if(!St(i,r,e,t))return o.error=i.error,{offset:-1,result:o};if(!r.subarray(e,e+t).length)return o.error="Zero buffer length",{offset:-1,result:o};let a=o.idBlock.fromBER(r,e,t);if(o.idBlock.warnings.length&&o.warnings.concat(o.idBlock.warnings),a===-1)return o.error=o.idBlock.error,{offset:-1,result:o};if(e=a,t-=o.idBlock.blockLength,a=o.lenBlock.fromBER(r,e,t),o.lenBlock.warnings.length&&o.warnings.concat(o.lenBlock.warnings),a===-1)return o.error=o.lenBlock.error,{offset:-1,result:o};if(e=a,t-=o.lenBlock.blockLength,!o.idBlock.isConstructed&&o.lenBlock.isIndefiniteForm)return o.error="Indefinite length form used for primitive encoding form",{offset:-1,result:o};let c=xe;switch(o.idBlock.tagClass){case 1:if(o.idBlock.tagNumber>=37&&o.idBlock.isHexOnly===!1)return o.error="UNIVERSAL 37 and upper tags are reserved by ASN.1 standard",{offset:-1,result:o};switch(o.idBlock.tagNumber){case 0:if(o.idBlock.isConstructed&&o.lenBlock.length>0)return o.error="Type [UNIVERSAL 0] is reserved",{offset:-1,result:o};c=_.EndOfContent;break;case 1:c=_.Boolean;break;case 2:c=_.Integer;break;case 3:c=_.BitString;break;case 4:c=_.OctetString;break;case 5:c=_.Null;break;case 6:c=_.ObjectIdentifier;break;case 10:c=_.Enumerated;break;case 12:c=_.Utf8String;break;case 13:c=_.RelativeObjectIdentifier;break;case 14:c=_.TIME;break;case 15:return o.error="[UNIVERSAL 15] is reserved by ASN.1 standard",{offset:-1,result:o};case 16:c=_.Sequence;break;case 17:c=_.Set;break;case 18:c=_.NumericString;break;case 19:c=_.PrintableString;break;case 20:c=_.TeletexString;break;case 21:c=_.VideotexString;break;case 22:c=_.IA5String;break;case 23:c=_.UTCTime;break;case 24:c=_.GeneralizedTime;break;case 25:c=_.GraphicString;break;case 26:c=_.VisibleString;break;case 27:c=_.GeneralString;break;case 28:c=_.UniversalString;break;case 29:c=_.CharacterString;break;case 30:c=_.BmpString;break;case 31:c=_.DATE;break;case 32:c=_.TimeOfDay;break;case 33:c=_.DateTime;break;case 34:c=_.Duration;break;default:{let f=o.idBlock.isConstructed?new _.Constructed:new _.Primitive;f.idBlock=o.idBlock,f.lenBlock=o.lenBlock,f.warnings=o.warnings,o=f}}break;case 2:case 3:case 4:default:c=o.idBlock.isConstructed?_.Constructed:_.Primitive}return o=ip(o,c),a=o.fromBER(r,e,o.lenBlock.isIndefiniteForm?t:o.lenBlock.length),o.valueBeforeDecodeView=r.subarray(n,n+o.blockLength),{offset:a,result:o}}function js(r){if(!r.byteLength){let e=new xe({},Se);return e.error="Input buffer has zero length",{offset:-1,result:e}}return zo(j.BufferSourceConverter.toUint8Array(r).slice(),0,r.byteLength)}function sp(r,e){return r?1:e}var ut=class extends Se{constructor({value:e=[],isIndefiniteForm:t=!1,...n}={}){super(n),this.value=e,this.isIndefiniteForm=t}fromBER(e,t,n){let o=j.BufferSourceConverter.toUint8Array(e);if(!St(this,o,t,n))return-1;if(this.valueBeforeDecodeView=o.subarray(t,t+n),this.valueBeforeDecodeView.length===0)return this.warnings.push("Zero buffer length"),t;let i=t;for(;sp(this.isIndefiniteForm,n)>0;){let s=zo(o,i,n);if(s.offset===-1)return this.error=s.result.error,this.warnings.concat(s.result.warnings),-1;if(i=s.offset,this.blockLength+=s.result.blockLength,n-=s.result.blockLength,this.value.push(s.result),this.isIndefiniteForm&&s.result.constructor.NAME===un)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===un?this.value.pop():this.warnings.push("No EndOfContent block encoded")),i}toBER(e,t){let n=t||new cn;for(let o=0;o<this.value.length;o++)this.value[o].toBER(e,n);return t?tt:n.final()}toJSON(){let e={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(let t of this.value)e.value.push(t.toJSON());return e}};ut.NAME="ConstructedValueBlock";var iu,qt=class extends xe{constructor(e={}){super(e,ut),this.idBlock.isConstructed=!0}fromBER(e,t,n){this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;let o=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return o===-1?(this.error=this.valueBlock.error,o):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),o)}onAsciiEncoding(){let e=[];for(let n of this.valueBlock.value)e.push(n.toString("ascii").split(`
4
4
  `).map(o=>` ${o}`).join(`
5
- `));let e=this.idBlock.tagClass===3?`[${this.idBlock.tagNumber}]`:this.constructor.NAME;return t.length?`${e} :
6
- ${t.join(`
7
- `)}`:`${e} :`}};nu=qe;_.Constructed=nu;qe.NAME="CONSTRUCTED";var fo=class extends At{fromBER(t,e,n){return e}toBER(t){return ee}};fo.override="EndOfContentValueBlock";var ou,ho=class extends wt{constructor(t={}){super(t,fo),this.idBlock.tagClass=1,this.idBlock.tagNumber=0}};ou=ho;_.EndOfContent=ou;ho.NAME=un;var iu,Ur=class extends wt{constructor(t={}){super(t,At),this.idBlock.tagClass=1,this.idBlock.tagNumber=5}fromBER(t,e,n){return this.lenBlock.length>0&&this.warnings.push("Non-zero length of value block for Null type"),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.blockLength+=n,e+n>t.byteLength?(this.error="End of input reached before message was fully decoded (inconsistent offset and length values)",-1):e+n}toBER(t,e){let n=new ArrayBuffer(2);if(!t){let o=new Uint8Array(n);o[0]=5,o[1]=0}return e&&e.write(n),n}onAsciiEncoding(){return`${this.constructor.NAME}`}};iu=Ur;_.Null=iu;Ur.NAME="NULL";var po=class extends Ie(At){constructor({value:t,...e}={}){super(e),e.valueHex?this.valueHexView=j.BufferSourceConverter.toUint8Array(e.valueHex):this.valueHexView=new Uint8Array(1),t&&(this.value=t)}get value(){for(let t of this.valueHexView)if(t>0)return!0;return!1}set value(t){this.valueHexView[0]=t?255:0}fromBER(t,e,n){let o=j.BufferSourceConverter.toUint8Array(t);return Se(this,o,e,n)?(this.valueHexView=o.subarray(e,e+n),n>1&&this.warnings.push("Boolean value encoded in more then 1 octet"),this.isHexOnly=!0,$s.call(this),this.blockLength=n,e+n):-1}toBER(){return this.valueHexView.slice()}toJSON(){return{...super.toJSON(),value:this.value}}};po.NAME="BooleanValueBlock";var su,mo=class extends wt{constructor(t={}){super(t,po),this.idBlock.tagClass=1,this.idBlock.tagNumber=1}getValue(){return this.valueBlock.value}setValue(t){this.valueBlock.value=t}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.getValue}`}};su=mo;_.Boolean=su;mo.NAME="BOOLEAN";var go=class extends Ie(ue){constructor({isConstructed:t=!1,...e}={}){super(e),this.isConstructed=t}fromBER(t,e,n){let o=0;if(this.isConstructed){if(this.isHexOnly=!1,o=ue.prototype.fromBER.call(this,t,e,n),o===-1)return o;for(let i=0;i<this.value.length;i++){let s=this.value[i].constructor.NAME;if(s===un){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, OCTET STRING may consists of OCTET STRINGs only",-1}if(s!==Qc)return this.error="OCTET STRING may consists of OCTET STRINGs only",-1}}else this.isHexOnly=!0,o=super.fromBER(t,e,n),this.blockLength=n;return o}toBER(t,e){return this.isConstructed?ue.prototype.toBER.call(this,t,e):t?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),isConstructed:this.isConstructed}}};go.NAME="OctetStringValueBlock";var au,yo=class r extends wt{constructor({idBlock:t={},lenBlock:e={},...n}={}){var o,i;(o=n.isConstructed)!==null&&o!==void 0||(n.isConstructed=!!(!((i=n.value)===null||i===void 0)&&i.length)),super({idBlock:{isConstructed:n.isConstructed,...t},lenBlock:{...e,isIndefiniteForm:!!n.isIndefiniteForm},...n},go),this.idBlock.tagClass=1,this.idBlock.tagNumber=4}fromBER(t,e,n){if(this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,n===0)return this.idBlock.error.length===0&&(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length===0&&(this.blockLength+=this.lenBlock.blockLength),e;if(!this.valueBlock.isConstructed){let i=(t instanceof ArrayBuffer?new Uint8Array(t):t).subarray(e,e+n);try{if(i.byteLength){let s=zo(i,0,i.byteLength);s.offset!==-1&&s.offset===n&&(this.valueBlock.value=[s.result])}}catch{}}return super.fromBER(t,e,n)}onAsciiEncoding(){return this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length?qe.prototype.onAsciiEncoding.call(this):`${this.constructor.NAME} : ${j.Convert.ToHex(this.valueBlock.valueHexView)}`}getValue(){if(!this.idBlock.isConstructed)return this.valueBlock.valueHexView.slice().buffer;let t=[];for(let e of this.valueBlock.value)e instanceof r&&t.push(e.valueBlock.valueHexView);return j.BufferSourceConverter.concat(t)}};au=yo;_.OctetString=au;yo.NAME=Qc;var wo=class extends Ie(ue){constructor({unusedBits:t=0,isConstructed:e=!1,...n}={}){super(n),this.unusedBits=t,this.isConstructed=e,this.blockLength=this.valueHexView.byteLength}fromBER(t,e,n){if(!n)return e;let o=-1;if(this.isConstructed){if(o=ue.prototype.fromBER.call(this,t,e,n),o===-1)return o;for(let a of this.value){let c=a.constructor.NAME;if(c===un){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, BIT STRING may consists of BIT STRINGs only",-1}if(c!==tu)return this.error="BIT STRING may consists of BIT STRINGs only",-1;let f=a.valueBlock;if(this.unusedBits>0&&f.unusedBits>0)return this.error='Using of "unused bits" inside constructive BIT STRING allowed for least one only',-1;this.unusedBits=f.unusedBits}return o}let i=j.BufferSourceConverter.toUint8Array(t);if(!Se(this,i,e,n))return-1;let s=i.subarray(e,e+n);if(this.unusedBits=s[0],this.unusedBits>7)return this.error="Unused bits for BitString must be in range 0-7",-1;if(!this.unusedBits){let a=s.subarray(1);try{if(a.byteLength){let c=zo(a,0,a.byteLength);c.offset!==-1&&c.offset===n-1&&(this.value=[c.result])}}catch{}}return this.valueHexView=s.subarray(1),this.blockLength=s.length,e+n}toBER(t,e){if(this.isConstructed)return ue.prototype.toBER.call(this,t,e);if(t)return new ArrayBuffer(this.valueHexView.byteLength+1);if(!this.valueHexView.byteLength)return ee;let n=new Uint8Array(this.valueHexView.length+1);return n[0]=this.unusedBits,n.set(this.valueHexView,1),n.buffer}toJSON(){return{...super.toJSON(),unusedBits:this.unusedBits,isConstructed:this.isConstructed}}};wo.NAME="BitStringValueBlock";var cu,Rr=class extends wt{constructor({idBlock:t={},lenBlock:e={},...n}={}){var o,i;(o=n.isConstructed)!==null&&o!==void 0||(n.isConstructed=!!(!((i=n.value)===null||i===void 0)&&i.length)),super({idBlock:{isConstructed:n.isConstructed,...t},lenBlock:{...e,isIndefiniteForm:!!n.isIndefiniteForm},...n},wo),this.idBlock.tagClass=1,this.idBlock.tagNumber=3}fromBER(t,e,n){return this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,super.fromBER(t,e,n)}onAsciiEncoding(){if(this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length)return qe.prototype.onAsciiEncoding.call(this);{let t=[],e=this.valueBlock.valueHexView;for(let o of e)t.push(o.toString(2).padStart(8,"0"));let n=t.join("");return`${this.constructor.NAME} : ${n.substring(0,n.length-this.valueBlock.unusedBits)}`}}};cu=Rr;_.BitString=cu;Rr.NAME=tu;var uu;function ap(r,t){let e=new Uint8Array([0]),n=new Uint8Array(r),o=new Uint8Array(t),i=n.slice(0),s=i.length-1,a=o.slice(0),c=a.length-1,f=0,u=c<s?s:c,l=0;for(let d=u;d>=0;d--,l++){switch(!0){case l<a.length:f=i[s-l]+a[c-l]+e[0];break;default:f=i[s-l]+e[0]}switch(e[0]=f/10,!0){case l>=i.length:i=oo(new Uint8Array([f%10]),i);break;default:i[s-l]=f%10}}return e[0]>0&&(i=oo(e,i)),i}function Xc(r){if(r>=an.length)for(let t=an.length;t<=r;t++){let e=new Uint8Array([0]),n=an[t-1].slice(0);for(let o=n.length-1;o>=0;o--){let i=new Uint8Array([(n[o]<<1)+e[0]]);e[0]=i[0]/10,n[o]=i[0]%10}e[0]>0&&(n=oo(e,n)),an.push(n)}return an[r]}function cp(r,t){let e=0,n=new Uint8Array(r),o=new Uint8Array(t),i=n.slice(0),s=i.length-1,a=o.slice(0),c=a.length-1,f,u=0;for(let l=c;l>=0;l--,u++)switch(f=i[s-u]-a[c-u]-e,!0){case f<0:e=1,i[s-u]=f+10;break;default:e=0,i[s-u]=f}if(e>0)for(let l=s-c+1;l>=0;l--,u++)if(f=i[s-u]-e,f<0)e=1,i[s-u]=f+10;else{e=0,i[s-u]=f;break}return i.slice()}var ln=class extends Ie(At){constructor({value:t,...e}={}){super(e),this._valueDec=0,e.valueHex&&this.setValueHex(),t!==void 0&&(this.valueDec=t)}setValueHex(){this.valueHexView.length>=4?(this.warnings.push("Too big Integer for decoding, hex only"),this.isHexOnly=!0,this._valueDec=0):(this.isHexOnly=!1,this.valueHexView.length>0&&(this._valueDec=$s.call(this)))}set valueDec(t){this._valueDec=t,this.isHexOnly=!1,this.valueHexView=new Uint8Array(Wc(t))}get valueDec(){return this._valueDec}fromDER(t,e,n,o=0){let i=this.fromBER(t,e,n);if(i===-1)return i;let s=this.valueHexView;return s[0]===0&&s[1]&128?this.valueHexView=s.subarray(1):o!==0&&s.length<o&&(o-s.length>1&&(o=s.length+1),this.valueHexView=s.subarray(o-s.length)),i}toDER(t=!1){let e=this.valueHexView;switch(!0){case(e[0]&128)!==0:{let n=new Uint8Array(this.valueHexView.length+1);n[0]=0,n.set(e,1),this.valueHexView=n}break;case(e[0]===0&&(e[1]&128)===0):this.valueHexView=this.valueHexView.subarray(1);break}return this.toBER(t)}fromBER(t,e,n){let o=super.fromBER(t,e,n);return o===-1||this.setValueHex(),o}toBER(t){return t?new ArrayBuffer(this.valueHexView.length):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}toString(){let t=this.valueHexView.length*8-1,e=new Uint8Array(this.valueHexView.length*8/3),n=0,o,i=this.valueHexView,s="",a=!1;for(let c=i.byteLength-1;c>=0;c--){o=i[c];for(let f=0;f<8;f++){if((o&1)===1)switch(n){case t:e=cp(Xc(n),e),s="-";break;default:e=ap(e,Xc(n))}n++,o>>=1}}for(let c=0;c<e.length;c++)e[c]&&(a=!0),a&&(s+=Jc.charAt(e[c]));return a===!1&&(s+=Jc.charAt(0)),s}};uu=ln;ln.NAME="IntegerValueBlock";Object.defineProperty(uu.prototype,"valueHex",{set:function(r){this.valueHexView=new Uint8Array(r),this.setValueHex()},get:function(){return this.valueHexView.slice().buffer}});var lu,xt=class r extends wt{constructor(t={}){super(t,ln),this.idBlock.tagClass=1,this.idBlock.tagNumber=2}toBigInt(){return io(),BigInt(this.valueBlock.toString())}static fromBigInt(t){io();let e=BigInt(t),n=new cn,o=e.toString(16).replace(/^-/,""),i=new Uint8Array(j.Convert.FromHex(o));if(e<0){let a=new Uint8Array(i.length+(i[0]&128?1:0));a[0]|=128;let f=BigInt(`0x${j.Convert.ToHex(a)}`)+e,u=j.BufferSourceConverter.toUint8Array(j.Convert.FromHex(f.toString(16)));u[0]|=128,n.write(u)}else i[0]&128&&n.write(new Uint8Array([0])),n.write(i);return new r({valueHex:n.final()})}convertToDER(){let t=new r({valueHex:this.valueBlock.valueHexView});return t.valueBlock.toDER(),t}convertFromDER(){return new r({valueHex:this.valueBlock.valueHexView[0]===0?this.valueBlock.valueHexView.subarray(1):this.valueBlock.valueHexView})}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()}`}};lu=xt;_.Integer=lu;xt.NAME="INTEGER";var fu,xo=class extends xt{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=10}};fu=xo;_.Enumerated=fu;xo.NAME="ENUMERATED";var fn=class extends Ie(At){constructor({valueDec:t=-1,isFirstSid:e=!1,...n}={}){super(n),this.valueDec=t,this.isFirstSid=e}fromBER(t,e,n){if(!n)return e;let o=j.BufferSourceConverter.toUint8Array(t);if(!Se(this,o,e,n))return-1;let i=o.subarray(e,e+n);this.valueHexView=new Uint8Array(n);for(let a=0;a<n&&(this.valueHexView[a]=i[a]&127,this.blockLength++,!!(i[a]&128));a++);let s=new Uint8Array(this.blockLength);for(let a=0;a<this.blockLength;a++)s[a]=this.valueHexView[a];return this.valueHexView=s,i[this.blockLength-1]&128?(this.error="End of input reached before message was fully decoded",-1):(this.valueHexView[0]===0&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=or(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),e+this.blockLength)}set valueBigInt(t){io();let e=BigInt(t).toString(2);for(;e.length%7;)e="0"+e;let n=new Uint8Array(e.length/7);for(let o=0;o<n.length;o++)n[o]=parseInt(e.slice(o*7,o*7+7),2)+(o+1<n.length?128:0);this.fromBER(n.buffer,0,n.length)}toBER(t){if(this.isHexOnly){if(t)return new ArrayBuffer(this.valueHexView.byteLength);let o=this.valueHexView,i=new Uint8Array(this.blockLength);for(let s=0;s<this.blockLength-1;s++)i[s]=o[s]|128;return i[this.blockLength-1]=o[this.blockLength-1],i.buffer}let e=Ke(this.valueDec,7);if(e.byteLength===0)return this.error="Error during encoding SID value",ee;let n=new Uint8Array(e.byteLength);if(!t){let o=new Uint8Array(e),i=e.byteLength-1;for(let s=0;s<i;s++)n[s]=o[s]|128;n[i]=o[i]}return n}toString(){let t="";if(this.isHexOnly)t=j.Convert.ToHex(this.valueHexView);else if(this.isFirstSid){let e=this.valueDec;this.valueDec<=39?t="0.":this.valueDec<=79?(t="1.",e-=40):(t="2.",e-=80),t+=e.toString()}else t=this.valueDec.toString();return t}toJSON(){return{...super.toJSON(),valueDec:this.valueDec,isFirstSid:this.isFirstSid}}};fn.NAME="sidBlock";var bo=class extends At{constructor({value:t=Lr,...e}={}){super(e),this.value=[],t&&this.fromString(t)}fromBER(t,e,n){let o=e;for(;n>0;){let i=new fn;if(o=i.fromBER(t,o,n),o===-1)return this.blockLength=0,this.error=i.error,o;this.value.length===0&&(i.isFirstSid=!0),this.blockLength+=i.blockLength,n-=i.blockLength,this.value.push(i)}return o}toBER(t){let e=[];for(let n=0;n<this.value.length;n++){let o=this.value[n].toBER(t);if(o.byteLength===0)return this.error=this.value[n].error,ee;e.push(o)}return Hs(e)}fromString(t){this.value=[];let e=0,n=0,o="",i=!1;do if(n=t.indexOf(".",e),n===-1?o=t.substring(e):o=t.substring(e,n),e=n+1,i){let s=this.value[0],a=0;switch(s.valueDec){case 0:break;case 1:a=40;break;case 2:a=80;break;default:this.value=[];return}let c=parseInt(o,10);if(isNaN(c))return;s.valueDec=c+a,i=!1}else{let s=new fn;if(o>Number.MAX_SAFE_INTEGER){io();let a=BigInt(o);s.valueBigInt=a}else if(s.valueDec=parseInt(o,10),isNaN(s.valueDec))return;this.value.length||(s.isFirstSid=!0,i=!0),this.value.push(s)}while(n!==-1)}toString(){let t="",e=!1;for(let n=0;n<this.value.length;n++){e=this.value[n].isHexOnly;let o=this.value[n].toString();n!==0&&(t=`${t}.`),e?(o=`{${o}}`,this.value[n].isFirstSid?t=`2.{${o} - 80}`:t+=o):t+=o}return t}toJSON(){let t={...super.toJSON(),value:this.toString(),sidArray:[]};for(let e=0;e<this.value.length;e++)t.sidArray.push(this.value[e].toJSON());return t}};bo.NAME="ObjectIdentifierValueBlock";var du,_r=class extends wt{constructor(t={}){super(t,bo),this.idBlock.tagClass=1,this.idBlock.tagNumber=6}getValue(){return this.valueBlock.toString()}setValue(t){this.valueBlock.fromString(t)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}};du=_r;_.ObjectIdentifier=du;_r.NAME="OBJECT IDENTIFIER";var dn=class extends Ie(Ee){constructor({valueDec:t=0,...e}={}){super(e),this.valueDec=t}fromBER(t,e,n){if(n===0)return e;let o=j.BufferSourceConverter.toUint8Array(t);if(!Se(this,o,e,n))return-1;let i=o.subarray(e,e+n);this.valueHexView=new Uint8Array(n);for(let a=0;a<n&&(this.valueHexView[a]=i[a]&127,this.blockLength++,!!(i[a]&128));a++);let s=new Uint8Array(this.blockLength);for(let a=0;a<this.blockLength;a++)s[a]=this.valueHexView[a];return this.valueHexView=s,i[this.blockLength-1]&128?(this.error="End of input reached before message was fully decoded",-1):(this.valueHexView[0]===0&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=or(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),e+this.blockLength)}toBER(t){if(this.isHexOnly){if(t)return new ArrayBuffer(this.valueHexView.byteLength);let o=this.valueHexView,i=new Uint8Array(this.blockLength);for(let s=0;s<this.blockLength-1;s++)i[s]=o[s]|128;return i[this.blockLength-1]=o[this.blockLength-1],i.buffer}let e=Ke(this.valueDec,7);if(e.byteLength===0)return this.error="Error during encoding SID value",ee;let n=new Uint8Array(e.byteLength);if(!t){let o=new Uint8Array(e),i=e.byteLength-1;for(let s=0;s<i;s++)n[s]=o[s]|128;n[i]=o[i]}return n.buffer}toString(){let t="";return this.isHexOnly?t=j.Convert.ToHex(this.valueHexView):t=this.valueDec.toString(),t}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}};dn.NAME="relativeSidBlock";var vo=class extends At{constructor({value:t=Lr,...e}={}){super(e),this.value=[],t&&this.fromString(t)}fromBER(t,e,n){let o=e;for(;n>0;){let i=new dn;if(o=i.fromBER(t,o,n),o===-1)return this.blockLength=0,this.error=i.error,o;this.blockLength+=i.blockLength,n-=i.blockLength,this.value.push(i)}return o}toBER(t,e){let n=[];for(let o=0;o<this.value.length;o++){let i=this.value[o].toBER(t);if(i.byteLength===0)return this.error=this.value[o].error,ee;n.push(i)}return Hs(n)}fromString(t){this.value=[];let e=0,n=0,o="";do{n=t.indexOf(".",e),n===-1?o=t.substring(e):o=t.substring(e,n),e=n+1;let i=new dn;if(i.valueDec=parseInt(o,10),isNaN(i.valueDec))return!0;this.value.push(i)}while(n!==-1);return!0}toString(){let t="",e=!1;for(let n=0;n<this.value.length;n++){e=this.value[n].isHexOnly;let o=this.value[n].toString();n!==0&&(t=`${t}.`),e&&(o=`{${o}}`),t+=o}return t}toJSON(){let t={...super.toJSON(),value:this.toString(),sidArray:[]};for(let e=0;e<this.value.length;e++)t.sidArray.push(this.value[e].toJSON());return t}};vo.NAME="RelativeObjectIdentifierValueBlock";var hu,Eo=class extends wt{constructor(t={}){super(t,vo),this.idBlock.tagClass=1,this.idBlock.tagNumber=13}getValue(){return this.valueBlock.toString()}setValue(t){this.valueBlock.fromString(t)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}};hu=Eo;_.RelativeObjectIdentifier=hu;Eo.NAME="RelativeObjectIdentifier";var pu,Be=class extends qe{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=16}};pu=Be;_.Sequence=pu;Be.NAME="SEQUENCE";var mu,Bo=class extends qe{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=17}};mu=Bo;_.Set=mu;Bo.NAME="SET";var Ao=class extends Ie(At){constructor({...t}={}){super(t),this.isHexOnly=!0,this.value=Lr}toJSON(){return{...super.toJSON(),value:this.value}}};Ao.NAME="StringValueBlock";var So=class extends Ao{};So.NAME="SimpleStringValueBlock";var Ct=class extends co{constructor({...t}={}){super(t,So)}fromBuffer(t){this.valueBlock.value=String.fromCharCode.apply(null,j.BufferSourceConverter.toUint8Array(t))}fromString(t){let e=t.length,n=this.valueBlock.valueHexView=new Uint8Array(e);for(let o=0;o<e;o++)n[o]=t.charCodeAt(o);this.valueBlock.value=t}};Ct.NAME="SIMPLE STRING";var Io=class extends Ct{fromBuffer(t){this.valueBlock.valueHexView=j.BufferSourceConverter.toUint8Array(t);try{this.valueBlock.value=j.Convert.ToUtf8String(t)}catch(e){this.warnings.push(`Error during "decodeURIComponent": ${e}, using raw string`),this.valueBlock.value=j.Convert.ToBinary(t)}}fromString(t){this.valueBlock.valueHexView=new Uint8Array(j.Convert.FromUtf8String(t)),this.valueBlock.value=t}};Io.NAME="Utf8StringValueBlock";var gu,Ae=class extends Io{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=12}};gu=Ae;_.Utf8String=gu;Ae.NAME="UTF8String";var ko=class extends Ct{fromBuffer(t){this.valueBlock.value=j.Convert.ToUtf16String(t),this.valueBlock.valueHexView=j.BufferSourceConverter.toUint8Array(t)}fromString(t){this.valueBlock.value=t,this.valueBlock.valueHexView=new Uint8Array(j.Convert.FromUtf16String(t))}};ko.NAME="BmpStringValueBlock";var yu,Co=class extends ko{constructor({...t}={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=30}};yu=Co;_.BmpString=yu;Co.NAME="BMPString";var To=class extends Ct{fromBuffer(t){let e=ArrayBuffer.isView(t)?t.slice().buffer:t.slice(0),n=new Uint8Array(e);for(let o=0;o<n.length;o+=4)n[o]=n[o+3],n[o+1]=n[o+2],n[o+2]=0,n[o+3]=0;this.valueBlock.value=String.fromCharCode.apply(null,new Uint32Array(e))}fromString(t){let e=t.length,n=this.valueBlock.valueHexView=new Uint8Array(e*4);for(let o=0;o<e;o++){let i=Ke(t.charCodeAt(o),8),s=new Uint8Array(i);if(s.length>4)continue;let a=4-s.length;for(let c=s.length-1;c>=0;c--)n[o*4+c+a]=s[c]}this.valueBlock.value=t}};To.NAME="UniversalStringValueBlock";var wu,No=class extends To{constructor({...t}={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=28}};wu=No;_.UniversalString=wu;No.NAME="UniversalString";var xu,Uo=class extends Ct{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=18}};xu=Uo;_.NumericString=xu;Uo.NAME="NumericString";var bu,Ro=class extends Ct{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=19}};bu=Ro;_.PrintableString=bu;Ro.NAME="PrintableString";var vu,_o=class extends Ct{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=20}};vu=_o;_.TeletexString=vu;_o.NAME="TeletexString";var Eu,Lo=class extends Ct{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=21}};Eu=Lo;_.VideotexString=Eu;Lo.NAME="VideotexString";var Bu,Vo=class extends Ct{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=22}};Bu=Vo;_.IA5String=Bu;Vo.NAME="IA5String";var Au,Po=class extends Ct{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=25}};Au=Po;_.GraphicString=Au;Po.NAME="GraphicString";var Su,hn=class extends Ct{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=26}};Su=hn;_.VisibleString=Su;hn.NAME="VisibleString";var Iu,Fo=class extends Ct{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=27}};Iu=Fo;_.GeneralString=Iu;Fo.NAME="GeneralString";var ku,Oo=class extends Ct{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=29}};ku=Oo;_.CharacterString=ku;Oo.NAME="CharacterString";var Cu,pn=class extends hn{constructor({value:t,valueDate:e,...n}={}){if(super(n),this.year=0,this.month=0,this.day=0,this.hour=0,this.minute=0,this.second=0,t){this.fromString(t),this.valueBlock.valueHexView=new Uint8Array(t.length);for(let o=0;o<t.length;o++)this.valueBlock.valueHexView[o]=t.charCodeAt(o)}e&&(this.fromDate(e),this.valueBlock.valueHexView=new Uint8Array(this.toBuffer())),this.idBlock.tagClass=1,this.idBlock.tagNumber=23}fromBuffer(t){this.fromString(String.fromCharCode.apply(null,j.BufferSourceConverter.toUint8Array(t)))}toBuffer(){let t=this.toString(),e=new ArrayBuffer(t.length),n=new Uint8Array(e);for(let o=0;o<t.length;o++)n[o]=t.charCodeAt(o);return e}fromDate(t){this.year=t.getUTCFullYear(),this.month=t.getUTCMonth()+1,this.day=t.getUTCDate(),this.hour=t.getUTCHours(),this.minute=t.getUTCMinutes(),this.second=t.getUTCSeconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second))}fromString(t){let n=/(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})Z/ig.exec(t);if(n===null){this.error="Wrong input string for conversion";return}let o=parseInt(n[1],10);o>=50?this.year=1900+o:this.year=2e3+o,this.month=parseInt(n[2],10),this.day=parseInt(n[3],10),this.hour=parseInt(n[4],10),this.minute=parseInt(n[5],10),this.second=parseInt(n[6],10)}toString(t="iso"){if(t==="iso"){let e=new Array(7);return e[0]=Ft(this.year<2e3?this.year-1900:this.year-2e3,2),e[1]=Ft(this.month,2),e[2]=Ft(this.day,2),e[3]=Ft(this.hour,2),e[4]=Ft(this.minute,2),e[5]=Ft(this.second,2),e[6]="Z",e.join("")}return super.toString(t)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.toDate().toISOString()}`}toJSON(){return{...super.toJSON(),year:this.year,month:this.month,day:this.day,hour:this.hour,minute:this.minute,second:this.second}}};Cu=pn;_.UTCTime=Cu;pn.NAME="UTCTime";var Tu,Do=class extends pn{constructor(t={}){var e;super(t),(e=this.millisecond)!==null&&e!==void 0||(this.millisecond=0),this.idBlock.tagClass=1,this.idBlock.tagNumber=24}fromDate(t){super.fromDate(t),this.millisecond=t.getUTCMilliseconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second,this.millisecond))}fromString(t){let e=!1,n="",o="",i=0,s,a=0,c=0;if(t[t.length-1]==="Z")n=t.substring(0,t.length-1),e=!0;else{let l=new Number(t[t.length-1]);if(isNaN(l.valueOf()))throw new Error("Wrong input string for conversion");n=t}if(e){if(n.indexOf("+")!==-1)throw new Error("Wrong input string for conversion");if(n.indexOf("-")!==-1)throw new Error("Wrong input string for conversion")}else{let l=1,d=n.indexOf("+"),b="";if(d===-1&&(d=n.indexOf("-"),l=-1),d!==-1){if(b=n.substring(d+1),n=n.substring(0,d),b.length!==2&&b.length!==4)throw new Error("Wrong input string for conversion");let I=parseInt(b.substring(0,2),10);if(isNaN(I.valueOf()))throw new Error("Wrong input string for conversion");if(a=l*I,b.length===4){if(I=parseInt(b.substring(2,4),10),isNaN(I.valueOf()))throw new Error("Wrong input string for conversion");c=l*I}}}let f=n.indexOf(".");if(f===-1&&(f=n.indexOf(",")),f!==-1){let l=new Number(`0${n.substring(f)}`);if(isNaN(l.valueOf()))throw new Error("Wrong input string for conversion");i=l.valueOf(),o=n.substring(0,f)}else o=n;switch(!0){case o.length===8:if(s=/(\d{4})(\d{2})(\d{2})/ig,f!==-1)throw new Error("Wrong input string for conversion");break;case o.length===10:if(s=/(\d{4})(\d{2})(\d{2})(\d{2})/ig,f!==-1){let l=60*i;this.minute=Math.floor(l),l=60*(l-this.minute),this.second=Math.floor(l),l=1e3*(l-this.second),this.millisecond=Math.floor(l)}break;case o.length===12:if(s=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})/ig,f!==-1){let l=60*i;this.second=Math.floor(l),l=1e3*(l-this.second),this.millisecond=Math.floor(l)}break;case o.length===14:if(s=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/ig,f!==-1){let l=1e3*i;this.millisecond=Math.floor(l)}break;default:throw new Error("Wrong input string for conversion")}let u=s.exec(o);if(u===null)throw new Error("Wrong input string for conversion");for(let l=1;l<u.length;l++)switch(l){case 1:this.year=parseInt(u[l],10);break;case 2:this.month=parseInt(u[l],10);break;case 3:this.day=parseInt(u[l],10);break;case 4:this.hour=parseInt(u[l],10)+a;break;case 5:this.minute=parseInt(u[l],10)+c;break;case 6:this.second=parseInt(u[l],10);break;default:throw new Error("Wrong input string for conversion")}if(e===!1){let l=new Date(this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond);this.year=l.getUTCFullYear(),this.month=l.getUTCMonth(),this.day=l.getUTCDay(),this.hour=l.getUTCHours(),this.minute=l.getUTCMinutes(),this.second=l.getUTCSeconds(),this.millisecond=l.getUTCMilliseconds()}}toString(t="iso"){if(t==="iso"){let e=[];return e.push(Ft(this.year,4)),e.push(Ft(this.month,2)),e.push(Ft(this.day,2)),e.push(Ft(this.hour,2)),e.push(Ft(this.minute,2)),e.push(Ft(this.second,2)),this.millisecond!==0&&(e.push("."),e.push(Ft(this.millisecond,3))),e.push("Z"),e.join("")}return super.toString(t)}toJSON(){return{...super.toJSON(),millisecond:this.millisecond}}};Tu=Do;_.GeneralizedTime=Tu;Do.NAME="GeneralizedTime";var Nu,Mo=class extends Ae{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=31}};Nu=Mo;_.DATE=Nu;Mo.NAME="DATE";var Uu,$o=class extends Ae{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=32}};Uu=$o;_.TimeOfDay=Uu;$o.NAME="TimeOfDay";var Ru,Ho=class extends Ae{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=33}};Ru=Ho;_.DateTime=Ru;Ho.NAME="DateTime";var _u,Ko=class extends Ae{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=34}};_u=Ko;_.Duration=_u;Ko.NAME="Duration";var Lu,qo=class extends Ae{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=14}};Lu=qo;_.TIME=Lu;qo.NAME="TIME";function W(r,t="utf8"){let e=Qn[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.encoder.encode(r).substring(1)}var mn=class extends Error{constructor(t="An error occurred while verifying a message"){super(t),this.name="VerificationError"}},jo=class extends Error{constructor(t="Missing Web Crypto API"){super(t),this.name="WebCryptoMissingError"}};var Vu={get(r=globalThis){let t=r.crypto;if(t?.subtle==null)throw new jo("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 ze=Vu;async function Pu(r){let t=await ze.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:r,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),e=await lp(t);return{privateKey:e[0],publicKey:e[1]}}async function Fu(r,t){let e=await ze.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ze.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},e,t instanceof Uint8Array?t:t.subarray());return new Uint8Array(n,0,n.byteLength)}async function Ou(r,t,e){let n=await ze.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ze.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,e instanceof Uint8Array?e:e.subarray())}async function lp(r){if(r.privateKey==null||r.publicKey==null)throw new vt("Private and public key are required");return Promise.all([ze.get().subtle.exportKey("jwk",r.privateKey),ze.get().subtle.exportKey("jwk",r.publicKey)])}function zs(r){if(r.kty!=="RSA")throw new vt("invalid key type");if(r.n==null)throw new vt("invalid key modulus");return Z(r.n,"base64url").length*8}var Vr=class{type="RSA";_key;_raw;_multihash;constructor(t,e){this._key=t,this._multihash=e}get raw(){return this._raw==null&&(this._raw=gn.jwkToPkix(this._key)),this._raw}toMultihash(){return this._multihash}toCID(){return Q.createV1(114,this._multihash)}toString(){return nt.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:ct(this.raw,t.raw)}verify(t,e){return Ou(this._key,e,t)}},yn=class{type="RSA";_key;_raw;publicKey;constructor(t,e){this._key=t,this.publicKey=e}get raw(){return this._raw==null&&(this._raw=gn.jwkToPkcs1(this._key)),this._raw}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:ct(this.raw,t.raw)}sign(t){return Fu(this._key,t)}};var Go=8192,js=18;function Du(r){let{result:t}=qs(r),e=t.valueBlock.value;return{n:W(le(e[1].toBigInt()),"base64url"),e:W(le(e[2].toBigInt()),"base64url"),d:W(le(e[3].toBigInt()),"base64url"),p:W(le(e[4].toBigInt()),"base64url"),q:W(le(e[5].toBigInt()),"base64url"),dp:W(le(e[6].toBigInt()),"base64url"),dq:W(le(e[7].toBigInt()),"base64url"),qi:W(le(e[8].toBigInt()),"base64url"),kty:"RSA",alg:"RS256"}}function fp(r){if(r.n==null||r.e==null||r.d==null||r.p==null||r.q==null||r.dp==null||r.dq==null||r.qi==null)throw new vt("JWK was missing components");let e=new Be({value:[new xt({value:0}),xt.fromBigInt(fe(Z(r.n,"base64url"))),xt.fromBigInt(fe(Z(r.e,"base64url"))),xt.fromBigInt(fe(Z(r.d,"base64url"))),xt.fromBigInt(fe(Z(r.p,"base64url"))),xt.fromBigInt(fe(Z(r.q,"base64url"))),xt.fromBigInt(fe(Z(r.dp,"base64url"))),xt.fromBigInt(fe(Z(r.dq,"base64url"))),xt.fromBigInt(fe(Z(r.qi,"base64url")))]}).toBER();return new Uint8Array(e,0,e.byteLength)}function Mu(r){let{result:t}=qs(r),e=t.valueBlock.value[1].valueBlock.value[0].valueBlock.value;return{kty:"RSA",n:W(le(e[0].toBigInt()),"base64url"),e:W(le(e[1].toBigInt()),"base64url")}}function Gs(r){if(r.n==null||r.e==null)throw new vt("JWK was missing components");let e=new Be({value:[new Be({value:[new _r({value:"1.2.840.113549.1.1.1"}),new Ur]}),new Rr({valueHex:new Be({value:[xt.fromBigInt(fe(Z(r.n,"base64url"))),xt.fromBigInt(fe(Z(r.e,"base64url")))]}).toBER()})]}).toBER();return new Uint8Array(e,0,e.byteLength)}function le(r){let t=r.toString(16);t.length%2>0&&(t=`0${t}`);let e=t.length/2,n=new Uint8Array(e),o=0,i=0;for(;o<e;)n[o]=parseInt(t.slice(i,i+2),16),o+=1,i+=2;return n}function fe(r){let t=[];return r.forEach(function(e){let n=e.toString(16);n.length%2>0&&(n=`0${n}`),t.push(n)}),BigInt("0x"+t.join(""))}function $u(r){let t=Du(r);return Hu(t)}function Zs(r){let t=Mu(r);if(zs(t)>Go)throw new lr("Key size is too large");let e=Tr(ce.encode({Type:dt.RSA,Data:r})),n=Zt(js,e);return new Vr(t,n)}function Hu(r){if(zs(r)>Go)throw new vt("Key size is too large");let t=qu(r),e=Tr(ce.encode({Type:dt.RSA,Data:Gs(t.publicKey)})),n=Zt(js,e);return new yn(t.privateKey,new Vr(t.publicKey,n))}async function Ku(r){if(r>Go)throw new vt("Key size is too large");let t=await Pu(r),e=Tr(ce.encode({Type:dt.RSA,Data:Gs(t.publicKey)})),n=Zt(js,e);return new yn(t.privateKey,new Vr(t.publicKey,n))}function qu(r){if(r==null)throw new vt("Missing key parameter");return{privateKey:r,publicKey:{kty:r.kty,n:r.n,e:r.e}}}var Zo=class extends vr{constructor(t,e){super(),this.finished=!1,this.destroyed=!1,dc(t);let n=Jr(e);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let o=this.blockLen,i=new Uint8Array(o);i.set(n.length>o?t.create().update(n).digest():n);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=t.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(t){return br(this),this.iHash.update(t),this}digestInto(t){br(this),xr(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:e,iHash:n,finished:o,destroyed:i,blockLen:s,outputLen:a}=this;return t=t,t.finished=o,t.destroyed=i,t.blockLen=s,t.outputLen=a,t.oHash=e._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Ws=(r,t,e)=>new Zo(r,t).update(e).digest();Ws.create=(r,t)=>new Zo(r,t);function zu(r){r.lowS!==void 0&&Jt("lowS",r.lowS),r.prehash!==void 0&&Jt("prehash",r.prehash)}function dp(r){let t=tn(r);ae(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:e,Fp:n,a:o}=t;if(e){if(!n.eql(o,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof e!="object"||typeof e.beta!="bigint"||typeof e.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}var{bytesToNumberBE:hp,hexToBytes:pp}=qn,ke={Err:class extends Error{constructor(t=""){super(t)}},_tlv:{encode:(r,t)=>{let{Err:e}=ke;if(r<0||r>256)throw new e("tlv.encode: wrong tag");if(t.length&1)throw new e("tlv.encode: unpadded data");let n=t.length/2,o=Ye(n);if(o.length/2&128)throw new e("tlv.encode: long form length too big");let i=n>127?Ye(o.length/2|128):"";return`${Ye(r)}${i}${o}${t}`},decode(r,t){let{Err:e}=ke,n=0;if(r<0||r>256)throw new e("tlv.encode: wrong tag");if(t.length<2||t[n++]!==r)throw new e("tlv.decode: wrong tlv");let o=t[n++],i=!!(o&128),s=0;if(!i)s=o;else{let c=o&127;if(!c)throw new e("tlv.decode(long): indefinite length not supported");if(c>4)throw new e("tlv.decode(long): byte length is too big");let f=t.subarray(n,n+c);if(f.length!==c)throw new e("tlv.decode: length bytes not complete");if(f[0]===0)throw new e("tlv.decode(long): zero leftmost byte");for(let u of f)s=s<<8|u;if(n+=c,s<128)throw new e("tlv.decode(long): not minimal encoding")}let a=t.subarray(n,n+s);if(a.length!==s)throw new e("tlv.decode: wrong value length");return{v:a,l:t.subarray(n+s)}}},_int:{encode(r){let{Err:t}=ke;if(r<Ce)throw new t("integer: negative integers are not allowed");let e=Ye(r);if(Number.parseInt(e[0],16)&8&&(e="00"+e),e.length&1)throw new t("unexpected assertion");return e},decode(r){let{Err:t}=ke;if(r[0]&128)throw new t("Invalid signature integer: negative");if(r[0]===0&&!(r[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return hp(r)}},toSig(r){let{Err:t,_int:e,_tlv:n}=ke,o=typeof r=="string"?pp(r):r;Br(o);let{v:i,l:s}=n.decode(48,o);if(s.length)throw new t("Invalid signature: left bytes after parsing");let{v:a,l:c}=n.decode(2,i),{v:f,l:u}=n.decode(2,c);if(u.length)throw new t("Invalid signature: left bytes after parsing");return{r:e.decode(a),s:e.decode(f)}},hexFromSig(r){let{_tlv:t,_int:e}=ke,n=`${t.encode(2,e.encode(r.r))}${t.encode(2,e.encode(r.s))}`;return t.encode(48,n)}},Ce=BigInt(0),mt=BigInt(1),bx=BigInt(2),ju=BigInt(3),vx=BigInt(4);function mp(r){let t=dp(r),{Fp:e}=t,n=De(t.n,t.nBitLength),o=t.toBytes||((w,h,E)=>{let C=h.toAffine();return be(Uint8Array.from([4]),e.toBytes(C.x),e.toBytes(C.y))}),i=t.fromBytes||(w=>{let h=w.subarray(1),E=e.fromBytes(h.subarray(0,e.BYTES)),C=e.fromBytes(h.subarray(e.BYTES,2*e.BYTES));return{x:E,y:C}});function s(w){let{a:h,b:E}=t,C=e.sqr(w),x=e.mul(C,w);return e.add(e.add(x,e.mul(w,h)),E)}if(!e.eql(e.sqr(t.Gy),s(t.Gx)))throw new Error("bad generator point: equation left != right");function a(w){return Xr(w,mt,t.n)}function c(w){let{allowedPrivateKeyLengths:h,nByteLength:E,wrapPrivateKey:C,n:x}=t;if(h&&typeof w!="bigint"){if(Pe(w)&&(w=we(w)),typeof w!="string"||!h.includes(w.length))throw new Error("Invalid key");w=w.padStart(E*2,"0")}let T;try{T=typeof w=="bigint"?w:xe(at("private key",w,E))}catch{throw new Error(`private key must be ${E} bytes, hex or bigint, not ${typeof w}`)}return C&&(T=tt(T,x)),Lt("private key",T,mt,x),T}function f(w){if(!(w instanceof d))throw new Error("ProjectivePoint expected")}let u=Qe((w,h)=>{let{px:E,py:C,pz:x}=w;if(e.eql(x,e.ONE))return{x:E,y:C};let T=w.is0();h==null&&(h=T?e.ONE:e.inv(x));let F=e.mul(E,h),V=e.mul(C,h),U=e.mul(x,h);if(T)return{x:e.ZERO,y:e.ZERO};if(!e.eql(U,e.ONE))throw new Error("invZ was invalid");return{x:F,y:V}}),l=Qe(w=>{if(w.is0()){if(t.allowInfinityPoint&&!e.is0(w.py))return;throw new Error("bad point: ZERO")}let{x:h,y:E}=w.toAffine();if(!e.isValid(h)||!e.isValid(E))throw new Error("bad point: x or y not FE");let C=e.sqr(E),x=s(h);if(!e.eql(C,x))throw new Error("bad point: equation left != right");if(!w.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class d{constructor(h,E,C){if(this.px=h,this.py=E,this.pz=C,h==null||!e.isValid(h))throw new Error("x required");if(E==null||!e.isValid(E))throw new Error("y required");if(C==null||!e.isValid(C))throw new Error("z required");Object.freeze(this)}static fromAffine(h){let{x:E,y:C}=h||{};if(!h||!e.isValid(E)||!e.isValid(C))throw new Error("invalid affine point");if(h instanceof d)throw new Error("projective point not allowed");let x=T=>e.eql(T,e.ZERO);return x(E)&&x(C)?d.ZERO:new d(E,C,e.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(h){let E=e.invertBatch(h.map(C=>C.pz));return h.map((C,x)=>C.toAffine(E[x])).map(d.fromAffine)}static fromHex(h){let E=d.fromAffine(i(at("pointHex",h)));return E.assertValidity(),E}static fromPrivateKey(h){return d.BASE.multiply(c(h))}static msm(h,E){return Gn(d,n,h,E)}_setWindowSize(h){I.setWindowSize(this,h)}assertValidity(){l(this)}hasEvenY(){let{y:h}=this.toAffine();if(e.isOdd)return!e.isOdd(h);throw new Error("Field doesn't support isOdd")}equals(h){f(h);let{px:E,py:C,pz:x}=this,{px:T,py:F,pz:V}=h,U=e.eql(e.mul(E,V),e.mul(T,x)),g=e.eql(e.mul(C,V),e.mul(F,x));return U&&g}negate(){return new d(this.px,e.neg(this.py),this.pz)}double(){let{a:h,b:E}=t,C=e.mul(E,ju),{px:x,py:T,pz:F}=this,V=e.ZERO,U=e.ZERO,g=e.ZERO,v=e.mul(x,x),O=e.mul(T,T),R=e.mul(F,F),N=e.mul(x,T);return N=e.add(N,N),g=e.mul(x,F),g=e.add(g,g),V=e.mul(h,g),U=e.mul(C,R),U=e.add(V,U),V=e.sub(O,U),U=e.add(O,U),U=e.mul(V,U),V=e.mul(N,V),g=e.mul(C,g),R=e.mul(h,R),N=e.sub(v,R),N=e.mul(h,N),N=e.add(N,g),g=e.add(v,v),v=e.add(g,v),v=e.add(v,R),v=e.mul(v,N),U=e.add(U,v),R=e.mul(T,F),R=e.add(R,R),v=e.mul(R,N),V=e.sub(V,v),g=e.mul(R,O),g=e.add(g,g),g=e.add(g,g),new d(V,U,g)}add(h){f(h);let{px:E,py:C,pz:x}=this,{px:T,py:F,pz:V}=h,U=e.ZERO,g=e.ZERO,v=e.ZERO,O=t.a,R=e.mul(t.b,ju),N=e.mul(E,T),H=e.mul(C,F),A=e.mul(x,V),S=e.add(E,C),m=e.add(T,F);S=e.mul(S,m),m=e.add(N,H),S=e.sub(S,m),m=e.add(E,x);let p=e.add(T,V);return m=e.mul(m,p),p=e.add(N,A),m=e.sub(m,p),p=e.add(C,x),U=e.add(F,V),p=e.mul(p,U),U=e.add(H,A),p=e.sub(p,U),v=e.mul(O,m),U=e.mul(R,A),v=e.add(U,v),U=e.sub(H,v),v=e.add(H,v),g=e.mul(U,v),H=e.add(N,N),H=e.add(H,N),A=e.mul(O,A),m=e.mul(R,m),H=e.add(H,A),A=e.sub(N,A),A=e.mul(O,A),m=e.add(m,A),N=e.mul(H,m),g=e.add(g,N),N=e.mul(p,m),U=e.mul(S,U),U=e.sub(U,N),N=e.mul(S,H),v=e.mul(p,v),v=e.add(v,N),new d(U,g,v)}subtract(h){return this.add(h.negate())}is0(){return this.equals(d.ZERO)}wNAF(h){return I.wNAFCached(this,h,d.normalizeZ)}multiplyUnsafe(h){Lt("scalar",h,Ce,t.n);let E=d.ZERO;if(h===Ce)return E;if(h===mt)return this;let{endo:C}=t;if(!C)return I.unsafeLadder(this,h);let{k1neg:x,k1:T,k2neg:F,k2:V}=C.splitScalar(h),U=E,g=E,v=this;for(;T>Ce||V>Ce;)T&mt&&(U=U.add(v)),V&mt&&(g=g.add(v)),v=v.double(),T>>=mt,V>>=mt;return x&&(U=U.negate()),F&&(g=g.negate()),g=new d(e.mul(g.px,C.beta),g.py,g.pz),U.add(g)}multiply(h){let{endo:E,n:C}=t;Lt("scalar",h,mt,C);let x,T;if(E){let{k1neg:F,k1:V,k2neg:U,k2:g}=E.splitScalar(h),{p:v,f:O}=this.wNAF(V),{p:R,f:N}=this.wNAF(g);v=I.constTimeNegate(F,v),R=I.constTimeNegate(U,R),R=new d(e.mul(R.px,E.beta),R.py,R.pz),x=v.add(R),T=O.add(N)}else{let{p:F,f:V}=this.wNAF(h);x=F,T=V}return d.normalizeZ([x,T])[0]}multiplyAndAddUnsafe(h,E,C){let x=d.BASE,T=(V,U)=>U===Ce||U===mt||!V.equals(x)?V.multiplyUnsafe(U):V.multiply(U),F=T(this,E).add(T(h,C));return F.is0()?void 0:F}toAffine(h){return u(this,h)}isTorsionFree(){let{h,isTorsionFree:E}=t;if(h===mt)return!0;if(E)return E(d,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h,clearCofactor:E}=t;return h===mt?this:E?E(d,this):this.multiplyUnsafe(t.h)}toRawBytes(h=!0){return Jt("isCompressed",h),this.assertValidity(),o(d,this,h)}toHex(h=!0){return Jt("isCompressed",h),we(this.toRawBytes(h))}}d.BASE=new d(t.Gx,t.Gy,e.ONE),d.ZERO=new d(e.ZERO,e.ONE,e.ZERO);let b=t.nBitLength,I=jn(d,t.endo?Math.ceil(b/2):b);return{CURVE:t,ProjectivePoint:d,normPrivateKeyToScalar:c,weierstrassEquation:s,isWithinCurveOrder:a}}function gp(r){let t=tn(r);return ae(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Gu(r){let t=gp(r),{Fp:e,n}=t,o=e.BYTES+1,i=2*e.BYTES+1;function s(A){return tt(A,n)}function a(A){return zn(A,n)}let{ProjectivePoint:c,normPrivateKeyToScalar:f,weierstrassEquation:u,isWithinCurveOrder:l}=mp({...t,toBytes(A,S,m){let p=S.toAffine(),B=e.toBytes(p.x),P=be;return Jt("isCompressed",m),m?P(Uint8Array.from([S.hasEvenY()?2:3]),B):P(Uint8Array.from([4]),B,e.toBytes(p.y))},fromBytes(A){let S=A.length,m=A[0],p=A.subarray(1);if(S===o&&(m===2||m===3)){let B=xe(p);if(!Xr(B,mt,e.ORDER))throw new Error("Point is not on curve");let P=u(B),D;try{D=e.sqrt(P)}catch(G){let z=G instanceof Error?": "+G.message:"";throw new Error("Point is not on curve"+z)}let M=(D&mt)===mt;return(m&1)===1!==M&&(D=e.neg(D)),{x:B,y:D}}else if(S===i&&m===4){let B=e.fromBytes(p.subarray(0,e.BYTES)),P=e.fromBytes(p.subarray(e.BYTES,2*e.BYTES));return{x:B,y:P}}else throw new Error(`Point of length ${S} was invalid. Expected ${o} compressed bytes or ${i} uncompressed bytes`)}}),d=A=>we(Oe(A,t.nByteLength));function b(A){let S=n>>mt;return A>S}function I(A){return b(A)?s(-A):A}let w=(A,S,m)=>xe(A.slice(S,m));class h{constructor(S,m,p){this.r=S,this.s=m,this.recovery=p,this.assertValidity()}static fromCompact(S){let m=t.nByteLength;return S=at("compactSignature",S,m*2),new h(w(S,0,m),w(S,m,2*m))}static fromDER(S){let{r:m,s:p}=ke.toSig(at("DER",S));return new h(m,p)}assertValidity(){Lt("r",this.r,mt,n),Lt("s",this.s,mt,n)}addRecoveryBit(S){return new h(this.r,this.s,S)}recoverPublicKey(S){let{r:m,s:p,recovery:B}=this,P=V(at("msgHash",S));if(B==null||![0,1,2,3].includes(B))throw new Error("recovery id invalid");let D=B===2||B===3?m+t.n:m;if(D>=e.ORDER)throw new Error("recovery id 2 or 3 invalid");let M=B&1?"03":"02",q=c.fromHex(M+d(D)),G=a(D),z=s(-P*G),X=s(p*G),rt=c.BASE.multiplyAndAddUnsafe(q,z,X);if(!rt)throw new Error("point at infinify");return rt.assertValidity(),rt}hasHighS(){return b(this.s)}normalizeS(){return this.hasHighS()?new h(this.r,s(-this.s),this.recovery):this}toDERRawBytes(){return Je(this.toDERHex())}toDERHex(){return ke.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Je(this.toCompactHex())}toCompactHex(){return d(this.r)+d(this.s)}}let E={isValidPrivateKey(A){try{return f(A),!0}catch{return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let A=os(t.n);return Sc(t.randomBytes(A),t.n)},precompute(A=8,S=c.BASE){return S._setWindowSize(A),S.multiply(BigInt(3)),S}};function C(A,S=!0){return c.fromPrivateKey(A).toRawBytes(S)}function x(A){let S=Pe(A),m=typeof A=="string",p=(S||m)&&A.length;return S?p===o||p===i:m?p===2*o||p===2*i:A instanceof c}function T(A,S,m=!0){if(x(A))throw new Error("first arg must be private key");if(!x(S))throw new Error("second arg must be public key");return c.fromHex(S).multiply(f(A)).toRawBytes(m)}let F=t.bits2int||function(A){let S=xe(A),m=A.length*8-t.nBitLength;return m>0?S>>BigInt(m):S},V=t.bits2int_modN||function(A){return s(F(A))},U=Qr(t.nBitLength);function g(A){return Lt(`num < 2^${t.nBitLength}`,A,Ce,U),Oe(A,t.nByteLength)}function v(A,S,m=O){if(["recovered","canonical"].some(pt=>pt in m))throw new Error("sign() legacy options not supported");let{hash:p,randomBytes:B}=t,{lowS:P,prehash:D,extraEntropy:M}=m;P==null&&(P=!0),A=at("msgHash",A),zu(m),D&&(A=at("prehashed msgHash",p(A)));let q=V(A),G=f(S),z=[g(G),g(q)];if(M!=null&&M!==!1){let pt=M===!0?B(e.BYTES):M;z.push(at("extraEntropy",pt))}let X=be(...z),rt=q;function ht(pt){let yt=F(pt);if(!l(yt))return;let It=a(yt),lt=c.BASE.multiply(yt).toAffine(),Ut=s(lt.x);if(Ut===Ce)return;let pe=s(It*s(rt+Ut*G));if(pe===Ce)return;let jr=(lt.x===Ut?0:2)|Number(lt.y&mt),Gr=pe;return P&&b(pe)&&(Gr=I(pe),jr^=1),new h(Ut,Gr,jr)}return{seed:X,k2sig:ht}}let O={lowS:t.lowS,prehash:!1},R={lowS:t.lowS,prehash:!1};function N(A,S,m=O){let{seed:p,k2sig:B}=v(A,S,m),P=t;return ts(P.hash.outputLen,P.nByteLength,P.hmac)(p,B)}c.BASE._setWindowSize(8);function H(A,S,m,p=R){let B=A;if(S=at("msgHash",S),m=at("publicKey",m),"strict"in p)throw new Error("options.strict was renamed to lowS");zu(p);let{lowS:P,prehash:D}=p,M,q;try{if(typeof B=="string"||Pe(B))try{M=h.fromDER(B)}catch(lt){if(!(lt instanceof ke.Err))throw lt;M=h.fromCompact(B)}else if(typeof B=="object"&&typeof B.r=="bigint"&&typeof B.s=="bigint"){let{r:lt,s:Ut}=B;M=new h(lt,Ut)}else throw new Error("PARSE");q=c.fromHex(m)}catch(lt){if(lt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(P&&M.hasHighS())return!1;D&&(S=t.hash(S));let{r:G,s:z}=M,X=V(S),rt=a(z),ht=s(X*rt),pt=s(G*rt),yt=c.BASE.multiplyAndAddUnsafe(q,ht,pt)?.toAffine();return yt?s(yt.x)===G:!1}return{CURVE:t,getPublicKey:C,getSharedSecret:T,sign:N,verify:H,ProjectivePoint:c,Signature:h,utils:E}}function yp(r){return{hash:r,hmac:(t,...e)=>Ws(r,t,ji(...e)),randomBytes:$n}}function Zu(r,t){let e=n=>Gu({...r,...yp(n)});return Object.freeze({...e(t),create:e})}var Ju=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Wu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),wp=BigInt(1),Ys=BigInt(2),Yu=(r,t)=>(r+t/Ys)/t;function xp(r){let t=Ju,e=BigInt(3),n=BigInt(6),o=BigInt(11),i=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=r*r*r%t,u=f*f*r%t,l=it(u,e,t)*u%t,d=it(l,e,t)*u%t,b=it(d,Ys,t)*f%t,I=it(b,o,t)*b%t,w=it(I,i,t)*I%t,h=it(w,a,t)*w%t,E=it(h,c,t)*h%t,C=it(E,a,t)*w%t,x=it(C,e,t)*u%t,T=it(x,s,t)*I%t,F=it(T,n,t)*f%t,V=it(F,Ys,t);if(!Js.eql(Js.sqr(V),r))throw new Error("Cannot find square root");return V}var Js=De(Ju,void 0,void 0,{sqrt:xp}),ir=Zu({a:BigInt(0),b:BigInt(7),Fp:Js,n:Wu,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:r=>{let t=Wu,e=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-wp*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),o=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=e,s=BigInt("0x100000000000000000000000000000000"),a=Yu(i*r,t),c=Yu(-n*r,t),f=tt(r-a*e-c*o,t),u=tt(-a*n-c*i,t),l=f>s,d=u>s;if(l&&(f=t-f),d&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+r);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},Tr),Nx=BigInt(0);var Ux=ir.ProjectivePoint;function Dt(r,t){t==null&&(t=r.reduce((o,i)=>o+i.length,0));let e=Qt(t),n=0;for(let o of r)e.set(o,n),n+=o.length;return e}function Xu(r){return r==null?!1:typeof r.then=="function"&&typeof r.catch=="function"&&typeof r.finally=="function"}function Qu(r,t,e){let n=en.digest(e instanceof Uint8Array?e:e.subarray());if(Xu(n))return n.then(({digest:o})=>ir.verify(t,o,r)).catch(o=>{throw new mn(String(o))});try{return ir.verify(t,n.digest,r)}catch(o){throw new mn(String(o))}}var Wo=class{type="secp256k1";raw;_key;constructor(t){this._key=el(t),this.raw=tl(this._key)}toMultihash(){return Wt.digest(Jn(this))}toCID(){return Q.createV1(114,this.toMultihash())}toString(){return nt.encode(this.toMultihash().bytes).substring(1)}equals(t){return t==null||!(t.raw instanceof Uint8Array)?!1:ct(this.raw,t.raw)}verify(t,e){return Qu(this._key,e,t)}};function Xs(r){return new Wo(r)}function tl(r){return ir.ProjectivePoint.fromHex(r).toRawBytes(!0)}function el(r){try{return ir.ProjectivePoint.fromHex(r),r}catch(t){throw new lr(String(t))}}function rl(r){let{Type:t,Data:e}=ce.decode(r),n=e??new Uint8Array;switch(t){case dt.RSA:return Zs(n);case dt.Ed25519:return us(n);case dt.secp256k1:return Xs(n);default:throw new dr}}function Yo(r){let{Type:t,Data:e}=ce.decode(r.digest),n=e??new Uint8Array;switch(t){case dt.Ed25519:return us(n);case dt.secp256k1:return Xs(n);default:throw new dr}}function Jn(r){return ce.encode({Type:dt[r.type],Data:r.raw})}var nl=Symbol.for("nodejs.util.inspect.custom"),bp=114,wn=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()})`}[Ri]=!0;toString(){return this.string==null&&(this.string=nt.encode(this.multihash.bytes).slice(1)),this.string}toMultihash(){return this.multihash}toCID(){return Q.createV1(bp,this.multihash)}toJSON(){return this.toString()}equals(t){if(t==null)return!1;if(t instanceof Uint8Array)return ct(this.multihash.bytes,t);if(typeof t=="string")return this.toString()===t;if(t?.toMultihash()?.bytes!=null)return ct(this.multihash.bytes,t.toMultihash().bytes);throw new Error("not valid Id")}[nl](){return`PeerId(${this.toString()})`}},Jo=class extends wn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},Xo=class extends wn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.publicKey}},Qo=class extends wn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.publicKey}},vp=2336,xn=class{type="url";multihash;publicKey;url;constructor(t){this.url=t.toString(),this.multihash=Wt.digest(Z(this.url))}[nl](){return`PeerId(${this.url})`}[Ri]=!0;toString(){return this.toCID().toString()}toMultihash(){return this.multihash}toCID(){return Q.createV1(vp,this.toMultihash())}toJSON(){return this.toString()}equals(t){return t==null?!1:(t instanceof Uint8Array&&(t=W(t)),t.toString()===this.toString())}};var Ep=114,ol=2336;function il(r,t){let e;if(r.charAt(0)==="1"||r.charAt(0)==="Q")e=ge(nt.decode(`z${r}`));else{if(t==null)throw new vt('Please pass a multibase decoder for strings that do not start with "1" or "Q"');e=ge(t.decode(r))}return sl(e)}function sl(r){if(Ap(r))return new Jo({multihash:r});if(Bp(r))try{let t=Yo(r);if(t.type==="Ed25519")return new Xo({multihash:r,publicKey:t});if(t.type==="secp256k1")return new Qo({multihash:r,publicKey:t})}catch{let e=W(r.digest);return new xn(new URL(e))}throw new fr("Supplied PeerID Multihash is invalid")}function al(r){if(r?.multihash==null||r.version==null||r.version===1&&r.code!==Ep&&r.code!==ol)throw new Ln("Supplied PeerID CID is invalid");if(r.code===ol){let t=W(r.multihash.digest);return new xn(new URL(t))}return sl(r.multihash)}function Bp(r){return r.code===Wt.code}function Ap(r){return r.code===en.code}var ti=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let e=this.index,n=t();return n===void 0&&(this.index=e),n}parseWith(t){let e=t();if(this.index===this.input.length)return e}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let e=this.readChar();if(e===t)return e})}readSeparator(t,e,n){return this.readAtomically(()=>{if(!(e>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,e,n,o){return this.readAtomically(()=>{let i=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*o)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let d=Number.parseInt(l,t);if(!Number.isNaN(d))return d});if(u===void 0)break;if(i*=t,i+=u,i>f||(s+=1,e!==void 0&&s>e))return}if(s!==0)return!n&&c&&s>1?void 0:i})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let e=0;e<t.length;e++){let n=this.readSeparator(".",e,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[e]=n}return t})}readIPv6Addr(){let t=e=>{for(let n=0;n<e.length/2;n++){let o=n*2;if(n<e.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return e[o]=s[0],e[o+1]=s[1],e[o+2]=s[2],e[o+3]=s[3],[o+4,!0]}let i=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(i===void 0)return[o,!1];e[o]=i>>8,e[o+1]=i&255}return[e.length,!1]};return this.readAtomically(()=>{let e=new Uint8Array(16),[n,o]=t(e);if(n===16)return e;if(o||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let i=new Uint8Array(14),s=16-(n+2),[a]=t(i.subarray(0,s));return e.set(i.subarray(0,a),16-a),e})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var cl=45,Sp=15,Pr=new ti;function Qs(r){if(!(r.length>Sp))return Pr.new(r).parseWith(()=>Pr.readIPv4Addr())}function ta(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>cl))return Pr.new(r).parseWith(()=>Pr.readIPv6Addr())}function ei(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>cl))return Pr.new(r).parseWith(()=>Pr.readIPAddr())}var jb=parseInt("0xFFFF",16),Gb=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function fl(r){return!!Qs(r)}function dl(r){return!!ta(r)}function ri(r){return!!ei(r)}var hl=fl,Np=dl,ea=function(r){let t=0;if(r=r.toString().trim(),hl(r)){let e=new Uint8Array(t+4);return r.split(/\./g).forEach(n=>{e[t++]=parseInt(n,10)&255}),e}if(Np(r)){let e=r.split(":",8),n;for(n=0;n<e.length;n++){let i=hl(e[n]),s;i&&(s=ea(e[n]),e[n]=W(s.slice(0,2),"base16")),s!=null&&++n<8&&e.splice(n,0,W(s.slice(2,4),"base16"))}if(e[0]==="")for(;e.length<8;)e.unshift("0");else if(e[e.length-1]==="")for(;e.length<8;)e.push("0");else if(e.length<8){for(n=0;n<e.length&&e[n]!=="";n++);let i=[n,1];for(n=9-e.length;n>0;n--)i.push("0");e.splice.apply(e,i)}let o=new Uint8Array(t+16);for(n=0;n<e.length;n++){let i=parseInt(e[n],16);o[t++]=i>>8&255,o[t++]=i&255}return o}throw new Error("invalid ip address")},pl=function(r,t=0,e){t=~~t,e=e??r.length-t;let n=new DataView(r.buffer);if(e===4){let o=[];for(let i=0;i<e;i++)o.push(r[t+i]);return o.join(".")}if(e===16){let o=[];for(let i=0;i<e;i+=2)o.push(n.getUint16(t+i).toString(16));return o.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Fr={},ra={},Rp=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,-1,"ip6zone"],[43,8,"ipcidr"],[53,-1,"dns",!0],[54,-1,"dns4",!0],[55,-1,"dns6",!0],[56,-1,"dnsaddr",!0],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[280,0,"webrtc-direct"],[281,0,"webrtc"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,-1,"unix",!1,!0],[421,-1,"ipfs"],[421,-1,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,-1,"garlic64"],[448,0,"tls"],[449,-1,"sni"],[460,0,"quic"],[461,0,"quic-v1"],[465,0,"webtransport"],[466,-1,"certhash"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[481,-1,"http-path"],[777,-1,"memory"]];Rp.forEach(r=>{let t=_p(...r);ra[t.code]=t,Fr[t.name]=t});function _p(r,t,e,n,o){return{code:r,size:t,name:e,resolvable:!!n,path:!!o}}function et(r){if(typeof r=="number"){if(ra[r]!=null)return ra[r];throw new Error(`no protocol with code: ${r}`)}else if(typeof r=="string"){if(Fr[r]!=null)return Fr[r];throw new Error(`no protocol with name: ${r}`)}throw new Error(`invalid protocol id type: ${typeof r}`)}var N1=et("ip4"),U1=et("ip6"),R1=et("ipcidr");function sa(r,t){switch(et(r).code){case 4:case 41:return Vp(t);case 42:return ia(t);case 6:case 273:case 33:case 132:return yl(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return ia(t);case 421:return Dp(t);case 444:return gl(t);case 445:return gl(t);case 466:return Op(t);case 481:return globalThis.encodeURIComponent(ia(t));default:return W(t,"base16")}}function aa(r,t){switch(et(r).code){case 4:return ml(t);case 41:return ml(t);case 42:return oa(t);case 6:case 273:case 33:case 132:return ca(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return oa(t);case 421:return Pp(t);case 444:return Mp(t);case 445:return $p(t);case 466:return Fp(t);case 481:return oa(globalThis.decodeURIComponent(t));default:return Z(t,"base16")}}var na=Object.values(rn).map(r=>r.decoder),Lp=function(){let r=na[0].or(na[1]);return na.slice(2).forEach(t=>r=r.or(t)),r}();function ml(r){if(!ri(r))throw new Error("invalid ip address");return ea(r)}function Vp(r){let t=pl(r,0,r.length);if(t==null)throw new Error("ipBuff is required");if(!ri(t))throw new Error("invalid ip address");return t}function ca(r){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,r),new Uint8Array(t)}function yl(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function oa(r){let t=Z(r),e=Uint8Array.from(Ar(t.length));return Dt([e,t],e.length+t.length)}function ia(r){let t=er(r);if(r=r.slice(Pt(t)),r.length!==t)throw new Error("inconsistent lengths");return W(r)}function Pp(r){let t;r[0]==="Q"||r[0]==="1"?t=ge(nt.decode(`z${r}`)).bytes:t=Q.parse(r).multihash.bytes;let e=Uint8Array.from(Ar(t.length));return Dt([e,t],e.length+t.length)}function Fp(r){let t=Lp.decode(r),e=Uint8Array.from(Ar(t.length));return Dt([e,t],e.length+t.length)}function Op(r){let t=er(r),e=r.slice(Pt(t));if(e.length!==t)throw new Error("inconsistent lengths");return"u"+W(e,"base64url")}function Dp(r){let t=er(r),e=r.slice(Pt(t));if(e.length!==t)throw new Error("inconsistent lengths");return W(e,"base58btc")}function Mp(r){let t=r.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let e=Gt.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=ca(n);return Dt([e,o],e.length+o.length)}function $p(r){let t=r.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let e=Gt.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=ca(n);return Dt([e,o],e.length+o.length)}function gl(r){let t=r.slice(0,r.length-2),e=r.slice(r.length-2),n=W(t,"base32"),o=yl(e);return`${n}:${o}`}function wl(r){r=ua(r);let t=[],e=[],n=null,o=r.split("/").slice(1);if(o.length===1&&o[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let i=0;i<o.length;i++){let s=o[i],a=et(s);if(a.size===0){t.push([a.code]),e.push([a.code]);continue}if(i++,i>=o.length)throw bl("invalid address: "+r);if(a.path===!0){n=ua(o.slice(i).join("/")),t.push([a.code,aa(a.code,n)]),e.push([a.code,n]);break}let c=aa(a.code,o[i]);t.push([a.code,c]),e.push([a.code,sa(a.code,c)])}return{string:xl(e),bytes:fa(t),tuples:t,stringTuples:e,path:n}}function la(r){let t=[],e=[],n=null,o=0;for(;o<r.length;){let i=er(r,o),s=Pt(i),a=et(i),c=Hp(a,r.slice(o+s));if(c===0){t.push([i]),e.push([i]),o+=s;continue}let f=r.slice(o+s,o+s+c);if(o+=c+s,o>r.length)throw bl("Invalid address Uint8Array: "+W(r,"base16"));t.push([i,f]);let u=sa(i,f);if(e.push([i,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(r),string:xl(e),tuples:t,stringTuples:e,path:n}}function xl(r){let t=[];return r.map(e=>{let n=et(e[0]);return t.push(n.name),e.length>1&&e[1]!=null&&t.push(e[1]),null}),ua(t.join("/"))}function fa(r){return Dt(r.map(t=>{let e=et(t[0]),n=Uint8Array.from(Ar(e.code));return t.length>1&&t[1]!=null&&(n=Dt([n,t[1]])),n}))}function Hp(r,t){if(r.size>0)return r.size/8;if(r.size===0)return 0;{let e=er(t instanceof Uint8Array?t:Uint8Array.from(t));return e+Pt(e)}}function ua(r){return"/"+r.trim().split("/").filter(t=>t).join("/")}function bl(r){return new Error("Error parsing address: "+r)}var Kp=Symbol.for("nodejs.util.inspect.custom"),ha=Symbol.for("@multiformats/js-multiaddr/multiaddr"),qp=[et("dns").code,et("dns4").code,et("dns6").code,et("dnsaddr").code],da=class extends Error{constructor(t="No available resolver"){super(t),this.name="NoAvailableResolverError"}},ni=class r{bytes;#t;#e;#i;#a;[ha]=!0;constructor(t){t==null&&(t="");let e;if(t instanceof Uint8Array)e=la(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);e=wl(t)}else if(El(t))e=la(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=e.bytes,this.#t=e.string,this.#e=e.tuples,this.#i=e.stringTuples,this.#a=e.path}toString(){return this.#t}toJSON(){return this.toString()}toOptions(){let t,e,n,o,i="",s=et("tcp"),a=et("udp"),c=et("ip4"),f=et("ip6"),u=et("dns6"),l=et("ip6zone");for(let[b,I]of this.stringTuples())b===l.code&&(i=`%${I??""}`),qp.includes(b)&&(e=s.name,o=443,n=`${I??""}${i}`,t=b===u.code?6:4),(b===s.code||b===a.code)&&(e=et(b).name,o=parseInt(I??"")),(b===c.code||b===f.code)&&(e=et(b).name,n=`${I??""}${i}`,t=b===f.code?6:4);if(t==null||e==null||n==null||o==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:e,port:o}}protos(){return this.#e.map(([t])=>Object.assign({},et(t)))}protoCodes(){return this.#e.map(([t])=>t)}protoNames(){return this.#e.map(([t])=>et(t).name)}tuples(){return this.#e}stringTuples(){return this.#i}encapsulate(t){return t=new r(t),new r(this.toString()+t.toString())}decapsulate(t){let e=t.toString(),n=this.toString(),o=n.lastIndexOf(e);if(o<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new r(n.slice(0,o))}decapsulateCode(t){let e=this.tuples();for(let n=e.length-1;n>=0;n--)if(e[n][0]===t)return new r(fa(e.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,o])=>{n===Fr.p2p.code&&t.push([n,o]),n===Fr["p2p-circuit"].code&&(t=[])});let e=t.pop();if(e?.[1]!=null){let n=e[1];return n[0]==="Q"||n[0]==="1"?W(nt.decode(`z${n}`),"base58btc"):W(Q.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#a}equals(t){return ct(this.bytes,t.bytes)}async resolve(t){let e=this.protos().find(i=>i.resolvable);if(e==null)return[this];let n=vl.get(e.name);if(n==null)throw new da(`no available resolver for ${e.name}`);return(await n(this,t)).map(i=>sr(i))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let e=(t??this).protos();return!(e.length!==2||e[0].code!==4&&e[0].code!==41||e[1].code!==6&&e[1].code!==273)}[Kp](){return`Multiaddr(${this.#t})`}};var vl=new Map;function El(r){return!!r?.[ha]}function sr(r){return new ni(r)}function bn(r){let t=new globalThis.AbortController;function e(){t.abort();for(let i of r)i?.removeEventListener!=null&&i.removeEventListener("abort",e)}for(let i of r){if(i?.aborted===!0){e();break}i?.addEventListener!=null&&i.addEventListener("abort",e)}function n(){for(let i of r)i?.removeEventListener!=null&&i.removeEventListener("abort",e)}let o=t.signal;return o.clear=n,o}async function*oi(r,t={}){let e=r.getReader();try{for(;;){let n=await e.read();if(n.done)return;yield n.value}}finally{t.preventCancel!==!0&&await e.cancel(),e.releaseLock()}}var zp="/",jp=new TextEncoder().encode(zp),s2=jp[0];var Im=_n(ma(),1);var re=class extends Error{static name="SignatureVerificationError";constructor(t="Record signature verification failed"){super(t),this.name="SignatureVerificationError"}},ii=class extends Error{static name="RecordExpiredError";constructor(t="Record has expired"){super(t),this.name="RecordExpiredError"}},Or=class extends Error{static name="UnsupportedValidityError";constructor(t="The validity type is unsupported"){super(t),this.name="UnsupportedValidityError"}},si=class extends Error{static name="RecordTooLargeError";constructor(t="The record is too large"){super(t),this.name="RecordTooLargeError"}},ai=class extends Error{static name="InvalidValueError";constructor(t="Value must be a valid content path starting with /"){super(t),this.name="InvalidValueError"}},ci=class extends Error{static name="InvalidRecordDataError";constructor(t="Invalid record data"){super(t),this.name="InvalidRecordDataError"}},vn=class extends Error{static name="InvalidEmbeddedPublicKeyError";constructor(t="Invalid embedded public key"){super(t),this.name="InvalidEmbeddedPublicKeyError"}};var ne;(function(r){let t;(function(o){o.EOL="EOL"})(t=r.ValidityType||(r.ValidityType={}));let e;(function(o){o[o.EOL=0]="EOL"})(e||(e={})),function(o){o.codec=()=>sn(e)}(t=r.ValidityType||(r.ValidityType={}));let n;r.codec=()=>(n==null&&(n=Cr((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),r.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 a={},c=i==null?o.len:o.pos+i;for(;o.pos<c;){let f=o.uint32();switch(f>>>3){case 1:{a.value=o.bytes();break}case 2:{a.signatureV1=o.bytes();break}case 3:{a.validityType=r.ValidityType.codec().decode(o);break}case 4:{a.validity=o.bytes();break}case 5:{a.sequence=o.uint64();break}case 6:{a.ttl=o.uint64();break}case 7:{a.pubKey=o.bytes();break}case 8:{a.signatureV2=o.bytes();break}case 9:{a.data=o.bytes();break}default:{o.skipType(f&7);break}}}return a})),n),r.encode=o=>Ir(o,r.codec()),r.decode=(o,i)=>Sr(o,r.codec(),i)})(ne||(ne={}));var Gp=["string","number","bigint","symbol"],Zp=["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 Bl(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let t=typeof r;if(Gp.includes(t))return t;if(t==="function")return"Function";if(Array.isArray(r))return"Array";if(Wp(r))return"Buffer";let e=Yp(r);return e||"Object"}function Wp(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function Yp(r){let t=Object.prototype.toString.call(r).slice(8,-1);if(Zp.includes(t))return t}var y=class{constructor(t,e,n){this.major=t,this.majorEncoded=t<<5,this.name=e,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(t){return this.major<t.major?-1:this.major>t.major?1:0}};y.uint=new y(0,"uint",!0);y.negint=new y(1,"negint",!0);y.bytes=new y(2,"bytes",!0);y.string=new y(3,"string",!0);y.array=new y(4,"array",!1);y.map=new y(5,"map",!1);y.tag=new y(6,"tag",!1);y.float=new y(7,"float",!0);y.false=new y(7,"false",!0);y.true=new y(7,"true",!0);y.null=new y(7,"null",!0);y.undefined=new y(7,"undefined",!0);y.break=new y(7,"break",!0);var L=class{constructor(t,e,n){this.type=t,this.value=e,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var Dr=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",Jp=new TextDecoder,Xp=new TextEncoder;function ui(r){return Dr&&globalThis.Buffer.isBuffer(r)}function kl(r){return r instanceof Uint8Array?ui(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Cl=Dr?(r,t,e)=>e-t>64?globalThis.Buffer.from(r.subarray(t,e)).toString("utf8"):Sl(r,t,e):(r,t,e)=>e-t>64?Jp.decode(r.subarray(t,e)):Sl(r,t,e),Tl=Dr?r=>r.length>64?globalThis.Buffer.from(r):Al(r):r=>r.length>64?Xp.encode(r):Al(r);var Mr=Dr?(r,t,e)=>ui(r)?new Uint8Array(r.subarray(t,e)):r.slice(t,e):(r,t,e)=>r.slice(t,e),Nl=Dr?(r,t)=>(r=r.map(e=>e instanceof Uint8Array?e:globalThis.Buffer.from(e)),kl(globalThis.Buffer.concat(r,t))):(r,t)=>{let e=new Uint8Array(t),n=0;for(let o of r)n+o.length>e.length&&(o=o.subarray(0,e.length-n)),e.set(o,n),n+=o.length;return e},Ul=Dr?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Rl(r,t){if(ui(r)&&ui(t))return r.compare(t);for(let e=0;e<r.length;e++)if(r[e]!==t[e])return r[e]<t[e]?-1:1;return 0}function Al(r){let t=[],e=0;for(let n=0;n<r.length;n++){let o=r.charCodeAt(n);o<128?t[e++]=o:o<2048?(t[e++]=o>>6|192,t[e++]=o&63|128):(o&64512)===55296&&n+1<r.length&&(r.charCodeAt(n+1)&64512)===56320?(o=65536+((o&1023)<<10)+(r.charCodeAt(++n)&1023),t[e++]=o>>18|240,t[e++]=o>>12&63|128,t[e++]=o>>6&63|128,t[e++]=o&63|128):(t[e++]=o>>12|224,t[e++]=o>>6&63|128,t[e++]=o&63|128)}return t}function Sl(r,t,e){let n=[];for(;t<e;){let o=r[t],i=null,s=o>239?4:o>223?3:o>191?2:1;if(t+s<=e){let a,c,f,u;switch(s){case 1:o<128&&(i=o);break;case 2:a=r[t+1],(a&192)===128&&(u=(o&31)<<6|a&63,u>127&&(i=u));break;case 3:a=r[t+1],c=r[t+2],(a&192)===128&&(c&192)===128&&(u=(o&15)<<12|(a&63)<<6|c&63,u>2047&&(u<55296||u>57343)&&(i=u));break;case 4:a=r[t+1],c=r[t+2],f=r[t+3],(a&192)===128&&(c&192)===128&&(f&192)===128&&(u=(o&15)<<18|(a&63)<<12|(c&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 Qp(n)}var Il=4096;function Qp(r){let t=r.length;if(t<=Il)return String.fromCharCode.apply(String,r);let e="",n=0;for(;n<t;)e+=String.fromCharCode.apply(String,r.slice(n,n+=Il));return e}var tm=256,li=class{constructor(t=tm){this.chunkSize=t,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(t){let e=this.chunks[this.chunks.length-1];if(this.cursor+t.length<=this.maxCursor+1){let o=e.length-(this.maxCursor-this.cursor)-1;e.set(t,o)}else{if(e){let o=e.length-(this.maxCursor-this.cursor)-1;o<e.length&&(this.chunks[this.chunks.length-1]=e.subarray(0,o),this.maxCursor=this.cursor-1)}t.length<64&&t.length<this.chunkSize?(e=Ul(this.chunkSize),this.chunks.push(e),this.maxCursor+=e.length,this._initReuseChunk===null&&(this._initReuseChunk=e),e.set(t,0)):(this.chunks.push(t),this.maxCursor+=t.length)}this.cursor+=t.length}toBytes(t=!1){let e;if(this.chunks.length===1){let n=this.chunks[0];t&&this.cursor>n.length/2?(e=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):e=Mr(n,0,this.cursor)}else e=Nl(this.chunks,this.cursor);return t&&this.reset(),e}};var $="CBOR decode error:",ga="CBOR encode error:",En=[];En[23]=1;En[24]=2;En[25]=3;En[26]=5;En[27]=9;function Te(r,t,e){if(r.length-t<e)throw new Error(`${$} not enough data for type`)}var gt=[24,256,65536,4294967296,BigInt("18446744073709551616")];function Mt(r,t,e){Te(r,t,1);let n=r[t];if(e.strict===!0&&n<gt[0])throw new Error(`${$} integer encoded in more bytes than necessary (strict decode)`);return n}function $t(r,t,e){Te(r,t,2);let n=r[t]<<8|r[t+1];if(e.strict===!0&&n<gt[1])throw new Error(`${$} integer encoded in more bytes than necessary (strict decode)`);return n}function Ht(r,t,e){Te(r,t,4);let n=r[t]*16777216+(r[t+1]<<16)+(r[t+2]<<8)+r[t+3];if(e.strict===!0&&n<gt[2])throw new Error(`${$} integer encoded in more bytes than necessary (strict decode)`);return n}function Kt(r,t,e){Te(r,t,8);let n=r[t]*16777216+(r[t+1]<<16)+(r[t+2]<<8)+r[t+3],o=r[t+4]*16777216+(r[t+5]<<16)+(r[t+6]<<8)+r[t+7],i=(BigInt(n)<<BigInt(32))+BigInt(o);if(e.strict===!0&&i<gt[3])throw new Error(`${$} integer encoded in more bytes than necessary (strict decode)`);if(i<=Number.MAX_SAFE_INTEGER)return Number(i);if(e.allowBigInt===!0)return i;throw new Error(`${$} integers outside of the safe integer range are not supported`)}function _l(r,t,e,n){return new L(y.uint,Mt(r,t+1,n),2)}function Ll(r,t,e,n){return new L(y.uint,$t(r,t+1,n),3)}function Vl(r,t,e,n){return new L(y.uint,Ht(r,t+1,n),5)}function Pl(r,t,e,n){return new L(y.uint,Kt(r,t+1,n),9)}function zt(r,t){return bt(r,0,t.value)}function bt(r,t,e){if(e<gt[0]){let n=Number(e);r.push([t|n])}else if(e<gt[1]){let n=Number(e);r.push([t|24,n])}else if(e<gt[2]){let n=Number(e);r.push([t|25,n>>>8,n&255])}else if(e<gt[3]){let n=Number(e);r.push([t|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(e);if(n<gt[4]){let o=[t|27,0,0,0,0,0,0,0],i=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));o[8]=i&255,i=i>>8,o[7]=i&255,i=i>>8,o[6]=i&255,i=i>>8,o[5]=i&255,o[4]=s&255,s=s>>8,o[3]=s&255,s=s>>8,o[2]=s&255,s=s>>8,o[1]=s&255,r.push(o)}else throw new Error(`${$} encountered BigInt larger than allowable range`)}}zt.encodedSize=function(t){return bt.encodedSize(t.value)};bt.encodedSize=function(t){return t<gt[0]?1:t<gt[1]?2:t<gt[2]?3:t<gt[3]?5:9};zt.compareTokens=function(t,e){return t.value<e.value?-1:t.value>e.value?1:0};function Fl(r,t,e,n){return new L(y.negint,-1-Mt(r,t+1,n),2)}function Ol(r,t,e,n){return new L(y.negint,-1-$t(r,t+1,n),3)}function Dl(r,t,e,n){return new L(y.negint,-1-Ht(r,t+1,n),5)}var ya=BigInt(-1),Ml=BigInt(1);function $l(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o!="bigint"){let i=-1-o;if(i>=Number.MIN_SAFE_INTEGER)return new L(y.negint,i,9)}if(n.allowBigInt!==!0)throw new Error(`${$} integers outside of the safe integer range are not supported`);return new L(y.negint,ya-BigInt(o),9)}function fi(r,t){let e=t.value,n=typeof e=="bigint"?e*ya-Ml:e*-1-1;bt(r,t.type.majorEncoded,n)}fi.encodedSize=function(t){let e=t.value,n=typeof e=="bigint"?e*ya-Ml:e*-1-1;return n<gt[0]?1:n<gt[1]?2:n<gt[2]?3:n<gt[3]?5:9};fi.compareTokens=function(t,e){return t.value<e.value?1:t.value>e.value?-1:0};function Bn(r,t,e,n){Te(r,t,e+n);let o=Mr(r,t+e,t+e+n);return new L(y.bytes,o,e+n)}function Hl(r,t,e,n){return Bn(r,t,1,e)}function Kl(r,t,e,n){return Bn(r,t,2,Mt(r,t+1,n))}function ql(r,t,e,n){return Bn(r,t,3,$t(r,t+1,n))}function zl(r,t,e,n){return Bn(r,t,5,Ht(r,t+1,n))}function jl(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o=="bigint")throw new Error(`${$} 64-bit integer bytes lengths not supported`);return Bn(r,t,9,o)}function di(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===y.string?Tl(r.value):r.value),r.encodedBytes}function $r(r,t){let e=di(t);bt(r,t.type.majorEncoded,e.length),r.push(e)}$r.encodedSize=function(t){let e=di(t);return bt.encodedSize(e.length)+e.length};$r.compareTokens=function(t,e){return rm(di(t),di(e))};function rm(r,t){return r.length<t.length?-1:r.length>t.length?1:Rl(r,t)}function An(r,t,e,n,o){let i=e+n;Te(r,t,i);let s=new L(y.string,Cl(r,t+e,t+i),i);return o.retainStringBytes===!0&&(s.byteValue=Mr(r,t+e,t+i)),s}function Gl(r,t,e,n){return An(r,t,1,e,n)}function Zl(r,t,e,n){return An(r,t,2,Mt(r,t+1,n),n)}function Wl(r,t,e,n){return An(r,t,3,$t(r,t+1,n),n)}function Yl(r,t,e,n){return An(r,t,5,Ht(r,t+1,n),n)}function Jl(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o=="bigint")throw new Error(`${$} 64-bit integer string lengths not supported`);return An(r,t,9,o,n)}var Xl=$r;function Hr(r,t,e,n){return new L(y.array,n,e)}function Ql(r,t,e,n){return Hr(r,t,1,e)}function tf(r,t,e,n){return Hr(r,t,2,Mt(r,t+1,n))}function ef(r,t,e,n){return Hr(r,t,3,$t(r,t+1,n))}function rf(r,t,e,n){return Hr(r,t,5,Ht(r,t+1,n))}function nf(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o=="bigint")throw new Error(`${$} 64-bit integer array lengths not supported`);return Hr(r,t,9,o)}function of(r,t,e,n){if(n.allowIndefinite===!1)throw new Error(`${$} indefinite length items not allowed`);return Hr(r,t,1,1/0)}function hi(r,t){bt(r,y.array.majorEncoded,t.value)}hi.compareTokens=zt.compareTokens;hi.encodedSize=function(t){return bt.encodedSize(t.value)};function Kr(r,t,e,n){return new L(y.map,n,e)}function sf(r,t,e,n){return Kr(r,t,1,e)}function af(r,t,e,n){return Kr(r,t,2,Mt(r,t+1,n))}function cf(r,t,e,n){return Kr(r,t,3,$t(r,t+1,n))}function uf(r,t,e,n){return Kr(r,t,5,Ht(r,t+1,n))}function lf(r,t,e,n){let o=Kt(r,t+1,n);if(typeof o=="bigint")throw new Error(`${$} 64-bit integer map lengths not supported`);return Kr(r,t,9,o)}function ff(r,t,e,n){if(n.allowIndefinite===!1)throw new Error(`${$} indefinite length items not allowed`);return Kr(r,t,1,1/0)}function pi(r,t){bt(r,y.map.majorEncoded,t.value)}pi.compareTokens=zt.compareTokens;pi.encodedSize=function(t){return bt.encodedSize(t.value)};function df(r,t,e,n){return new L(y.tag,e,1)}function hf(r,t,e,n){return new L(y.tag,Mt(r,t+1,n),2)}function pf(r,t,e,n){return new L(y.tag,$t(r,t+1,n),3)}function mf(r,t,e,n){return new L(y.tag,Ht(r,t+1,n),5)}function gf(r,t,e,n){return new L(y.tag,Kt(r,t+1,n),9)}function mi(r,t){bt(r,y.tag.majorEncoded,t.value)}mi.compareTokens=zt.compareTokens;mi.encodedSize=function(t){return bt.encodedSize(t.value)};var cm=20,um=21,lm=22,fm=23;function yf(r,t,e,n){if(n.allowUndefined===!1)throw new Error(`${$} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new L(y.null,null,1):new L(y.undefined,void 0,1)}function wf(r,t,e,n){if(n.allowIndefinite===!1)throw new Error(`${$} indefinite length items not allowed`);return new L(y.break,void 0,1)}function wa(r,t,e){if(e){if(e.allowNaN===!1&&Number.isNaN(r))throw new Error(`${$} NaN values are not supported`);if(e.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${$} Infinity values are not supported`)}return new L(y.float,r,t)}function xf(r,t,e,n){return wa(xa(r,t+1),3,n)}function bf(r,t,e,n){return wa(ba(r,t+1),5,n)}function vf(r,t,e,n){return wa(Sf(r,t+1),9,n)}function gi(r,t,e){let n=t.value;if(n===!1)r.push([y.float.majorEncoded|cm]);else if(n===!0)r.push([y.float.majorEncoded|um]);else if(n===null)r.push([y.float.majorEncoded|lm]);else if(n===void 0)r.push([y.float.majorEncoded|fm]);else{let o,i=!1;(!e||e.float64!==!0)&&(Bf(n),o=xa(oe,1),n===o||Number.isNaN(n)?(oe[0]=249,r.push(oe.slice(0,3)),i=!0):(Af(n),o=ba(oe,1),n===o&&(oe[0]=250,r.push(oe.slice(0,5)),i=!0))),i||(dm(n),o=Sf(oe,1),oe[0]=251,r.push(oe.slice(0,9)))}}gi.encodedSize=function(t,e){let n=t.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!e||e.float64!==!0){Bf(n);let o=xa(oe,1);if(n===o||Number.isNaN(n))return 3;if(Af(n),o=ba(oe,1),n===o)return 5}return 9};var Ef=new ArrayBuffer(9),jt=new DataView(Ef,1),oe=new Uint8Array(Ef,0);function Bf(r){if(r===1/0)jt.setUint16(0,31744,!1);else if(r===-1/0)jt.setUint16(0,64512,!1);else if(Number.isNaN(r))jt.setUint16(0,32256,!1);else{jt.setFloat32(0,r);let t=jt.getUint32(0),e=(t&2139095040)>>23,n=t&8388607;if(e===255)jt.setUint16(0,31744,!1);else if(e===0)jt.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let o=e-127;o<-24?jt.setUint16(0,0):o<-14?jt.setUint16(0,(t&2147483648)>>16|1<<24+o,!1):jt.setUint16(0,(t&2147483648)>>16|o+15<<10|n>>13,!1)}}}function xa(r,t){if(r.length-t<2)throw new Error(`${$} not enough data for float16`);let e=(r[t]<<8)+r[t+1];if(e===31744)return 1/0;if(e===64512)return-1/0;if(e===32256)return NaN;let n=e>>10&31,o=e&1023,i;return n===0?i=o*2**-24:n!==31?i=(o+1024)*2**(n-25):i=o===0?1/0:NaN,e&32768?-i:i}function Af(r){jt.setFloat32(0,r,!1)}function ba(r,t){if(r.length-t<4)throw new Error(`${$} not enough data for float32`);let e=(r.byteOffset||0)+t;return new DataView(r.buffer,e,4).getFloat32(0,!1)}function dm(r){jt.setFloat64(0,r,!1)}function Sf(r,t){if(r.length-t<8)throw new Error(`${$} not enough data for float64`);let e=(r.byteOffset||0)+t;return new DataView(r.buffer,e,8).getFloat64(0,!1)}gi.compareTokens=zt.compareTokens;function Y(r,t,e){throw new Error(`${$} encountered invalid minor (${e}) for major ${r[t]>>>5}`)}function yi(r){return()=>{throw new Error(`${$} ${r}`)}}var k=[];for(let r=0;r<=23;r++)k[r]=Y;k[24]=_l;k[25]=Ll;k[26]=Vl;k[27]=Pl;k[28]=Y;k[29]=Y;k[30]=Y;k[31]=Y;for(let r=32;r<=55;r++)k[r]=Y;k[56]=Fl;k[57]=Ol;k[58]=Dl;k[59]=$l;k[60]=Y;k[61]=Y;k[62]=Y;k[63]=Y;for(let r=64;r<=87;r++)k[r]=Hl;k[88]=Kl;k[89]=ql;k[90]=zl;k[91]=jl;k[92]=Y;k[93]=Y;k[94]=Y;k[95]=yi("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)k[r]=Gl;k[120]=Zl;k[121]=Wl;k[122]=Yl;k[123]=Jl;k[124]=Y;k[125]=Y;k[126]=Y;k[127]=yi("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)k[r]=Ql;k[152]=tf;k[153]=ef;k[154]=rf;k[155]=nf;k[156]=Y;k[157]=Y;k[158]=Y;k[159]=of;for(let r=160;r<=183;r++)k[r]=sf;k[184]=af;k[185]=cf;k[186]=uf;k[187]=lf;k[188]=Y;k[189]=Y;k[190]=Y;k[191]=ff;for(let r=192;r<=215;r++)k[r]=df;k[216]=hf;k[217]=pf;k[218]=mf;k[219]=gf;k[220]=Y;k[221]=Y;k[222]=Y;k[223]=Y;for(let r=224;r<=243;r++)k[r]=yi("simple values are not supported");k[244]=Y;k[245]=Y;k[246]=Y;k[247]=yf;k[248]=yi("simple values are not supported");k[249]=xf;k[250]=bf;k[251]=vf;k[252]=Y;k[253]=Y;k[254]=Y;k[255]=wf;var ie=[];for(let r=0;r<24;r++)ie[r]=new L(y.uint,r,1);for(let r=-1;r>=-24;r--)ie[31-r]=new L(y.negint,r,1);ie[64]=new L(y.bytes,new Uint8Array(0),1);ie[96]=new L(y.string,"",1);ie[128]=new L(y.array,0,1);ie[160]=new L(y.map,0,1);ie[244]=new L(y.false,!1,1);ie[245]=new L(y.true,!0,1);ie[246]=new L(y.null,null,1);function pm(){let r=[];return r[y.uint.major]=zt,r[y.negint.major]=fi,r[y.bytes.major]=$r,r[y.string.major]=Xl,r[y.array.major]=hi,r[y.map.major]=pi,r[y.tag.major]=mi,r[y.float.major]=gi,r}var ov=pm(),iv=new li,wi=class r{constructor(t,e){this.obj=t,this.parent=e}includes(t){let e=this;do if(e.obj===t)return!0;while(e=e.parent);return!1}static createCheck(t,e){if(t&&t.includes(e))throw new Error(`${ga} object contains circular references`);return new r(e,t)}},je={null:new L(y.null,null),undefined:new L(y.undefined,void 0),true:new L(y.true,!0),false:new L(y.false,!1),emptyArray:new L(y.array,0),emptyMap:new L(y.map,0)},Ge={number(r,t,e,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new L(y.float,r):r>=0?new L(y.uint,r):new L(y.negint,r)},bigint(r,t,e,n){return r>=BigInt(0)?new L(y.uint,r):new L(y.negint,r)},Uint8Array(r,t,e,n){return new L(y.bytes,r)},string(r,t,e,n){return new L(y.string,r)},boolean(r,t,e,n){return r?je.true:je.false},null(r,t,e,n){return je.null},undefined(r,t,e,n){return je.undefined},ArrayBuffer(r,t,e,n){return new L(y.bytes,new Uint8Array(r))},DataView(r,t,e,n){return new L(y.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,t,e,n){if(!r.length)return e.addBreakTokens===!0?[je.emptyArray,new L(y.break)]:je.emptyArray;n=wi.createCheck(n,r);let o=[],i=0;for(let s of r)o[i++]=va(s,e,n);return e.addBreakTokens?[new L(y.array,r.length),o,new L(y.break)]:[new L(y.array,r.length),o]},Object(r,t,e,n){let o=t!=="Object",i=o?r.keys():Object.keys(r),s=o?r.size:i.length;if(!s)return e.addBreakTokens===!0?[je.emptyMap,new L(y.break)]:je.emptyMap;n=wi.createCheck(n,r);let a=[],c=0;for(let f of i)a[c++]=[va(f,e,n),va(o?r.get(f):r[f],e,n)];return mm(a,e),e.addBreakTokens?[new L(y.map,s),a,new L(y.break)]:[new L(y.map,s),a]}};Ge.Map=Ge.Object;Ge.Buffer=Ge.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))Ge[`${r}Array`]=Ge.DataView;function va(r,t={},e){let n=Bl(r),o=t&&t.typeEncoders&&t.typeEncoders[n]||Ge[n];if(typeof o=="function"){let s=o(r,n,t,e);if(s!=null)return s}let i=Ge[n];if(!i)throw new Error(`${ga} unsupported type: ${n}`);return i(r,n,t,e)}function mm(r,t){t.mapSorter&&r.sort(t.mapSorter)}var gm={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},xi=class{constructor(t,e={}){this._pos=0,this.data=t,this.options=e}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let t=this.data[this._pos],e=ie[t];if(e===void 0){let n=k[t];if(!n)throw new Error(`${$} no decoder for major type ${t>>>5} (byte 0x${t.toString(16).padStart(2,"0")})`);let o=t&31;e=n(this.data,this._pos,o,this.options)}return this._pos+=e.encodedLength,e}},Sn=Symbol.for("DONE"),bi=Symbol.for("BREAK");function ym(r,t,e){let n=[];for(let o=0;o<r.value;o++){let i=qr(t,e);if(i===bi){if(r.value===1/0)break;throw new Error(`${$} got unexpected break to lengthed array`)}if(i===Sn)throw new Error(`${$} found array but not enough entries (got ${o}, expected ${r.value})`);n[o]=i}return n}function wm(r,t,e){let n=e.useMaps===!0,o=n?void 0:{},i=n?new Map:void 0;for(let s=0;s<r.value;s++){let a=qr(t,e);if(a===bi){if(r.value===1/0)break;throw new Error(`${$} got unexpected break to lengthed map`)}if(a===Sn)throw new Error(`${$} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${$} non-string keys not supported (got ${typeof a})`);if(e.rejectDuplicateMapKeys===!0&&(n&&i.has(a)||!n&&a in o))throw new Error(`${$} found repeat map key "${a}"`);let c=qr(t,e);if(c===Sn)throw new Error(`${$} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?i.set(a,c):o[a]=c}return n?i:o}function qr(r,t){if(r.done())return Sn;let e=r.next();if(e.type===y.break)return bi;if(e.type.terminal)return e.value;if(e.type===y.array)return ym(e,r,t);if(e.type===y.map)return wm(e,r,t);if(e.type===y.tag){if(t.tags&&typeof t.tags[e.value]=="function"){let n=qr(r,t);return t.tags[e.value](n)}throw new Error(`${$} tag not supported (${e.value})`)}throw new Error("unsupported")}function If(r,t){if(!(r instanceof Uint8Array))throw new Error(`${$} data to decode must be a Uint8Array`);t=Object.assign({},gm,t);let e=t.tokenizer||new xi(r,t),n=qr(e,t);if(n===Sn)throw new Error(`${$} did not find any content to decode`);if(n===bi)throw new Error(`${$} got unexpected break`);return[n,r.subarray(e.pos())]}function Ea(r,t){let[e,n]=If(r,t);if(n.length>0)throw new Error(`${$} too many terminals, data makes no sense`);return e}var vm=Re("ipns:utils"),kf=Z("/ipns/");var Em=0,Bm=18;function Cf(r){let t;if(r.pubKey!=null)try{t=rl(r.pubKey)}catch(e){throw vm.error(e),e}if(t!=null)return t}function Tf(r){let t=Z("ipns-signature:");return Dt([t,r])}function cr(r){return"signatureV1"in r?ne.encode({value:Z(r.value),signatureV1:r.signatureV1,validityType:r.validityType,validity:Z(r.validity),sequence:r.sequence,ttl:r.ttl,pubKey:r.pubKey,signatureV2:r.signatureV2,data:r.data}):ne.encode({pubKey:r.pubKey,signatureV2:r.signatureV2,data:r.data})}function de(r){let t=ne.decode(r);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 re("Missing data or signatureV2");let e=Nf(t.data),n=Am(e.Value),o=W(e.Validity);if(t.value!=null&&t.signatureV1!=null)return Sm(t),{value:n,validityType:ne.ValidityType.EOL,validity:o,sequence:e.Sequence,ttl:e.TTL,pubKey:t.pubKey,signatureV1:t.signatureV1,signatureV2:t.signatureV2,data:t.data};if(t.signatureV2!=null)return{value:n,validityType:ne.ValidityType.EOL,validity:o,sequence:e.Sequence,ttl:e.TTL,pubKey:t.pubKey,signatureV2:t.signatureV2,data:t.data};throw new Error("invalid record: does not include signatureV1 or signatureV2")}function In(r){return Dt([kf,r.bytes])}function Ne(r){let t=ge(r.slice(kf.length));if(!vi(t,Em)&&!vi(t,Bm))throw new fr("Multihash in IPNS key was not identity or sha2-256");return t}function Nf(r){let t=Ea(r);if(t.ValidityType===0)t.ValidityType=ne.ValidityType.EOL;else throw new Or("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 Am(r){let t=W(r).trim();if(t.startsWith("/"))return t;try{return`/ipfs/${Q.decode(r).toV1().toString()}`}catch{}try{return`/ipfs/${Q.parse(t).toV1().toString()}`}catch{}throw new ai("Value must be a valid content path starting with /")}function Sm(r){if(r.data==null)throw new ci("Record data is missing");let t=Nf(r.data);if(!ct(t.Value,r.value??new Uint8Array(0)))throw new re('Field "value" did not match between protobuf and CBOR');if(!ct(t.Validity,r.validity??new Uint8Array(0)))throw new re('Field "validity" did not match between protobuf and CBOR');if(t.ValidityType!==r.validityType)throw new re('Field "validityType" did not match between protobuf and CBOR');if(t.Sequence!==r.sequence)throw new re('Field "sequence" did not match between protobuf and CBOR');if(t.TTL!==r.ttl)throw new re('Field "ttl" did not match between protobuf and CBOR')}function vi(r,t){return r.code===t}var Tv=Re("ipns"),Nv=60*60*1e9,km="/ipns/",Uv=km.length;var Uf=_n(ma(),1);var Ei=Re("ipns:validator"),Cm=1024*10,Tm=async(r,t)=>{let e=de(t),n;try{let o=Tf(e.data);n=await r.verify(o,e.signatureV2)}catch{n=!1}if(!n)throw Ei.error("record signature verification failed"),new re("Record signature verification failed");if(e.validityType===ne.ValidityType.EOL){if(Uf.default.fromString(e.validity).toDate().getTime()<Date.now())throw Ei.error("record has expired"),new ii("record has expired")}else if(e.validityType!=null)throw Ei.error("the validity type is unsupported"),new Or("The validity type is unsupported");Ei("ipns record for %s is valid",e.value)};async function Rf(r,t){if(t.byteLength>Cm)throw new si("The record is too large");let e=Ne(r),n;vi(e,0)&&(n=Yo(e));let o=de(t),i=Cf(o)??n;if(i==null)throw new vn("Could not extract public key from IPNS record or routing key");let s=In(i.toMultihash());if(!ct(r,s))throw new vn("Embedded public key did not match routing key");await Tm(i,t)}async function*kn(r){let t=/\r?\n/,e=new TextDecoder("utf8"),n="";for await(let o of r){typeof o=="string"&&(o=new TextEncoder().encode(o)),n+=e.decode(o,{stream:!0});let i=n.split(t);n=i.pop()??"";for(let s=0;s<i.length;s++)yield JSON.parse(i[s])}n+=e.decode(),n!==""&&(yield JSON.parse(n))}function he(){let r={};return r.promise=new Promise((t,e)=>{r.resolve=t,r.reject=e}),r}var Aa=_n(Lf(),1);var Tn=class extends Error{constructor(t){super(t),this.name="TimeoutError"}},Sa=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t}},Vf=r=>globalThis.DOMException===void 0?new Sa(r):new DOMException(r),Pf=r=>{let t=r.reason===void 0?Vf("This operation was aborted."):r.reason;return t instanceof Error?t:Vf(t)};function Ia(r,t){let{milliseconds:e,fallback:n,message:o,customTimers:i={setTimeout,clearTimeout}}=t,s,c=new Promise((f,u)=>{if(typeof e!="number"||Math.sign(e)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${e}\``);if(t.signal){let{signal:d}=t;d.aborted&&u(Pf(d));let b=()=>{u(Pf(d))};d.addEventListener("abort",b,{once:!0}),r.finally(()=>{d.removeEventListener("abort",b)})}if(e===Number.POSITIVE_INFINITY){r.then(f,u);return}let l=new Tn;s=i.setTimeout.call(void 0,()=>{if(n){try{f(n())}catch(d){u(d)}return}typeof r.cancel=="function"&&r.cancel(),o===!1?f():o instanceof Error?u(o):(l.message=o??`Promise timed out after ${e} milliseconds`,u(l))},e),(async()=>{try{f(await r)}catch(d){u(d)}})()}).finally(()=>{c.clear()});return c.clear=()=>{i.clearTimeout.call(void 0,s),s=void 0},c}function ka(r,t,e){let n=0,o=r.length;for(;o>0;){let i=Math.trunc(o/2),s=n+i;e(r[s],t)<=0?(n=++s,o-=i+1):o=i}return n}var Nn=class{#t=[];enqueue(t,e){e={priority:0,...e};let n={priority:e.priority,run:t};if(this.size&&this.#t[this.size-1].priority>=e.priority){this.#t.push(n);return}let o=ka(this.#t,n,(i,s)=>s.priority-i.priority);this.#t.splice(o,0,n)}dequeue(){return this.#t.shift()?.run}filter(t){return this.#t.filter(e=>e.priority===t.priority).map(e=>e.run)}get size(){return this.#t.length}};var Un=class extends Aa.default{#t;#e;#i=0;#a;#c;#p=0;#n;#u;#r;#m;#o=0;#l;#s;#g;timeout;constructor(t){if(super(),t={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:Nn,...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})`);this.#t=t.carryoverConcurrencyCount,this.#e=t.intervalCap===Number.POSITIVE_INFINITY||t.interval===0,this.#a=t.intervalCap,this.#c=t.interval,this.#r=new t.queueClass,this.#m=t.queueClass,this.concurrency=t.concurrency,this.timeout=t.timeout,this.#g=t.throwOnTimeout===!0,this.#s=t.autoStart===!1}get#x(){return this.#e||this.#i<this.#a}get#b(){return this.#o<this.#l}#v(){this.#o--,this.#f(),this.emit("next")}#E(){this.#w(),this.#y(),this.#u=void 0}get#B(){let t=Date.now();if(this.#n===void 0){let e=this.#p-t;if(e<0)this.#i=this.#t?this.#o:0;else return this.#u===void 0&&(this.#u=setTimeout(()=>{this.#E()},e)),!0}return!1}#f(){if(this.#r.size===0)return this.#n&&clearInterval(this.#n),this.#n=void 0,this.emit("empty"),this.#o===0&&this.emit("idle"),!1;if(!this.#s){let t=!this.#B;if(this.#x&&this.#b){let e=this.#r.dequeue();return e?(this.emit("active"),e(),t&&this.#y(),!0):!1}}return!1}#y(){this.#e||this.#n!==void 0||(this.#n=setInterval(()=>{this.#w()},this.#c),this.#p=Date.now()+this.#c)}#w(){this.#i===0&&this.#o===0&&this.#n&&(clearInterval(this.#n),this.#n=void 0),this.#i=this.#t?this.#o:0,this.#d()}#d(){for(;this.#f(););}get concurrency(){return this.#l}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.#l=t,this.#d()}async#A(t){return new Promise((e,n)=>{t.addEventListener("abort",()=>{n(t.reason)},{once:!0})})}async add(t,e={}){return e={timeout:this.timeout,throwOnTimeout:this.#g,...e},new Promise((n,o)=>{this.#r.enqueue(async()=>{this.#o++,this.#i++;try{e.signal?.throwIfAborted();let i=t({signal:e.signal});e.timeout&&(i=Ia(Promise.resolve(i),{milliseconds:e.timeout})),e.signal&&(i=Promise.race([i,this.#A(e.signal)]));let s=await i;n(s),this.emit("completed",s)}catch(i){if(i instanceof Tn&&!e.throwOnTimeout){n();return}o(i),this.emit("error",i)}finally{this.#v()}},e),this.emit("add"),this.#f()})}async addAll(t,e){return Promise.all(t.map(async n=>this.add(n,e)))}start(){return this.#s?(this.#s=!1,this.#d(),this):this}pause(){this.#s=!0}clear(){this.#r=new this.#m}async onEmpty(){this.#r.size!==0&&await this.#h("empty")}async onSizeLessThan(t){this.#r.size<t||await this.#h("next",()=>this.#r.size<t)}async onIdle(){this.#o===0&&this.#r.size===0||await this.#h("idle")}async#h(t,e){return new Promise(n=>{let o=()=>{e&&!e()||(this.off(t,o),n())};this.on(t,o)})}get size(){return this.#r.size}sizeBy(t){return this.#r.filter(t).length}get pending(){return this.#o}get isPaused(){return this.#s}};var zr=class extends Error{static name="InvalidRequestError";constructor(t="Invalid request"){super(t),this.name="InvalidRequestError"}},ur=class extends Error{static name="BadResponseError";constructor(t="Bad response"){super(t),this.name="BadResponseError"}};function Rm(r){return r[Symbol.asyncIterator]!=null}function _m(r){if(Rm(r))return(async()=>{for await(let t of r)return t})();for(let t of r)return t}var Ai=_m;function Lm(r){let[t,e]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>t.next(),push:o=>{n.push(o)},next:()=>n.length>0?{done:!1,value:n.shift()}:t.next(),[e](){return this}}}var Ff=Lm;function Vm(r){return r[Symbol.asyncIterator]!=null}function Pm(r,t){let e=0;if(Vm(r))return async function*(){for await(let c of r)yield t(c,e++)}();let n=Ff(r),{value:o,done:i}=n.next();if(i===!0)return function*(){}();let s=t(o,e++);if(typeof s.then=="function")return async function*(){yield await s;for await(let c of n)yield t(c,e++)}();let a=t;return function*(){yield s;for(let c of n)yield a(c,e++)}()}var Si=Pm;var Of=Z("/ipns/");function Df(r){return ct(r.subarray(0,Of.byteLength),Of)}var Ii=class{client;constructor(t){this.client=t}async*findProviders(t,e={}){yield*Si(this.client.getProviders(t,e),n=>({id:n.ID,multiaddrs:n.Addrs??[]}))}async provide(){}async put(t,e,n){if(!Df(t))return;let o=Ne(t),i=Q.createV1(114,o),s=de(e);await this.client.putIPNS(i,s,n)}async get(t,e){if(!Df(t))throw new Rt("Not found");let n=Ne(t),o=Q.createV1(114,n);try{let i=await this.client.getIPNS(o,e);return cr(i)}catch(i){throw i.name==="BadResponseError"?new Rt("Not found"):i}}},ki=class{client;constructor(t){this.client=t}async findPeer(t,e={}){let n=await Ai(this.client.getPeers(t,e));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new Rt("Not found")}async*getClosestPeers(t,e={}){}};var Nt=Re("delegated-routing-v1-http-api-client"),Mf={concurrentRequests:4,timeout:3e4},Ci=class{started;httpQueue;shutDownController;clientUrl;timeout;contentRouting;peerRouting;filterAddrs;filterProtocols;constructor(t,e={}){this.started=!1,this.shutDownController=new AbortController,hr(1/0,this.shutDownController.signal),this.httpQueue=new Un({concurrency:e.concurrentRequests??Mf.concurrentRequests}),this.clientUrl=t instanceof URL?t:new URL(t),this.timeout=e.timeout??Mf.timeout,this.filterAddrs=e.filterAddrs,this.filterProtocols=e.filterProtocols,this.contentRouting=new Ii(this),this.peerRouting=new ki(this)}get[ja](){return this.contentRouting}get[Ga](){return this.peerRouting}isStarted(){return this.started}start(){this.started=!0}stop(){this.httpQueue.clear(),this.shutDownController.abort(),this.started=!1}async*getProviders(t,e={}){Nt("getProviders starts: %c",t);let n=AbortSignal.timeout(this.timeout),o=bn([this.shutDownController.signal,n,e.signal]);hr(1/0,n,o);let i=he(),s=he();this.httpQueue.add(async()=>(i.resolve(),s.promise));try{await i.promise;let a=new URL(`${this.clientUrl}routing/v1/providers/${t.toString()}`);this.#e(a,e.filterAddrs,e.filterProtocols);let f=await fetch(a,{headers:{Accept:"application/x-ndjson"},signal:o});if(f.status===404)throw new Rt("No matching records found");if(f.status===422)throw new zr("Request does not conform to schema or semantic constraints");if(f.body==null)throw new ur("Routing response had no body");if(f.headers.get("Content-Type")==="application/json"){let l=await f.json();for(let d of l.Providers){let b=this.#t(d);b!=null&&(yield b)}}else for await(let l of kn(oi(f.body))){let d=this.#t(l);d!=null&&(yield d)}}catch(a){Nt.error("getProviders errored:",a)}finally{o.clear(),s.resolve(),Nt("getProviders finished: %c",t)}}async*getPeers(t,e={}){Nt("getPeers starts: %c",t);let n=AbortSignal.timeout(this.timeout),o=bn([this.shutDownController.signal,n,e.signal]);hr(1/0,n,o);let i=he(),s=he();this.httpQueue.add(async()=>(i.resolve(),s.promise));try{await i.promise;let a=new URL(`${this.clientUrl}routing/v1/peers/${t.toCID().toString()}`);this.#e(a,e.filterAddrs,e.filterProtocols);let f=await fetch(a,{headers:{Accept:"application/x-ndjson"},signal:o});if(f.status===404)throw new Rt("No matching records found");if(f.status===422)throw new zr("Request does not conform to schema or semantic constraints");if(f.body==null)throw new ur("Routing response had no body");if(f.headers.get("Content-Type")==="application/json"){let l=await f.json();for(let d of l.Peers){let b=this.#t(d);b!=null&&(yield b)}}else for await(let l of kn(oi(f.body))){let d=this.#t(l);d!=null&&(yield d)}}catch(a){Nt.error("getPeers errored:",a)}finally{o.clear(),s.resolve(),Nt("getPeers finished: %c",t)}}async getIPNS(t,e={}){Nt("getIPNS starts: %s",t);let n=AbortSignal.timeout(this.timeout),o=bn([this.shutDownController.signal,n,e.signal]);hr(1/0,n,o);let i=he(),s=he();this.httpQueue.add(async()=>(i.resolve(),s.promise));let a=`${this.clientUrl}routing/v1/ipns/${t}`;try{await i.promise;let f=await fetch(a,{headers:{Accept:"application/vnd.ipfs.ipns-record"},signal:o});if(Nt("getIPNS GET %s %d",a,f.status),f.status===404)throw new Rt("No matching records found");if(f.status===422)throw new zr("Request does not conform to schema or semantic constraints");if(f.body==null)throw new ur("GET ipns response had no body");let u=await f.arrayBuffer(),l=new Uint8Array(u,0,u.byteLength);return e.validate!==!1&&await Rf(In(t.multihash),l),de(l)}catch(c){throw Nt.error("getIPNS GET %s error:",a,c),c}finally{o.clear(),s.resolve(),Nt("getIPNS finished: %s",t)}}async putIPNS(t,e,n={}){Nt("putIPNS starts: %c",t);let o=AbortSignal.timeout(this.timeout),i=bn([this.shutDownController.signal,o,n.signal]);hr(1/0,o,i);let s=he(),a=he();this.httpQueue.add(async()=>(s.resolve(),a.promise));let c=`${this.clientUrl}routing/v1/ipns/${t}`;try{await s.promise;let f=cr(e),l=await fetch(c,{method:"PUT",headers:{"Content-Type":"application/vnd.ipfs.ipns-record"},body:f,signal:i});if(Nt("putIPNS PUT %s %d",c,l.status),l.status!==200)throw new ur("PUT ipns response had status other than 200")}catch(f){throw Nt.error("putIPNS PUT %s error:",c,f.stack),f}finally{i.clear(),a.resolve(),Nt("putIPNS finished: %c",t)}}#t(t){try{let e=[],n=t.Addrs?.map(sr)??[];return t.Protocols!=null&&e.push(...t.Protocols),t.Protocol!=null&&(e.push(t.Protocol),delete t.Protocol),{...t,Schema:"peer",ID:il(t.ID),Addrs:n,Protocols:e}}catch(e){Nt.error("could not conform record to peer schema",e)}}#e(t,e,n){if(e!=null||this.filterAddrs!=null){let o=e?.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)}}};function $f(r,t={}){return new Ci(new URL(r),t)}function Hf(){return{filterProtocols:["unknown","transport-bitswap","transport-ipfs-gateway-http"],filterAddrs:["https","webtransport","webrtc","webrtc-direct","wss"]}}var Kf=Z("/ipns/");function qf(r){return ct(r.subarray(0,Kf.byteLength),Kf)}var Ca=class{client;constructor(t,e={}){this.client=$f(t,e)}async provide(t,e){}async*findProviders(t,e){yield*Si(this.client.getProviders(t,e),n=>({id:n.ID,multiaddrs:n.Addrs,protocols:n.Protocols}))}async put(t,e,n){if(!qf(t))return;let o=Ne(t),i=Q.createV1(114,o),s=de(e);await this.client.putIPNS(i,s,n)}async get(t,e){if(!qf(t))throw new Rt("Not found");let n=Ne(t),o=Q.createV1(114,n);try{let i=await this.client.getIPNS(o,e);return cr(i)}catch(i){throw i.name==="BadResponseError"?new Rt("Not found"):i}}async findPeer(t,e){let n=await Ai(this.client.getPeers(t,e));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new Rt("Not found")}async*getClosestPeers(t,e){}};function zf(r,t){let e=t??Hf();return new Ca(new URL(r),e)}var jf="[a-fA-F\\d:]",Ze=r=>r&&r.includeBoundaries?`(?:(?<=\\s|^)(?=${jf})|(?<=${jf})(?=\\s|$))`:"",se="(?: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}",ut="[a-fA-F\\d]{1,4}",Ti=`
5
+ `));let t=this.idBlock.tagClass===3?`[${this.idBlock.tagNumber}]`:this.constructor.NAME;return e.length?`${t} :
6
+ ${e.join(`
7
+ `)}`:`${t} :`}};iu=qt;_.Constructed=iu;qt.NAME="CONSTRUCTED";var fo=class extends Se{fromBER(e,t,n){return t}toBER(e){return tt}};fo.override="EndOfContentValueBlock";var su,ho=class extends xe{constructor(e={}){super(e,fo),this.idBlock.tagClass=1,this.idBlock.tagNumber=0}};su=ho;_.EndOfContent=su;ho.NAME=un;var au,Ur=class extends xe{constructor(e={}){super(e,Se),this.idBlock.tagClass=1,this.idBlock.tagNumber=5}fromBER(e,t,n){return this.lenBlock.length>0&&this.warnings.push("Non-zero length of value block for Null type"),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.blockLength+=n,t+n>e.byteLength?(this.error="End of input reached before message was fully decoded (inconsistent offset and length values)",-1):t+n}toBER(e,t){let n=new ArrayBuffer(2);if(!e){let o=new Uint8Array(n);o[0]=5,o[1]=0}return t&&t.write(n),n}onAsciiEncoding(){return`${this.constructor.NAME}`}};au=Ur;_.Null=au;Ur.NAME="NULL";var po=class extends It(Se){constructor({value:e,...t}={}){super(t),t.valueHex?this.valueHexView=j.BufferSourceConverter.toUint8Array(t.valueHex):this.valueHexView=new Uint8Array(1),e&&(this.value=e)}get value(){for(let e of this.valueHexView)if(e>0)return!0;return!1}set value(e){this.valueHexView[0]=e?255:0}fromBER(e,t,n){let o=j.BufferSourceConverter.toUint8Array(e);return St(this,o,t,n)?(this.valueHexView=o.subarray(t,t+n),n>1&&this.warnings.push("Boolean value encoded in more then 1 octet"),this.isHexOnly=!0,Ks.call(this),this.blockLength=n,t+n):-1}toBER(){return this.valueHexView.slice()}toJSON(){return{...super.toJSON(),value:this.value}}};po.NAME="BooleanValueBlock";var cu,mo=class extends xe{constructor(e={}){super(e,po),this.idBlock.tagClass=1,this.idBlock.tagNumber=1}getValue(){return this.valueBlock.value}setValue(e){this.valueBlock.value=e}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.getValue}`}};cu=mo;_.Boolean=cu;mo.NAME="BOOLEAN";var go=class extends It(ut){constructor({isConstructed:e=!1,...t}={}){super(t),this.isConstructed=e}fromBER(e,t,n){let o=0;if(this.isConstructed){if(this.isHexOnly=!1,o=ut.prototype.fromBER.call(this,e,t,n),o===-1)return o;for(let i=0;i<this.value.length;i++){let s=this.value[i].constructor.NAME;if(s===un){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, OCTET STRING may consists of OCTET STRINGs only",-1}if(s!==tu)return this.error="OCTET STRING may consists of OCTET STRINGs only",-1}}else this.isHexOnly=!0,o=super.fromBER(e,t,n),this.blockLength=n;return o}toBER(e,t){return this.isConstructed?ut.prototype.toBER.call(this,e,t):e?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),isConstructed:this.isConstructed}}};go.NAME="OctetStringValueBlock";var uu,yo=class r extends xe{constructor({idBlock:e={},lenBlock:t={},...n}={}){var o,i;(o=n.isConstructed)!==null&&o!==void 0||(n.isConstructed=!!(!((i=n.value)===null||i===void 0)&&i.length)),super({idBlock:{isConstructed:n.isConstructed,...e},lenBlock:{...t,isIndefiniteForm:!!n.isIndefiniteForm},...n},go),this.idBlock.tagClass=1,this.idBlock.tagNumber=4}fromBER(e,t,n){if(this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,n===0)return this.idBlock.error.length===0&&(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length===0&&(this.blockLength+=this.lenBlock.blockLength),t;if(!this.valueBlock.isConstructed){let i=(e instanceof ArrayBuffer?new Uint8Array(e):e).subarray(t,t+n);try{if(i.byteLength){let s=zo(i,0,i.byteLength);s.offset!==-1&&s.offset===n&&(this.valueBlock.value=[s.result])}}catch{}}return super.fromBER(e,t,n)}onAsciiEncoding(){return this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length?qt.prototype.onAsciiEncoding.call(this):`${this.constructor.NAME} : ${j.Convert.ToHex(this.valueBlock.valueHexView)}`}getValue(){if(!this.idBlock.isConstructed)return this.valueBlock.valueHexView.slice().buffer;let e=[];for(let t of this.valueBlock.value)t instanceof r&&e.push(t.valueBlock.valueHexView);return j.BufferSourceConverter.concat(e)}};uu=yo;_.OctetString=uu;yo.NAME=tu;var wo=class extends It(ut){constructor({unusedBits:e=0,isConstructed:t=!1,...n}={}){super(n),this.unusedBits=e,this.isConstructed=t,this.blockLength=this.valueHexView.byteLength}fromBER(e,t,n){if(!n)return t;let o=-1;if(this.isConstructed){if(o=ut.prototype.fromBER.call(this,e,t,n),o===-1)return o;for(let a of this.value){let c=a.constructor.NAME;if(c===un){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, BIT STRING may consists of BIT STRINGs only",-1}if(c!==ru)return this.error="BIT STRING may consists of BIT STRINGs only",-1;let f=a.valueBlock;if(this.unusedBits>0&&f.unusedBits>0)return this.error='Using of "unused bits" inside constructive BIT STRING allowed for least one only',-1;this.unusedBits=f.unusedBits}return o}let i=j.BufferSourceConverter.toUint8Array(e);if(!St(this,i,t,n))return-1;let s=i.subarray(t,t+n);if(this.unusedBits=s[0],this.unusedBits>7)return this.error="Unused bits for BitString must be in range 0-7",-1;if(!this.unusedBits){let a=s.subarray(1);try{if(a.byteLength){let c=zo(a,0,a.byteLength);c.offset!==-1&&c.offset===n-1&&(this.value=[c.result])}}catch{}}return this.valueHexView=s.subarray(1),this.blockLength=s.length,t+n}toBER(e,t){if(this.isConstructed)return ut.prototype.toBER.call(this,e,t);if(e)return new ArrayBuffer(this.valueHexView.byteLength+1);if(!this.valueHexView.byteLength)return tt;let n=new Uint8Array(this.valueHexView.length+1);return n[0]=this.unusedBits,n.set(this.valueHexView,1),n.buffer}toJSON(){return{...super.toJSON(),unusedBits:this.unusedBits,isConstructed:this.isConstructed}}};wo.NAME="BitStringValueBlock";var lu,Rr=class extends xe{constructor({idBlock:e={},lenBlock:t={},...n}={}){var o,i;(o=n.isConstructed)!==null&&o!==void 0||(n.isConstructed=!!(!((i=n.value)===null||i===void 0)&&i.length)),super({idBlock:{isConstructed:n.isConstructed,...e},lenBlock:{...t,isIndefiniteForm:!!n.isIndefiniteForm},...n},wo),this.idBlock.tagClass=1,this.idBlock.tagNumber=3}fromBER(e,t,n){return this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,super.fromBER(e,t,n)}onAsciiEncoding(){if(this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length)return qt.prototype.onAsciiEncoding.call(this);{let e=[],t=this.valueBlock.valueHexView;for(let o of t)e.push(o.toString(2).padStart(8,"0"));let n=e.join("");return`${this.constructor.NAME} : ${n.substring(0,n.length-this.valueBlock.unusedBits)}`}}};lu=Rr;_.BitString=lu;Rr.NAME=ru;var fu;function ap(r,e){let t=new Uint8Array([0]),n=new Uint8Array(r),o=new Uint8Array(e),i=n.slice(0),s=i.length-1,a=o.slice(0),c=a.length-1,f=0,u=c<s?s:c,l=0;for(let h=u;h>=0;h--,l++){switch(!0){case l<a.length:f=i[s-l]+a[c-l]+t[0];break;default:f=i[s-l]+t[0]}switch(t[0]=f/10,!0){case l>=i.length:i=oo(new Uint8Array([f%10]),i);break;default:i[s-l]=f%10}}return t[0]>0&&(i=oo(t,i)),i}function eu(r){if(r>=an.length)for(let e=an.length;e<=r;e++){let t=new Uint8Array([0]),n=an[e-1].slice(0);for(let o=n.length-1;o>=0;o--){let i=new Uint8Array([(n[o]<<1)+t[0]]);t[0]=i[0]/10,n[o]=i[0]%10}t[0]>0&&(n=oo(t,n)),an.push(n)}return an[r]}function cp(r,e){let t=0,n=new Uint8Array(r),o=new Uint8Array(e),i=n.slice(0),s=i.length-1,a=o.slice(0),c=a.length-1,f,u=0;for(let l=c;l>=0;l--,u++)switch(f=i[s-u]-a[c-u]-t,!0){case f<0:t=1,i[s-u]=f+10;break;default:t=0,i[s-u]=f}if(t>0)for(let l=s-c+1;l>=0;l--,u++)if(f=i[s-u]-t,f<0)t=1,i[s-u]=f+10;else{t=0,i[s-u]=f;break}return i.slice()}var ln=class extends It(Se){constructor({value:e,...t}={}){super(t),this._valueDec=0,t.valueHex&&this.setValueHex(),e!==void 0&&(this.valueDec=e)}setValueHex(){this.valueHexView.length>=4?(this.warnings.push("Too big Integer for decoding, hex only"),this.isHexOnly=!0,this._valueDec=0):(this.isHexOnly=!1,this.valueHexView.length>0&&(this._valueDec=Ks.call(this)))}set valueDec(e){this._valueDec=e,this.isHexOnly=!1,this.valueHexView=new Uint8Array(Jc(e))}get valueDec(){return this._valueDec}fromDER(e,t,n,o=0){let i=this.fromBER(e,t,n);if(i===-1)return i;let s=this.valueHexView;return s[0]===0&&s[1]&128?this.valueHexView=s.subarray(1):o!==0&&s.length<o&&(o-s.length>1&&(o=s.length+1),this.valueHexView=s.subarray(o-s.length)),i}toDER(e=!1){let t=this.valueHexView;switch(!0){case(t[0]&128)!==0:{let n=new Uint8Array(this.valueHexView.length+1);n[0]=0,n.set(t,1),this.valueHexView=n}break;case(t[0]===0&&(t[1]&128)===0):this.valueHexView=this.valueHexView.subarray(1);break}return this.toBER(e)}fromBER(e,t,n){let o=super.fromBER(e,t,n);return o===-1||this.setValueHex(),o}toBER(e){return e?new ArrayBuffer(this.valueHexView.length):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}toString(){let e=this.valueHexView.length*8-1,t=new Uint8Array(this.valueHexView.length*8/3),n=0,o,i=this.valueHexView,s="",a=!1;for(let c=i.byteLength-1;c>=0;c--){o=i[c];for(let f=0;f<8;f++){if((o&1)===1)switch(n){case e:t=cp(eu(n),t),s="-";break;default:t=ap(t,eu(n))}n++,o>>=1}}for(let c=0;c<t.length;c++)t[c]&&(a=!0),a&&(s+=Qc.charAt(t[c]));return a===!1&&(s+=Qc.charAt(0)),s}};fu=ln;ln.NAME="IntegerValueBlock";Object.defineProperty(fu.prototype,"valueHex",{set:function(r){this.valueHexView=new Uint8Array(r),this.setValueHex()},get:function(){return this.valueHexView.slice().buffer}});var hu,be=class r extends xe{constructor(e={}){super(e,ln),this.idBlock.tagClass=1,this.idBlock.tagNumber=2}toBigInt(){return io(),BigInt(this.valueBlock.toString())}static fromBigInt(e){io();let t=BigInt(e),n=new cn,o=t.toString(16).replace(/^-/,""),i=new Uint8Array(j.Convert.FromHex(o));if(t<0){let a=new Uint8Array(i.length+(i[0]&128?1:0));a[0]|=128;let f=BigInt(`0x${j.Convert.ToHex(a)}`)+t,u=j.BufferSourceConverter.toUint8Array(j.Convert.FromHex(f.toString(16)));u[0]|=128,n.write(u)}else i[0]&128&&n.write(new Uint8Array([0])),n.write(i);return new r({valueHex:n.final()})}convertToDER(){let e=new r({valueHex:this.valueBlock.valueHexView});return e.valueBlock.toDER(),e}convertFromDER(){return new r({valueHex:this.valueBlock.valueHexView[0]===0?this.valueBlock.valueHexView.subarray(1):this.valueBlock.valueHexView})}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()}`}};hu=be;_.Integer=hu;be.NAME="INTEGER";var du,xo=class extends be{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=10}};du=xo;_.Enumerated=du;xo.NAME="ENUMERATED";var fn=class extends It(Se){constructor({valueDec:e=-1,isFirstSid:t=!1,...n}={}){super(n),this.valueDec=e,this.isFirstSid=t}fromBER(e,t,n){if(!n)return t;let o=j.BufferSourceConverter.toUint8Array(e);if(!St(this,o,t,n))return-1;let i=o.subarray(t,t+n);this.valueHexView=new Uint8Array(n);for(let a=0;a<n&&(this.valueHexView[a]=i[a]&127,this.blockLength++,!!(i[a]&128));a++);let s=new Uint8Array(this.blockLength);for(let a=0;a<this.blockLength;a++)s[a]=this.valueHexView[a];return this.valueHexView=s,i[this.blockLength-1]&128?(this.error="End of input reached before message was fully decoded",-1):(this.valueHexView[0]===0&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=or(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),t+this.blockLength)}set valueBigInt(e){io();let t=BigInt(e).toString(2);for(;t.length%7;)t="0"+t;let n=new Uint8Array(t.length/7);for(let o=0;o<n.length;o++)n[o]=parseInt(t.slice(o*7,o*7+7),2)+(o+1<n.length?128:0);this.fromBER(n.buffer,0,n.length)}toBER(e){if(this.isHexOnly){if(e)return new ArrayBuffer(this.valueHexView.byteLength);let o=this.valueHexView,i=new Uint8Array(this.blockLength);for(let s=0;s<this.blockLength-1;s++)i[s]=o[s]|128;return i[this.blockLength-1]=o[this.blockLength-1],i.buffer}let t=Kt(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",tt;let n=new Uint8Array(t.byteLength);if(!e){let o=new Uint8Array(t),i=t.byteLength-1;for(let s=0;s<i;s++)n[s]=o[s]|128;n[i]=o[i]}return n}toString(){let e="";if(this.isHexOnly)e=j.Convert.ToHex(this.valueHexView);else if(this.isFirstSid){let t=this.valueDec;this.valueDec<=39?e="0.":this.valueDec<=79?(e="1.",t-=40):(e="2.",t-=80),e+=t.toString()}else e=this.valueDec.toString();return e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec,isFirstSid:this.isFirstSid}}};fn.NAME="sidBlock";var bo=class extends Se{constructor({value:e=Lr,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,n){let o=t;for(;n>0;){let i=new fn;if(o=i.fromBER(e,o,n),o===-1)return this.blockLength=0,this.error=i.error,o;this.value.length===0&&(i.isFirstSid=!0),this.blockLength+=i.blockLength,n-=i.blockLength,this.value.push(i)}return o}toBER(e){let t=[];for(let n=0;n<this.value.length;n++){let o=this.value[n].toBER(e);if(o.byteLength===0)return this.error=this.value[n].error,tt;t.push(o)}return qs(t)}fromString(e){this.value=[];let t=0,n=0,o="",i=!1;do if(n=e.indexOf(".",t),n===-1?o=e.substring(t):o=e.substring(t,n),t=n+1,i){let s=this.value[0],a=0;switch(s.valueDec){case 0:break;case 1:a=40;break;case 2:a=80;break;default:this.value=[];return}let c=parseInt(o,10);if(isNaN(c))return;s.valueDec=c+a,i=!1}else{let s=new fn;if(o>Number.MAX_SAFE_INTEGER){io();let a=BigInt(o);s.valueBigInt=a}else if(s.valueDec=parseInt(o,10),isNaN(s.valueDec))return;this.value.length||(s.isFirstSid=!0,i=!0),this.value.push(s)}while(n!==-1)}toString(){let e="",t=!1;for(let n=0;n<this.value.length;n++){t=this.value[n].isHexOnly;let o=this.value[n].toString();n!==0&&(e=`${e}.`),t?(o=`{${o}}`,this.value[n].isFirstSid?e=`2.{${o} - 80}`:e+=o):e+=o}return e}toJSON(){let e={...super.toJSON(),value:this.toString(),sidArray:[]};for(let t=0;t<this.value.length;t++)e.sidArray.push(this.value[t].toJSON());return e}};bo.NAME="ObjectIdentifierValueBlock";var pu,_r=class extends xe{constructor(e={}){super(e,bo),this.idBlock.tagClass=1,this.idBlock.tagNumber=6}getValue(){return this.valueBlock.toString()}setValue(e){this.valueBlock.fromString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}};pu=_r;_.ObjectIdentifier=pu;_r.NAME="OBJECT IDENTIFIER";var hn=class extends It(Et){constructor({valueDec:e=0,...t}={}){super(t),this.valueDec=e}fromBER(e,t,n){if(n===0)return t;let o=j.BufferSourceConverter.toUint8Array(e);if(!St(this,o,t,n))return-1;let i=o.subarray(t,t+n);this.valueHexView=new Uint8Array(n);for(let a=0;a<n&&(this.valueHexView[a]=i[a]&127,this.blockLength++,!!(i[a]&128));a++);let s=new Uint8Array(this.blockLength);for(let a=0;a<this.blockLength;a++)s[a]=this.valueHexView[a];return this.valueHexView=s,i[this.blockLength-1]&128?(this.error="End of input reached before message was fully decoded",-1):(this.valueHexView[0]===0&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=or(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),t+this.blockLength)}toBER(e){if(this.isHexOnly){if(e)return new ArrayBuffer(this.valueHexView.byteLength);let o=this.valueHexView,i=new Uint8Array(this.blockLength);for(let s=0;s<this.blockLength-1;s++)i[s]=o[s]|128;return i[this.blockLength-1]=o[this.blockLength-1],i.buffer}let t=Kt(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",tt;let n=new Uint8Array(t.byteLength);if(!e){let o=new Uint8Array(t),i=t.byteLength-1;for(let s=0;s<i;s++)n[s]=o[s]|128;n[i]=o[i]}return n.buffer}toString(){let e="";return this.isHexOnly?e=j.Convert.ToHex(this.valueHexView):e=this.valueDec.toString(),e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}};hn.NAME="relativeSidBlock";var vo=class extends Se{constructor({value:e=Lr,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,n){let o=t;for(;n>0;){let i=new hn;if(o=i.fromBER(e,o,n),o===-1)return this.blockLength=0,this.error=i.error,o;this.blockLength+=i.blockLength,n-=i.blockLength,this.value.push(i)}return o}toBER(e,t){let n=[];for(let o=0;o<this.value.length;o++){let i=this.value[o].toBER(e);if(i.byteLength===0)return this.error=this.value[o].error,tt;n.push(i)}return qs(n)}fromString(e){this.value=[];let t=0,n=0,o="";do{n=e.indexOf(".",t),n===-1?o=e.substring(t):o=e.substring(t,n),t=n+1;let i=new hn;if(i.valueDec=parseInt(o,10),isNaN(i.valueDec))return!0;this.value.push(i)}while(n!==-1);return!0}toString(){let e="",t=!1;for(let n=0;n<this.value.length;n++){t=this.value[n].isHexOnly;let o=this.value[n].toString();n!==0&&(e=`${e}.`),t&&(o=`{${o}}`),e+=o}return e}toJSON(){let e={...super.toJSON(),value:this.toString(),sidArray:[]};for(let t=0;t<this.value.length;t++)e.sidArray.push(this.value[t].toJSON());return e}};vo.NAME="RelativeObjectIdentifierValueBlock";var mu,Eo=class extends xe{constructor(e={}){super(e,vo),this.idBlock.tagClass=1,this.idBlock.tagNumber=13}getValue(){return this.valueBlock.toString()}setValue(e){this.valueBlock.fromString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}};mu=Eo;_.RelativeObjectIdentifier=mu;Eo.NAME="RelativeObjectIdentifier";var gu,Bt=class extends qt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=16}};gu=Bt;_.Sequence=gu;Bt.NAME="SEQUENCE";var yu,Bo=class extends qt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=17}};yu=Bo;_.Set=yu;Bo.NAME="SET";var Ao=class extends It(Se){constructor({...e}={}){super(e),this.isHexOnly=!0,this.value=Lr}toJSON(){return{...super.toJSON(),value:this.value}}};Ao.NAME="StringValueBlock";var So=class extends Ao{};So.NAME="SimpleStringValueBlock";var Ce=class extends co{constructor({...e}={}){super(e,So)}fromBuffer(e){this.valueBlock.value=String.fromCharCode.apply(null,j.BufferSourceConverter.toUint8Array(e))}fromString(e){let t=e.length,n=this.valueBlock.valueHexView=new Uint8Array(t);for(let o=0;o<t;o++)n[o]=e.charCodeAt(o);this.valueBlock.value=e}};Ce.NAME="SIMPLE STRING";var Io=class extends Ce{fromBuffer(e){this.valueBlock.valueHexView=j.BufferSourceConverter.toUint8Array(e);try{this.valueBlock.value=j.Convert.ToUtf8String(e)}catch(t){this.warnings.push(`Error during "decodeURIComponent": ${t}, using raw string`),this.valueBlock.value=j.Convert.ToBinary(e)}}fromString(e){this.valueBlock.valueHexView=new Uint8Array(j.Convert.FromUtf8String(e)),this.valueBlock.value=e}};Io.NAME="Utf8StringValueBlock";var wu,At=class extends Io{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=12}};wu=At;_.Utf8String=wu;At.NAME="UTF8String";var To=class extends Ce{fromBuffer(e){this.valueBlock.value=j.Convert.ToUtf16String(e),this.valueBlock.valueHexView=j.BufferSourceConverter.toUint8Array(e)}fromString(e){this.valueBlock.value=e,this.valueBlock.valueHexView=new Uint8Array(j.Convert.FromUtf16String(e))}};To.NAME="BmpStringValueBlock";var xu,ko=class extends To{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=30}};xu=ko;_.BmpString=xu;ko.NAME="BMPString";var Co=class extends Ce{fromBuffer(e){let t=ArrayBuffer.isView(e)?e.slice().buffer:e.slice(0),n=new Uint8Array(t);for(let o=0;o<n.length;o+=4)n[o]=n[o+3],n[o+1]=n[o+2],n[o+2]=0,n[o+3]=0;this.valueBlock.value=String.fromCharCode.apply(null,new Uint32Array(t))}fromString(e){let t=e.length,n=this.valueBlock.valueHexView=new Uint8Array(t*4);for(let o=0;o<t;o++){let i=Kt(e.charCodeAt(o),8),s=new Uint8Array(i);if(s.length>4)continue;let a=4-s.length;for(let c=s.length-1;c>=0;c--)n[o*4+c+a]=s[c]}this.valueBlock.value=e}};Co.NAME="UniversalStringValueBlock";var bu,No=class extends Co{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=28}};bu=No;_.UniversalString=bu;No.NAME="UniversalString";var vu,Uo=class extends Ce{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=18}};vu=Uo;_.NumericString=vu;Uo.NAME="NumericString";var Eu,Ro=class extends Ce{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=19}};Eu=Ro;_.PrintableString=Eu;Ro.NAME="PrintableString";var Bu,_o=class extends Ce{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=20}};Bu=_o;_.TeletexString=Bu;_o.NAME="TeletexString";var Au,Lo=class extends Ce{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=21}};Au=Lo;_.VideotexString=Au;Lo.NAME="VideotexString";var Su,Po=class extends Ce{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=22}};Su=Po;_.IA5String=Su;Po.NAME="IA5String";var Iu,Vo=class extends Ce{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=25}};Iu=Vo;_.GraphicString=Iu;Vo.NAME="GraphicString";var Tu,dn=class extends Ce{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=26}};Tu=dn;_.VisibleString=Tu;dn.NAME="VisibleString";var ku,Fo=class extends Ce{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=27}};ku=Fo;_.GeneralString=ku;Fo.NAME="GeneralString";var Cu,Do=class extends Ce{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=29}};Cu=Do;_.CharacterString=Cu;Do.NAME="CharacterString";var Nu,pn=class extends dn{constructor({value:e,valueDate:t,...n}={}){if(super(n),this.year=0,this.month=0,this.day=0,this.hour=0,this.minute=0,this.second=0,e){this.fromString(e),this.valueBlock.valueHexView=new Uint8Array(e.length);for(let o=0;o<e.length;o++)this.valueBlock.valueHexView[o]=e.charCodeAt(o)}t&&(this.fromDate(t),this.valueBlock.valueHexView=new Uint8Array(this.toBuffer())),this.idBlock.tagClass=1,this.idBlock.tagNumber=23}fromBuffer(e){this.fromString(String.fromCharCode.apply(null,j.BufferSourceConverter.toUint8Array(e)))}toBuffer(){let e=this.toString(),t=new ArrayBuffer(e.length),n=new Uint8Array(t);for(let o=0;o<e.length;o++)n[o]=e.charCodeAt(o);return t}fromDate(e){this.year=e.getUTCFullYear(),this.month=e.getUTCMonth()+1,this.day=e.getUTCDate(),this.hour=e.getUTCHours(),this.minute=e.getUTCMinutes(),this.second=e.getUTCSeconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second))}fromString(e){let n=/(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})Z/ig.exec(e);if(n===null){this.error="Wrong input string for conversion";return}let o=parseInt(n[1],10);o>=50?this.year=1900+o:this.year=2e3+o,this.month=parseInt(n[2],10),this.day=parseInt(n[3],10),this.hour=parseInt(n[4],10),this.minute=parseInt(n[5],10),this.second=parseInt(n[6],10)}toString(e="iso"){if(e==="iso"){let t=new Array(7);return t[0]=Fe(this.year<2e3?this.year-1900:this.year-2e3,2),t[1]=Fe(this.month,2),t[2]=Fe(this.day,2),t[3]=Fe(this.hour,2),t[4]=Fe(this.minute,2),t[5]=Fe(this.second,2),t[6]="Z",t.join("")}return super.toString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.toDate().toISOString()}`}toJSON(){return{...super.toJSON(),year:this.year,month:this.month,day:this.day,hour:this.hour,minute:this.minute,second:this.second}}};Nu=pn;_.UTCTime=Nu;pn.NAME="UTCTime";var Uu,Oo=class extends pn{constructor(e={}){var t;super(e),(t=this.millisecond)!==null&&t!==void 0||(this.millisecond=0),this.idBlock.tagClass=1,this.idBlock.tagNumber=24}fromDate(e){super.fromDate(e),this.millisecond=e.getUTCMilliseconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second,this.millisecond))}fromString(e){let t=!1,n="",o="",i=0,s,a=0,c=0;if(e[e.length-1]==="Z")n=e.substring(0,e.length-1),t=!0;else{let l=new Number(e[e.length-1]);if(isNaN(l.valueOf()))throw new Error("Wrong input string for conversion");n=e}if(t){if(n.indexOf("+")!==-1)throw new Error("Wrong input string for conversion");if(n.indexOf("-")!==-1)throw new Error("Wrong input string for conversion")}else{let l=1,h=n.indexOf("+"),b="";if(h===-1&&(h=n.indexOf("-"),l=-1),h!==-1){if(b=n.substring(h+1),n=n.substring(0,h),b.length!==2&&b.length!==4)throw new Error("Wrong input string for conversion");let I=parseInt(b.substring(0,2),10);if(isNaN(I.valueOf()))throw new Error("Wrong input string for conversion");if(a=l*I,b.length===4){if(I=parseInt(b.substring(2,4),10),isNaN(I.valueOf()))throw new Error("Wrong input string for conversion");c=l*I}}}let f=n.indexOf(".");if(f===-1&&(f=n.indexOf(",")),f!==-1){let l=new Number(`0${n.substring(f)}`);if(isNaN(l.valueOf()))throw new Error("Wrong input string for conversion");i=l.valueOf(),o=n.substring(0,f)}else o=n;switch(!0){case o.length===8:if(s=/(\d{4})(\d{2})(\d{2})/ig,f!==-1)throw new Error("Wrong input string for conversion");break;case o.length===10:if(s=/(\d{4})(\d{2})(\d{2})(\d{2})/ig,f!==-1){let l=60*i;this.minute=Math.floor(l),l=60*(l-this.minute),this.second=Math.floor(l),l=1e3*(l-this.second),this.millisecond=Math.floor(l)}break;case o.length===12:if(s=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})/ig,f!==-1){let l=60*i;this.second=Math.floor(l),l=1e3*(l-this.second),this.millisecond=Math.floor(l)}break;case o.length===14:if(s=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/ig,f!==-1){let l=1e3*i;this.millisecond=Math.floor(l)}break;default:throw new Error("Wrong input string for conversion")}let u=s.exec(o);if(u===null)throw new Error("Wrong input string for conversion");for(let l=1;l<u.length;l++)switch(l){case 1:this.year=parseInt(u[l],10);break;case 2:this.month=parseInt(u[l],10);break;case 3:this.day=parseInt(u[l],10);break;case 4:this.hour=parseInt(u[l],10)+a;break;case 5:this.minute=parseInt(u[l],10)+c;break;case 6:this.second=parseInt(u[l],10);break;default:throw new Error("Wrong input string for conversion")}if(t===!1){let l=new Date(this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond);this.year=l.getUTCFullYear(),this.month=l.getUTCMonth(),this.day=l.getUTCDay(),this.hour=l.getUTCHours(),this.minute=l.getUTCMinutes(),this.second=l.getUTCSeconds(),this.millisecond=l.getUTCMilliseconds()}}toString(e="iso"){if(e==="iso"){let t=[];return t.push(Fe(this.year,4)),t.push(Fe(this.month,2)),t.push(Fe(this.day,2)),t.push(Fe(this.hour,2)),t.push(Fe(this.minute,2)),t.push(Fe(this.second,2)),this.millisecond!==0&&(t.push("."),t.push(Fe(this.millisecond,3))),t.push("Z"),t.join("")}return super.toString(e)}toJSON(){return{...super.toJSON(),millisecond:this.millisecond}}};Uu=Oo;_.GeneralizedTime=Uu;Oo.NAME="GeneralizedTime";var Ru,Mo=class extends At{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=31}};Ru=Mo;_.DATE=Ru;Mo.NAME="DATE";var _u,$o=class extends At{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=32}};_u=$o;_.TimeOfDay=_u;$o.NAME="TimeOfDay";var Lu,Ho=class extends At{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=33}};Lu=Ho;_.DateTime=Lu;Ho.NAME="DateTime";var Pu,Ko=class extends At{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=34}};Pu=Ko;_.Duration=Pu;Ko.NAME="Duration";var Vu,qo=class extends At{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=14}};Vu=qo;_.TIME=Vu;qo.NAME="TIME";function ne(r,e="utf8"){let t=Qn[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}var mn=class extends Error{constructor(e="An error occurred while verifying a message"){super(e),this.name="VerificationError"}},jo=class extends Error{constructor(e="Missing Web Crypto API"){super(e),this.name="WebCryptoMissingError"}};var Fu={get(r=globalThis){let e=r.crypto;if(e?.subtle==null)throw new jo("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 e}};var zt=Fu;async function Du(r){let e=await zt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:r,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),t=await lp(e);return{privateKey:t[0],publicKey:t[1]}}async function Ou(r,e){let t=await zt.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await zt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},t,e instanceof Uint8Array?e:e.subarray());return new Uint8Array(n,0,n.byteLength)}async function Mu(r,e,t){let n=await zt.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return zt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,t instanceof Uint8Array?t:t.subarray())}async function lp(r){if(r.privateKey==null||r.publicKey==null)throw new Ee("Private and public key are required");return Promise.all([zt.get().subtle.exportKey("jwk",r.privateKey),zt.get().subtle.exportKey("jwk",r.publicKey)])}function Gs(r){if(r.kty!=="RSA")throw new Ee("invalid key type");if(r.n==null)throw new Ee("invalid key modulus");return Z(r.n,"base64url").length*8}var Pr=class{type="RSA";_key;_raw;_multihash;constructor(e,t){this._key=e,this._multihash=t}get raw(){return this._raw==null&&(this._raw=gn.jwkToPkix(this._key)),this._raw}toMultihash(){return this._multihash}toCID(){return X.createV1(114,this._multihash)}toString(){return re.encode(this.toMultihash().bytes).substring(1)}equals(e){return e==null||!(e.raw instanceof Uint8Array)?!1:ce(this.raw,e.raw)}verify(e,t){return Mu(this._key,t,e)}},yn=class{type="RSA";_key;_raw;publicKey;constructor(e,t){this._key=e,this.publicKey=t}get raw(){return this._raw==null&&(this._raw=gn.jwkToPkcs1(this._key)),this._raw}equals(e){return e==null||!(e.raw instanceof Uint8Array)?!1:ce(this.raw,e.raw)}sign(e){return Ou(this._key,e)}};var Go=8192,Zs=18;function $u(r){let{result:e}=js(r),t=e.valueBlock.value;return{n:lt(t[1]),e:lt(t[2]),d:lt(t[3]),p:lt(t[4]),q:lt(t[5]),dp:lt(t[6]),dq:lt(t[7]),qi:lt(t[8]),kty:"RSA",alg:"RS256"}}function fp(r){if(r.n==null||r.e==null||r.d==null||r.p==null||r.q==null||r.dp==null||r.dq==null||r.qi==null)throw new Ee("JWK was missing components");let t=new Bt({value:[new be({value:0}),be.fromBigInt(ft(Z(r.n,"base64url"))),be.fromBigInt(ft(Z(r.e,"base64url"))),be.fromBigInt(ft(Z(r.d,"base64url"))),be.fromBigInt(ft(Z(r.p,"base64url"))),be.fromBigInt(ft(Z(r.q,"base64url"))),be.fromBigInt(ft(Z(r.dp,"base64url"))),be.fromBigInt(ft(Z(r.dq,"base64url"))),be.fromBigInt(ft(Z(r.qi,"base64url")))]}).toBER();return new Uint8Array(t,0,t.byteLength)}function Hu(r){let{result:e}=js(r),t=e.valueBlock.value[1].valueBlock.value[0].valueBlock.value;return{kty:"RSA",n:lt(t[0]),e:lt(t[1])}}function Ws(r){if(r.n==null||r.e==null)throw new Ee("JWK was missing components");let t=new Bt({value:[new Bt({value:[new _r({value:"1.2.840.113549.1.1.1"}),new Ur]}),new Rr({valueHex:new Bt({value:[be.fromBigInt(ft(Z(r.n,"base64url"))),be.fromBigInt(ft(Z(r.e,"base64url")))]}).toBER()})]}).toBER();return new Uint8Array(t,0,t.byteLength)}function lt(r){let e=r.valueBlock.valueHexView;for(;e[0]===0;)e=e.subarray(1);return ne(e,"base64url")}function ft(r){let e=[];return r.forEach(function(t){let n=t.toString(16);n.length%2>0&&(n=`0${n}`),e.push(n)}),BigInt("0x"+e.join(""))}function Ku(r){let e=$u(r);return qu(e)}function Ys(r){let e=Hu(r);if(Gs(e)>Go)throw new lr("Key size is too large");let t=Cr(ct.encode({Type:he.RSA,Data:r})),n=Ze(Zs,t);return new Pr(e,n)}function qu(r){if(Gs(r)>Go)throw new Ee("Key size is too large");let e=ju(r),t=Cr(ct.encode({Type:he.RSA,Data:Ws(e.publicKey)})),n=Ze(Zs,t);return new yn(e.privateKey,new Pr(e.publicKey,n))}async function zu(r){if(r>Go)throw new Ee("Key size is too large");let e=await Du(r),t=Cr(ct.encode({Type:he.RSA,Data:Ws(e.publicKey)})),n=Ze(Zs,t);return new yn(e.privateKey,new Pr(e.publicKey,n))}function ju(r){if(r==null)throw new Ee("Missing key parameter");return{privateKey:r,publicKey:{kty:r.kty,n:r.n,e:r.e}}}var Zo=class extends vr{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,pc(e);let n=Jr(t);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let o=this.blockLen,i=new Uint8Array(o);i.set(n.length>o?e.create().update(n).digest():n);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=e.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(e){return br(this),this.iHash.update(e),this}digestInto(e){br(this),xr(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:t,iHash:n,finished:o,destroyed:i,blockLen:s,outputLen:a}=this;return e=e,e.finished=o,e.destroyed=i,e.blockLen=s,e.outputLen=a,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Js=(r,e,t)=>new Zo(r,e).update(t).digest();Js.create=(r,e)=>new Zo(r,e);function Gu(r){r.lowS!==void 0&&Je("lowS",r.lowS),r.prehash!==void 0&&Je("prehash",r.prehash)}function hp(r){let e=en(r);at(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:t,Fp:n,a:o}=e;if(t){if(!n.eql(o,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof t!="object"||typeof t.beta!="bigint"||typeof t.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:dp,hexToBytes:pp}=qn,Tt={Err:class extends Error{constructor(e=""){super(e)}},_tlv:{encode:(r,e)=>{let{Err:t}=Tt;if(r<0||r>256)throw new t("tlv.encode: wrong tag");if(e.length&1)throw new t("tlv.encode: unpadded data");let n=e.length/2,o=Yt(n);if(o.length/2&128)throw new t("tlv.encode: long form length too big");let i=n>127?Yt(o.length/2|128):"";return`${Yt(r)}${i}${o}${e}`},decode(r,e){let{Err:t}=Tt,n=0;if(r<0||r>256)throw new t("tlv.encode: wrong tag");if(e.length<2||e[n++]!==r)throw new t("tlv.decode: wrong tlv");let o=e[n++],i=!!(o&128),s=0;if(!i)s=o;else{let c=o&127;if(!c)throw new t("tlv.decode(long): indefinite length not supported");if(c>4)throw new t("tlv.decode(long): byte length is too big");let f=e.subarray(n,n+c);if(f.length!==c)throw new t("tlv.decode: length bytes not complete");if(f[0]===0)throw new t("tlv.decode(long): zero leftmost byte");for(let u of f)s=s<<8|u;if(n+=c,s<128)throw new t("tlv.decode(long): not minimal encoding")}let a=e.subarray(n,n+s);if(a.length!==s)throw new t("tlv.decode: wrong value length");return{v:a,l:e.subarray(n+s)}}},_int:{encode(r){let{Err:e}=Tt;if(r<kt)throw new e("integer: negative integers are not allowed");let t=Yt(r);if(Number.parseInt(t[0],16)&8&&(t="00"+t),t.length&1)throw new e("unexpected assertion");return t},decode(r){let{Err:e}=Tt;if(r[0]&128)throw new e("Invalid signature integer: negative");if(r[0]===0&&!(r[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return dp(r)}},toSig(r){let{Err:e,_int:t,_tlv:n}=Tt,o=typeof r=="string"?pp(r):r;Br(o);let{v:i,l:s}=n.decode(48,o);if(s.length)throw new e("Invalid signature: left bytes after parsing");let{v:a,l:c}=n.decode(2,i),{v:f,l:u}=n.decode(2,c);if(u.length)throw new e("Invalid signature: left bytes after parsing");return{r:t.decode(a),s:t.decode(f)}},hexFromSig(r){let{_tlv:e,_int:t}=Tt,n=`${e.encode(2,t.encode(r.r))}${e.encode(2,t.encode(r.s))}`;return e.encode(48,n)}},kt=BigInt(0),me=BigInt(1),bx=BigInt(2),Zu=BigInt(3),vx=BigInt(4);function mp(r){let e=hp(r),{Fp:t}=e,n=Ot(e.n,e.nBitLength),o=e.toBytes||((w,d,E)=>{let k=d.toAffine();return bt(Uint8Array.from([4]),t.toBytes(k.x),t.toBytes(k.y))}),i=e.fromBytes||(w=>{let d=w.subarray(1),E=t.fromBytes(d.subarray(0,t.BYTES)),k=t.fromBytes(d.subarray(t.BYTES,2*t.BYTES));return{x:E,y:k}});function s(w){let{a:d,b:E}=e,k=t.sqr(w),x=t.mul(k,w);return t.add(t.add(x,t.mul(w,d)),E)}if(!t.eql(t.sqr(e.Gy),s(e.Gx)))throw new Error("bad generator point: equation left != right");function a(w){return Xr(w,me,e.n)}function c(w){let{allowedPrivateKeyLengths:d,nByteLength:E,wrapPrivateKey:k,n:x}=e;if(d&&typeof w!="bigint"){if(Vt(w)&&(w=wt(w)),typeof w!="string"||!d.includes(w.length))throw new Error("Invalid key");w=w.padStart(E*2,"0")}let C;try{C=typeof w=="bigint"?w:xt(ae("private key",w,E))}catch{throw new Error(`private key must be ${E} bytes, hex or bigint, not ${typeof w}`)}return k&&(C=Q(C,x)),Le("private key",C,me,x),C}function f(w){if(!(w instanceof h))throw new Error("ProjectivePoint expected")}let u=Qt((w,d)=>{let{px:E,py:k,pz:x}=w;if(t.eql(x,t.ONE))return{x:E,y:k};let C=w.is0();d==null&&(d=C?t.ONE:t.inv(x));let F=t.mul(E,d),P=t.mul(k,d),U=t.mul(x,d);if(C)return{x:t.ZERO,y:t.ZERO};if(!t.eql(U,t.ONE))throw new Error("invZ was invalid");return{x:F,y:P}}),l=Qt(w=>{if(w.is0()){if(e.allowInfinityPoint&&!t.is0(w.py))return;throw new Error("bad point: ZERO")}let{x:d,y:E}=w.toAffine();if(!t.isValid(d)||!t.isValid(E))throw new Error("bad point: x or y not FE");let k=t.sqr(E),x=s(d);if(!t.eql(k,x))throw new Error("bad point: equation left != right");if(!w.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class h{constructor(d,E,k){if(this.px=d,this.py=E,this.pz=k,d==null||!t.isValid(d))throw new Error("x required");if(E==null||!t.isValid(E))throw new Error("y required");if(k==null||!t.isValid(k))throw new Error("z required");Object.freeze(this)}static fromAffine(d){let{x:E,y:k}=d||{};if(!d||!t.isValid(E)||!t.isValid(k))throw new Error("invalid affine point");if(d instanceof h)throw new Error("projective point not allowed");let x=C=>t.eql(C,t.ZERO);return x(E)&&x(k)?h.ZERO:new h(E,k,t.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(d){let E=t.invertBatch(d.map(k=>k.pz));return d.map((k,x)=>k.toAffine(E[x])).map(h.fromAffine)}static fromHex(d){let E=h.fromAffine(i(ae("pointHex",d)));return E.assertValidity(),E}static fromPrivateKey(d){return h.BASE.multiply(c(d))}static msm(d,E){return Gn(h,n,d,E)}_setWindowSize(d){I.setWindowSize(this,d)}assertValidity(){l(this)}hasEvenY(){let{y:d}=this.toAffine();if(t.isOdd)return!t.isOdd(d);throw new Error("Field doesn't support isOdd")}equals(d){f(d);let{px:E,py:k,pz:x}=this,{px:C,py:F,pz:P}=d,U=t.eql(t.mul(E,P),t.mul(C,x)),g=t.eql(t.mul(k,P),t.mul(F,x));return U&&g}negate(){return new h(this.px,t.neg(this.py),this.pz)}double(){let{a:d,b:E}=e,k=t.mul(E,Zu),{px:x,py:C,pz:F}=this,P=t.ZERO,U=t.ZERO,g=t.ZERO,v=t.mul(x,x),D=t.mul(C,C),R=t.mul(F,F),N=t.mul(x,C);return N=t.add(N,N),g=t.mul(x,F),g=t.add(g,g),P=t.mul(d,g),U=t.mul(k,R),U=t.add(P,U),P=t.sub(D,U),U=t.add(D,U),U=t.mul(P,U),P=t.mul(N,P),g=t.mul(k,g),R=t.mul(d,R),N=t.sub(v,R),N=t.mul(d,N),N=t.add(N,g),g=t.add(v,v),v=t.add(g,v),v=t.add(v,R),v=t.mul(v,N),U=t.add(U,v),R=t.mul(C,F),R=t.add(R,R),v=t.mul(R,N),P=t.sub(P,v),g=t.mul(R,D),g=t.add(g,g),g=t.add(g,g),new h(P,U,g)}add(d){f(d);let{px:E,py:k,pz:x}=this,{px:C,py:F,pz:P}=d,U=t.ZERO,g=t.ZERO,v=t.ZERO,D=e.a,R=t.mul(e.b,Zu),N=t.mul(E,C),H=t.mul(k,F),A=t.mul(x,P),S=t.add(E,k),m=t.add(C,F);S=t.mul(S,m),m=t.add(N,H),S=t.sub(S,m),m=t.add(E,x);let p=t.add(C,P);return m=t.mul(m,p),p=t.add(N,A),m=t.sub(m,p),p=t.add(k,x),U=t.add(F,P),p=t.mul(p,U),U=t.add(H,A),p=t.sub(p,U),v=t.mul(D,m),U=t.mul(R,A),v=t.add(U,v),U=t.sub(H,v),v=t.add(H,v),g=t.mul(U,v),H=t.add(N,N),H=t.add(H,N),A=t.mul(D,A),m=t.mul(R,m),H=t.add(H,A),A=t.sub(N,A),A=t.mul(D,A),m=t.add(m,A),N=t.mul(H,m),g=t.add(g,N),N=t.mul(p,m),U=t.mul(S,U),U=t.sub(U,N),N=t.mul(S,H),v=t.mul(p,v),v=t.add(v,N),new h(U,g,v)}subtract(d){return this.add(d.negate())}is0(){return this.equals(h.ZERO)}wNAF(d){return I.wNAFCached(this,d,h.normalizeZ)}multiplyUnsafe(d){Le("scalar",d,kt,e.n);let E=h.ZERO;if(d===kt)return E;if(d===me)return this;let{endo:k}=e;if(!k)return I.unsafeLadder(this,d);let{k1neg:x,k1:C,k2neg:F,k2:P}=k.splitScalar(d),U=E,g=E,v=this;for(;C>kt||P>kt;)C&me&&(U=U.add(v)),P&me&&(g=g.add(v)),v=v.double(),C>>=me,P>>=me;return x&&(U=U.negate()),F&&(g=g.negate()),g=new h(t.mul(g.px,k.beta),g.py,g.pz),U.add(g)}multiply(d){let{endo:E,n:k}=e;Le("scalar",d,me,k);let x,C;if(E){let{k1neg:F,k1:P,k2neg:U,k2:g}=E.splitScalar(d),{p:v,f:D}=this.wNAF(P),{p:R,f:N}=this.wNAF(g);v=I.constTimeNegate(F,v),R=I.constTimeNegate(U,R),R=new h(t.mul(R.px,E.beta),R.py,R.pz),x=v.add(R),C=D.add(N)}else{let{p:F,f:P}=this.wNAF(d);x=F,C=P}return h.normalizeZ([x,C])[0]}multiplyAndAddUnsafe(d,E,k){let x=h.BASE,C=(P,U)=>U===kt||U===me||!P.equals(x)?P.multiplyUnsafe(U):P.multiply(U),F=C(this,E).add(C(d,k));return F.is0()?void 0:F}toAffine(d){return u(this,d)}isTorsionFree(){let{h:d,isTorsionFree:E}=e;if(d===me)return!0;if(E)return E(h,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:d,clearCofactor:E}=e;return d===me?this:E?E(h,this):this.multiplyUnsafe(e.h)}toRawBytes(d=!0){return Je("isCompressed",d),this.assertValidity(),o(h,this,d)}toHex(d=!0){return Je("isCompressed",d),wt(this.toRawBytes(d))}}h.BASE=new h(e.Gx,e.Gy,t.ONE),h.ZERO=new h(t.ZERO,t.ONE,t.ZERO);let b=e.nBitLength,I=jn(h,e.endo?Math.ceil(b/2):b);return{CURVE:e,ProjectivePoint:h,normPrivateKeyToScalar:c,weierstrassEquation:s,isWithinCurveOrder:a}}function gp(r){let e=en(r);return at(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function Wu(r){let e=gp(r),{Fp:t,n}=e,o=t.BYTES+1,i=2*t.BYTES+1;function s(A){return Q(A,n)}function a(A){return zn(A,n)}let{ProjectivePoint:c,normPrivateKeyToScalar:f,weierstrassEquation:u,isWithinCurveOrder:l}=mp({...e,toBytes(A,S,m){let p=S.toAffine(),B=t.toBytes(p.x),V=bt;return Je("isCompressed",m),m?V(Uint8Array.from([S.hasEvenY()?2:3]),B):V(Uint8Array.from([4]),B,t.toBytes(p.y))},fromBytes(A){let S=A.length,m=A[0],p=A.subarray(1);if(S===o&&(m===2||m===3)){let B=xt(p);if(!Xr(B,me,t.ORDER))throw new Error("Point is not on curve");let V=u(B),O;try{O=t.sqrt(V)}catch(G){let z=G instanceof Error?": "+G.message:"";throw new Error("Point is not on curve"+z)}let M=(O&me)===me;return(m&1)===1!==M&&(O=t.neg(O)),{x:B,y:O}}else if(S===i&&m===4){let B=t.fromBytes(p.subarray(0,t.BYTES)),V=t.fromBytes(p.subarray(t.BYTES,2*t.BYTES));return{x:B,y:V}}else throw new Error(`Point of length ${S} was invalid. Expected ${o} compressed bytes or ${i} uncompressed bytes`)}}),h=A=>wt(Dt(A,e.nByteLength));function b(A){let S=n>>me;return A>S}function I(A){return b(A)?s(-A):A}let w=(A,S,m)=>xt(A.slice(S,m));class d{constructor(S,m,p){this.r=S,this.s=m,this.recovery=p,this.assertValidity()}static fromCompact(S){let m=e.nByteLength;return S=ae("compactSignature",S,m*2),new d(w(S,0,m),w(S,m,2*m))}static fromDER(S){let{r:m,s:p}=Tt.toSig(ae("DER",S));return new d(m,p)}assertValidity(){Le("r",this.r,me,n),Le("s",this.s,me,n)}addRecoveryBit(S){return new d(this.r,this.s,S)}recoverPublicKey(S){let{r:m,s:p,recovery:B}=this,V=P(ae("msgHash",S));if(B==null||![0,1,2,3].includes(B))throw new Error("recovery id invalid");let O=B===2||B===3?m+e.n:m;if(O>=t.ORDER)throw new Error("recovery id 2 or 3 invalid");let M=B&1?"03":"02",q=c.fromHex(M+h(O)),G=a(O),z=s(-V*G),J=s(p*G),te=c.BASE.multiplyAndAddUnsafe(q,z,J);if(!te)throw new Error("point at infinify");return te.assertValidity(),te}hasHighS(){return b(this.s)}normalizeS(){return this.hasHighS()?new d(this.r,s(-this.s),this.recovery):this}toDERRawBytes(){return Jt(this.toDERHex())}toDERHex(){return Tt.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Jt(this.toCompactHex())}toCompactHex(){return h(this.r)+h(this.s)}}let E={isValidPrivateKey(A){try{return f(A),!0}catch{return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let A=ss(e.n);return Tc(e.randomBytes(A),e.n)},precompute(A=8,S=c.BASE){return S._setWindowSize(A),S.multiply(BigInt(3)),S}};function k(A,S=!0){return c.fromPrivateKey(A).toRawBytes(S)}function x(A){let S=Vt(A),m=typeof A=="string",p=(S||m)&&A.length;return S?p===o||p===i:m?p===2*o||p===2*i:A instanceof c}function C(A,S,m=!0){if(x(A))throw new Error("first arg must be private key");if(!x(S))throw new Error("second arg must be public key");return c.fromHex(S).multiply(f(A)).toRawBytes(m)}let F=e.bits2int||function(A){let S=xt(A),m=A.length*8-e.nBitLength;return m>0?S>>BigInt(m):S},P=e.bits2int_modN||function(A){return s(F(A))},U=Qr(e.nBitLength);function g(A){return Le(`num < 2^${e.nBitLength}`,A,kt,U),Dt(A,e.nByteLength)}function v(A,S,m=D){if(["recovered","canonical"].some(pe=>pe in m))throw new Error("sign() legacy options not supported");let{hash:p,randomBytes:B}=e,{lowS:V,prehash:O,extraEntropy:M}=m;V==null&&(V=!0),A=ae("msgHash",A),Gu(m),O&&(A=ae("prehashed msgHash",p(A)));let q=P(A),G=f(S),z=[g(G),g(q)];if(M!=null&&M!==!1){let pe=M===!0?B(t.BYTES):M;z.push(ae("extraEntropy",pe))}let J=bt(...z),te=q;function de(pe){let we=F(pe);if(!l(we))return;let Te=a(we),le=c.BASE.multiply(we).toAffine(),Ue=s(le.x);if(Ue===kt)return;let pt=s(Te*s(te+Ue*G));if(pt===kt)return;let jr=(le.x===Ue?0:2)|Number(le.y&me),Gr=pt;return V&&b(pt)&&(Gr=I(pt),jr^=1),new d(Ue,Gr,jr)}return{seed:J,k2sig:de}}let D={lowS:e.lowS,prehash:!1},R={lowS:e.lowS,prehash:!1};function N(A,S,m=D){let{seed:p,k2sig:B}=v(A,S,m),V=e;return rs(V.hash.outputLen,V.nByteLength,V.hmac)(p,B)}c.BASE._setWindowSize(8);function H(A,S,m,p=R){let B=A;if(S=ae("msgHash",S),m=ae("publicKey",m),"strict"in p)throw new Error("options.strict was renamed to lowS");Gu(p);let{lowS:V,prehash:O}=p,M,q;try{if(typeof B=="string"||Vt(B))try{M=d.fromDER(B)}catch(le){if(!(le instanceof Tt.Err))throw le;M=d.fromCompact(B)}else if(typeof B=="object"&&typeof B.r=="bigint"&&typeof B.s=="bigint"){let{r:le,s:Ue}=B;M=new d(le,Ue)}else throw new Error("PARSE");q=c.fromHex(m)}catch(le){if(le.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(V&&M.hasHighS())return!1;O&&(S=e.hash(S));let{r:G,s:z}=M,J=P(S),te=a(z),de=s(J*te),pe=s(G*te),we=c.BASE.multiplyAndAddUnsafe(q,de,pe)?.toAffine();return we?s(we.x)===G:!1}return{CURVE:e,getPublicKey:k,getSharedSecret:C,sign:N,verify:H,ProjectivePoint:c,Signature:d,utils:E}}function yp(r){return{hash:r,hmac:(e,...t)=>Js(r,e,Zi(...t)),randomBytes:$n}}function Yu(r,e){let t=n=>Wu({...r,...yp(n)});return Object.freeze({...t(e),create:t})}var Qu=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Ju=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),wp=BigInt(1),Xs=BigInt(2),Xu=(r,e)=>(r+e/Xs)/e;function xp(r){let e=Qu,t=BigInt(3),n=BigInt(6),o=BigInt(11),i=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=r*r*r%e,u=f*f*r%e,l=ie(u,t,e)*u%e,h=ie(l,t,e)*u%e,b=ie(h,Xs,e)*f%e,I=ie(b,o,e)*b%e,w=ie(I,i,e)*I%e,d=ie(w,a,e)*w%e,E=ie(d,c,e)*d%e,k=ie(E,a,e)*w%e,x=ie(k,t,e)*u%e,C=ie(x,s,e)*I%e,F=ie(C,n,e)*f%e,P=ie(F,Xs,e);if(!Qs.eql(Qs.sqr(P),r))throw new Error("Cannot find square root");return P}var Qs=Ot(Qu,void 0,void 0,{sqrt:xp}),ir=Yu({a:BigInt(0),b:BigInt(7),Fp:Qs,n:Ju,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:r=>{let e=Ju,t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-wp*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),o=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=t,s=BigInt("0x100000000000000000000000000000000"),a=Xu(i*r,e),c=Xu(-n*r,e),f=Q(r-a*t-c*o,e),u=Q(-a*n-c*i,e),l=f>s,h=u>s;if(l&&(f=e-f),h&&(u=e-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+r);return{k1neg:l,k1:f,k2neg:h,k2:u}}}},Cr),Nx=BigInt(0);var Ux=ir.ProjectivePoint;function Oe(r,e){e==null&&(e=r.reduce((o,i)=>o+i.length,0));let t=Qe(e),n=0;for(let o of r)t.set(o,n),n+=o.length;return t}function el(r){return r==null?!1:typeof r.then=="function"&&typeof r.catch=="function"&&typeof r.finally=="function"}function tl(r,e,t){let n=tn.digest(t instanceof Uint8Array?t:t.subarray());if(el(n))return n.then(({digest:o})=>ir.verify(e,o,r)).catch(o=>{throw new mn(String(o))});try{return ir.verify(e,n.digest,r)}catch(o){throw new mn(String(o))}}var Wo=class{type="secp256k1";raw;_key;constructor(e){this._key=nl(e),this.raw=rl(this._key)}toMultihash(){return We.digest(Jn(this))}toCID(){return X.createV1(114,this.toMultihash())}toString(){return re.encode(this.toMultihash().bytes).substring(1)}equals(e){return e==null||!(e.raw instanceof Uint8Array)?!1:ce(this.raw,e.raw)}verify(e,t){return tl(this._key,t,e)}};function ea(r){return new Wo(r)}function rl(r){return ir.ProjectivePoint.fromHex(r).toRawBytes(!0)}function nl(r){try{return ir.ProjectivePoint.fromHex(r),r}catch(e){throw new lr(String(e))}}function ol(r){let{Type:e,Data:t}=ct.decode(r),n=t??new Uint8Array;switch(e){case he.RSA:return Ys(n);case he.Ed25519:return fs(n);case he.secp256k1:return ea(n);default:throw new hr}}function Yo(r){let{Type:e,Data:t}=ct.decode(r.digest),n=t??new Uint8Array;switch(e){case he.Ed25519:return fs(n);case he.secp256k1:return ea(n);default:throw new hr}}function Jn(r){return ct.encode({Type:he[r.type],Data:r.raw})}var il=Symbol.for("nodejs.util.inspect.custom"),bp=114,wn=class{type;multihash;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Li]=!0;toString(){return this.string==null&&(this.string=re.encode(this.multihash.bytes).slice(1)),this.string}toMultihash(){return this.multihash}toCID(){return X.createV1(bp,this.multihash)}toJSON(){return this.toString()}equals(e){if(e==null)return!1;if(e instanceof Uint8Array)return ce(this.multihash.bytes,e);if(typeof e=="string")return this.toString()===e;if(e?.toMultihash()?.bytes!=null)return ce(this.multihash.bytes,e.toMultihash().bytes);throw new Error("not valid Id")}[il](){return`PeerId(${this.toString()})`}},Jo=class extends wn{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Xo=class extends wn{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.publicKey}},Qo=class extends wn{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.publicKey}},vp=2336,xn=class{type="url";multihash;publicKey;url;constructor(e){this.url=e.toString(),this.multihash=We.digest(Z(this.url))}[il](){return`PeerId(${this.url})`}[Li]=!0;toString(){return this.toCID().toString()}toMultihash(){return this.multihash}toCID(){return X.createV1(vp,this.toMultihash())}toJSON(){return this.toString()}equals(e){return e==null?!1:(e instanceof Uint8Array&&(e=ne(e)),e.toString()===this.toString())}};var Ep=114,sl=2336;function al(r,e){let t;if(r.charAt(0)==="1"||r.charAt(0)==="Q")t=gt(re.decode(`z${r}`));else{if(e==null)throw new Ee('Please pass a multibase decoder for strings that do not start with "1" or "Q"');t=gt(e.decode(r))}return cl(t)}function cl(r){if(Ap(r))return new Jo({multihash:r});if(Bp(r))try{let e=Yo(r);if(e.type==="Ed25519")return new Xo({multihash:r,publicKey:e});if(e.type==="secp256k1")return new Qo({multihash:r,publicKey:e})}catch{let t=ne(r.digest);return new xn(new URL(t))}throw new fr("Supplied PeerID Multihash is invalid")}function ul(r){if(r?.multihash==null||r.version==null||r.version===1&&r.code!==Ep&&r.code!==sl)throw new Ln("Supplied PeerID CID is invalid");if(r.code===sl){let e=ne(r.multihash.digest);return new xn(new URL(e))}return cl(r.multihash)}function Bp(r){return r.code===We.code}function Ap(r){return r.code===tn.code}var ei=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let t=this.index,n=e();return n===void 0&&(this.index=t),n}parseWith(e){let t=e();if(this.index===this.input.length)return t}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(e){return this.readAtomically(()=>{let t=this.readChar();if(t===e)return t})}readSeparator(e,t,n){return this.readAtomically(()=>{if(!(t>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,t,n,o){return this.readAtomically(()=>{let i=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*o)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let h=Number.parseInt(l,e);if(!Number.isNaN(h))return h});if(u===void 0)break;if(i*=e,i+=u,i>f||(s+=1,t!==void 0&&s>t))return}if(s!==0)return!n&&c&&s>1?void 0:i})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let t=0;t<e.length;t++){let n=this.readSeparator(".",t,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[t]=n}return e})}readIPv6Addr(){let e=t=>{for(let n=0;n<t.length/2;n++){let o=n*2;if(n<t.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return t[o]=s[0],t[o+1]=s[1],t[o+2]=s[2],t[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];t[o]=i>>8,t[o+1]=i&255}return[t.length,!1]};return this.readAtomically(()=>{let t=new Uint8Array(16),[n,o]=e(t);if(n===16)return t;if(o||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let i=new Uint8Array(14),s=16-(n+2),[a]=e(i.subarray(0,s));return t.set(i.subarray(0,a),16-a),t})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var ll=45,Sp=15,Vr=new ei;function ta(r){if(!(r.length>Sp))return Vr.new(r).parseWith(()=>Vr.readIPv4Addr())}function ra(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>ll))return Vr.new(r).parseWith(()=>Vr.readIPv6Addr())}function ti(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>ll))return Vr.new(r).parseWith(()=>Vr.readIPAddr())}var jb=parseInt("0xFFFF",16),Gb=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function dl(r){return!!ta(r)}function pl(r){return!!ra(r)}function ri(r){return!!ti(r)}var ml=dl,Np=pl,na=function(r){let e=0;if(r=r.toString().trim(),ml(r)){let t=new Uint8Array(e+4);return r.split(/\./g).forEach(n=>{t[e++]=parseInt(n,10)&255}),t}if(Np(r)){let t=r.split(":",8),n;for(n=0;n<t.length;n++){let i=ml(t[n]),s;i&&(s=na(t[n]),t[n]=ne(s.slice(0,2),"base16")),s!=null&&++n<8&&t.splice(n,0,ne(s.slice(2,4),"base16"))}if(t[0]==="")for(;t.length<8;)t.unshift("0");else if(t[t.length-1]==="")for(;t.length<8;)t.push("0");else if(t.length<8){for(n=0;n<t.length&&t[n]!=="";n++);let i=[n,1];for(n=9-t.length;n>0;n--)i.push("0");t.splice.apply(t,i)}let o=new Uint8Array(e+16);for(n=0;n<t.length;n++){let i=parseInt(t[n],16);o[e++]=i>>8&255,o[e++]=i&255}return o}throw new Error("invalid ip address")},gl=function(r,e=0,t){e=~~e,t=t??r.length-e;let n=new DataView(r.buffer);if(t===4){let o=[];for(let i=0;i<t;i++)o.push(r[e+i]);return o.join(".")}if(t===16){let o=[];for(let i=0;i<t;i+=2)o.push(n.getUint16(e+i).toString(16));return o.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Fr={},oa={},Rp=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,-1,"ip6zone"],[43,8,"ipcidr"],[53,-1,"dns",!0],[54,-1,"dns4",!0],[55,-1,"dns6",!0],[56,-1,"dnsaddr",!0],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[280,0,"webrtc-direct"],[281,0,"webrtc"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,-1,"unix",!1,!0],[421,-1,"ipfs"],[421,-1,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,-1,"garlic64"],[448,0,"tls"],[449,-1,"sni"],[460,0,"quic"],[461,0,"quic-v1"],[465,0,"webtransport"],[466,-1,"certhash"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[481,-1,"http-path"],[777,-1,"memory"]];Rp.forEach(r=>{let e=_p(...r);oa[e.code]=e,Fr[e.name]=e});function _p(r,e,t,n,o){return{code:r,size:e,name:t,resolvable:!!n,path:!!o}}function ee(r){if(typeof r=="number"){if(oa[r]!=null)return oa[r];throw new Error(`no protocol with code: ${r}`)}else if(typeof r=="string"){if(Fr[r]!=null)return Fr[r];throw new Error(`no protocol with name: ${r}`)}throw new Error(`invalid protocol id type: ${typeof r}`)}var N1=ee("ip4"),U1=ee("ip6"),R1=ee("ipcidr");function ca(r,e){switch(ee(r).code){case 4:case 41:return Pp(e);case 42:return aa(e);case 6:case 273:case 33:case 132:return xl(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return aa(e);case 421:return Op(e);case 444:return wl(e);case 445:return wl(e);case 466:return Dp(e);case 481:return globalThis.encodeURIComponent(aa(e));default:return ne(e,"base16")}}function ua(r,e){switch(ee(r).code){case 4:return yl(e);case 41:return yl(e);case 42:return sa(e);case 6:case 273:case 33:case 132:return la(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return sa(e);case 421:return Vp(e);case 444:return Mp(e);case 445:return $p(e);case 466:return Fp(e);case 481:return sa(globalThis.decodeURIComponent(e));default:return Z(e,"base16")}}var ia=Object.values(rn).map(r=>r.decoder),Lp=function(){let r=ia[0].or(ia[1]);return ia.slice(2).forEach(e=>r=r.or(e)),r}();function yl(r){if(!ri(r))throw new Error("invalid ip address");return na(r)}function Pp(r){let e=gl(r,0,r.length);if(e==null)throw new Error("ipBuff is required");if(!ri(e))throw new Error("invalid ip address");return e}function la(r){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,r),new Uint8Array(e)}function xl(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function sa(r){let e=Z(r),t=Uint8Array.from(Ar(e.length));return Oe([t,e],t.length+e.length)}function aa(r){let e=tr(r);if(r=r.slice(Ve(e)),r.length!==e)throw new Error("inconsistent lengths");return ne(r)}function Vp(r){let e;r[0]==="Q"||r[0]==="1"?e=gt(re.decode(`z${r}`)).bytes:e=X.parse(r).multihash.bytes;let t=Uint8Array.from(Ar(e.length));return Oe([t,e],t.length+e.length)}function Fp(r){let e=Lp.decode(r),t=Uint8Array.from(Ar(e.length));return Oe([t,e],t.length+e.length)}function Dp(r){let e=tr(r),t=r.slice(Ve(e));if(t.length!==e)throw new Error("inconsistent lengths");return"u"+ne(t,"base64url")}function Op(r){let e=tr(r),t=r.slice(Ve(e));if(t.length!==e)throw new Error("inconsistent lengths");return ne(t,"base58btc")}function Mp(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let t=Ge.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let o=la(n);return Oe([t,o],t.length+o.length)}function $p(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let t=Ge.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let o=la(n);return Oe([t,o],t.length+o.length)}function wl(r){let e=r.slice(0,r.length-2),t=r.slice(r.length-2),n=ne(e,"base32"),o=xl(t);return`${n}:${o}`}function bl(r){r=fa(r);let e=[],t=[],n=null,o=r.split("/").slice(1);if(o.length===1&&o[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let i=0;i<o.length;i++){let s=o[i],a=ee(s);if(a.size===0){e.push([a.code]),t.push([a.code]);continue}if(i++,i>=o.length)throw El("invalid address: "+r);if(a.path===!0){n=fa(o.slice(i).join("/")),e.push([a.code,ua(a.code,n)]),t.push([a.code,n]);break}let c=ua(a.code,o[i]);e.push([a.code,c]),t.push([a.code,ca(a.code,c)])}return{string:vl(t),bytes:da(e),tuples:e,stringTuples:t,path:n}}function ha(r){let e=[],t=[],n=null,o=0;for(;o<r.length;){let i=tr(r,o),s=Ve(i),a=ee(i),c=Hp(a,r.slice(o+s));if(c===0){e.push([i]),t.push([i]),o+=s;continue}let f=r.slice(o+s,o+s+c);if(o+=c+s,o>r.length)throw El("Invalid address Uint8Array: "+ne(r,"base16"));e.push([i,f]);let u=ca(i,f);if(t.push([i,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(r),string:vl(t),tuples:e,stringTuples:t,path:n}}function vl(r){let e=[];return r.map(t=>{let n=ee(t[0]);return e.push(n.name),t.length>1&&t[1]!=null&&e.push(t[1]),null}),fa(e.join("/"))}function da(r){return Oe(r.map(e=>{let t=ee(e[0]),n=Uint8Array.from(Ar(t.code));return e.length>1&&e[1]!=null&&(n=Oe([n,e[1]])),n}))}function Hp(r,e){if(r.size>0)return r.size/8;if(r.size===0)return 0;{let t=tr(e instanceof Uint8Array?e:Uint8Array.from(e));return t+Ve(t)}}function fa(r){return"/"+r.trim().split("/").filter(e=>e).join("/")}function El(r){return new Error("Error parsing address: "+r)}var Kp=Symbol.for("nodejs.util.inspect.custom"),ma=Symbol.for("@multiformats/js-multiaddr/multiaddr"),qp=[ee("dns").code,ee("dns4").code,ee("dns6").code,ee("dnsaddr").code],pa=class extends Error{constructor(e="No available resolver"){super(e),this.name="NoAvailableResolverError"}},ni=class r{bytes;#e;#r;#t;#a;[ma]=!0;constructor(e){e==null&&(e="");let t;if(e instanceof Uint8Array)t=ha(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);t=bl(e)}else if(Al(e))t=ha(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=t.bytes,this.#e=t.string,this.#r=t.tuples,this.#t=t.stringTuples,this.#a=t.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,t,n,o,i="",s=ee("tcp"),a=ee("udp"),c=ee("ip4"),f=ee("ip6"),u=ee("dns6"),l=ee("ip6zone");for(let[b,I]of this.stringTuples())b===l.code&&(i=`%${I??""}`),qp.includes(b)&&(t=s.name,o=443,n=`${I??""}${i}`,e=b===u.code?6:4),(b===s.code||b===a.code)&&(t=ee(b).name,o=parseInt(I??"")),(b===c.code||b===f.code)&&(t=ee(b).name,n=`${I??""}${i}`,e=b===f.code?6:4);if(e==null||t==null||n==null||o==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:t,port:o}}protos(){return this.#r.map(([e])=>Object.assign({},ee(e)))}protoCodes(){return this.#r.map(([e])=>e)}protoNames(){return this.#r.map(([e])=>ee(e).name)}tuples(){return this.#r}stringTuples(){return this.#t}encapsulate(e){return e=new r(e),new r(this.toString()+e.toString())}decapsulate(e){let t=e.toString(),n=this.toString(),o=n.lastIndexOf(t);if(o<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new r(n.slice(0,o))}decapsulateCode(e){let t=this.tuples();for(let n=t.length-1;n>=0;n--)if(t[n][0]===e)return new r(da(t.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,o])=>{n===Fr.p2p.code&&e.push([n,o]),n===Fr["p2p-circuit"].code&&(e=[])});let t=e.pop();if(t?.[1]!=null){let n=t[1];return n[0]==="Q"||n[0]==="1"?ne(re.decode(`z${n}`),"base58btc"):ne(X.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#a}equals(e){return ce(this.bytes,e.bytes)}async resolve(e){let t=this.protos().find(i=>i.resolvable);if(t==null)return[this];let n=Bl.get(t.name);if(n==null)throw new pa(`no available resolver for ${t.name}`);return(await n(this,e)).map(i=>sr(i))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let t=(e??this).protos();return!(t.length!==2||t[0].code!==4&&t[0].code!==41||t[1].code!==6&&t[1].code!==273)}[Kp](){return`Multiaddr(${this.#e})`}};var Bl=new Map;function Al(r){return!!r?.[ma]}function sr(r){return new ni(r)}function bn(r){let e=new globalThis.AbortController;function t(){e.abort();for(let i of r)i?.removeEventListener!=null&&i.removeEventListener("abort",t)}for(let i of r){if(i?.aborted===!0){t();break}i?.addEventListener!=null&&i.addEventListener("abort",t)}function n(){for(let i of r)i?.removeEventListener!=null&&i.removeEventListener("abort",t)}let o=e.signal;return o.clear=n,o}async function*oi(r,e={}){let t=r.getReader();try{for(;;){let n=await t.read();if(n.done)return;yield n.value}}finally{e.preventCancel!==!0&&await t.cancel(),t.releaseLock()}}var zp="/",jp=new TextEncoder().encode(zp),s2=jp[0];var Im=_n(ya(),1);var rt=class extends Error{static name="SignatureVerificationError";constructor(e="Record signature verification failed"){super(e),this.name="SignatureVerificationError"}},ii=class extends Error{static name="RecordExpiredError";constructor(e="Record has expired"){super(e),this.name="RecordExpiredError"}},Dr=class extends Error{static name="UnsupportedValidityError";constructor(e="The validity type is unsupported"){super(e),this.name="UnsupportedValidityError"}},si=class extends Error{static name="RecordTooLargeError";constructor(e="The record is too large"){super(e),this.name="RecordTooLargeError"}},ai=class extends Error{static name="InvalidValueError";constructor(e="Value must be a valid content path starting with /"){super(e),this.name="InvalidValueError"}},ci=class extends Error{static name="InvalidRecordDataError";constructor(e="Invalid record data"){super(e),this.name="InvalidRecordDataError"}},vn=class extends Error{static name="InvalidEmbeddedPublicKeyError";constructor(e="Invalid embedded public key"){super(e),this.name="InvalidEmbeddedPublicKeyError"}};var nt;(function(r){let e;(function(o){o.EOL="EOL"})(e=r.ValidityType||(r.ValidityType={}));let t;(function(o){o[o.EOL=0]="EOL"})(t||(t={})),function(o){o.codec=()=>sn(t)}(e=r.ValidityType||(r.ValidityType={}));let n;r.codec=()=>(n==null&&(n=kr((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),r.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 a={},c=i==null?o.len:o.pos+i;for(;o.pos<c;){let f=o.uint32();switch(f>>>3){case 1:{a.value=o.bytes();break}case 2:{a.signatureV1=o.bytes();break}case 3:{a.validityType=r.ValidityType.codec().decode(o);break}case 4:{a.validity=o.bytes();break}case 5:{a.sequence=o.uint64();break}case 6:{a.ttl=o.uint64();break}case 7:{a.pubKey=o.bytes();break}case 8:{a.signatureV2=o.bytes();break}case 9:{a.data=o.bytes();break}default:{o.skipType(f&7);break}}}return a})),n),r.encode=o=>Ir(o,r.codec()),r.decode=(o,i)=>Sr(o,r.codec(),i)})(nt||(nt={}));var Gp=["string","number","bigint","symbol"],Zp=["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 Sl(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(Gp.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(Wp(r))return"Buffer";let t=Yp(r);return t||"Object"}function Wp(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function Yp(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(Zp.includes(e))return e}var y=class{constructor(e,t,n){this.major=e,this.majorEncoded=e<<5,this.name=t,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(e){return this.major<e.major?-1:this.major>e.major?1:0}};y.uint=new y(0,"uint",!0);y.negint=new y(1,"negint",!0);y.bytes=new y(2,"bytes",!0);y.string=new y(3,"string",!0);y.array=new y(4,"array",!1);y.map=new y(5,"map",!1);y.tag=new y(6,"tag",!1);y.float=new y(7,"float",!0);y.false=new y(7,"false",!0);y.true=new y(7,"true",!0);y.null=new y(7,"null",!0);y.undefined=new y(7,"undefined",!0);y.break=new y(7,"break",!0);var L=class{constructor(e,t,n){this.type=e,this.value=t,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var Or=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",Jp=new TextDecoder,Xp=new TextEncoder;function ui(r){return Or&&globalThis.Buffer.isBuffer(r)}function Cl(r){return r instanceof Uint8Array?ui(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Nl=Or?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):Tl(r,e,t):(r,e,t)=>t-e>64?Jp.decode(r.subarray(e,t)):Tl(r,e,t),Ul=Or?r=>r.length>64?globalThis.Buffer.from(r):Il(r):r=>r.length>64?Xp.encode(r):Il(r);var Mr=Or?(r,e,t)=>ui(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),Rl=Or?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Cl(globalThis.Buffer.concat(r,e))):(r,e)=>{let t=new Uint8Array(e),n=0;for(let o of r)n+o.length>t.length&&(o=o.subarray(0,t.length-n)),t.set(o,n),n+=o.length;return t},_l=Or?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Ll(r,e){if(ui(r)&&ui(e))return r.compare(e);for(let t=0;t<r.length;t++)if(r[t]!==e[t])return r[t]<e[t]?-1:1;return 0}function Il(r){let e=[],t=0;for(let n=0;n<r.length;n++){let o=r.charCodeAt(n);o<128?e[t++]=o:o<2048?(e[t++]=o>>6|192,e[t++]=o&63|128):(o&64512)===55296&&n+1<r.length&&(r.charCodeAt(n+1)&64512)===56320?(o=65536+((o&1023)<<10)+(r.charCodeAt(++n)&1023),e[t++]=o>>18|240,e[t++]=o>>12&63|128,e[t++]=o>>6&63|128,e[t++]=o&63|128):(e[t++]=o>>12|224,e[t++]=o>>6&63|128,e[t++]=o&63|128)}return e}function Tl(r,e,t){let n=[];for(;e<t;){let o=r[e],i=null,s=o>239?4:o>223?3:o>191?2:1;if(e+s<=t){let a,c,f,u;switch(s){case 1:o<128&&(i=o);break;case 2:a=r[e+1],(a&192)===128&&(u=(o&31)<<6|a&63,u>127&&(i=u));break;case 3:a=r[e+1],c=r[e+2],(a&192)===128&&(c&192)===128&&(u=(o&15)<<12|(a&63)<<6|c&63,u>2047&&(u<55296||u>57343)&&(i=u));break;case 4:a=r[e+1],c=r[e+2],f=r[e+3],(a&192)===128&&(c&192)===128&&(f&192)===128&&(u=(o&15)<<18|(a&63)<<12|(c&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),e+=s}return Qp(n)}var kl=4096;function Qp(r){let e=r.length;if(e<=kl)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=kl));return t}var em=256,li=class{constructor(e=em){this.chunkSize=e,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(e){let t=this.chunks[this.chunks.length-1];if(this.cursor+e.length<=this.maxCursor+1){let o=t.length-(this.maxCursor-this.cursor)-1;t.set(e,o)}else{if(t){let o=t.length-(this.maxCursor-this.cursor)-1;o<t.length&&(this.chunks[this.chunks.length-1]=t.subarray(0,o),this.maxCursor=this.cursor-1)}e.length<64&&e.length<this.chunkSize?(t=_l(this.chunkSize),this.chunks.push(t),this.maxCursor+=t.length,this._initReuseChunk===null&&(this._initReuseChunk=t),t.set(e,0)):(this.chunks.push(e),this.maxCursor+=e.length)}this.cursor+=e.length}toBytes(e=!1){let t;if(this.chunks.length===1){let n=this.chunks[0];e&&this.cursor>n.length/2?(t=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):t=Mr(n,0,this.cursor)}else t=Rl(this.chunks,this.cursor);return e&&this.reset(),t}};var $="CBOR decode error:",wa="CBOR encode error:",En=[];En[23]=1;En[24]=2;En[25]=3;En[26]=5;En[27]=9;function Ct(r,e,t){if(r.length-e<t)throw new Error(`${$} not enough data for type`)}var ge=[24,256,65536,4294967296,BigInt("18446744073709551616")];function Me(r,e,t){Ct(r,e,1);let n=r[e];if(t.strict===!0&&n<ge[0])throw new Error(`${$} integer encoded in more bytes than necessary (strict decode)`);return n}function $e(r,e,t){Ct(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<ge[1])throw new Error(`${$} integer encoded in more bytes than necessary (strict decode)`);return n}function He(r,e,t){Ct(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<ge[2])throw new Error(`${$} integer encoded in more bytes than necessary (strict decode)`);return n}function Ke(r,e,t){Ct(r,e,8);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3],o=r[e+4]*16777216+(r[e+5]<<16)+(r[e+6]<<8)+r[e+7],i=(BigInt(n)<<BigInt(32))+BigInt(o);if(t.strict===!0&&i<ge[3])throw new Error(`${$} integer encoded in more bytes than necessary (strict decode)`);if(i<=Number.MAX_SAFE_INTEGER)return Number(i);if(t.allowBigInt===!0)return i;throw new Error(`${$} integers outside of the safe integer range are not supported`)}function Pl(r,e,t,n){return new L(y.uint,Me(r,e+1,n),2)}function Vl(r,e,t,n){return new L(y.uint,$e(r,e+1,n),3)}function Fl(r,e,t,n){return new L(y.uint,He(r,e+1,n),5)}function Dl(r,e,t,n){return new L(y.uint,Ke(r,e+1,n),9)}function ze(r,e){return ve(r,0,e.value)}function ve(r,e,t){if(t<ge[0]){let n=Number(t);r.push([e|n])}else if(t<ge[1]){let n=Number(t);r.push([e|24,n])}else if(t<ge[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<ge[3]){let n=Number(t);r.push([e|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(t);if(n<ge[4]){let o=[e|27,0,0,0,0,0,0,0],i=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));o[8]=i&255,i=i>>8,o[7]=i&255,i=i>>8,o[6]=i&255,i=i>>8,o[5]=i&255,o[4]=s&255,s=s>>8,o[3]=s&255,s=s>>8,o[2]=s&255,s=s>>8,o[1]=s&255,r.push(o)}else throw new Error(`${$} encountered BigInt larger than allowable range`)}}ze.encodedSize=function(e){return ve.encodedSize(e.value)};ve.encodedSize=function(e){return e<ge[0]?1:e<ge[1]?2:e<ge[2]?3:e<ge[3]?5:9};ze.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function Ol(r,e,t,n){return new L(y.negint,-1-Me(r,e+1,n),2)}function Ml(r,e,t,n){return new L(y.negint,-1-$e(r,e+1,n),3)}function $l(r,e,t,n){return new L(y.negint,-1-He(r,e+1,n),5)}var xa=BigInt(-1),Hl=BigInt(1);function Kl(r,e,t,n){let o=Ke(r,e+1,n);if(typeof o!="bigint"){let i=-1-o;if(i>=Number.MIN_SAFE_INTEGER)return new L(y.negint,i,9)}if(n.allowBigInt!==!0)throw new Error(`${$} integers outside of the safe integer range are not supported`);return new L(y.negint,xa-BigInt(o),9)}function fi(r,e){let t=e.value,n=typeof t=="bigint"?t*xa-Hl:t*-1-1;ve(r,e.type.majorEncoded,n)}fi.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*xa-Hl:t*-1-1;return n<ge[0]?1:n<ge[1]?2:n<ge[2]?3:n<ge[3]?5:9};fi.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function Bn(r,e,t,n){Ct(r,e,t+n);let o=Mr(r,e+t,e+t+n);return new L(y.bytes,o,t+n)}function ql(r,e,t,n){return Bn(r,e,1,t)}function zl(r,e,t,n){return Bn(r,e,2,Me(r,e+1,n))}function jl(r,e,t,n){return Bn(r,e,3,$e(r,e+1,n))}function Gl(r,e,t,n){return Bn(r,e,5,He(r,e+1,n))}function Zl(r,e,t,n){let o=Ke(r,e+1,n);if(typeof o=="bigint")throw new Error(`${$} 64-bit integer bytes lengths not supported`);return Bn(r,e,9,o)}function hi(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===y.string?Ul(r.value):r.value),r.encodedBytes}function $r(r,e){let t=hi(e);ve(r,e.type.majorEncoded,t.length),r.push(t)}$r.encodedSize=function(e){let t=hi(e);return ve.encodedSize(t.length)+t.length};$r.compareTokens=function(e,t){return rm(hi(e),hi(t))};function rm(r,e){return r.length<e.length?-1:r.length>e.length?1:Ll(r,e)}function An(r,e,t,n,o){let i=t+n;Ct(r,e,i);let s=new L(y.string,Nl(r,e+t,e+i),i);return o.retainStringBytes===!0&&(s.byteValue=Mr(r,e+t,e+i)),s}function Wl(r,e,t,n){return An(r,e,1,t,n)}function Yl(r,e,t,n){return An(r,e,2,Me(r,e+1,n),n)}function Jl(r,e,t,n){return An(r,e,3,$e(r,e+1,n),n)}function Xl(r,e,t,n){return An(r,e,5,He(r,e+1,n),n)}function Ql(r,e,t,n){let o=Ke(r,e+1,n);if(typeof o=="bigint")throw new Error(`${$} 64-bit integer string lengths not supported`);return An(r,e,9,o,n)}var ef=$r;function Hr(r,e,t,n){return new L(y.array,n,t)}function tf(r,e,t,n){return Hr(r,e,1,t)}function rf(r,e,t,n){return Hr(r,e,2,Me(r,e+1,n))}function nf(r,e,t,n){return Hr(r,e,3,$e(r,e+1,n))}function of(r,e,t,n){return Hr(r,e,5,He(r,e+1,n))}function sf(r,e,t,n){let o=Ke(r,e+1,n);if(typeof o=="bigint")throw new Error(`${$} 64-bit integer array lengths not supported`);return Hr(r,e,9,o)}function af(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${$} indefinite length items not allowed`);return Hr(r,e,1,1/0)}function di(r,e){ve(r,y.array.majorEncoded,e.value)}di.compareTokens=ze.compareTokens;di.encodedSize=function(e){return ve.encodedSize(e.value)};function Kr(r,e,t,n){return new L(y.map,n,t)}function cf(r,e,t,n){return Kr(r,e,1,t)}function uf(r,e,t,n){return Kr(r,e,2,Me(r,e+1,n))}function lf(r,e,t,n){return Kr(r,e,3,$e(r,e+1,n))}function ff(r,e,t,n){return Kr(r,e,5,He(r,e+1,n))}function hf(r,e,t,n){let o=Ke(r,e+1,n);if(typeof o=="bigint")throw new Error(`${$} 64-bit integer map lengths not supported`);return Kr(r,e,9,o)}function df(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${$} indefinite length items not allowed`);return Kr(r,e,1,1/0)}function pi(r,e){ve(r,y.map.majorEncoded,e.value)}pi.compareTokens=ze.compareTokens;pi.encodedSize=function(e){return ve.encodedSize(e.value)};function pf(r,e,t,n){return new L(y.tag,t,1)}function mf(r,e,t,n){return new L(y.tag,Me(r,e+1,n),2)}function gf(r,e,t,n){return new L(y.tag,$e(r,e+1,n),3)}function yf(r,e,t,n){return new L(y.tag,He(r,e+1,n),5)}function wf(r,e,t,n){return new L(y.tag,Ke(r,e+1,n),9)}function mi(r,e){ve(r,y.tag.majorEncoded,e.value)}mi.compareTokens=ze.compareTokens;mi.encodedSize=function(e){return ve.encodedSize(e.value)};var cm=20,um=21,lm=22,fm=23;function xf(r,e,t,n){if(n.allowUndefined===!1)throw new Error(`${$} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new L(y.null,null,1):new L(y.undefined,void 0,1)}function bf(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${$} indefinite length items not allowed`);return new L(y.break,void 0,1)}function ba(r,e,t){if(t){if(t.allowNaN===!1&&Number.isNaN(r))throw new Error(`${$} NaN values are not supported`);if(t.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${$} Infinity values are not supported`)}return new L(y.float,r,e)}function vf(r,e,t,n){return ba(va(r,e+1),3,n)}function Ef(r,e,t,n){return ba(Ea(r,e+1),5,n)}function Bf(r,e,t,n){return ba(Tf(r,e+1),9,n)}function gi(r,e,t){let n=e.value;if(n===!1)r.push([y.float.majorEncoded|cm]);else if(n===!0)r.push([y.float.majorEncoded|um]);else if(n===null)r.push([y.float.majorEncoded|lm]);else if(n===void 0)r.push([y.float.majorEncoded|fm]);else{let o,i=!1;(!t||t.float64!==!0)&&(Sf(n),o=va(ot,1),n===o||Number.isNaN(n)?(ot[0]=249,r.push(ot.slice(0,3)),i=!0):(If(n),o=Ea(ot,1),n===o&&(ot[0]=250,r.push(ot.slice(0,5)),i=!0))),i||(hm(n),o=Tf(ot,1),ot[0]=251,r.push(ot.slice(0,9)))}}gi.encodedSize=function(e,t){let n=e.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!t||t.float64!==!0){Sf(n);let o=va(ot,1);if(n===o||Number.isNaN(n))return 3;if(If(n),o=Ea(ot,1),n===o)return 5}return 9};var Af=new ArrayBuffer(9),je=new DataView(Af,1),ot=new Uint8Array(Af,0);function Sf(r){if(r===1/0)je.setUint16(0,31744,!1);else if(r===-1/0)je.setUint16(0,64512,!1);else if(Number.isNaN(r))je.setUint16(0,32256,!1);else{je.setFloat32(0,r);let e=je.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)je.setUint16(0,31744,!1);else if(t===0)je.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let o=t-127;o<-24?je.setUint16(0,0):o<-14?je.setUint16(0,(e&2147483648)>>16|1<<24+o,!1):je.setUint16(0,(e&2147483648)>>16|o+15<<10|n>>13,!1)}}}function va(r,e){if(r.length-e<2)throw new Error(`${$} not enough data for float16`);let t=(r[e]<<8)+r[e+1];if(t===31744)return 1/0;if(t===64512)return-1/0;if(t===32256)return NaN;let n=t>>10&31,o=t&1023,i;return n===0?i=o*2**-24:n!==31?i=(o+1024)*2**(n-25):i=o===0?1/0:NaN,t&32768?-i:i}function If(r){je.setFloat32(0,r,!1)}function Ea(r,e){if(r.length-e<4)throw new Error(`${$} not enough data for float32`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,4).getFloat32(0,!1)}function hm(r){je.setFloat64(0,r,!1)}function Tf(r,e){if(r.length-e<8)throw new Error(`${$} not enough data for float64`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,8).getFloat64(0,!1)}gi.compareTokens=ze.compareTokens;function W(r,e,t){throw new Error(`${$} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function yi(r){return()=>{throw new Error(`${$} ${r}`)}}var T=[];for(let r=0;r<=23;r++)T[r]=W;T[24]=Pl;T[25]=Vl;T[26]=Fl;T[27]=Dl;T[28]=W;T[29]=W;T[30]=W;T[31]=W;for(let r=32;r<=55;r++)T[r]=W;T[56]=Ol;T[57]=Ml;T[58]=$l;T[59]=Kl;T[60]=W;T[61]=W;T[62]=W;T[63]=W;for(let r=64;r<=87;r++)T[r]=ql;T[88]=zl;T[89]=jl;T[90]=Gl;T[91]=Zl;T[92]=W;T[93]=W;T[94]=W;T[95]=yi("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)T[r]=Wl;T[120]=Yl;T[121]=Jl;T[122]=Xl;T[123]=Ql;T[124]=W;T[125]=W;T[126]=W;T[127]=yi("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)T[r]=tf;T[152]=rf;T[153]=nf;T[154]=of;T[155]=sf;T[156]=W;T[157]=W;T[158]=W;T[159]=af;for(let r=160;r<=183;r++)T[r]=cf;T[184]=uf;T[185]=lf;T[186]=ff;T[187]=hf;T[188]=W;T[189]=W;T[190]=W;T[191]=df;for(let r=192;r<=215;r++)T[r]=pf;T[216]=mf;T[217]=gf;T[218]=yf;T[219]=wf;T[220]=W;T[221]=W;T[222]=W;T[223]=W;for(let r=224;r<=243;r++)T[r]=yi("simple values are not supported");T[244]=W;T[245]=W;T[246]=W;T[247]=xf;T[248]=yi("simple values are not supported");T[249]=vf;T[250]=Ef;T[251]=Bf;T[252]=W;T[253]=W;T[254]=W;T[255]=bf;var it=[];for(let r=0;r<24;r++)it[r]=new L(y.uint,r,1);for(let r=-1;r>=-24;r--)it[31-r]=new L(y.negint,r,1);it[64]=new L(y.bytes,new Uint8Array(0),1);it[96]=new L(y.string,"",1);it[128]=new L(y.array,0,1);it[160]=new L(y.map,0,1);it[244]=new L(y.false,!1,1);it[245]=new L(y.true,!0,1);it[246]=new L(y.null,null,1);function pm(){let r=[];return r[y.uint.major]=ze,r[y.negint.major]=fi,r[y.bytes.major]=$r,r[y.string.major]=ef,r[y.array.major]=di,r[y.map.major]=pi,r[y.tag.major]=mi,r[y.float.major]=gi,r}var ov=pm(),iv=new li,wi=class r{constructor(e,t){this.obj=e,this.parent=t}includes(e){let t=this;do if(t.obj===e)return!0;while(t=t.parent);return!1}static createCheck(e,t){if(e&&e.includes(t))throw new Error(`${wa} object contains circular references`);return new r(t,e)}},jt={null:new L(y.null,null),undefined:new L(y.undefined,void 0),true:new L(y.true,!0),false:new L(y.false,!1),emptyArray:new L(y.array,0),emptyMap:new L(y.map,0)},Gt={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new L(y.float,r):r>=0?new L(y.uint,r):new L(y.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new L(y.uint,r):new L(y.negint,r)},Uint8Array(r,e,t,n){return new L(y.bytes,r)},string(r,e,t,n){return new L(y.string,r)},boolean(r,e,t,n){return r?jt.true:jt.false},null(r,e,t,n){return jt.null},undefined(r,e,t,n){return jt.undefined},ArrayBuffer(r,e,t,n){return new L(y.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new L(y.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[jt.emptyArray,new L(y.break)]:jt.emptyArray;n=wi.createCheck(n,r);let o=[],i=0;for(let s of r)o[i++]=Ba(s,t,n);return t.addBreakTokens?[new L(y.array,r.length),o,new L(y.break)]:[new L(y.array,r.length),o]},Object(r,e,t,n){let o=e!=="Object",i=o?r.keys():Object.keys(r),s=o?r.size:i.length;if(!s)return t.addBreakTokens===!0?[jt.emptyMap,new L(y.break)]:jt.emptyMap;n=wi.createCheck(n,r);let a=[],c=0;for(let f of i)a[c++]=[Ba(f,t,n),Ba(o?r.get(f):r[f],t,n)];return mm(a,t),t.addBreakTokens?[new L(y.map,s),a,new L(y.break)]:[new L(y.map,s),a]}};Gt.Map=Gt.Object;Gt.Buffer=Gt.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))Gt[`${r}Array`]=Gt.DataView;function Ba(r,e={},t){let n=Sl(r),o=e&&e.typeEncoders&&e.typeEncoders[n]||Gt[n];if(typeof o=="function"){let s=o(r,n,e,t);if(s!=null)return s}let i=Gt[n];if(!i)throw new Error(`${wa} unsupported type: ${n}`);return i(r,n,e,t)}function mm(r,e){e.mapSorter&&r.sort(e.mapSorter)}var gm={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},xi=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let e=this.data[this._pos],t=it[e];if(t===void 0){let n=T[e];if(!n)throw new Error(`${$} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let o=e&31;t=n(this.data,this._pos,o,this.options)}return this._pos+=t.encodedLength,t}},Sn=Symbol.for("DONE"),bi=Symbol.for("BREAK");function ym(r,e,t){let n=[];for(let o=0;o<r.value;o++){let i=qr(e,t);if(i===bi){if(r.value===1/0)break;throw new Error(`${$} got unexpected break to lengthed array`)}if(i===Sn)throw new Error(`${$} found array but not enough entries (got ${o}, expected ${r.value})`);n[o]=i}return n}function wm(r,e,t){let n=t.useMaps===!0,o=n?void 0:{},i=n?new Map:void 0;for(let s=0;s<r.value;s++){let a=qr(e,t);if(a===bi){if(r.value===1/0)break;throw new Error(`${$} got unexpected break to lengthed map`)}if(a===Sn)throw new Error(`${$} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${$} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&i.has(a)||!n&&a in o))throw new Error(`${$} found repeat map key "${a}"`);let c=qr(e,t);if(c===Sn)throw new Error(`${$} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?i.set(a,c):o[a]=c}return n?i:o}function qr(r,e){if(r.done())return Sn;let t=r.next();if(t.type===y.break)return bi;if(t.type.terminal)return t.value;if(t.type===y.array)return ym(t,r,e);if(t.type===y.map)return wm(t,r,e);if(t.type===y.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=qr(r,e);return e.tags[t.value](n)}throw new Error(`${$} tag not supported (${t.value})`)}throw new Error("unsupported")}function kf(r,e){if(!(r instanceof Uint8Array))throw new Error(`${$} data to decode must be a Uint8Array`);e=Object.assign({},gm,e);let t=e.tokenizer||new xi(r,e),n=qr(t,e);if(n===Sn)throw new Error(`${$} did not find any content to decode`);if(n===bi)throw new Error(`${$} got unexpected break`);return[n,r.subarray(t.pos())]}function Aa(r,e){let[t,n]=kf(r,e);if(n.length>0)throw new Error(`${$} too many terminals, data makes no sense`);return t}var vm=Rt("ipns:utils"),Cf=Z("/ipns/");var Em=0,Bm=18;function Nf(r){let e;if(r.pubKey!=null)try{e=ol(r.pubKey)}catch(t){throw vm.error(t),t}if(e!=null)return e}function Uf(r){let e=Z("ipns-signature:");return Oe([e,r])}function cr(r){return"signatureV1"in r?nt.encode({value:Z(r.value),signatureV1:r.signatureV1,validityType:r.validityType,validity:Z(r.validity),sequence:r.sequence,ttl:r.ttl,pubKey:r.pubKey,signatureV2:r.signatureV2,data:r.data}):nt.encode({pubKey:r.pubKey,signatureV2:r.signatureV2,data:r.data})}function ht(r){let e=nt.decode(r);if(e.sequence!=null&&(e.sequence=BigInt(e.sequence)),e.ttl!=null&&(e.ttl=BigInt(e.ttl)),e.signatureV2==null||e.data==null)throw new rt("Missing data or signatureV2");let t=Rf(e.data),n=Am(t.Value),o=ne(t.Validity);if(e.value!=null&&e.signatureV1!=null)return Sm(e),{value:n,validityType:nt.ValidityType.EOL,validity:o,sequence:t.Sequence,ttl:t.TTL,pubKey:e.pubKey,signatureV1:e.signatureV1,signatureV2:e.signatureV2,data:e.data};if(e.signatureV2!=null)return{value:n,validityType:nt.ValidityType.EOL,validity:o,sequence:t.Sequence,ttl:t.TTL,pubKey:e.pubKey,signatureV2:e.signatureV2,data:e.data};throw new Error("invalid record: does not include signatureV1 or signatureV2")}function In(r){return Oe([Cf,r.bytes])}function Nt(r){let e=gt(r.slice(Cf.length));if(!vi(e,Em)&&!vi(e,Bm))throw new fr("Multihash in IPNS key was not identity or sha2-256");return e}function Rf(r){let e=Aa(r);if(e.ValidityType===0)e.ValidityType=nt.ValidityType.EOL;else throw new Dr("The validity type is unsupported");return Number.isInteger(e.Sequence)&&(e.Sequence=BigInt(e.Sequence)),Number.isInteger(e.TTL)&&(e.TTL=BigInt(e.TTL)),e}function Am(r){let e=ne(r).trim();if(e.startsWith("/"))return e;try{return`/ipfs/${X.decode(r).toV1().toString()}`}catch{}try{return`/ipfs/${X.parse(e).toV1().toString()}`}catch{}throw new ai("Value must be a valid content path starting with /")}function Sm(r){if(r.data==null)throw new ci("Record data is missing");let e=Rf(r.data);if(!ce(e.Value,r.value??new Uint8Array(0)))throw new rt('Field "value" did not match between protobuf and CBOR');if(!ce(e.Validity,r.validity??new Uint8Array(0)))throw new rt('Field "validity" did not match between protobuf and CBOR');if(e.ValidityType!==r.validityType)throw new rt('Field "validityType" did not match between protobuf and CBOR');if(e.Sequence!==r.sequence)throw new rt('Field "sequence" did not match between protobuf and CBOR');if(e.TTL!==r.ttl)throw new rt('Field "ttl" did not match between protobuf and CBOR')}function vi(r,e){return r.code===e}var Cv=Rt("ipns"),Nv=60*60*1e9,Tm="/ipns/",Uv=Tm.length;var _f=_n(ya(),1);var Ei=Rt("ipns:validator"),km=1024*10,Cm=async(r,e)=>{let t=ht(e),n;try{let o=Uf(t.data);n=await r.verify(o,t.signatureV2)}catch{n=!1}if(!n)throw Ei.error("record signature verification failed"),new rt("Record signature verification failed");if(t.validityType===nt.ValidityType.EOL){if(_f.default.fromString(t.validity).toDate().getTime()<Date.now())throw Ei.error("record has expired"),new ii("record has expired")}else if(t.validityType!=null)throw Ei.error("the validity type is unsupported"),new Dr("The validity type is unsupported");Ei("ipns record for %s is valid",t.value)};async function Lf(r,e){if(e.byteLength>km)throw new si("The record is too large");let t=Nt(r),n;vi(t,0)&&(n=Yo(t));let o=ht(e),i=Nf(o)??n;if(i==null)throw new vn("Could not extract public key from IPNS record or routing key");let s=In(i.toMultihash());if(!ce(r,s))throw new vn("Embedded public key did not match routing key");await Cm(i,e)}async function*Tn(r){let e=/\r?\n/,t=new TextDecoder("utf8"),n="";for await(let o of r){typeof o=="string"&&(o=new TextEncoder().encode(o)),n+=t.decode(o,{stream:!0});let i=n.split(e);n=i.pop()??"";for(let s=0;s<i.length;s++)yield JSON.parse(i[s])}n+=t.decode(),n!==""&&(yield JSON.parse(n))}function dt(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var Ia=_n(Vf(),1);var Cn=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Ta=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Ff=r=>globalThis.DOMException===void 0?new Ta(r):new DOMException(r),Df=r=>{let e=r.reason===void 0?Ff("This operation was aborted."):r.reason;return e instanceof Error?e:Ff(e)};function ka(r,e){let{milliseconds:t,fallback:n,message:o,customTimers:i={setTimeout,clearTimeout}}=e,s,c=new Promise((f,u)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(e.signal){let{signal:h}=e;h.aborted&&u(Df(h));let b=()=>{u(Df(h))};h.addEventListener("abort",b,{once:!0}),r.finally(()=>{h.removeEventListener("abort",b)})}if(t===Number.POSITIVE_INFINITY){r.then(f,u);return}let l=new Cn;s=i.setTimeout.call(void 0,()=>{if(n){try{f(n())}catch(h){u(h)}return}typeof r.cancel=="function"&&r.cancel(),o===!1?f():o instanceof Error?u(o):(l.message=o??`Promise timed out after ${t} milliseconds`,u(l))},t),(async()=>{try{f(await r)}catch(h){u(h)}})()}).finally(()=>{c.clear()});return c.clear=()=>{i.clearTimeout.call(void 0,s),s=void 0},c}function Ca(r,e,t){let n=0,o=r.length;for(;o>0;){let i=Math.trunc(o/2),s=n+i;t(r[s],e)<=0?(n=++s,o-=i+1):o=i}return n}var Nn=class{#e=[];enqueue(e,t){t={priority:0,...t};let n={priority:t.priority,run:e};if(this.size&&this.#e[this.size-1].priority>=t.priority){this.#e.push(n);return}let o=Ca(this.#e,n,(i,s)=>s.priority-i.priority);this.#e.splice(o,0,n)}dequeue(){return this.#e.shift()?.run}filter(e){return this.#e.filter(t=>t.priority===e.priority).map(t=>t.run)}get size(){return this.#e.length}};var Un=class extends Ia.default{#e;#r;#t=0;#a;#c;#p=0;#o;#u;#n;#m;#i=0;#l;#s;#g;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:Nn,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#r=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#a=e.intervalCap,this.#c=e.interval,this.#n=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#g=e.throwOnTimeout===!0,this.#s=e.autoStart===!1}get#x(){return this.#r||this.#t<this.#a}get#b(){return this.#i<this.#l}#v(){this.#i--,this.#f(),this.emit("next")}#E(){this.#w(),this.#y(),this.#u=void 0}get#B(){let e=Date.now();if(this.#o===void 0){let t=this.#p-e;if(t<0)this.#t=this.#e?this.#i:0;else return this.#u===void 0&&(this.#u=setTimeout(()=>{this.#E()},t)),!0}return!1}#f(){if(this.#n.size===0)return this.#o&&clearInterval(this.#o),this.#o=void 0,this.emit("empty"),this.#i===0&&this.emit("idle"),!1;if(!this.#s){let e=!this.#B;if(this.#x&&this.#b){let t=this.#n.dequeue();return t?(this.emit("active"),t(),e&&this.#y(),!0):!1}}return!1}#y(){this.#r||this.#o!==void 0||(this.#o=setInterval(()=>{this.#w()},this.#c),this.#p=Date.now()+this.#c)}#w(){this.#t===0&&this.#i===0&&this.#o&&(clearInterval(this.#o),this.#o=void 0),this.#t=this.#e?this.#i:0,this.#h()}#h(){for(;this.#f(););}get concurrency(){return this.#l}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#l=e,this.#h()}async#A(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#g,...t},new Promise((n,o)=>{this.#n.enqueue(async()=>{this.#i++,this.#t++;try{t.signal?.throwIfAborted();let i=e({signal:t.signal});t.timeout&&(i=ka(Promise.resolve(i),{milliseconds:t.timeout})),t.signal&&(i=Promise.race([i,this.#A(t.signal)]));let s=await i;n(s),this.emit("completed",s)}catch(i){if(i instanceof Cn&&!t.throwOnTimeout){n();return}o(i),this.emit("error",i)}finally{this.#v()}},t),this.emit("add"),this.#f()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#s?(this.#s=!1,this.#h(),this):this}pause(){this.#s=!0}clear(){this.#n=new this.#m}async onEmpty(){this.#n.size!==0&&await this.#d("empty")}async onSizeLessThan(e){this.#n.size<e||await this.#d("next",()=>this.#n.size<e)}async onIdle(){this.#i===0&&this.#n.size===0||await this.#d("idle")}async#d(e,t){return new Promise(n=>{let o=()=>{t&&!t()||(this.off(e,o),n())};this.on(e,o)})}get size(){return this.#n.size}sizeBy(e){return this.#n.filter(e).length}get pending(){return this.#i}get isPaused(){return this.#s}};var zr=class extends Error{static name="InvalidRequestError";constructor(e="Invalid request"){super(e),this.name="InvalidRequestError"}},ur=class extends Error{static name="BadResponseError";constructor(e="Bad response"){super(e),this.name="BadResponseError"}};function Rm(r){return r[Symbol.asyncIterator]!=null}function _m(r){if(Rm(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var Ai=_m;function Lm(r){let[e,t]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>e.next(),push:o=>{n.push(o)},next:()=>n.length>0?{done:!1,value:n.shift()}:e.next(),[t](){return this}}}var Of=Lm;function Pm(r){return r[Symbol.asyncIterator]!=null}function Vm(r,e){let t=0;if(Pm(r))return async function*(){for await(let c of r)yield e(c,t++)}();let n=Of(r),{value:o,done:i}=n.next();if(i===!0)return function*(){}();let s=e(o,t++);if(typeof s.then=="function")return async function*(){yield await s;for await(let c of n)yield e(c,t++)}();let a=e;return function*(){yield s;for(let c of n)yield a(c,t++)}()}var Si=Vm;var Mf=Z("/ipns/");function $f(r){return ce(r.subarray(0,Mf.byteLength),Mf)}var Ii=class{client;constructor(e){this.client=e}async*findProviders(e,t={}){yield*Si(this.client.getProviders(e,t),n=>({id:n.ID,multiaddrs:n.Addrs??[]}))}async provide(){}async cancelReprovide(){}async put(e,t,n){if(!$f(e))return;let o=Nt(e),i=X.createV1(114,o),s=ht(t);await this.client.putIPNS(i,s,n)}async get(e,t){if(!$f(e))throw new Re("Not found");let n=Nt(e),o=X.createV1(114,n);try{let i=await this.client.getIPNS(o,t);return cr(i)}catch(i){throw i.name==="BadResponseError"?new Re("Not found"):i}}},Ti=class{client;constructor(e){this.client=e}async findPeer(e,t={}){let n=await Ai(this.client.getPeers(e,t));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new Re("Not found")}async*getClosestPeers(e,t={}){}};var ye=Rt("delegated-routing-v1-http-api-client"),ki={concurrentRequests:4,timeout:3e4,cacheTTL:5*60*1e3,cacheName:"delegated-routing-v1-cache"},Ci=class{started;httpQueue;shutDownController;clientUrl;timeout;contentRouting;peerRouting;filterAddrs;filterProtocols;inFlightRequests;cacheName;cache;cacheTTL;constructor(e,t={}){this.started=!1,this.shutDownController=new AbortController,dr(1/0,this.shutDownController.signal),this.httpQueue=new Un({concurrency:t.concurrentRequests??ki.concurrentRequests}),this.inFlightRequests=new Map,this.clientUrl=e instanceof URL?e:new URL(e),this.timeout=t.timeout??ki.timeout,this.filterAddrs=t.filterAddrs,this.filterProtocols=t.filterProtocols,this.contentRouting=new Ii(this),this.peerRouting=new Ti(this),this.cacheName=t.cacheName??ki.cacheName,this.cacheTTL=t.cacheTTL??ki.cacheTTL}get[Za](){return this.contentRouting}get[Wa](){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&&ye("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(e,t={}){ye("getProviders starts: %c",e);let n=AbortSignal.timeout(this.timeout),o=bn([this.shutDownController.signal,n,t.signal]);dr(1/0,n,o);let i=dt(),s=dt();this.httpQueue.add(async()=>(i.resolve(),s.promise));try{await i.promise;let a=new URL(`${this.clientUrl}routing/v1/providers/${e.toString()}`);this.#r(a,t.filterAddrs,t.filterProtocols);let c={headers:{Accept:"application/x-ndjson"},signal:o},f=await this.#t(a.toString(),c);if(f.status===404)throw new Re("No matching records found");if(f.status===422)throw new zr("Request does not conform to schema or semantic constraints");if(f.body==null)throw new ur("Routing response had no body");if(f.headers.get("Content-Type")==="application/json"){let l=await f.json();for(let h of l.Providers){let b=this.#e(h);b!=null&&(yield b)}}else for await(let l of Tn(oi(f.body))){let h=this.#e(l);h!=null&&(yield h)}}catch(a){ye.error("getProviders errored:",a)}finally{o.clear(),s.resolve(),ye("getProviders finished: %c",e)}}async*getPeers(e,t={}){ye("getPeers starts: %c",e);let n=AbortSignal.timeout(this.timeout),o=bn([this.shutDownController.signal,n,t.signal]);dr(1/0,n,o);let i=dt(),s=dt();this.httpQueue.add(async()=>(i.resolve(),s.promise));try{await i.promise;let a=new URL(`${this.clientUrl}routing/v1/peers/${e.toCID().toString()}`);this.#r(a,t.filterAddrs,t.filterProtocols);let c={headers:{Accept:"application/x-ndjson"},signal:o},f=await this.#t(a.toString(),c);if(f.status===404)throw new Re("No matching records found");if(f.status===422)throw new zr("Request does not conform to schema or semantic constraints");if(f.body==null)throw new ur("Routing response had no body");if(f.headers.get("Content-Type")==="application/json"){let l=await f.json();for(let h of l.Peers){let b=this.#e(h);b!=null&&(yield b)}}else for await(let l of Tn(oi(f.body))){let h=this.#e(l);h!=null&&(yield h)}}catch(a){ye.error("getPeers errored:",a)}finally{o.clear(),s.resolve(),ye("getPeers finished: %c",e)}}async getIPNS(e,t={}){ye("getIPNS starts: %s",e);let n=AbortSignal.timeout(this.timeout),o=bn([this.shutDownController.signal,n,t.signal]);dr(1/0,n,o);let i=dt(),s=dt();this.httpQueue.add(async()=>(i.resolve(),s.promise));let a=`${this.clientUrl}routing/v1/ipns/${e}`;try{await i.promise;let c={headers:{Accept:"application/vnd.ipfs.ipns-record"},signal:o},f=await this.#t(a,c);if(ye("getIPNS GET %s %d",a,f.status),f.status===404)throw new Re("No matching records found");if(f.status===422)throw new zr("Request does not conform to schema or semantic constraints");if(f.body==null)throw new ur("GET ipns response had no body");let u=await f.arrayBuffer(),l=new Uint8Array(u,0,u.byteLength);return t.validate!==!1&&await Lf(In(e.multihash),l),ht(l)}catch(c){throw ye.error("getIPNS GET %s error:",a,c),c}finally{o.clear(),s.resolve(),ye("getIPNS finished: %s",e)}}async putIPNS(e,t,n={}){ye("putIPNS starts: %c",e);let o=AbortSignal.timeout(this.timeout),i=bn([this.shutDownController.signal,o,n.signal]);dr(1/0,o,i);let s=dt(),a=dt();this.httpQueue.add(async()=>(s.resolve(),a.promise));let c=`${this.clientUrl}routing/v1/ipns/${e}`;try{await s.promise;let f=cr(t),u={method:"PUT",headers:{"Content-Type":"application/vnd.ipfs.ipns-record"},body:f,signal:i},l=await this.#t(c,u);if(ye("putIPNS PUT %s %d",c,l.status),l.status!==200)throw new ur("PUT ipns response had status other than 200")}catch(f){throw ye.error("putIPNS PUT %s error:",c,f.stack),f}finally{i.clear(),a.resolve(),ye("putIPNS finished: %c",e)}}#e(e){try{let t=[],n=e.Addrs?.map(sr)??[];return e.Protocols!=null&&t.push(...e.Protocols),e.Protocol!=null&&(t.push(e.Protocol),delete e.Protocol),{...e,Schema:"peer",ID:al(e.ID),Addrs:n,Protocols:t}}catch(t){ye.error("could not conform record to peer schema",t)}}#r(e,t,n){if(t!=null||this.filterAddrs!=null){let o=t?.join(",")??this.filterAddrs?.join(",")??"";o!==""&&e.searchParams.set("filter-addrs",o)}if(n!=null||this.filterProtocols!=null){let o=n?.join(",")??this.filterProtocols?.join(",")??"";o!==""&&e.searchParams.set("filter-protocols",o)}}async#t(e,t){let n=t.method??"GET",o=`${n}-${e}`;if(n==="GET"){let c=await this.cache?.match(e);if(c!=null){if(parseInt(c.headers.get("x-cache-expires")??"0",10)>Date.now())return ye("returning cached response for %s",o),c;await this.cache?.delete(e)}}let i=this.inFlightRequests.get(o);if(i!=null){let c=await i;return ye("deduplicating outgoing request for %s",o),c.clone()}let s=fetch(e,t).then(async c=>{if(this.cache!=null&&c.ok&&n==="GET"){let f=Date.now()+this.cacheTTL,u=new Headers(c.headers);u.set("x-cache-expires",f.toString());let l=new Response(c.clone().body,{status:c.status,statusText:c.statusText,headers:u});await this.cache.put(e,l)}return c}).finally(()=>{this.inFlightRequests.delete(o)});return this.inFlightRequests.set(o,s),await s}};function Hf(r,e={}){return new Ci(new URL(r),e)}function Ni(){return{filterProtocols:["unknown","transport-bitswap","transport-ipfs-gateway-http"],filterAddrs:["https","webtransport","webrtc","webrtc-direct","wss","tls"]}}var Kf=Z("/ipns/");function qf(r){return ce(r.subarray(0,Kf.byteLength),Kf)}var Na=class{client;constructor(e,t={}){this.client=Hf(e,t)}async provide(e,t){}async cancelReprovide(e,t){}async*findProviders(e,t){yield*Si(this.client.getProviders(e,t),n=>({id:n.ID,multiaddrs:n.Addrs,protocols:n.Protocols}))}async put(e,t,n){if(!qf(e))return;let o=Nt(e),i=X.createV1(114,o),s=ht(t);await this.client.putIPNS(i,s,n)}async get(e,t){if(!qf(e))throw new Re("Not found");let n=Nt(e),o=X.createV1(114,n);try{let i=await this.client.getIPNS(o,t);return cr(i)}catch(i){throw i.name==="BadResponseError"?new Re("Not found"):i}}async findPeer(e,t){let n=await Ai(this.client.getPeers(e,t));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new Re("Not found")}async*getClosestPeers(e,t){}};function zf(r,e){let t=e??Ni();return new Na(new URL(r),t)}var jf="[a-fA-F\\d:]",Zt=r=>r&&r.includeBoundaries?`(?:(?<=\\s|^)(?=${jf})|(?<=${jf})(?=\\s|$))`:"",st="(?: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}",ue="[a-fA-F\\d]{1,4}",Ui=`
8
8
  (?:
9
- (?:${ut}:){7}(?:${ut}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8
10
- (?:${ut}:){6}(?:${se}|:${ut}|:)| // 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
11
- (?:${ut}:){5}(?::${se}|(?::${ut}){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
12
- (?:${ut}:){4}(?:(?::${ut}){0,1}:${se}|(?::${ut}){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
13
- (?:${ut}:){3}(?:(?::${ut}){0,2}:${se}|(?::${ut}){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
14
- (?:${ut}:){2}(?:(?::${ut}){0,3}:${se}|(?::${ut}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4
15
- (?:${ut}:){1}(?:(?::${ut}){0,4}:${se}|(?::${ut}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4
16
- (?::(?:(?::${ut}){0,5}:${se}|(?::${ut}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4
9
+ (?:${ue}:){7}(?:${ue}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8
10
+ (?:${ue}:){6}(?:${st}|:${ue}|:)| // 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
11
+ (?:${ue}:){5}(?::${st}|(?::${ue}){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
12
+ (?:${ue}:){4}(?:(?::${ue}){0,1}:${st}|(?::${ue}){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
13
+ (?:${ue}:){3}(?:(?::${ue}){0,2}:${st}|(?::${ue}){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
14
+ (?:${ue}:){2}(?:(?::${ue}){0,3}:${st}|(?::${ue}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4
15
+ (?:${ue}:){1}(?:(?::${ue}){0,4}:${st}|(?::${ue}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4
16
+ (?::(?:(?::${ue}){0,5}:${st}|(?::${ue}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4
17
17
  )(?:%[0-9a-zA-Z]{1,})? // %eth0 %1
18
- `.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),Fm=new RegExp(`(?:^${se}$)|(?:^${Ti}$)`),Om=new RegExp(`^${se}$`),Dm=new RegExp(`^${Ti}$`),Ta=r=>r&&r.exact?Fm:new RegExp(`(?:${Ze(r)}${se}${Ze(r)})|(?:${Ze(r)}${Ti}${Ze(r)})`,"g");Ta.v4=r=>r&&r.exact?Om:new RegExp(`${Ze(r)}${se}${Ze(r)}`,"g");Ta.v6=r=>r&&r.exact?Dm:new RegExp(`${Ze(r)}${Ti}${Ze(r)}`,"g");var Na=Ta;function Ua(r){let t=(...e)=>r(...e);return Object.defineProperty(t,"name",{value:`functionTimeout(${r.name||"<anonymous>"})`,configurable:!0}),t}function Gf(){return!1}var{toString:Mm}=Object.prototype;function Ra(r){return Mm.call(r)==="[object RegExp]"}var Zf={global:"g",ignoreCase:"i",multiline:"m",dotAll:"s",sticky:"y",unicode:"u"};function _a(r,t={}){if(!Ra(r))throw new TypeError("Expected a RegExp instance");let e=Object.keys(Zf).map(o=>(typeof t[o]=="boolean"?t[o]:r[o])?Zf[o]:"").join(""),n=new RegExp(t.source||r.source,e);return n.lastIndex=typeof t.lastIndex=="number"?t.lastIndex:r.lastIndex,n}function La(r,t,{timeout:e}={}){try{return Ua(()=>_a(r).test(t),{timeout:e})()}catch(n){if(Gf(n))return!1;throw n}}var $m=15,Hm=45,Wf={timeout:400};function Va(r){return r.length>Hm?!1:La(Na.v6({exact:!0}),r,Wf)}function Yf(r){return r.length>$m?!1:La(Na.v4({exact:!0}),r,Wf)}var Jf={http:"80",https:"443",ws:"80",wss:"443"},Km=["http","https","ws","wss"];function Xf(r,t){t=t??{};let e=t.defaultDnsType??"dns4",{scheme:n,hostname:o,port:i}=qm(r),a="/"+[zm(o,e),jm(i,n),Gm(n)].filter(c=>!!c).reduce((c,f)=>c.concat(f),[]).join("/");return sr(a)}function qm(r){let[t]=r.split(":");Km.includes(t)||(r="http"+r.substring(t.length));let{protocol:e,hostname:n,port:o}=new URL(r);if(o==null||o===""){let i=Zm(t);i!=null&&(o=i),i==null&&e==="http:"&&(o="80")}return{scheme:t,hostname:n,port:o}}function zm(r,t){if(!(r==null||r==="")){if(Yf(r))return["ip4",r];if(Va(r))return["ip6",r];if(r[0]==="["){let e=r.substring(1,r.length-1);if(Va(e))return["ip6",e]}return[t,r]}}function jm(r,t){if(!(r==null||r===""))return t==="udp"?["udp",r]:["tcp",r]}function Gm(r){if(r.match(/^tcp$|^udp$/)==null)return[r]}function Zm(r){if(!(r==null||r===""||Jf[r]==null))return Jf[r]}var Wm=["https://trustless-gateway.link","https://4everland.io"],Ym=2336;function Jm(r){return r=r.toString(),{id:al(Q.createV1(Ym,Wt.digest(Z(r)))),multiaddrs:[Xf(r)]}}var Pa=class{gateways;constructor(t={}){this.gateways=(t.gateways??Wm).map(e=>Jm(e))}async*findProviders(t,e){yield*this.gateways.toSorted(()=>Math.random()>.5?1:-1).map(n=>({...n,protocols:["transport-ipfs-gateway-http"]}))}};function Qf(r={}){return new Pa(r)}var Fa=class{libp2p;constructor(t){this.libp2p=t}async provide(t,e){await this.libp2p.contentRouting.provide(t,e)}async*findProviders(t,e){yield*this.libp2p.contentRouting.findProviders(t,e)}async put(t,e,n){await this.libp2p.contentRouting.put(t,e,n)}async get(t,e){return this.libp2p.contentRouting.get(t,e)}async findPeer(t,e){return this.libp2p.peerRouting.findPeer(t,e)}async*getClosestPeers(t,e){yield*this.libp2p.peerRouting.getClosestPeers(t,e)}};function td(r){return new Fa(r)}return pd(Xm);})();
18
+ `.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),Fm=new RegExp(`(?:^${st}$)|(?:^${Ui}$)`),Dm=new RegExp(`^${st}$`),Om=new RegExp(`^${Ui}$`),Ua=r=>r&&r.exact?Fm:new RegExp(`(?:${Zt(r)}${st}${Zt(r)})|(?:${Zt(r)}${Ui}${Zt(r)})`,"g");Ua.v4=r=>r&&r.exact?Dm:new RegExp(`${Zt(r)}${st}${Zt(r)}`,"g");Ua.v6=r=>r&&r.exact?Om:new RegExp(`${Zt(r)}${Ui}${Zt(r)}`,"g");var Ra=Ua;function _a(r){let e=(...t)=>r(...t);return Object.defineProperty(e,"name",{value:`functionTimeout(${r.name||"<anonymous>"})`,configurable:!0}),e}function Gf(){return!1}var{toString:Mm}=Object.prototype;function La(r){return Mm.call(r)==="[object RegExp]"}var Zf={global:"g",ignoreCase:"i",multiline:"m",dotAll:"s",sticky:"y",unicode:"u"};function Pa(r,e={}){if(!La(r))throw new TypeError("Expected a RegExp instance");let t=Object.keys(Zf).map(o=>(typeof e[o]=="boolean"?e[o]:r[o])?Zf[o]:"").join(""),n=new RegExp(e.source||r.source,t);return n.lastIndex=typeof e.lastIndex=="number"?e.lastIndex:r.lastIndex,n}function Va(r,e,{timeout:t}={}){try{return _a(()=>Pa(r).test(e),{timeout:t})()}catch(n){if(Gf(n))return!1;throw n}}var $m=15,Hm=45,Wf={timeout:400};function Fa(r){return r.length>Hm?!1:Va(Ra.v6({exact:!0}),r,Wf)}function Yf(r){return r.length>$m?!1:Va(Ra.v4({exact:!0}),r,Wf)}var Jf={http:"80",https:"443",ws:"80",wss:"443"},Km=["http","https","ws","wss"];function Xf(r,e){e=e??{};let t=e.defaultDnsType??"dns4",{scheme:n,hostname:o,port:i}=qm(r),a="/"+[zm(o,t),jm(i,n),Gm(n)].filter(c=>!!c).reduce((c,f)=>c.concat(f),[]).join("/");return sr(a)}function qm(r){let[e]=r.split(":");Km.includes(e)||(r="http"+r.substring(e.length));let{protocol:t,hostname:n,port:o}=new URL(r);if(o==null||o===""){let i=Zm(e);i!=null&&(o=i),i==null&&t==="http:"&&(o="80")}return{scheme:e,hostname:n,port:o}}function zm(r,e){if(!(r==null||r==="")){if(Yf(r))return["ip4",r];if(Fa(r))return["ip6",r];if(r[0]==="["){let t=r.substring(1,r.length-1);if(Fa(t))return["ip6",t]}return[e,r]}}function jm(r,e){if(!(r==null||r===""))return e==="udp"?["udp",r]:["tcp",r]}function Gm(r){if(r.match(/^tcp$|^udp$/)==null)return[r]}function Zm(r){if(!(r==null||r===""||Jf[r]==null))return Jf[r]}var Wm=["https://trustless-gateway.link","https://4everland.io"],Ym=2336;function Jm(r){return r=r.toString(),{id:ul(X.createV1(Ym,We.digest(Z(r)))),multiaddrs:[Xf(r)]}}var Da=class{gateways;constructor(e={}){this.gateways=(e.gateways??Wm).map(t=>Jm(t))}async*findProviders(e,t){yield*this.gateways.toSorted(()=>Math.random()>.5?1:-1).map(n=>({...n,protocols:["transport-ipfs-gateway-http"]}))}};function Qf(r={}){return new Da(r)}var Oa=class{libp2p;constructor(e){this.libp2p=e}async provide(e,t){await this.libp2p.contentRouting.provide(e,t)}async cancelReprovide(e,t){await this.libp2p.contentRouting.cancelReprovide(e,t)}async*findProviders(e,t){yield*this.libp2p.contentRouting.findProviders(e,t)}async put(e,t,n){await this.libp2p.contentRouting.put(e,t,n)}async get(e,t){return this.libp2p.contentRouting.get(e,t)}async findPeer(e,t){return this.libp2p.peerRouting.findPeer(e,t)}async*getClosestPeers(e,t){yield*this.libp2p.peerRouting.getClosestPeers(e,t)}};function eh(r){return new Oa(r)}return ph(Xm);})();
19
19
  /*! Bundled license information:
20
20
 
21
21
  pvtsutils/build/index.js: