@helia/routers 1.0.3 → 1.1.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,11 +1,22 @@
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 uh=Object.create;var Gn=Object.defineProperty;var lh=Object.getOwnPropertyDescriptor;var fh=Object.getOwnPropertyNames;var hh=Object.getPrototypeOf,dh=Object.prototype.hasOwnProperty;var nr=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),me=(r,e)=>{for(var t in e)Gn(r,t,{get:e[t],enumerable:!0})},Ma=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of fh(e))!dh.call(r,o)&&o!==t&&Gn(r,o,{get:()=>e[o],enumerable:!(n=lh(e,o))||n.enumerable});return r};var Vt=(r,e,t)=>(t=r!=null?uh(hh(r)):{},Ma(e||!r||!r.__esModule?Gn(t,"default",{value:r,enumerable:!0}):t,r)),ph=r=>Ma(Gn({},"__esModule",{value:!0}),r);var za=nr((um,qa)=>{var wr=1e3,br=wr*60,xr=br*60,or=xr*24,gh=or*7,mh=or*365.25;qa.exports=function(r,e){e=e||{};var t=typeof r;if(t==="string"&&r.length>0)return yh(r);if(t==="number"&&isFinite(r))return e.long?bh(r):wh(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function yh(r){if(r=String(r),!(r.length>100)){var 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){var t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*mh;case"weeks":case"week":case"w":return t*gh;case"days":case"day":case"d":return t*or;case"hours":case"hour":case"hrs":case"hr":case"h":return t*xr;case"minutes":case"minute":case"mins":case"min":case"m":return t*br;case"seconds":case"second":case"secs":case"sec":case"s":return t*wr;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function wh(r){var e=Math.abs(r);return e>=or?Math.round(r/or)+"d":e>=xr?Math.round(r/xr)+"h":e>=br?Math.round(r/br)+"m":e>=wr?Math.round(r/wr)+"s":r+"ms"}function bh(r){var e=Math.abs(r);return e>=or?jn(r,e,or,"day"):e>=xr?jn(r,e,xr,"hour"):e>=br?jn(r,e,br,"minute"):e>=wr?jn(r,e,wr,"second"):r+" ms"}function jn(r,e,t,n){var o=e>=t*1.5;return Math.round(r/t)+" "+n+(o?"s":"")}});var ja=nr((lm,Ga)=>{function xh(r){t.debug=t,t.default=t,t.coerce=c,t.disable=i,t.enable=o,t.enabled=s,t.humanize=za(),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 d=0;d<u.length;d++)l=(l<<5)-l+u.charCodeAt(d),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(u){let l,d=null,E,g;function h(...p){if(!h.enabled)return;let b=h,R=Number(new Date),v=R-(l||R);b.diff=v,b.prev=l,b.curr=R,l=R,p[0]=t.coerce(p[0]),typeof p[0]!="string"&&p.unshift("%O");let L=0;p[0]=p[0].replace(/%([a-zA-Z%])/g,(k,C)=>{if(k==="%%")return"%";L++;let y=t.formatters[C];if(typeof y=="function"){let N=p[L];k=y.call(b,N),p.splice(L,1),L--}return k}),t.formatArgs.call(b,p),(b.log||t.log).apply(b,p)}return h.namespace=u,h.useColors=t.useColors(),h.color=t.selectColor(u),h.extend=n,h.destroy=t.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>d!==null?d:(E!==t.namespaces&&(E=t.namespaces,g=t.enabled(u)),g),set:p=>{d=p}}),typeof t.init=="function"&&t.init(h),h}function n(u,l){let d=t(this.namespace+(typeof l>"u"?":":l)+u);return d.log=this.log,d}function o(u){t.save(u),t.namespaces=u,t.names=[],t.skips=[];let l,d=(typeof u=="string"?u:"").split(/[\s,]+/),E=d.length;for(l=0;l<E;l++)d[l]&&(u=d[l].replace(/\*/g,".*?"),u[0]==="-"?t.skips.push(new RegExp("^"+u.slice(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,d;for(l=0,d=t.skips.length;l<d;l++)if(t.skips[l].test(u))return!1;for(l=0,d=t.names.length;l<d;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.enable(t.load()),t}Ga.exports=xh});var Ya=nr((Oe,Yn)=>{Oe.formatArgs=vh;Oe.save=Bh;Oe.load=Ah;Oe.useColors=Eh;Oe.storage=Sh();Oe.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Oe.colors=["#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 Eh(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function vh(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+Yn.exports.humanize(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)}Oe.log=console.debug||console.log||(()=>{});function Bh(r){try{r?Oe.storage.setItem("debug",r):Oe.storage.removeItem("debug")}catch{}}function Ah(){let r;try{r=Oe.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function Sh(){try{return localStorage}catch{}}Yn.exports=ja()(Oe);var{formatters:Ih}=Yn.exports;Ih.j=function(r){try{return JSON.stringify(r)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var wu=nr(Yr=>{"use strict";var Ap="[object ArrayBuffer]",It=class r{static isArrayBuffer(e){return Object.prototype.toString.call(e)===Ap}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}},Xs="string",Sp=/^[0-9a-f]+$/i,Ip=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,Rp=/^[a-zA-Z0-9-_]+$/,vo=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=It.toUint8Array(e),n="";for(let i=0;i<t.length;i++)n+=String.fromCharCode(t[i]);return decodeURIComponent(escape(n))}},je=class{static toString(e,t=!1){let n=It.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}},Bo=class r{static isHex(e){return typeof e===Xs&&Sp.test(e)}static isBase64(e){return typeof e===Xs&&Ip.test(e)}static isBase64Url(e){return typeof e===Xs&&Rp.test(e)}static ToString(e,t="utf8"){let n=It.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 je.toString(n,!0);case"utf16":case"utf16be":return je.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 je.fromString(e,!0);case"utf16":case"utf16be":return je.fromString(e);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToBase64(e){let t=It.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 vo.fromString(e);case"utf16":case"utf16be":return je.fromString(e);case"utf16le":case"usc2":return je.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 vo.toString(e);case"utf16":case"utf16be":return je.toString(e);case"utf16le":case"usc2":return je.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=It.toUint8Array(e),n="";for(let o=0;o<t.length;o++)n+=String.fromCharCode(t[o]);return n}static ToHex(e){let t=It.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 je.toString(e,t)}static FromUtf16String(e,t=!1){return je.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,"")||""}};Bo.DEFAULT_UTF8_ENCODING="utf8";function kp(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 Tp(...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}Yr.BufferSourceConverter=It;Yr.Convert=Bo;Yr.assign=kp;Yr.combine=Tp;Yr.isEqual=Np});var hi=nr((V1,Al)=>{"use strict";function Bl(r,e){for(let t in e)Object.defineProperty(r,t,{value:e[t],enumerable:!0,configurable:!0});return r}function lg(r,e,t){if(!r||typeof r=="string")throw new TypeError("Please pass an Error to err-code");t||(t={}),typeof e=="object"&&(t=e,e=""),e&&(t.code=e);try{return Bl(r,t)}catch{t.message=r.message,t.stack=r.stack;let o=function(){};return o.prototype=Object.create(Object.getPrototypeOf(r)),Bl(new o,t)}}Al.exports=lg});var pa=nr((H1,da)=>{var M1=function(){typeof da<"u"&&(da.exports=h);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(y){var N=y-y%1;return N==0&&(y<0||y===0&&1/y!=1/0)?-0:N},u=h.prototype,l=(h.fromDate=function(y){return new h(+y)},h.fromInt64BE=L(0,1,2,3,0,4),h.fromInt64LE=L(3,2,1,0,4,0),h.fromString=function(T){var N,D=new h,T=(T+="").replace(/^\s*[+\-]?\d+/,function(H){var H=+H,J=1970+(H-1970)%400;return D.year=H-J,J}).replace(/(?:Z|([+\-]\d{2}):?(\d{2}))$/,function(P,H,J){return H<0&&(J*=-1),N=6e4*(60*+H+ +J),""}).replace(/\.\d+$/,function(P){return D.nano=+(P+c).substr(1,9),""}).split(/\D+/);if(1<T.length?T[1]--:T[1]=0,D.time=N=Date.UTC.apply(Date,T)-(N||0),isNaN(N))throw new TypeError("Invalid Date");return p(D)},h.fromTimeT=function(y){return R(y,0)},u.year=0,u.time=0,u.nano=0,u.addNano=function(y){return this.nano+=+y||0,this},u.getNano=function(){var y=p(this);return(y.time%1e3*a+ +y.nano+1e9)%1e9},u.getTimeT=function(){var N=p(this),y=Math.floor(N.time/1e3),N=N.year;return N&&(y+=N*t*r/e),y},u.getYear=function(){return this.toDate().getUTCFullYear()+this.year},u.toDate=function(){return b(p(this).time)},u.toJSON=function(){return this.toString().replace(/0{1,6}Z$/,"Z")},u.toString=function(y){var N=this,D=N.toDate(),T={H:function(){return k(D.getUTCHours())},L:function(){return C(D.getUTCMilliseconds(),3)},M:function(){return k(D.getUTCMinutes())},N:function(){return C(N.getNano(),9)},S:function(){return k(D.getUTCSeconds())},Y:function(){var P=N.getYear();return 999999<P?"+"+P:9999<P?"+"+C(P,6):0<=P?C(P,4):-999999<=P?"-"+C(-P,6):P},a:function(){return E[D.getUTCDay()]},b:function(){return d[D.getUTCMonth()]},d:function(){return k(D.getUTCDate())},e:function(){return function(P){return(9<P?"":" ")+(0|P)}(D.getUTCDate())},m:function(){return k(D.getUTCMonth()+1)}};return function P(H){return H.replace(/%./g,function(J){var A=J[1],x=g[A],A=T[A];return x?P(x):A?A():J})}(y||l)},u.writeInt64BE=v(0,1,2,3,0,4),u.writeInt64LE=v(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"],E=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],g={"%":"%",F:"%Y-%m-%d",n:`
3
- `,R:"%H:%M",T:"%H:%M:%S",t:" ",X:"%T",Z:"GMT",z:"+0000"};return h;function h(y,N,D){var T=this;if(!(T instanceof h))return new h(y,N,D);T.time=+y||0,T.nano=+N||0,T.year=+D||0,p(T)}function p(y){var N,D,T,P=y.year,H=y.time,J=y.nano,x=((J<0||a<=J)&&(J-=(D=Math.floor(J/a))*a,H+=D,D=1),P%e);return(H<-i||i<H||x)&&((N=f(H/o))&&(P+=N*e,H-=N*o),(T=b(H)).setUTCFullYear(x+T.getUTCFullYear()),T=(H=+T)+(N=f((P-=x)/e))*o,N&&-i<=T&&T<=i&&(P-=N*e,H=T),D=1),D&&(y.year=P,y.time=H,y.nano=J),y}function b(y){var N=new Date(0);return N.setTime(y),N}function R(P,T){P=+P||0;var D=f((T=(T|0)*s)/n)+f(P/n),T=T%n+P%n,P=f(T/n);return P&&(D+=P,T-=P*n),new h(1e3*T,0,D*e)}function v(y,N,D,T,P,H){return function(x,A){var B=p(this);x=x||new Array(8),S(x,A|=0);var w=Math.floor(B.time/1e3),B=B.year*(t*r/e),M=f(B/s)+f(w/s),B=B%s+w%s,w=Math.floor(B/s);return w&&(M+=w,B-=w*s),J(x,A+P,M),J(x,A+H,B),x};function J(x,A,M){x[A+y]=M>>24&255,x[A+N]=M>>16&255,x[A+D]=M>>8&255,x[A+T]=255&M}}function L(y,N,D,T,P,H){return function(x,A){S(x,A|=0);var M=J(x,A+P);return R(J(x,A+H),M)};function J(x,A){return 16777216*x[A+y]+(x[A+N]<<16|x[A+D]<<8|x[A+T])}}function S(y,N){if(y=y&&y.length,y==null)throw new TypeError("Invalid Buffer");if(y<N+8)throw new RangeError("Out of range")}function k(y){return(9<y?"":"0")+(0|y)}function C(y,N){return(c+(0|y)).substr(-N)}}()});var $f=nr((N2,Aa)=>{"use strict";var Zg=Object.prototype.hasOwnProperty,Ue="~";function Kn(){}Object.create&&(Kn.prototype=Object.create(null),new Kn().__proto__||(Ue=!1));function Wg(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function Kf(r,e,t,n,o){if(typeof t!="function")throw new TypeError("The listener must be a function");var i=new Wg(t,n||r,o),s=Ue?Ue+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 Ri(r,e){--r._eventsCount===0?r._events=new Kn:delete r._events[e]}function ke(){this._events=new Kn,this._eventsCount=0}ke.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)Zg.call(t,n)&&e.push(Ue?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};ke.prototype.listeners=function(e){var t=Ue?Ue+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};ke.prototype.listenerCount=function(e){var t=Ue?Ue+e:e,n=this._events[t];return n?n.fn?1:n.length:0};ke.prototype.emit=function(e,t,n,o,i,s){var a=Ue?Ue+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 d=c.length,E;for(l=0;l<d;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(E=1,u=new Array(f-1);E<f;E++)u[E-1]=arguments[E];c[l].fn.apply(c[l].context,u)}}return!0};ke.prototype.on=function(e,t,n){return Kf(this,e,t,n,!1)};ke.prototype.once=function(e,t,n){return Kf(this,e,t,n,!0)};ke.prototype.removeListener=function(e,t,n,o){var i=Ue?Ue+e:e;if(!this._events[i])return this;if(!t)return Ri(this,i),this;var s=this._events[i];if(s.fn)s.fn===t&&(!o||s.once)&&(!n||s.context===n)&&Ri(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:Ri(this,i)}return this};ke.prototype.removeAllListeners=function(e){var t;return e?(t=Ue?Ue+e:e,this._events[t]&&Ri(this,t)):(this._events=new Kn,this._eventsCount=0),this};ke.prototype.off=ke.prototype.removeListener;ke.prototype.addListener=ke.prototype.on;ke.prefixed=Ue;ke.EventEmitter=ke;typeof Aa<"u"&&(Aa.exports=ke)});var rm={};me(rm,{delegatedHTTPRouting:()=>Qf,libp2pRouting:()=>eh});var Ha=Symbol.for("@libp2p/content-routing");var Li=Symbol.for("@libp2p/peer-id");function Ka(r){return r!=null&&!!r[Li]}var $a=Symbol.for("@libp2p/peer-routing");var O=class extends Error{code;props;constructor(e,t,n){super(e),this.code=t,this.name=n?.name??"CodeError",this.props=n??{}}};var yr=(r,...e)=>{try{[...e]}catch{}};var Pe=Vt(Ya(),1);var Fi={};me(Fi,{base32:()=>Je,base32hex:()=>Lh,base32hexpad:()=>Dh,base32hexpadupper:()=>Oh,base32hexupper:()=>Vh,base32pad:()=>_h,base32padupper:()=>Uh,base32upper:()=>tc,base32z:()=>Ph});var fm=new Uint8Array(0);function Za(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 wt(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 Ja(r){return new TextDecoder().decode(r)}function Rh(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(g){if(g instanceof Uint8Array||(ArrayBuffer.isView(g)?g=new Uint8Array(g.buffer,g.byteOffset,g.byteLength):Array.isArray(g)&&(g=Uint8Array.from(g))),!(g instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(g.length===0)return"";for(var h=0,p=0,b=0,R=g.length;b!==R&&g[b]===0;)b++,h++;for(var v=(R-b)*u+1>>>0,L=new Uint8Array(v);b!==R;){for(var S=g[b],k=0,C=v-1;(S!==0||k<p)&&C!==-1;C--,k++)S+=256*L[C]>>>0,L[C]=S%a>>>0,S=S/a>>>0;if(S!==0)throw new Error("Non-zero carry");p=k,b++}for(var y=v-p;y!==v&&L[y]===0;)y++;for(var N=c.repeat(h);y<v;++y)N+=r.charAt(L[y]);return N}function d(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var h=0;if(g[h]!==" "){for(var p=0,b=0;g[h]===c;)p++,h++;for(var R=(g.length-h)*f+1>>>0,v=new Uint8Array(R);g[h];){var L=t[g.charCodeAt(h)];if(L===255)return;for(var S=0,k=R-1;(L!==0||S<b)&&k!==-1;k--,S++)L+=a*v[k]>>>0,v[k]=L%256>>>0,L=L/256>>>0;if(L!==0)throw new Error("Non-zero carry");b=S,h++}if(g[h]!==" "){for(var C=R-b;C!==R&&v[C]===0;)C++;for(var y=new Uint8Array(p+(R-C)),N=p;C!==R;)y[N++]=v[C++];return y}}}function E(g){var h=d(g);if(h)return h;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:d,decode:E}}var kh=Rh,Th=kh,Qa=Th;var Vi=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")}},Di=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),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 ec(this,e)}},Oi=class{decoders;constructor(e){this.decoders=e}or(e){return ec(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 ec(r,e){return new Oi({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var Pi=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 Vi(e,t,n),this.decoder=new Di(e,t,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function Er({name:r,prefix:e,encode:t,decode:n}){return new Pi(r,e,t,n)}function Dt({name:r,prefix:e,alphabet:t}){let{encode:n,decode:o}=Qa(t,r);return Er({prefix:e,name:r,encode:n,decode:i=>wt(o(i))})}function Nh(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 Ch(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 ae({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return Er({prefix:e,name:r,encode(o){return Ch(o,n,t)},decode(o){return Nh(o,n,t,r)}})}var Je=ae({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),tc=ae({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),_h=ae({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Uh=ae({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Lh=ae({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Vh=ae({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Dh=ae({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Oh=ae({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Ph=ae({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Mi={};me(Mi,{base58btc:()=>le,base58flickr:()=>Fh});var le=Dt({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Fh=Dt({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Hi={};me(Hi,{base64:()=>cn,base64pad:()=>Mh,base64url:()=>Hh,base64urlpad:()=>Kh});var cn=ae({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Mh=ae({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Hh=ae({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Kh=ae({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});Pe.default.formatters.b=r=>r==null?"undefined":le.baseEncode(r);Pe.default.formatters.t=r=>r==null?"undefined":Je.baseEncode(r);Pe.default.formatters.m=r=>r==null?"undefined":cn.baseEncode(r);Pe.default.formatters.p=r=>r==null?"undefined":r.toString();Pe.default.formatters.c=r=>r==null?"undefined":r.toString();Pe.default.formatters.k=r=>r==null?"undefined":r.toString();Pe.default.formatters.a=r=>r==null?"undefined":r.toString();function $h(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 Ot(r){let e=$h(`${r}:trace`);return Pe.default.enabled(`${r}:trace`)&&Pe.default.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=(0,Pe.default)(`${r}:trace`)),Object.assign((0,Pe.default)(r),{error:(0,Pe.default)(`${r}:error`),trace:e})}var Ki={};me(Ki,{base10:()=>qh});var qh=Dt({prefix:"9",name:"base10",alphabet:"0123456789"});var $i={};me($i,{base16:()=>zh,base16upper:()=>Gh});var zh=ae({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Gh=ae({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var qi={};me(qi,{base2:()=>jh});var jh=ae({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var zi={};me(zi,{base256emoji:()=>Xh});var rc=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}"),Yh=rc.reduce((r,e,t)=>(r[t]=e,r),[]),Zh=rc.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function Wh(r){return r.reduce((e,t)=>(e+=Yh[t],e),"")}function Jh(r){let e=[];for(let t of r){let n=Zh[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var Xh=Er({prefix:"\u{1F680}",name:"base256emoji",encode:Wh,decode:Jh});var Gi={};me(Gi,{base36:()=>Zn,base36upper:()=>Qh});var Zn=Dt({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Qh=Dt({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ji={};me(ji,{base8:()=>ed});var ed=ae({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Yi={};me(Yi,{identity:()=>td});var td=Er({prefix:"\0",name:"identity",encode:r=>Ja(r),decode:r=>Wa(r)});var Cm=new TextEncoder,_m=new TextDecoder;var Wi={};me(Wi,{identity:()=>ut});var od=ic,nc=128,id=127,sd=~id,ad=Math.pow(2,31);function ic(r,e,t){e=e||[],t=t||0;for(var n=t;r>=ad;)e[t++]=r&255|nc,r/=128;for(;r&sd;)e[t++]=r&255|nc,r>>>=7;return e[t]=r|0,ic.bytes=t-n+1,e}var cd=Zi,ud=128,oc=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&oc)<<o:(s&oc)*Math.pow(2,o),o+=7}while(s>=ud);return Zi.bytes=i-n,t}var ld=Math.pow(2,7),fd=Math.pow(2,14),hd=Math.pow(2,21),dd=Math.pow(2,28),pd=Math.pow(2,35),gd=Math.pow(2,42),md=Math.pow(2,49),yd=Math.pow(2,56),wd=Math.pow(2,63),bd=function(r){return r<ld?1:r<fd?2:r<hd?3:r<dd?4:r<pd?5:r<gd?6:r<md?7:r<yd?8:r<wd?9:10},xd={encode:od,decode:cd,encodingLength:bd},Ed=xd,un=Ed;function ln(r,e=0){return[un.decode(r,e),un.decode.bytes]}function vr(r,e,t=0){return un.encode(r,e,t),e}function Br(r){return un.encodingLength(r)}function ct(r,e){let t=e.byteLength,n=Br(r),o=n+Br(t),i=new Uint8Array(o+t);return vr(r,i,0),vr(t,i,n),i.set(e,o),new Ar(r,t,e,i)}function Pt(r){let e=wt(r),[t,n]=ln(e),[o,i]=ln(e.subarray(n)),s=e.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new Ar(t,o,s,e)}function sc(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&Za(r.bytes,t.bytes)}}var Ar=class{code;size;digest;bytes;constructor(e,t,n,o){this.code=e,this.size=t,this.digest=n,this.bytes=o}};var ac=0,vd="identity",cc=wt;function Bd(r){return ct(ac,cc(r))}var ut={code:ac,name:vd,encode:cc,digest:Bd};var Qi={};me(Qi,{sha256:()=>Ee,sha512:()=>Ad});function Xi({name:r,code:e,encode:t}){return new Ji(r,e,t)}var Ji=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?ct(this.code,t):t.then(n=>ct(this.code,n))}else throw Error("Unknown type, must be binary type")}};function lc(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var Ee=Xi({name:"sha2-256",code:18,encode:lc("SHA-256")}),Ad=Xi({name:"sha2-512",code:19,encode:lc("SHA-512")});function fc(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return Id(t,es(r),e??le.encoder);default:return Rd(t,es(r),e??Je.encoder)}}var hc=new WeakMap;function es(r){let e=hc.get(r);if(e==null){let t=new Map;return hc.set(r,t),t}return e}var Te=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!==fn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==kd)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=ct(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&&sc(e.multihash,n.multihash)}toString(e){return fc(this,e)}toJSON(){return{"/":fc(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??dc(n,o,i.bytes))}else if(t[Td]===!0){let{version:n,multihash:o,code:i}=t,s=Pt(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!==fn)throw new Error(`Version 0 CID must use dag-pb (code: ${fn}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let o=dc(e,t,n.bytes);return new r(e,t,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,fn,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=wt(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 Ar(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,d]=ln(e.subarray(t));return t+=d,l},o=n(),i=fn;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]=Sd(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 es(i).set(n,e),i}};function Sd(r,e){switch(r[0]){case"Q":{let t=e??le;return[le.prefix,t.decode(`${le.prefix}${r}`)]}case le.prefix:{let t=e??le;return[le.prefix,t.decode(r)]}case Je.prefix:{let t=e??Je;return[Je.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function Id(r,e,t){let{prefix:n}=t;if(n!==le.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 Rd(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 fn=112,kd=18;function dc(r,e,t){let n=Br(r),o=n+Br(e),i=new Uint8Array(o+t.byteLength);return vr(r,i,0),vr(e,i,n),i.set(t,o),i}var Td=Symbol.for("@ipld/js-cid/CID");var Mt={...Yi,...qi,...ji,...Ki,...$i,...Fi,...Gi,...Mi,...Hi,...zi},Qm={...Qi,...Wi};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}var Nd=Symbol.for("nodejs.util.inspect.custom"),pc=Object.values(Mt).map(r=>r.decoder).reduce((r,e)=>r.or(e),Mt.identity.decoder),gc=114,ts=36,rs=37,hn=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Li]=!0;toString(){return this.string==null&&(this.string=le.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return Te.createV1(gc,this.multihash)}toBytes(){return this.multihash.bytes}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 ns(e).equals(this);if(e?.multihash?.bytes!=null)return ce(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[Nd](){return`PeerId(${this.toString()})`}},Sr=class extends hn{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Ir=class extends hn{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},Rr=class extends hn{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function ns(r,e){if(e=e??pc,r.charAt(0)==="1"||r.charAt(0)==="Q"){let t=Pt(le.decode(`z${r}`));return r.startsWith("12D")?new Ir({multihash:t}):r.startsWith("16U")?new Rr({multihash:t}):new Sr({multihash:t})}return dn(pc.decode(r))}function dn(r){try{let e=Pt(r);if(e.code===ut.code){if(e.digest.length===ts)return new Ir({multihash:e});if(e.digest.length===rs)return new Rr({multihash:e})}if(e.code===Ee.code)return new Sr({multihash:e})}catch{return Cd(Te.decode(r))}throw new Error("Supplied PeerID CID is invalid")}function Cd(r){if(r==null||r.multihash==null||r.version==null||r.version===1&&r.code!==gc)throw new Error("Supplied PeerID CID is invalid");let e=r.multihash;if(e.code===Ee.code)return new Sr({multihash:r.multihash});if(e.code===ut.code){if(e.digest.length===ts)return new Ir({multihash:r.multihash});if(e.digest.length===rs)return new Rr({multihash:r.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function mc(r,e){return r.length===ts?new Ir({multihash:ct(ut.code,r),privateKey:e}):r.length===rs?new Rr({multihash:ct(ut.code,r),privateKey:e}):new Sr({multihash:await Ee.digest(r),publicKey:r,privateKey:e})}function Xe(r=0){return new Uint8Array(r)}function wc(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var yc=wc("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),os=wc("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=Xe(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),_d={utf8:yc,"utf-8":yc,hex:Mt.base16,latin1:os,ascii:os,binary:os,...Mt},Jn=_d;function W(r,e="utf8"){let t=Jn[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}var Ud=Math.pow(2,7),Ld=Math.pow(2,14),Vd=Math.pow(2,21),is=Math.pow(2,28),ss=Math.pow(2,35),as=Math.pow(2,42),cs=Math.pow(2,49),te=128,Se=127;function Le(r){if(r<Ud)return 1;if(r<Ld)return 2;if(r<Vd)return 3;if(r<is)return 4;if(r<ss)return 5;if(r<as)return 6;if(r<cs)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function us(r,e,t=0){switch(Le(r)){case 8:e[t++]=r&255|te,r/=128;case 7:e[t++]=r&255|te,r/=128;case 6:e[t++]=r&255|te,r/=128;case 5:e[t++]=r&255|te,r/=128;case 4:e[t++]=r&255|te,r>>>=7;case 3:e[t++]=r&255|te,r>>>=7;case 2:e[t++]=r&255|te,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function Dd(r,e,t=0){switch(Le(r)){case 8:e.set(t++,r&255|te),r/=128;case 7:e.set(t++,r&255|te),r/=128;case 6:e.set(t++,r&255|te),r/=128;case 5:e.set(t++,r&255|te),r/=128;case 4:e.set(t++,r&255|te),r>>>=7;case 3:e.set(t++,r&255|te),r>>>=7;case 2:e.set(t++,r&255|te),r>>>=7;case 1:{e.set(t++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return e}function ls(r,e){let t=r[e],n=0;if(n+=t&Se,t<te||(t=r[e+1],n+=(t&Se)<<7,t<te)||(t=r[e+2],n+=(t&Se)<<14,t<te)||(t=r[e+3],n+=(t&Se)<<21,t<te)||(t=r[e+4],n+=(t&Se)*is,t<te)||(t=r[e+5],n+=(t&Se)*ss,t<te)||(t=r[e+6],n+=(t&Se)*as,t<te)||(t=r[e+7],n+=(t&Se)*cs,t<te))return n;throw new RangeError("Could not decode varint")}function Od(r,e){let t=r.get(e),n=0;if(n+=t&Se,t<te||(t=r.get(e+1),n+=(t&Se)<<7,t<te)||(t=r.get(e+2),n+=(t&Se)<<14,t<te)||(t=r.get(e+3),n+=(t&Se)<<21,t<te)||(t=r.get(e+4),n+=(t&Se)*is,t<te)||(t=r.get(e+5),n+=(t&Se)*ss,t<te)||(t=r.get(e+6),n+=(t&Se)*as,t<te)||(t=r.get(e+7),n+=(t&Se)*cs,t<te))return n;throw new RangeError("Could not decode varint")}function kr(r,e,t=0){return e==null&&(e=Xe(Le(r))),e instanceof Uint8Array?us(r,e,t):Dd(r,e,t)}function ir(r,e=0){return r instanceof Uint8Array?ls(r,e):Od(r,e)}function Ne(r,e){e==null&&(e=r.reduce((o,i)=>o+i.length,0));let t=Xe(e),n=0;for(let o of r)t.set(o,n),n+=o.length;return t}var Xn=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 d=Number.parseInt(l,e);if(!Number.isNaN(d))return d});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 xc=45,Pd=15,Tr=new Xn;function fs(r){if(!(r.length>Pd))return Tr.new(r).parseWith(()=>Tr.readIPv4Addr())}function hs(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>xc))return Tr.new(r).parseWith(()=>Tr.readIPv6Addr())}function Qn(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>xc))return Tr.new(r).parseWith(()=>Tr.readIPAddr())}var Cy=parseInt("0xFFFF",16),_y=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function j(r,e="utf8"){let t=Jn[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function Bc(r){return!!fs(r)}function Ac(r){return!!hs(r)}function eo(r){return!!Qn(r)}var Sc=Bc,$d=Ac,ds=function(r){let e=0;if(r=r.toString().trim(),Sc(r)){let t=new Uint8Array(e+4);return r.split(/\./g).forEach(n=>{t[e++]=parseInt(n,10)&255}),t}if($d(r)){let t=r.split(":",8),n;for(n=0;n<t.length;n++){let i=Sc(t[n]),s;i&&(s=ds(t[n]),t[n]=W(s.slice(0,2),"base16")),s!=null&&++n<8&&t.splice(n,0,W(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")},Ic=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 Nr={},ps={},zd=[[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"],[777,-1,"memory"]];zd.forEach(r=>{let e=Gd(...r);ps[e.code]=e,Nr[e.name]=e});function Gd(r,e,t,n,o){return{code:r,size:e,name:t,resolvable:!!n,path:!!o}}function ne(r){if(typeof r=="number"){if(ps[r]!=null)return ps[r];throw new Error(`no protocol with code: ${r}`)}else if(typeof r=="string"){if(Nr[r]!=null)return Nr[r];throw new Error(`no protocol with name: ${r}`)}throw new Error(`invalid protocol id type: ${typeof r}`)}var yw=ne("ip4"),ww=ne("ip6"),bw=ne("ipcidr");function ms(r,e){switch(ne(r).code){case 4:case 41:return Yd(e);case 42:return Tc(e);case 6:case 273:case 33:case 132:return Cc(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Tc(e);case 421:return Xd(e);case 444:return Nc(e);case 445:return Nc(e);case 466:return Jd(e);default:return W(e,"base16")}}function ys(r,e){switch(ne(r).code){case 4:return Rc(e);case 41:return Rc(e);case 42:return kc(e);case 6:case 273:case 33:case 132:return ws(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return kc(e);case 421:return Zd(e);case 444:return Qd(e);case 445:return e0(e);case 466:return Wd(e);default:return j(e,"base16")}}var gs=Object.values(Mt).map(r=>r.decoder),jd=function(){let r=gs[0].or(gs[1]);return gs.slice(2).forEach(e=>r=r.or(e)),r}();function Rc(r){if(!eo(r))throw new Error("invalid ip address");return ds(r)}function Yd(r){let e=Ic(r,0,r.length);if(e==null)throw new Error("ipBuff is required");if(!eo(e))throw new Error("invalid ip address");return e}function ws(r){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,r),new Uint8Array(e)}function Cc(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function kc(r){let e=j(r),t=Uint8Array.from(kr(e.length));return Ne([t,e],t.length+e.length)}function Tc(r){let e=ir(r);if(r=r.slice(Le(e)),r.length!==e)throw new Error("inconsistent lengths");return W(r)}function Zd(r){let e;r[0]==="Q"||r[0]==="1"?e=Pt(le.decode(`z${r}`)).bytes:e=Te.parse(r).multihash.bytes;let t=Uint8Array.from(kr(e.length));return Ne([t,e],t.length+e.length)}function Wd(r){let e=jd.decode(r),t=Uint8Array.from(kr(e.length));return Ne([t,e],t.length+e.length)}function Jd(r){let e=ir(r),t=r.slice(Le(e));if(t.length!==e)throw new Error("inconsistent lengths");return"u"+W(t,"base64url")}function Xd(r){let e=ir(r),t=r.slice(Le(e));if(t.length!==e)throw new Error("inconsistent lengths");return W(t,"base58btc")}function Qd(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=Je.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=ws(n);return Ne([t,o],t.length+o.length)}function e0(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=Je.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=ws(n);return Ne([t,o],t.length+o.length)}function Nc(r){let e=r.slice(0,r.length-2),t=r.slice(r.length-2),n=W(e,"base32"),o=Cc(t);return`${n}:${o}`}function _c(r){r=bs(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=ne(s);if(a.size===0){e.push([a.code]),t.push([a.code]);continue}if(i++,i>=o.length)throw Lc("invalid address: "+r);if(a.path===!0){n=bs(o.slice(i).join("/")),e.push([a.code,ys(a.code,n)]),t.push([a.code,n]);break}let c=ys(a.code,o[i]);e.push([a.code,c]),t.push([a.code,ms(a.code,c)])}return{string:Uc(t),bytes:Es(e),tuples:e,stringTuples:t,path:n}}function xs(r){let e=[],t=[],n=null,o=0;for(;o<r.length;){let i=ir(r,o),s=Le(i),a=ne(i),c=t0(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 Lc("Invalid address Uint8Array: "+W(r,"base16"));e.push([i,f]);let u=ms(i,f);if(t.push([i,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(r),string:Uc(t),tuples:e,stringTuples:t,path:n}}function Uc(r){let e=[];return r.map(t=>{let n=ne(t[0]);return e.push(n.name),t.length>1&&t[1]!=null&&e.push(t[1]),null}),bs(e.join("/"))}function Es(r){return Ne(r.map(e=>{let t=ne(e[0]),n=Uint8Array.from(kr(t.code));return e.length>1&&e[1]!=null&&(n=Ne([n,e[1]])),n}))}function t0(r,e){if(r.size>0)return r.size/8;if(r.size===0)return 0;{let t=ir(e instanceof Uint8Array?e:Uint8Array.from(e));return t+Le(t)}}function bs(r){return"/"+r.trim().split("/").filter(e=>e).join("/")}function Lc(r){return new Error("Error parsing address: "+r)}var r0=Symbol.for("nodejs.util.inspect.custom"),vs=Symbol.for("@multiformats/js-multiaddr/multiaddr"),n0=[ne("dns").code,ne("dns4").code,ne("dns6").code,ne("dnsaddr").code],to=class r{bytes;#e;#r;#i;#a;[vs]=!0;constructor(e){e==null&&(e="");let t;if(e instanceof Uint8Array)t=xs(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);t=_c(e)}else if(Dc(e))t=xs(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.#i=t.stringTuples,this.#a=t.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,t,n,o,i="",s=ne("tcp"),a=ne("udp"),c=ne("ip4"),f=ne("ip6"),u=ne("dns6"),l=ne("ip6zone");for(let[E,g]of this.stringTuples())E===l.code&&(i=`%${g??""}`),n0.includes(E)&&(t=s.name,o=443,n=`${g??""}${i}`,e=E===u.code?6:4),(E===s.code||E===a.code)&&(t=ne(E).name,o=parseInt(g??"")),(E===c.code||E===f.code)&&(t=ne(E).name,n=`${g??""}${i}`,e=E===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({},ne(e)))}protoCodes(){return this.#r.map(([e])=>e)}protoNames(){return this.#r.map(([e])=>ne(e).name)}tuples(){return this.#r}stringTuples(){return this.#i}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(Es(t.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,o])=>{n===Nr.p2p.code&&e.push([n,o]),n===Nr["p2p-circuit"].code&&(e=[])});let t=e.pop();if(t?.[1]!=null){let n=t[1];return n[0]==="Q"||n[0]==="1"?W(le.decode(`z${n}`),"base58btc"):W(Te.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=Vc.get(t.name);if(n==null)throw new O(`no available resolver for ${t.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(i=>pn(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)}[r0](){return`Multiaddr(${this.#e})`}};var Vc=new Map;function Dc(r){return!!r?.[vs]}function pn(r){return new to(r)}function gn(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*ro(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 Ws={};me(Ws,{Ed25519PrivateKey:()=>fr,Ed25519PublicKey:()=>En,generateKeyPair:()=>Ep,generateKeyPairFromSeed:()=>yu,unmarshalEd25519PrivateKey:()=>bp,unmarshalEd25519PublicKey:()=>xp});function Ge(r){return r==null?!1:typeof r.then=="function"&&typeof r.catch=="function"&&typeof r.finally=="function"}function Cr(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`positive integer expected, not ${r}`)}function o0(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function _r(r,...e){if(!o0(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 no(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Cr(r.outputLen),Cr(r.blockLen)}function Ur(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 Oc(r,e){_r(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var oo=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Vr=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),Qe=(r,e)=>r<<32-e|r>>>e;var Qw=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;var i0=async()=>{};async function Pc(r,e,t){let n=Date.now();for(let o=0;o<r;o++){t(o);let i=Date.now()-n;i>=0&&i<e||(await i0(),n+=i)}}function Bs(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function Ht(r){return typeof r=="string"&&(r=Bs(r)),_r(r),r}function io(...r){let e=0;for(let n=0;n<r.length;n++){let o=r[n];_r(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 Lr=class{clone(){return this._cloneInto()}},s0={}.toString;function Fc(r,e){if(e!==void 0&&s0.call(e)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(r,e)}function so(r){let e=n=>r().update(Ht(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function Dr(r=32){if(oo&&typeof oo.getRandomValues=="function")return oo.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}function a0(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 Mc=(r,e,t)=>r&e^~r&t,Hc=(r,e,t)=>r&e^r&t^e&t,Or=class extends Lr{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=Vr(this.buffer)}update(e){Ur(this);let{view:t,buffer:n,blockLen:o}=this;e=Ht(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=Vr(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){Ur(this),Oc(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;a0(n,o-8,BigInt(this.length*8),i),this.process(n,0);let a=Vr(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 ao=BigInt(4294967295),As=BigInt(32);function Kc(r,e=!1){return e?{h:Number(r&ao),l:Number(r>>As&ao)}:{h:Number(r>>As&ao)|0,l:Number(r&ao)|0}}function c0(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}=Kc(r[o],e);[t[o],n[o]]=[i,s]}return[t,n]}var u0=(r,e)=>BigInt(r>>>0)<<As|BigInt(e>>>0),l0=(r,e,t)=>r>>>t,f0=(r,e,t)=>r<<32-t|e>>>t,h0=(r,e,t)=>r>>>t|e<<32-t,d0=(r,e,t)=>r<<32-t|e>>>t,p0=(r,e,t)=>r<<64-t|e>>>t-32,g0=(r,e,t)=>r>>>t-32|e<<64-t,m0=(r,e)=>e,y0=(r,e)=>r,w0=(r,e,t)=>r<<t|e>>>32-t,b0=(r,e,t)=>e<<t|r>>>32-t,x0=(r,e,t)=>e<<t-32|r>>>64-t,E0=(r,e,t)=>r<<t-32|e>>>64-t;function v0(r,e,t,n){let o=(e>>>0)+(n>>>0);return{h:r+t+(o/2**32|0)|0,l:o|0}}var B0=(r,e,t)=>(r>>>0)+(e>>>0)+(t>>>0),A0=(r,e,t,n)=>e+t+n+(r/2**32|0)|0,S0=(r,e,t,n)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0),I0=(r,e,t,n,o)=>e+t+n+o+(r/2**32|0)|0,R0=(r,e,t,n,o)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0)+(o>>>0),k0=(r,e,t,n,o,i)=>e+t+n+o+i+(r/2**32|0)|0;var T0={fromBig:Kc,split:c0,toBig:u0,shrSH:l0,shrSL:f0,rotrSH:h0,rotrSL:d0,rotrBH:p0,rotrBL:g0,rotr32H:m0,rotr32L:y0,rotlSH:w0,rotlSL:b0,rotlBH:x0,rotlBL:E0,add:v0,add3L:B0,add3H:A0,add4L:S0,add4H:I0,add5H:k0,add5L:R0},q=T0;var[N0,C0]=q.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))),Kt=new Uint32Array(80),$t=new Uint32Array(80),Ss=class extends Or{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:d,Gh:E,Gl:g,Hh:h,Hl:p}=this;return[e,t,n,o,i,s,a,c,f,u,l,d,E,g,h,p]}set(e,t,n,o,i,s,a,c,f,u,l,d,E,g,h,p){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=d|0,this.Gh=E|0,this.Gl=g|0,this.Hh=h|0,this.Hl=p|0}process(e,t){for(let v=0;v<16;v++,t+=4)Kt[v]=e.getUint32(t),$t[v]=e.getUint32(t+=4);for(let v=16;v<80;v++){let L=Kt[v-15]|0,S=$t[v-15]|0,k=q.rotrSH(L,S,1)^q.rotrSH(L,S,8)^q.shrSH(L,S,7),C=q.rotrSL(L,S,1)^q.rotrSL(L,S,8)^q.shrSL(L,S,7),y=Kt[v-2]|0,N=$t[v-2]|0,D=q.rotrSH(y,N,19)^q.rotrBH(y,N,61)^q.shrSH(y,N,6),T=q.rotrSL(y,N,19)^q.rotrBL(y,N,61)^q.shrSL(y,N,6),P=q.add4L(C,T,$t[v-7],$t[v-16]),H=q.add4H(P,k,D,Kt[v-7],Kt[v-16]);Kt[v]=H|0,$t[v]=P|0}let{Ah:n,Al:o,Bh:i,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:d,Fh:E,Fl:g,Gh:h,Gl:p,Hh:b,Hl:R}=this;for(let v=0;v<80;v++){let L=q.rotrSH(l,d,14)^q.rotrSH(l,d,18)^q.rotrBH(l,d,41),S=q.rotrSL(l,d,14)^q.rotrSL(l,d,18)^q.rotrBL(l,d,41),k=l&E^~l&h,C=d&g^~d&p,y=q.add5L(R,S,C,C0[v],$t[v]),N=q.add5H(y,b,L,k,N0[v],Kt[v]),D=y|0,T=q.rotrSH(n,o,28)^q.rotrBH(n,o,34)^q.rotrBH(n,o,39),P=q.rotrSL(n,o,28)^q.rotrBL(n,o,34)^q.rotrBL(n,o,39),H=n&i^n&a^i&a,J=o&s^o&c^s&c;b=h|0,R=p|0,h=E|0,p=g|0,E=l|0,g=d|0,{h:l,l:d}=q.add(f|0,u|0,N|0,D|0),f=a|0,u=c|0,a=i|0,c=s|0,i=n|0,s=o|0;let x=q.add3L(D,P,J);n=q.add3H(x,N,T,H),o=x|0}({h:n,l:o}=q.add(this.Ah|0,this.Al|0,n|0,o|0)),{h:i,l:s}=q.add(this.Bh|0,this.Bl|0,i|0,s|0),{h:a,l:c}=q.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=q.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=q.add(this.Eh|0,this.El|0,l|0,d|0),{h:E,l:g}=q.add(this.Fh|0,this.Fl|0,E|0,g|0),{h,l:p}=q.add(this.Gh|0,this.Gl|0,h|0,p|0),{h:b,l:R}=q.add(this.Hh|0,this.Hl|0,b|0,R|0),this.set(n,o,i,s,a,c,f,u,l,d,E,g,h,p,b,R)}roundClean(){Kt.fill(0),$t.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 Pr=so(()=>new Ss);var uo={};me(uo,{abytes:()=>Fr,bitGet:()=>P0,bitLen:()=>O0,bitMask:()=>mn,bitSet:()=>F0,bytesToHex:()=>xt,bytesToNumberBE:()=>Et,bytesToNumberLE:()=>zt,concatBytes:()=>vt,createHmacDrbg:()=>ks,ensureBytes:()=>ue,equalBytes:()=>V0,hexToBytes:()=>sr,hexToNumber:()=>Rs,isBytes:()=>qt,numberToBytesBE:()=>Gt,numberToBytesLE:()=>ar,numberToHexUnpadded:()=>Gc,numberToVarBytesBE:()=>L0,utf8ToBytes:()=>D0,validateObject:()=>lt});var zc=BigInt(0),co=BigInt(1),_0=BigInt(2);function qt(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function Fr(r){if(!qt(r))throw new Error("Uint8Array expected")}var U0=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function xt(r){Fr(r);let e="";for(let t=0;t<r.length;t++)e+=U0[r[t]];return e}function Gc(r){let e=r.toString(16);return e.length&1?`0${e}`:e}function Rs(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}var bt={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function $c(r){if(r>=bt._0&&r<=bt._9)return r-bt._0;if(r>=bt._A&&r<=bt._F)return r-(bt._A-10);if(r>=bt._a&&r<=bt._f)return r-(bt._a-10)}function sr(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=$c(r.charCodeAt(i)),a=$c(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 Et(r){return Rs(xt(r))}function zt(r){return Fr(r),Rs(xt(Uint8Array.from(r).reverse()))}function Gt(r,e){return sr(r.toString(16).padStart(e*2,"0"))}function ar(r,e){return Gt(r,e).reverse()}function L0(r){return sr(Gc(r))}function ue(r,e,t){let n;if(typeof e=="string")try{n=sr(e)}catch(i){throw new Error(`${r} must be valid hex string, got "${e}". Cause: ${i}`)}else if(qt(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 vt(...r){let e=0;for(let n=0;n<r.length;n++){let o=r[n];Fr(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 V0(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 D0(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function O0(r){let e;for(e=0;r>zc;r>>=co,e+=1);return e}function P0(r,e){return r>>BigInt(e)&co}function F0(r,e,t){return r|(t?co:zc)<<BigInt(e)}var mn=r=>(_0<<BigInt(r-1))-co,Is=r=>new Uint8Array(r),qc=r=>Uint8Array.from(r);function ks(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=Is(r),o=Is(r),i=0,s=()=>{n.fill(1),o.fill(0),i=0},a=(...l)=>t(o,n,...l),c=(l=Is())=>{o=a(qc([0]),l),n=a(),l.length!==0&&(o=a(qc([1]),l),n=a())},f=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<e;){n=a();let E=n.slice();d.push(E),l+=n.length}return vt(...d)};return(l,d)=>{s(),c(l);let E;for(;!(E=d(f()));)c();return s(),E}}var M0={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"||qt(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 lt(r,e,t={}){let n=(o,i,s)=>{let a=M0[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 ge=BigInt(0),oe=BigInt(1),cr=BigInt(2),H0=BigInt(3),Ts=BigInt(4),jc=BigInt(5),Yc=BigInt(8),K0=BigInt(9),$0=BigInt(16);function re(r,e){let t=r%e;return t>=ge?t:e+t}function q0(r,e,t){if(t<=ge||e<ge)throw new Error("Expected power/modulo > 0");if(t===oe)return ge;let n=oe;for(;e>ge;)e&oe&&(n=n*r%t),r=r*r%t,e>>=oe;return n}function ie(r,e,t){let n=r;for(;e-- >ge;)n*=n,n%=t;return n}function lo(r,e){if(r===ge||e<=ge)throw new Error(`invert: expected positive integers, got n=${r} mod=${e}`);let t=re(r,e),n=e,o=ge,i=oe,s=oe,a=ge;for(;t!==ge;){let f=n/t,u=n%t,l=o-s*f,d=i-a*f;n=t,t=u,o=s,i=a,s=l,a=d}if(n!==oe)throw new Error("invert: does not exist");return re(o,e)}function z0(r){let e=(r-oe)/cr,t,n,o;for(t=r-oe,n=0;t%cr===ge;t/=cr,n++);for(o=cr;o<r&&q0(o,e,r)!==r-oe;o++);if(n===1){let s=(r+oe)/Ts;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)/cr;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),d=a.pow(c,t);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let E=1;for(let h=a.sqr(d);E<f&&!a.eql(h,a.ONE);E++)h=a.sqr(h);let g=a.pow(u,oe<<BigInt(f-E-1));u=a.sqr(g),l=a.mul(l,g),d=a.mul(d,u),f=E}return l}}function G0(r){if(r%Ts===H0){let e=(r+oe)/Ts;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%Yc===jc){let e=(r-jc)/Yc;return function(n,o){let i=n.mul(o,cr),s=n.pow(i,e),a=n.mul(o,s),c=n.mul(n.mul(a,cr),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%$0,z0(r)}var Zc=(r,e)=>(re(r,e)&oe)===oe,j0=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Ns(r){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},t=j0.reduce((n,o)=>(n[o]="function",n),e);return lt(r,t)}function Y0(r,e,t){if(t<ge)throw new Error("Expected power > 0");if(t===ge)return r.ONE;if(t===oe)return e;let n=r.ONE,o=e;for(;t>ge;)t&oe&&(n=r.mul(n,o)),o=r.sqr(o),t>>=oe;return n}function Z0(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 Cs(r,e){let t=e!==void 0?e:r.toString(2).length,n=Math.ceil(t/8);return{nBitLength:t,nByteLength:n}}function fo(r,e,t=!1,n={}){if(r<=ge)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:o,nByteLength:i}=Cs(r,e);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=G0(r),a=Object.freeze({ORDER:r,BITS:o,BYTES:i,MASK:mn(o),ZERO:ge,ONE:oe,create:c=>re(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return ge<=c&&c<r},is0:c=>c===ge,isOdd:c=>(c&oe)===oe,neg:c=>re(-c,r),eql:(c,f)=>c===f,sqr:c=>re(c*c,r),add:(c,f)=>re(c+f,r),sub:(c,f)=>re(c-f,r),mul:(c,f)=>re(c*f,r),pow:(c,f)=>Y0(a,c,f),div:(c,f)=>re(c*lo(f,r),r),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>lo(c,r),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Z0(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>t?ar(c,i):Gt(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return t?zt(c):Et(c)}});return Object.freeze(a)}function Wc(r,e){if(!r.isOdd)throw new Error("Field doesn't have isOdd");let t=r.sqrt(e);return r.isOdd(t)?r.neg(t):t}function Jc(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 _s(r){let e=Jc(r);return e+Math.ceil(e/2)}function Xc(r,e,t=!1){let n=r.length,o=Jc(e),i=_s(e);if(n<16||n<i||n>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${n}`);let s=t?Et(r):zt(r),a=re(s,e-oe)+oe;return t?ar(a,o):Gt(a,o)}var J0=BigInt(0),Us=BigInt(1);function ho(r,e){let t=(o,i)=>{let s=i.negate();return o?s:i},n=o=>{let i=Math.ceil(e/o)+1,s=2**(o-1);return{windows:i,windowSize:s}};return{constTimeNegate:t,unsafeLadder(o,i){let s=r.ZERO,a=o;for(;i>J0;)i&Us&&(s=s.add(a)),a=a.double(),i>>=Us;return s},precomputeWindow(o,i){let{windows:s,windowSize:a}=n(i),c=[],f=o,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let d=1;d<a;d++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(o,i,s){let{windows:a,windowSize:c}=n(o),f=r.ZERO,u=r.BASE,l=BigInt(2**o-1),d=2**o,E=BigInt(o);for(let g=0;g<a;g++){let h=g*c,p=Number(s&l);s>>=E,p>c&&(p-=d,s+=Us);let b=h,R=h+Math.abs(p)-1,v=g%2!==0,L=p<0;p===0?u=u.add(t(v,i[b])):f=f.add(t(L,i[R]))}return{p:f,f:u}},wNAFCached(o,i,s,a){let c=o._WINDOW_SIZE||1,f=i.get(o);return f||(f=this.precomputeWindow(o,c),c!==1&&i.set(o,a(f))),this.wNAF(c,f,s)}}}function yn(r){return Ns(r.Fp),lt(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Cs(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}var et=BigInt(0),Fe=BigInt(1),po=BigInt(2),X0=BigInt(8),Q0={zip215:!0};function ep(r){let e=yn(r);return lt(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function go(r){let e=ep(r),{Fp:t,n,prehash:o,hash:i,randomBytes:s,nByteLength:a,h:c}=e,f=po<<BigInt(a*8)-Fe,u=t.create,l=e.uvRatio||((B,w)=>{try{return{isValid:!0,value:t.sqrt(B*t.inv(w))}}catch{return{isValid:!1,value:et}}}),d=e.adjustScalarBytes||(B=>B),E=e.domain||((B,w,V)=>{if(w.length||V)throw new Error("Contexts/pre-hash are not supported");return B}),g=B=>typeof B=="bigint"&&et<B,h=(B,w)=>g(B)&&g(w)&&B<w,p=B=>B===et||h(B,f);function b(B,w){if(h(B,w))return B;throw new Error(`Expected valid scalar < ${w}, got ${typeof B} ${B}`)}function R(B){return B===et?B:b(B,n)}let v=new Map;function L(B){if(!(B instanceof S))throw new Error("ExtendedPoint expected")}class S{constructor(w,V,F,K){if(this.ex=w,this.ey=V,this.ez=F,this.et=K,!p(w))throw new Error("x required");if(!p(V))throw new Error("y required");if(!p(F))throw new Error("z required");if(!p(K))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof S)throw new Error("extended point not allowed");let{x:V,y:F}=w||{};if(!p(V)||!p(F))throw new Error("invalid affine point");return new S(V,F,Fe,u(V*F))}static normalizeZ(w){let V=t.invertBatch(w.map(F=>F.ez));return w.map((F,K)=>F.toAffine(V[K])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,v.delete(this)}assertValidity(){let{a:w,d:V}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:F,ey:K,ez:z,et:G}=this,ee=u(F*F),Z=u(K*K),X=u(z*z),he=u(X*X),se=u(ee*w),be=u(X*u(se+Z)),xe=u(he+u(V*u(ee*Z)));if(be!==xe)throw new Error("bad point: equation left != right (1)");let pe=u(F*K),Ae=u(z*G);if(pe!==Ae)throw new Error("bad point: equation left != right (2)")}equals(w){L(w);let{ex:V,ey:F,ez:K}=this,{ex:z,ey:G,ez:ee}=w,Z=u(V*ee),X=u(z*K),he=u(F*ee),se=u(G*K);return Z===X&&he===se}is0(){return this.equals(S.ZERO)}negate(){return new S(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=e,{ex:V,ey:F,ez:K}=this,z=u(V*V),G=u(F*F),ee=u(po*u(K*K)),Z=u(w*z),X=V+F,he=u(u(X*X)-z-G),se=Z+G,be=se-ee,xe=Z-G,pe=u(he*be),Ae=u(se*xe),yt=u(he*xe),rr=u(be*se);return new S(pe,Ae,rr,yt)}add(w){L(w);let{a:V,d:F}=e,{ex:K,ey:z,ez:G,et:ee}=this,{ex:Z,ey:X,ez:he,et:se}=w;if(V===BigInt(-1)){let Ua=u((z-K)*(X+Z)),La=u((z+K)*(X-Z)),Ui=u(La-Ua);if(Ui===et)return this.double();let Va=u(G*po*se),Da=u(ee*po*he),Oa=Da+Va,Pa=La+Ua,Fa=Da-Va,ih=u(Oa*Ui),sh=u(Pa*Fa),ah=u(Oa*Fa),ch=u(Ui*Pa);return new S(ih,sh,ch,ah)}let be=u(K*Z),xe=u(z*X),pe=u(ee*F*se),Ae=u(G*he),yt=u((K+z)*(Z+X)-be-xe),rr=Ae-pe,an=Ae+pe,_a=u(xe-V*be),th=u(yt*rr),rh=u(an*_a),nh=u(yt*_a),oh=u(rr*an);return new S(th,rh,oh,nh)}subtract(w){return this.add(w.negate())}wNAF(w){return y.wNAFCached(this,v,w,S.normalizeZ)}multiply(w){let{p:V,f:F}=this.wNAF(b(w,n));return S.normalizeZ([V,F])[0]}multiplyUnsafe(w){let V=R(w);return V===et?C:this.equals(C)||V===Fe?this:this.equals(k)?this.wNAF(V).p:y.unsafeLadder(this,V)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return y.unsafeLadder(this,n).is0()}toAffine(w){let{ex:V,ey:F,ez:K}=this,z=this.is0();w==null&&(w=z?X0:t.inv(K));let G=u(V*w),ee=u(F*w),Z=u(K*w);if(z)return{x:et,y:Fe};if(Z!==Fe)throw new Error("invZ was invalid");return{x:G,y:ee}}clearCofactor(){let{h:w}=e;return w===Fe?this:this.multiplyUnsafe(w)}static fromHex(w,V=!1){let{d:F,a:K}=e,z=t.BYTES;w=ue("pointHex",w,z);let G=w.slice(),ee=w[z-1];G[z-1]=ee&-129;let Z=zt(G);Z===et||(V?b(Z,f):b(Z,t.ORDER));let X=u(Z*Z),he=u(X-Fe),se=u(F*X-K),{isValid:be,value:xe}=l(he,se);if(!be)throw new Error("Point.fromHex: invalid y coordinate");let pe=(xe&Fe)===Fe,Ae=(ee&128)!==0;if(!V&&xe===et&&Ae)throw new Error("Point.fromHex: x=0 and x_0=1");return Ae!==pe&&(xe=u(-xe)),S.fromAffine({x:xe,y:Z})}static fromPrivateKey(w){return T(w).point}toRawBytes(){let{x:w,y:V}=this.toAffine(),F=ar(V,t.BYTES);return F[F.length-1]|=w&Fe?128:0,F}toHex(){return xt(this.toRawBytes())}}S.BASE=new S(e.Gx,e.Gy,Fe,u(e.Gx*e.Gy)),S.ZERO=new S(et,Fe,Fe,et);let{BASE:k,ZERO:C}=S,y=ho(S,a*8);function N(B){return re(B,n)}function D(B){return N(zt(B))}function T(B){let w=a;B=ue("private key",B,w);let V=ue("hashed private key",i(B),2*w),F=d(V.slice(0,w)),K=V.slice(w,2*w),z=D(F),G=k.multiply(z),ee=G.toRawBytes();return{head:F,prefix:K,scalar:z,point:G,pointBytes:ee}}function P(B){return T(B).pointBytes}function H(B=new Uint8Array,...w){let V=vt(...w);return D(i(E(V,ue("context",B),!!o)))}function J(B,w,V={}){B=ue("message",B),o&&(B=o(B));let{prefix:F,scalar:K,pointBytes:z}=T(w),G=H(V.context,F,B),ee=k.multiply(G).toRawBytes(),Z=H(V.context,ee,z,B),X=N(G+Z*K);R(X);let he=vt(ee,ar(X,t.BYTES));return ue("result",he,a*2)}let x=Q0;function A(B,w,V,F=x){let{context:K,zip215:z}=F,G=t.BYTES;B=ue("signature",B,2*G),w=ue("message",w),o&&(w=o(w));let ee=zt(B.slice(G,2*G)),Z,X,he;try{Z=S.fromHex(V,z),X=S.fromHex(B.slice(0,G),z),he=k.multiplyUnsafe(ee)}catch{return!1}if(!z&&Z.isSmallOrder())return!1;let se=H(K,X.toRawBytes(),Z.toRawBytes(),w);return X.add(Z.multiplyUnsafe(se)).subtract(he).clearCofactor().equals(S.ZERO)}return k._setWindowSize(8),{CURVE:e,getPublicKey:P,sign:J,verify:A,ExtendedPoint:S,utils:{getExtendedPublicKey:T,randomPrivateKey:()=>s(t.BYTES),precompute(B=8,w=S.BASE){return w._setWindowSize(B),w.multiply(BigInt(3)),w}}}}var Vs=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Qc=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Eb=BigInt(0),tp=BigInt(1),Ls=BigInt(2),rp=BigInt(5),eu=BigInt(10),np=BigInt(20),op=BigInt(40),tu=BigInt(80);function ip(r){let e=Vs,n=r*r%e*r%e,o=ie(n,Ls,e)*n%e,i=ie(o,tp,e)*r%e,s=ie(i,rp,e)*i%e,a=ie(s,eu,e)*s%e,c=ie(a,np,e)*a%e,f=ie(c,op,e)*c%e,u=ie(f,tu,e)*f%e,l=ie(u,tu,e)*f%e,d=ie(l,eu,e)*s%e;return{pow_p_5_8:ie(d,Ls,e)*r%e,b2:n}}function sp(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function ap(r,e){let t=Vs,n=re(e*e*e,t),o=re(n*n*e,t),i=ip(r*o).pow_p_5_8,s=re(r*n*i,t),a=re(e*s*s,t),c=s,f=re(s*Qc,t),u=a===r,l=a===re(-r,t),d=a===re(-r*Qc,t);return u&&(s=c),(l||d)&&(s=f),Zc(s,t)&&(s=re(-s,t)),{isValid:u||l,value:s}}var Bt=fo(Vs,void 0,!0),Ds={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Bt,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Pr,randomBytes:Dr,adjustScalarBytes:sp,uvRatio:ap},Mr=go(Ds);function ru(r,e,t){if(e.length>255)throw new Error("Context is too big");return io(Bs("SigEd25519 no Ed25519 collisions"),new Uint8Array([t?1:0,e.length]),e,r)}var vb=go({...Ds,domain:ru}),Bb=go({...Ds,domain:ru,prehash:Pr});var cp=(Bt.ORDER+BigInt(3))/BigInt(8),Ab=Bt.pow(Ls,cp),Sb=Bt.sqrt(Bt.neg(Bt.ONE)),Ib=(Bt.ORDER-BigInt(5))/BigInt(8),Rb=BigInt(486662);var kb=Wc(Bt,Bt.neg(BigInt(486664)));var Tb=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),Nb=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),Cb=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),_b=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var Ub=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Hr=32,At=64,mo=32;function nu(){let r=Mr.utils.randomPrivateKey(),e=Mr.getPublicKey(r);return{privateKey:au(r,e),publicKey:e}}function ou(r){if(r.length!==mo)throw new TypeError('"seed" must be 32 bytes in length.');if(!(r instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=r,t=Mr.getPublicKey(e);return{privateKey:au(e,t),publicKey:t}}function iu(r,e){let t=r.subarray(0,mo);return Mr.sign(e instanceof Uint8Array?e:e.subarray(),t)}function su(r,e,t){return Mr.verify(e,t instanceof Uint8Array?t:t.subarray(),r)}function au(r,e){let t=new Uint8Array(At);for(let n=0;n<mo;n++)t[n]=r[n],t[mo+n]=e[n];return t}var Ce={get(r=globalThis){let e=r.crypto;if(e==null||e.subtle==null)throw Object.assign(new Error("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"),{code:"ERR_MISSING_WEB_CRYPTO"});return e}};var Os={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function cu(r){let e=r?.algorithm??"AES-GCM",t=r?.keyLength??16,n=r?.nonceLength??12,o=r?.digest??"SHA-256",i=r?.saltLength??16,s=r?.iterations??32767,a=Ce.get();t*=8;async function c(l,d){let E=a.getRandomValues(new Uint8Array(i)),g=a.getRandomValues(new Uint8Array(n)),h={name:e,iv:g};typeof d=="string"&&(d=j(d));let p;if(d.length===0){p=await a.subtle.importKey("jwk",Os,{name:"AES-GCM"},!0,["encrypt"]);try{let R={name:"PBKDF2",salt:E,iterations:s,hash:{name:o}},v=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);p=await a.subtle.deriveKey(R,v,{name:e,length:t},!0,["encrypt"])}catch{p=await a.subtle.importKey("jwk",Os,{name:"AES-GCM"},!0,["encrypt"])}}else{let R={name:"PBKDF2",salt:E,iterations:s,hash:{name:o}},v=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);p=await a.subtle.deriveKey(R,v,{name:e,length:t},!0,["encrypt"])}let b=await a.subtle.encrypt(h,p,l);return Ne([E,h.iv,new Uint8Array(b)])}async function f(l,d){let E=l.subarray(0,i),g=l.subarray(i,i+n),h=l.subarray(i+n),p={name:e,iv:g};typeof d=="string"&&(d=j(d));let b;if(d.length===0)try{let v={name:"PBKDF2",salt:E,iterations:s,hash:{name:o}},L=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);b=await a.subtle.deriveKey(v,L,{name:e,length:t},!0,["decrypt"])}catch{b=await a.subtle.importKey("jwk",Os,{name:"AES-GCM"},!0,["decrypt"])}else{let v={name:"PBKDF2",salt:E,iterations:s,hash:{name:o}},L=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);b=await a.subtle.deriveKey(v,L,{name:e,length:t},!0,["decrypt"])}let R=await a.subtle.decrypt(p,b,h);return new Uint8Array(R)}return{encrypt:c,decrypt:f}}async function Kr(r,e){let n=await cu().encrypt(r,e);return cn.encode(n)}var Ps=new Float32Array([-0]),jt=new Uint8Array(Ps.buffer);function uu(r,e,t){Ps[0]=r,e[t]=jt[0],e[t+1]=jt[1],e[t+2]=jt[2],e[t+3]=jt[3]}function lu(r,e){return jt[0]=r[e],jt[1]=r[e+1],jt[2]=r[e+2],jt[3]=r[e+3],Ps[0]}var Fs=new Float64Array([-0]),Ie=new Uint8Array(Fs.buffer);function fu(r,e,t){Fs[0]=r,e[t]=Ie[0],e[t+1]=Ie[1],e[t+2]=Ie[2],e[t+3]=Ie[3],e[t+4]=Ie[4],e[t+5]=Ie[5],e[t+6]=Ie[6],e[t+7]=Ie[7]}function hu(r,e){return Ie[0]=r[e],Ie[1]=r[e+1],Ie[2]=r[e+2],Ie[3]=r[e+3],Ie[4]=r[e+4],Ie[5]=r[e+5],Ie[6]=r[e+6],Ie[7]=r[e+7],Fs[0]}var fp=BigInt(Number.MAX_SAFE_INTEGER),hp=BigInt(Number.MIN_SAFE_INTEGER),Me=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 ur;if(e<fp&&e>hp)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>du&&(o=0n,++n>du&&(n=0n))),new r(Number(o),Number(n))}static fromNumber(e){if(e===0)return ur;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):ur}},ur=new Me(0,0);ur.toBigInt=function(){return 0n};ur.zzEncode=ur.zzDecode=function(){return this};ur.length=function(){return 1};var du=4294967296n;function pu(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 gu(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 Ms(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 tt(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function yo(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var Hs=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,tt(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 tt(this,4);return yo(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw tt(this,4);return yo(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw tt(this,4);let e=lu(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw tt(this,4);let e=hu(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 tt(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return gu(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw tt(this,e);this.pos+=e}else do if(this.pos>=this.len)throw tt(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 Me(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 tt(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 tt(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 tt(this,8);let e=yo(this.buf,this.pos+=4),t=yo(this.buf,this.pos+=4);return new Me(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=ls(this.buf,this.pos);return this.pos+=Le(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 Ks(r){return new Hs(r instanceof Uint8Array?r:r.subarray())}function $r(r,e,t){let n=Ks(r);return e.decode(n,void 0,t)}function $s(r){let e=r??8192,t=e>>>1,n,o=e;return function(s){if(s<1||s>t)return Xe(s);o+s>e&&(n=Xe(e),o=0);let a=n.subarray(o,o+=s);return o&7&&(o=(o|7)+1),a}}var lr=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function qs(){}var Gs=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},dp=$s();function pp(r){return globalThis.Buffer!=null?Xe(r):dp(r)}var bn=class{len;head;tail;states;constructor(){this.len=0,this.head=new lr(qs,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new lr(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new js((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(wo,10,Me.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=Me.fromBigInt(e);return this._push(wo,t.length(),t)}uint64Number(e){return this._push(us,Le(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=Me.fromBigInt(e).zzEncode();return this._push(wo,t.length(),t)}sint64Number(e){let t=Me.fromNumber(e).zzEncode();return this._push(wo,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(zs,1,e?1:0)}fixed32(e){return this._push(wn,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=Me.fromBigInt(e);return this._push(wn,4,t.lo)._push(wn,4,t.hi)}fixed64Number(e){let t=Me.fromNumber(e);return this._push(wn,4,t.lo)._push(wn,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(uu,4,e)}double(e){return this._push(fu,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(zs,1,0):this.uint32(t)._push(mp,t,e)}string(e){let t=pu(e);return t!==0?this.uint32(t)._push(Ms,t,e):this._push(zs,1,0)}fork(){return this.states=new Gs(this),this.head=this.tail=new lr(qs,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 lr(qs,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=pp(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function zs(r,e,t){e[t]=r&255}function gp(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var js=class extends lr{next;constructor(e,t){super(gp,e,t),this.next=void 0}};function wo(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 wn(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 mp(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(bn.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(yp,e,r),this},bn.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(wp,e,r),this});function yp(r,e,t){e.set(r,t)}function wp(r,e,t){r.length<40?Ms(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(j(r),t)}function Ys(){return new bn}function qr(r,e){let t=Ys();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var zr;(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"})(zr||(zr={}));function bo(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function xn(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 bo("enum",zr.VARINT,t,n)}function Gr(r,e){return bo("message",zr.LENGTH_DELIMITED,r,e)}var fe;(function(r){r.RSA="RSA",r.Ed25519="Ed25519",r.Secp256k1="Secp256k1"})(fe||(fe={}));var Zs;(function(r){r[r.RSA=0]="RSA",r[r.Ed25519=1]="Ed25519",r[r.Secp256k1=2]="Secp256k1"})(Zs||(Zs={}));(function(r){r.codec=()=>xn(Zs)})(fe||(fe={}));var ft;(function(r){let e;r.codec=()=>(e==null&&(e=Gr((t,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),fe.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),o.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let o={},i=n==null?t.len:t.pos+n;for(;t.pos<i;){let s=t.uint32();switch(s>>>3){case 1:o.Type=fe.codec().decode(t);break;case 2:o.Data=t.bytes();break;default:t.skipType(s&7);break}}return o})),e),r.encode=t=>qr(t,r.codec()),r.decode=t=>$r(t,r.codec())})(ft||(ft={}));var St;(function(r){let e;r.codec=()=>(e==null&&(e=Gr((t,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),fe.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),o.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let o={},i=n==null?t.len:t.pos+n;for(;t.pos<i;){let s=t.uint32();switch(s>>>3){case 1:o.Type=fe.codec().decode(t);break;case 2:o.Data=t.bytes();break;default:t.skipType(s&7);break}}return o})),e),r.encode=t=>qr(t,r.codec()),r.decode=t=>$r(t,r.codec())})(St||(St={}));var En=class{_key;constructor(e){this._key=jr(e,Hr)}verify(e,t){return su(this._key,t,e)}marshal(){return this._key}get bytes(){return ft.encode({Type:fe.Ed25519,Data:this.marshal()}).subarray()}equals(e){return ce(this.bytes,e.bytes)}hash(){let e=Ee.digest(this.bytes);return Ge(e)?e.then(({bytes:t})=>t):e.bytes}},fr=class{_key;_publicKey;constructor(e,t){this._key=jr(e,At),this._publicKey=jr(t,Hr)}sign(e){return iu(this._key,e)}get public(){return new En(this._publicKey)}marshal(){return this._key}get bytes(){return St.encode({Type:fe.Ed25519,Data:this.marshal()}).subarray()}equals(e){return ce(this.bytes,e.bytes)}async hash(){let e=Ee.digest(this.bytes),t;return Ge(e)?{bytes:t}=await e:t=e.bytes,t}async id(){let e=ut.digest(this.public.bytes);return le.encode(e.bytes).substring(1)}async export(e,t="libp2p-key"){if(t==="libp2p-key")return Kr(this.bytes,e);throw new O(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function bp(r){if(r.length>At){r=jr(r,At+Hr);let n=r.subarray(0,At),o=r.subarray(At,r.length);return new fr(n,o)}r=jr(r,At);let e=r.subarray(0,At),t=r.subarray(Hr);return new fr(e,t)}function xp(r){return r=jr(r,Hr),new En(r)}async function Ep(){let{privateKey:r,publicKey:e}=nu();return new fr(r,e)}async function yu(r){let{privateKey:e,publicKey:t}=ou(r);return new fr(e,t)}function jr(r,e){if(r=Uint8Array.from(r??[]),r.length!==e)throw new O(`Key must be a Uint8Array of length ${e}, got ${r.length}`,"ERR_INVALID_KEY_TYPE");return r}var sa={};me(sa,{MAX_RSA_KEY_SIZE:()=>Un,RsaPrivateKey:()=>Xr,RsaPublicKey:()=>_n,fromJwk:()=>Yp,generateKeyPair:()=>Zp,unmarshalRsaPrivateKey:()=>oa,unmarshalRsaPublicKey:()=>jp});function hr(r){if(isNaN(r)||r<=0)throw new O("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Dr(r)}var Jt={};me(Jt,{exportToPem:()=>Kp,importFromPem:()=>$p,jwkToPkcs1:()=>Pp,jwkToPkix:()=>Mp,pkcs1ToJwk:()=>Op,pkixToJwk:()=>Fp});var Eo=class extends Lr{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,no(e);let n=Ht(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 Ur(this),this.iHash.update(e),this}digestInto(e){Ur(this),_r(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()}},vn=(r,e,t)=>new Eo(r,e).update(t).digest();vn.create=(r,e)=>new Eo(r,e);function vp(r,e,t,n){no(r);let o=Fc({dkLen:32,asyncTick:10},n),{c:i,dkLen:s,asyncTick:a}=o;if(Cr(i),Cr(s),Cr(a),i<1)throw new Error("PBKDF2: iterations (c) should be >= 1");let c=Ht(e),f=Ht(t),u=new Uint8Array(s),l=vn.create(r,c),d=l._cloneInto().update(f);return{c:i,dkLen:s,asyncTick:a,DK:u,PRF:l,PRFSalt:d}}function Bp(r,e,t,n,o){return r.destroy(),e.destroy(),n&&n.destroy(),o.fill(0),t}async function Js(r,e,t,n){let{c:o,dkLen:i,asyncTick:s,DK:a,PRF:c,PRFSalt:f}=vp(r,e,t,n),u,l=new Uint8Array(4),d=Vr(l),E=new Uint8Array(c.outputLen);for(let g=1,h=0;h<i;g++,h+=c.outputLen){let p=a.subarray(h,h+c.outputLen);d.setInt32(0,g,!1),(u=f._cloneInto(u)).update(l).digestInto(E),p.set(E.subarray(0,p.length)),await Pc(o-1,s,()=>{c._cloneInto(u).update(E).digestInto(E);for(let b=0;b<p.length;b++)p[b]^=E[b]})}return Bp(c,f,a,u,E)}var Y=Vt(wu());function dr(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 Yt(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 Ao(...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 Qs(){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=dr(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,dr(i,8)-n}function bu(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=Yt(s,8,n),c=new Uint8Array(a);return c[0]|=128,a}let o=Yt(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 xu(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 Ve(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 Px=Math.log(2);function So(){if(typeof BigInt>"u")throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function ea(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 Nt(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 An=class{constructor(){this.items=[]}write(e){this.items.push(e)}final(){return ea(this.items)}},Bn=[new Uint8Array([1])],Eu="0123456789";var Wr="",nt=new ArrayBuffer(0),ta=new Uint8Array(0),Sn="EndOfContent",Bu="OCTET STRING",Au="BIT STRING";function Ct(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?Y.BufferSourceConverter.toUint8Array(i.valueHex):ta}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(!Nt(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",nt)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:Y.Convert.ToHex(this.valueHexView)}}},e.NAME="hexBlock",e}var Rt=class{constructor({blockLength:e=0,error:t=Wr,warnings:n=[],valueBeforeDecode:o=ta}={}){this.blockLength=e,this.error=t,this.warnings=n,this.valueBeforeDecodeView=Y.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:Y.Convert.ToHex(this.valueBeforeDecodeView)}}};Rt.NAME="baseBlock";var Re=class extends Rt{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'")}};Re.NAME="valueBlock";var Io=class extends Ct(Rt){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?Y.BufferSourceConverter.toUint8Array(e.valueHex):ta,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",nt}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=Yt(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=Y.BufferSourceConverter.toUint8Array(e);if(!Nt(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 d=new Uint8Array(u);for(let E=0;E<f.length;E++)d[E]=f[E];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=dr(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}}};Io.NAME="identificationBlock";var Ro=class extends Rt{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=Y.BufferSourceConverter.toUint8Array(e);if(!Nt(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=dr(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=Yt(this.length,8);if(o.byteLength>127)return this.error="Too big length",nt;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}}};Ro.NAME="lengthBlock";var _={},ve=class extends Rt{constructor({name:e=Wr,optional:t=!1,primitiveSchema:n,...o}={},i){super(o),this.name=e,this.optional=t,n&&(this.primitiveSchema=n),this.idBlock=new Io(o),this.lenBlock=new Ro(o),this.valueBlock=i?new i(o):new Re(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 An;t||Su(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?nt: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():Y.Convert.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${Y.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 xu(t,n)}};ve.NAME="BaseBlock";function Su(r){if(r instanceof _.Constructed)for(let e of r.valueBlock.value)Su(e)&&(r.lenBlock.isIndefiniteForm=!0);return!!r.lenBlock.isIndefiniteForm}var ko=class extends ve{constructor({value:e=Wr,...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}'`}};ko.NAME="BaseStringBlock";var To=class extends Ct(Re){constructor({isHexOnly:e=!0,...t}={}){super(t),this.isHexOnly=e}};To.NAME="PrimitiveValueBlock";var Iu,No=class extends ve{constructor(e={}){super(e,To),this.idBlock.isConstructed=!1}};Iu=No;_.Primitive=Iu;No.NAME="PRIMITIVE";function _p(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 ui(r,e=0,t=r.length){let n=e,o=new ve({},Re),i=new Rt;if(!Nt(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=ve;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=_p(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 Jr(r){if(!r.byteLength){let e=new ve({},Re);return e.error="Input buffer has zero length",{offset:-1,result:e}}return ui(Y.BufferSourceConverter.toUint8Array(r).slice(),0,r.byteLength)}function Up(r,e){return r?1:e}var ht=class extends Re{constructor({value:e=[],isIndefiniteForm:t=!1,...n}={}){super(n),this.value=e,this.isIndefiniteForm=t}fromBER(e,t,n){let o=Y.BufferSourceConverter.toUint8Array(e);if(!Nt(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(;Up(this.isIndefiniteForm,n)>0;){let s=ui(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===Sn)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===Sn?this.value.pop():this.warnings.push("No EndOfContent block encoded")),i}toBER(e,t){let n=t||new An;for(let o=0;o<this.value.length;o++)this.value[o].toBER(e,n);return t?nt:n.final()}toJSON(){let e={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(let t of this.value)e.value.push(t.toJSON());return e}};ht.NAME="ConstructedValueBlock";var Ru,Zt=class extends ve{constructor(e={}){super(e,ht),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(`
2
+ "use strict";var HeliaRouters=(()=>{var Nh=Object.create;var Wn=Object.defineProperty;var Ch=Object.getOwnPropertyDescriptor;var _h=Object.getOwnPropertyNames;var Uh=Object.getPrototypeOf,Lh=Object.prototype.hasOwnProperty;var sr=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),ye=(r,e)=>{for(var t in e)Wn(r,t,{get:e[t],enumerable:!0})},Qa=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of _h(e))!Lh.call(r,o)&&o!==t&&Wn(r,o,{get:()=>e[o],enumerable:!(n=Ch(e,o))||n.enumerable});return r};var Ot=(r,e,t)=>(t=r!=null?Nh(Uh(r)):{},Qa(e||!r||!r.__esModule?Wn(t,"default",{value:r,enumerable:!0}):t,r)),Dh=r=>Qa(Wn({},"__esModule",{value:!0}),r);var oc=sr((Gm,nc)=>{var vr=1e3,Br=vr*60,Ar=Br*60,ar=Ar*24,Vh=ar*7,Oh=ar*365.25;nc.exports=function(r,e){e=e||{};var t=typeof r;if(t==="string"&&r.length>0)return Ph(r);if(t==="number"&&isFinite(r))return e.long?Mh(r):Fh(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function Ph(r){if(r=String(r),!(r.length>100)){var 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){var t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*Oh;case"weeks":case"week":case"w":return t*Vh;case"days":case"day":case"d":return t*ar;case"hours":case"hour":case"hrs":case"hr":case"h":return t*Ar;case"minutes":case"minute":case"mins":case"min":case"m":return t*Br;case"seconds":case"second":case"secs":case"sec":case"s":return t*vr;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function Fh(r){var e=Math.abs(r);return e>=ar?Math.round(r/ar)+"d":e>=Ar?Math.round(r/Ar)+"h":e>=Br?Math.round(r/Br)+"m":e>=vr?Math.round(r/vr)+"s":r+"ms"}function Mh(r){var e=Math.abs(r);return e>=ar?Jn(r,e,ar,"day"):e>=Ar?Jn(r,e,Ar,"hour"):e>=Br?Jn(r,e,Br,"minute"):e>=vr?Jn(r,e,vr,"second"):r+" ms"}function Jn(r,e,t,n){var o=e>=t*1.5;return Math.round(r/t)+" "+n+(o?"s":"")}});var sc=sr((jm,ic)=>{function Hh(r){t.debug=t,t.default=t,t.coerce=c,t.disable=i,t.enable=o,t.enabled=s,t.humanize=oc(),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 d=0;d<u.length;d++)l=(l<<5)-l+u.charCodeAt(d),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(u){let l,d=null,E,g;function h(...p){if(!h.enabled)return;let b=h,R=Number(new Date),v=R-(l||R);b.diff=v,b.prev=l,b.curr=R,l=R,p[0]=t.coerce(p[0]),typeof p[0]!="string"&&p.unshift("%O");let L=0;p[0]=p[0].replace(/%([a-zA-Z%])/g,(k,C)=>{if(k==="%%")return"%";L++;let y=t.formatters[C];if(typeof y=="function"){let N=p[L];k=y.call(b,N),p.splice(L,1),L--}return k}),t.formatArgs.call(b,p),(b.log||t.log).apply(b,p)}return h.namespace=u,h.useColors=t.useColors(),h.color=t.selectColor(u),h.extend=n,h.destroy=t.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>d!==null?d:(E!==t.namespaces&&(E=t.namespaces,g=t.enabled(u)),g),set:p=>{d=p}}),typeof t.init=="function"&&t.init(h),h}function n(u,l){let d=t(this.namespace+(typeof l>"u"?":":l)+u);return d.log=this.log,d}function o(u){t.save(u),t.namespaces=u,t.names=[],t.skips=[];let l,d=(typeof u=="string"?u:"").split(/[\s,]+/),E=d.length;for(l=0;l<E;l++)d[l]&&(u=d[l].replace(/\*/g,".*?"),u[0]==="-"?t.skips.push(new RegExp("^"+u.slice(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,d;for(l=0,d=t.skips.length;l<d;l++)if(t.skips[l].test(u))return!1;for(l=0,d=t.names.length;l<d;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.enable(t.load()),t}ic.exports=Hh});var ac=sr((Pe,Xn)=>{Pe.formatArgs=Kh;Pe.save=qh;Pe.load=zh;Pe.useColors=$h;Pe.storage=Gh();Pe.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Pe.colors=["#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 $h(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Kh(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+Xn.exports.humanize(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)}Pe.log=console.debug||console.log||(()=>{});function qh(r){try{r?Pe.storage.setItem("debug",r):Pe.storage.removeItem("debug")}catch{}}function zh(){let r;try{r=Pe.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function Gh(){try{return localStorage}catch{}}Xn.exports=sc()(Pe);var{formatters:jh}=Xn.exports;jh.j=function(r){try{return JSON.stringify(r)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Cu=sr(Xr=>{"use strict";var zp="[object ArrayBuffer]",kt=class r{static isArrayBuffer(e){return Object.prototype.toString.call(e)===zp}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}},ra="string",Gp=/^[0-9a-f]+$/i,jp=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,Yp=/^[a-zA-Z0-9-_]+$/,Io=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=kt.toUint8Array(e),n="";for(let i=0;i<t.length;i++)n+=String.fromCharCode(t[i]);return decodeURIComponent(escape(n))}},Ze=class{static toString(e,t=!1){let n=kt.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}},Ro=class r{static isHex(e){return typeof e===ra&&Gp.test(e)}static isBase64(e){return typeof e===ra&&jp.test(e)}static isBase64Url(e){return typeof e===ra&&Yp.test(e)}static ToString(e,t="utf8"){let n=kt.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 Ze.toString(n,!0);case"utf16":case"utf16be":return Ze.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 Ze.fromString(e,!0);case"utf16":case"utf16be":return Ze.fromString(e);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToBase64(e){let t=kt.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 Io.fromString(e);case"utf16":case"utf16be":return Ze.fromString(e);case"utf16le":case"usc2":return Ze.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 Io.toString(e);case"utf16":case"utf16be":return Ze.toString(e);case"utf16le":case"usc2":return Ze.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=kt.toUint8Array(e),n="";for(let o=0;o<t.length;o++)n+=String.fromCharCode(t[o]);return n}static ToHex(e){let t=kt.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 Ze.toString(e,t)}static FromUtf16String(e,t=!1){return Ze.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,"")||""}};Ro.DEFAULT_UTF8_ENCODING="utf8";function Zp(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 Wp(...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 Jp(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}Xr.BufferSourceConverter=kt;Xr.Convert=Ro;Xr.assign=Zp;Xr.combine=Wp;Xr.isEqual=Jp});var mi=sr((w2,Ol)=>{"use strict";function Vl(r,e){for(let t in e)Object.defineProperty(r,t,{value:e[t],enumerable:!0,configurable:!0});return r}function Cg(r,e,t){if(!r||typeof r=="string")throw new TypeError("Please pass an Error to err-code");t||(t={}),typeof e=="object"&&(t=e,e=""),e&&(t.code=e);try{return Vl(r,t)}catch{t.message=r.message,t.stack=r.stack;let o=function(){};return o.prototype=Object.create(Object.getPrototypeOf(r)),Vl(new o,t)}}Ol.exports=Cg});var wa=sr((A2,ya)=>{var B2=function(){typeof ya<"u"&&(ya.exports=h);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(y){var N=y-y%1;return N==0&&(y<0||y===0&&1/y!=1/0)?-0:N},u=h.prototype,l=(h.fromDate=function(y){return new h(+y)},h.fromInt64BE=L(0,1,2,3,0,4),h.fromInt64LE=L(3,2,1,0,4,0),h.fromString=function(T){var N,V=new h,T=(T+="").replace(/^\s*[+\-]?\d+/,function(H){var H=+H,J=1970+(H-1970)%400;return V.year=H-J,J}).replace(/(?:Z|([+\-]\d{2}):?(\d{2}))$/,function(P,H,J){return H<0&&(J*=-1),N=6e4*(60*+H+ +J),""}).replace(/\.\d+$/,function(P){return V.nano=+(P+c).substr(1,9),""}).split(/\D+/);if(1<T.length?T[1]--:T[1]=0,V.time=N=Date.UTC.apply(Date,T)-(N||0),isNaN(N))throw new TypeError("Invalid Date");return p(V)},h.fromTimeT=function(y){return R(y,0)},u.year=0,u.time=0,u.nano=0,u.addNano=function(y){return this.nano+=+y||0,this},u.getNano=function(){var y=p(this);return(y.time%1e3*a+ +y.nano+1e9)%1e9},u.getTimeT=function(){var N=p(this),y=Math.floor(N.time/1e3),N=N.year;return N&&(y+=N*t*r/e),y},u.getYear=function(){return this.toDate().getUTCFullYear()+this.year},u.toDate=function(){return b(p(this).time)},u.toJSON=function(){return this.toString().replace(/0{1,6}Z$/,"Z")},u.toString=function(y){var N=this,V=N.toDate(),T={H:function(){return k(V.getUTCHours())},L:function(){return C(V.getUTCMilliseconds(),3)},M:function(){return k(V.getUTCMinutes())},N:function(){return C(N.getNano(),9)},S:function(){return k(V.getUTCSeconds())},Y:function(){var P=N.getYear();return 999999<P?"+"+P:9999<P?"+"+C(P,6):0<=P?C(P,4):-999999<=P?"-"+C(-P,6):P},a:function(){return E[V.getUTCDay()]},b:function(){return d[V.getUTCMonth()]},d:function(){return k(V.getUTCDate())},e:function(){return function(P){return(9<P?"":" ")+(0|P)}(V.getUTCDate())},m:function(){return k(V.getUTCMonth()+1)}};return function P(H){return H.replace(/%./g,function(J){var A=J[1],x=g[A],A=T[A];return x?P(x):A?A():J})}(y||l)},u.writeInt64BE=v(0,1,2,3,0,4),u.writeInt64LE=v(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"],E=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],g={"%":"%",F:"%Y-%m-%d",n:`
3
+ `,R:"%H:%M",T:"%H:%M:%S",t:" ",X:"%T",Z:"GMT",z:"+0000"};return h;function h(y,N,V){var T=this;if(!(T instanceof h))return new h(y,N,V);T.time=+y||0,T.nano=+N||0,T.year=+V||0,p(T)}function p(y){var N,V,T,P=y.year,H=y.time,J=y.nano,x=((J<0||a<=J)&&(J-=(V=Math.floor(J/a))*a,H+=V,V=1),P%e);return(H<-i||i<H||x)&&((N=f(H/o))&&(P+=N*e,H-=N*o),(T=b(H)).setUTCFullYear(x+T.getUTCFullYear()),T=(H=+T)+(N=f((P-=x)/e))*o,N&&-i<=T&&T<=i&&(P-=N*e,H=T),V=1),V&&(y.year=P,y.time=H,y.nano=J),y}function b(y){var N=new Date(0);return N.setTime(y),N}function R(P,T){P=+P||0;var V=f((T=(T|0)*s)/n)+f(P/n),T=T%n+P%n,P=f(T/n);return P&&(V+=P,T-=P*n),new h(1e3*T,0,V*e)}function v(y,N,V,T,P,H){return function(x,A){var B=p(this);x=x||new Array(8),S(x,A|=0);var w=Math.floor(B.time/1e3),B=B.year*(t*r/e),M=f(B/s)+f(w/s),B=B%s+w%s,w=Math.floor(B/s);return w&&(M+=w,B-=w*s),J(x,A+P,M),J(x,A+H,B),x};function J(x,A,M){x[A+y]=M>>24&255,x[A+N]=M>>16&255,x[A+V]=M>>8&255,x[A+T]=255&M}}function L(y,N,V,T,P,H){return function(x,A){S(x,A|=0);var M=J(x,A+P);return R(J(x,A+H),M)};function J(x,A){return 16777216*x[A+y]+(x[A+N]<<16|x[A+V]<<8|x[A+T])}}function S(y,N){if(y=y&&y.length,y==null)throw new TypeError("Invalid Buffer");if(y<N+8)throw new RangeError("Out of range")}function k(y){return(9<y?"":"0")+(0|y)}function C(y,N){return(c+(0|y)).substr(-N)}}()});var rh=sr((dv,ka)=>{"use strict";var mm=Object.prototype.hasOwnProperty,Le="~";function Gn(){}Object.create&&(Gn.prototype=Object.create(null),new Gn().__proto__||(Le=!1));function ym(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function th(r,e,t,n,o){if(typeof t!="function")throw new TypeError("The listener must be a function");var i=new ym(t,n||r,o),s=Le?Le+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 Ci(r,e){--r._eventsCount===0?r._events=new Gn:delete r._events[e]}function Ne(){this._events=new Gn,this._eventsCount=0}Ne.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)mm.call(t,n)&&e.push(Le?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};Ne.prototype.listeners=function(e){var t=Le?Le+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};Ne.prototype.listenerCount=function(e){var t=Le?Le+e:e,n=this._events[t];return n?n.fn?1:n.length:0};Ne.prototype.emit=function(e,t,n,o,i,s){var a=Le?Le+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 d=c.length,E;for(l=0;l<d;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(E=1,u=new Array(f-1);E<f;E++)u[E-1]=arguments[E];c[l].fn.apply(c[l].context,u)}}return!0};Ne.prototype.on=function(e,t,n){return th(this,e,t,n,!1)};Ne.prototype.once=function(e,t,n){return th(this,e,t,n,!0)};Ne.prototype.removeListener=function(e,t,n,o){var i=Le?Le+e:e;if(!this._events[i])return this;if(!t)return Ci(this,i),this;var s=this._events[i];if(s.fn)s.fn===t&&(!o||s.once)&&(!n||s.context===n)&&Ci(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:Ci(this,i)}return this};Ne.prototype.removeAllListeners=function(e){var t;return e?(t=Le?Le+e:e,this._events[t]&&Ci(this,t)):(this._events=new Gn,this._eventsCount=0),this};Ne.prototype.off=Ne.prototype.removeListener;Ne.prototype.addListener=Ne.prototype.on;Ne.prefixed=Le;Ne.EventEmitter=Ne;typeof ka<"u"&&(ka.exports=Ne)});var Fm={};ye(Fm,{delegatedHTTPRouting:()=>hh,httpGatewayRouting:()=>xh,libp2pRouting:()=>Eh});var ec=Symbol.for("@libp2p/content-routing");var hn=Symbol.for("@libp2p/peer-id");function tc(r){return r!=null&&!!r[hn]}var rc=Symbol.for("@libp2p/peer-routing");var O=class extends Error{code;props;constructor(e,t,n){super(e),this.code=t,this.name=n?.name??"CodeError",this.props=n??{}}};var Er=(r,...e)=>{try{[...e]}catch{}};var Fe=Ot(ac(),1);var Ki={};ye(Ki,{base32:()=>Qe,base32hex:()=>td,base32hexpad:()=>nd,base32hexpadupper:()=>od,base32hexupper:()=>rd,base32pad:()=>Qh,base32padupper:()=>ed,base32upper:()=>pc,base32z:()=>id});var Ym=new Uint8Array(0);function cc(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 xt(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 uc(r){return new TextEncoder().encode(r)}function lc(r){return new TextDecoder().decode(r)}function Yh(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(g){if(g instanceof Uint8Array||(ArrayBuffer.isView(g)?g=new Uint8Array(g.buffer,g.byteOffset,g.byteLength):Array.isArray(g)&&(g=Uint8Array.from(g))),!(g instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(g.length===0)return"";for(var h=0,p=0,b=0,R=g.length;b!==R&&g[b]===0;)b++,h++;for(var v=(R-b)*u+1>>>0,L=new Uint8Array(v);b!==R;){for(var S=g[b],k=0,C=v-1;(S!==0||k<p)&&C!==-1;C--,k++)S+=256*L[C]>>>0,L[C]=S%a>>>0,S=S/a>>>0;if(S!==0)throw new Error("Non-zero carry");p=k,b++}for(var y=v-p;y!==v&&L[y]===0;)y++;for(var N=c.repeat(h);y<v;++y)N+=r.charAt(L[y]);return N}function d(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var h=0;if(g[h]!==" "){for(var p=0,b=0;g[h]===c;)p++,h++;for(var R=(g.length-h)*f+1>>>0,v=new Uint8Array(R);g[h];){var L=t[g.charCodeAt(h)];if(L===255)return;for(var S=0,k=R-1;(L!==0||S<b)&&k!==-1;k--,S++)L+=a*v[k]>>>0,v[k]=L%256>>>0,L=L/256>>>0;if(L!==0)throw new Error("Non-zero carry");b=S,h++}if(g[h]!==" "){for(var C=R-b;C!==R&&v[C]===0;)C++;for(var y=new Uint8Array(p+(R-C)),N=p;C!==R;)y[N++]=v[C++];return y}}}function E(g){var h=d(g);if(h)return h;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:d,decode:E}}var Zh=Yh,Wh=Zh,hc=Wh;var Fi=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")}},Mi=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),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 dc(this,e)}},Hi=class{decoders;constructor(e){this.decoders=e}or(e){return dc(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 dc(r,e){return new Hi({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var $i=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 Fi(e,t,n),this.decoder=new Mi(e,t,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function Sr({name:r,prefix:e,encode:t,decode:n}){return new $i(r,e,t,n)}function Pt({name:r,prefix:e,alphabet:t}){let{encode:n,decode:o}=hc(t,r);return Sr({prefix:e,name:r,encode:n,decode:i=>xt(o(i))})}function Jh(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 ae({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return Sr({prefix:e,name:r,encode(o){return Xh(o,n,t)},decode(o){return Jh(o,n,t,r)}})}var Qe=ae({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),pc=ae({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Qh=ae({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),ed=ae({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),td=ae({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),rd=ae({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),nd=ae({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),od=ae({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),id=ae({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var qi={};ye(qi,{base58btc:()=>le,base58flickr:()=>sd});var le=Pt({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),sd=Pt({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var zi={};ye(zi,{base64:()=>dn,base64pad:()=>ad,base64url:()=>cd,base64urlpad:()=>ud});var dn=ae({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),ad=ae({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),cd=ae({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),ud=ae({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});Fe.default.formatters.b=r=>r==null?"undefined":le.baseEncode(r);Fe.default.formatters.t=r=>r==null?"undefined":Qe.baseEncode(r);Fe.default.formatters.m=r=>r==null?"undefined":dn.baseEncode(r);Fe.default.formatters.p=r=>r==null?"undefined":r.toString();Fe.default.formatters.c=r=>r==null?"undefined":r.toString();Fe.default.formatters.k=r=>r==null?"undefined":r.toString();Fe.default.formatters.a=r=>r==null?"undefined":r.toString();function ld(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 Ft(r){let e=ld(`${r}:trace`);return Fe.default.enabled(`${r}:trace`)&&Fe.default.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=(0,Fe.default)(`${r}:trace`)),Object.assign((0,Fe.default)(r),{error:(0,Fe.default)(`${r}:error`),trace:e})}var Gi={};ye(Gi,{base10:()=>fd});var fd=Pt({prefix:"9",name:"base10",alphabet:"0123456789"});var ji={};ye(ji,{base16:()=>hd,base16upper:()=>dd});var hd=ae({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),dd=ae({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Yi={};ye(Yi,{base2:()=>pd});var pd=ae({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Zi={};ye(Zi,{base256emoji:()=>bd});var gc=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),gd=gc.reduce((r,e,t)=>(r[t]=e,r),[]),md=gc.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function yd(r){return r.reduce((e,t)=>(e+=gd[t],e),"")}function wd(r){let e=[];for(let t of r){let n=md[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var bd=Sr({prefix:"\u{1F680}",name:"base256emoji",encode:yd,decode:wd});var Wi={};ye(Wi,{base36:()=>Qn,base36upper:()=>xd});var Qn=Pt({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),xd=Pt({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Ji={};ye(Ji,{base8:()=>Ed});var Ed=ae({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Xi={};ye(Xi,{identity:()=>vd});var vd=Sr({prefix:"\0",name:"identity",encode:r=>lc(r),decode:r=>uc(r)});var py=new TextEncoder,gy=new TextDecoder;var es={};ye(es,{identity:()=>je});var Sd=wc,mc=128,Id=127,Rd=~Id,kd=Math.pow(2,31);function wc(r,e,t){e=e||[],t=t||0;for(var n=t;r>=kd;)e[t++]=r&255|mc,r/=128;for(;r&Rd;)e[t++]=r&255|mc,r>>>=7;return e[t]=r|0,wc.bytes=t-n+1,e}var Td=Qi,Nd=128,yc=127;function Qi(r,n){var t=0,n=n||0,o=0,i=n,s,a=r.length;do{if(i>=a)throw Qi.bytes=0,new RangeError("Could not decode varint");s=r[i++],t+=o<28?(s&yc)<<o:(s&yc)*Math.pow(2,o),o+=7}while(s>=Nd);return Qi.bytes=i-n,t}var Cd=Math.pow(2,7),_d=Math.pow(2,14),Ud=Math.pow(2,21),Ld=Math.pow(2,28),Dd=Math.pow(2,35),Vd=Math.pow(2,42),Od=Math.pow(2,49),Pd=Math.pow(2,56),Fd=Math.pow(2,63),Md=function(r){return r<Cd?1:r<_d?2:r<Ud?3:r<Ld?4:r<Dd?5:r<Vd?6:r<Od?7:r<Pd?8:r<Fd?9:10},Hd={encode:Sd,decode:Td,encodingLength:Md},$d=Hd,pn=$d;function gn(r,e=0){return[pn.decode(r,e),pn.decode.bytes]}function Ir(r,e,t=0){return pn.encode(r,e,t),e}function Rr(r){return pn.encodingLength(r)}function ft(r,e){let t=e.byteLength,n=Rr(r),o=n+Rr(t),i=new Uint8Array(o+t);return Ir(r,i,0),Ir(t,i,n),i.set(e,o),new kr(r,t,e,i)}function Mt(r){let e=xt(r),[t,n]=gn(e),[o,i]=gn(e.subarray(n)),s=e.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new kr(t,o,s,e)}function bc(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&cc(r.bytes,t.bytes)}}var kr=class{code;size;digest;bytes;constructor(e,t,n,o){this.code=e,this.size=t,this.digest=n,this.bytes=o}};var xc=0,Kd="identity",Ec=xt;function qd(r){return ft(xc,Ec(r))}var je={code:xc,name:Kd,encode:Ec,digest:qd};var ns={};ye(ns,{sha256:()=>ve,sha512:()=>zd});function rs({name:r,code:e,encode:t}){return new ts(r,e,t)}var ts=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?ft(this.code,t):t.then(n=>ft(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Bc(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var ve=rs({name:"sha2-256",code:18,encode:Bc("SHA-256")}),zd=rs({name:"sha2-512",code:19,encode:Bc("SHA-512")});function Ac(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return jd(t,os(r),e??le.encoder);default:return Yd(t,os(r),e??Qe.encoder)}}var Sc=new WeakMap;function os(r){let e=Sc.get(r);if(e==null){let t=new Map;return Sc.set(r,t),t}return e}var Be=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!==mn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==Zd)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=ft(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&&bc(e.multihash,n.multihash)}toString(e){return Ac(this,e)}toJSON(){return{"/":Ac(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??Ic(n,o,i.bytes))}else if(t[Wd]===!0){let{version:n,multihash:o,code:i}=t,s=Mt(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!==mn)throw new Error(`Version 0 CID must use dag-pb (code: ${mn}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let o=Ic(e,t,n.bytes);return new r(e,t,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,mn,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=xt(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 kr(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,d]=gn(e.subarray(t));return t+=d,l},o=n(),i=mn;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]=Gd(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 os(i).set(n,e),i}};function Gd(r,e){switch(r[0]){case"Q":{let t=e??le;return[le.prefix,t.decode(`${le.prefix}${r}`)]}case le.prefix:{let t=e??le;return[le.prefix,t.decode(r)]}case Qe.prefix:{let t=e??Qe;return[Qe.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function jd(r,e,t){let{prefix:n}=t;if(n!==le.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 Yd(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 mn=112,Zd=18;function Ic(r,e,t){let n=Rr(r),o=n+Rr(e),i=new Uint8Array(o+t.byteLength);return Ir(r,i,0),Ir(e,i,n),i.set(t,o),i}var Wd=Symbol.for("@ipld/js-cid/CID");var $t={...Xi,...Yi,...Ji,...Gi,...ji,...Ki,...Wi,...qi,...zi,...Zi},Vy={...ns,...es};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}var Jd=Symbol.for("nodejs.util.inspect.custom"),Rc=Object.values($t).map(r=>r.decoder).reduce((r,e)=>r.or(e),$t.identity.decoder),kc=114,is=36,ss=37,yn=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[hn]=!0;toString(){return this.string==null&&(this.string=le.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return Be.createV1(kc,this.multihash)}toBytes(){return this.multihash.bytes}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 as(e).equals(this);if(e?.multihash?.bytes!=null)return ce(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[Jd](){return`PeerId(${this.toString()})`}},Tr=class extends yn{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Nr=class extends yn{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},Cr=class extends yn{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function as(r,e){if(e=e??Rc,r.charAt(0)==="1"||r.charAt(0)==="Q"){let t=Mt(le.decode(`z${r}`));return r.startsWith("12D")?new Nr({multihash:t}):r.startsWith("16U")?new Cr({multihash:t}):new Tr({multihash:t})}return wn(Rc.decode(r))}function wn(r){try{let e=Mt(r);if(e.code===je.code){if(e.digest.length===is)return new Nr({multihash:e});if(e.digest.length===ss)return new Cr({multihash:e})}if(e.code===ve.code)return new Tr({multihash:e})}catch{return Xd(Be.decode(r))}throw new Error("Supplied PeerID CID is invalid")}function Xd(r){if(r==null||r.multihash==null||r.version==null||r.version===1&&r.code!==kc)throw new Error("Supplied PeerID CID is invalid");let e=r.multihash;if(e.code===ve.code)return new Tr({multihash:r.multihash});if(e.code===je.code){if(e.digest.length===is)return new Nr({multihash:r.multihash});if(e.digest.length===ss)return new Cr({multihash:r.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Tc(r,e){return r.length===is?new Nr({multihash:ft(je.code,r),privateKey:e}):r.length===ss?new Cr({multihash:ft(je.code,r),privateKey:e}):new Tr({multihash:await ve.digest(r),publicKey:r,privateKey:e})}function et(r=0){return new Uint8Array(r)}function Cc(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Nc=Cc("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),cs=Cc("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=et(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),Qd={utf8:Nc,"utf-8":Nc,hex:$t.base16,latin1:cs,ascii:cs,binary:cs,...$t},to=Qd;function Y(r,e="utf8"){let t=to[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}var e0=Math.pow(2,7),t0=Math.pow(2,14),r0=Math.pow(2,21),us=Math.pow(2,28),ls=Math.pow(2,35),fs=Math.pow(2,42),hs=Math.pow(2,49),te=128,Re=127;function De(r){if(r<e0)return 1;if(r<t0)return 2;if(r<r0)return 3;if(r<us)return 4;if(r<ls)return 5;if(r<fs)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 ds(r,e,t=0){switch(De(r)){case 8:e[t++]=r&255|te,r/=128;case 7:e[t++]=r&255|te,r/=128;case 6:e[t++]=r&255|te,r/=128;case 5:e[t++]=r&255|te,r/=128;case 4:e[t++]=r&255|te,r>>>=7;case 3:e[t++]=r&255|te,r>>>=7;case 2:e[t++]=r&255|te,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function n0(r,e,t=0){switch(De(r)){case 8:e.set(t++,r&255|te),r/=128;case 7:e.set(t++,r&255|te),r/=128;case 6:e.set(t++,r&255|te),r/=128;case 5:e.set(t++,r&255|te),r/=128;case 4:e.set(t++,r&255|te),r>>>=7;case 3:e.set(t++,r&255|te),r>>>=7;case 2:e.set(t++,r&255|te),r>>>=7;case 1:{e.set(t++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return e}function ps(r,e){let t=r[e],n=0;if(n+=t&Re,t<te||(t=r[e+1],n+=(t&Re)<<7,t<te)||(t=r[e+2],n+=(t&Re)<<14,t<te)||(t=r[e+3],n+=(t&Re)<<21,t<te)||(t=r[e+4],n+=(t&Re)*us,t<te)||(t=r[e+5],n+=(t&Re)*ls,t<te)||(t=r[e+6],n+=(t&Re)*fs,t<te)||(t=r[e+7],n+=(t&Re)*hs,t<te))return n;throw new RangeError("Could not decode varint")}function o0(r,e){let t=r.get(e),n=0;if(n+=t&Re,t<te||(t=r.get(e+1),n+=(t&Re)<<7,t<te)||(t=r.get(e+2),n+=(t&Re)<<14,t<te)||(t=r.get(e+3),n+=(t&Re)<<21,t<te)||(t=r.get(e+4),n+=(t&Re)*us,t<te)||(t=r.get(e+5),n+=(t&Re)*ls,t<te)||(t=r.get(e+6),n+=(t&Re)*fs,t<te)||(t=r.get(e+7),n+=(t&Re)*hs,t<te))return n;throw new RangeError("Could not decode varint")}function _r(r,e,t=0){return e==null&&(e=et(De(r))),e instanceof Uint8Array?ds(r,e,t):n0(r,e,t)}function cr(r,e=0){return r instanceof Uint8Array?ps(r,e):o0(r,e)}function Ce(r,e){e==null&&(e=r.reduce((o,i)=>o+i.length,0));let t=et(e),n=0;for(let o of r)t.set(o,n),n+=o.length;return t}var ro=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 d=Number.parseInt(l,e);if(!Number.isNaN(d))return d});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 Uc=45,i0=15,Ur=new ro;function gs(r){if(!(r.length>i0))return Ur.new(r).parseWith(()=>Ur.readIPv4Addr())}function ms(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>Uc))return Ur.new(r).parseWith(()=>Ur.readIPv6Addr())}function no(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>Uc))return Ur.new(r).parseWith(()=>Ur.readIPAddr())}var pw=parseInt("0xFFFF",16),gw=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function j(r,e="utf8"){let t=to[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function Vc(r){return!!gs(r)}function Oc(r){return!!ms(r)}function oo(r){return!!no(r)}var Pc=Vc,l0=Oc,ys=function(r){let e=0;if(r=r.toString().trim(),Pc(r)){let t=new Uint8Array(e+4);return r.split(/\./g).forEach(n=>{t[e++]=parseInt(n,10)&255}),t}if(l0(r)){let t=r.split(":",8),n;for(n=0;n<t.length;n++){let i=Pc(t[n]),s;i&&(s=ys(t[n]),t[n]=Y(s.slice(0,2),"base16")),s!=null&&++n<8&&t.splice(n,0,Y(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")},Fc=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 Lr={},ws={},h0=[[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"],[777,-1,"memory"]];h0.forEach(r=>{let e=d0(...r);ws[e.code]=e,Lr[e.name]=e});function d0(r,e,t,n,o){return{code:r,size:e,name:t,resolvable:!!n,path:!!o}}function ne(r){if(typeof r=="number"){if(ws[r]!=null)return ws[r];throw new Error(`no protocol with code: ${r}`)}else if(typeof r=="string"){if(Lr[r]!=null)return Lr[r];throw new Error(`no protocol with name: ${r}`)}throw new Error(`invalid protocol id type: ${typeof r}`)}var eb=ne("ip4"),tb=ne("ip6"),rb=ne("ipcidr");function xs(r,e){switch(ne(r).code){case 4:case 41:return g0(e);case 42:return $c(e);case 6:case 273:case 33:case 132:return qc(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return $c(e);case 421:return b0(e);case 444:return Kc(e);case 445:return Kc(e);case 466:return w0(e);default:return Y(e,"base16")}}function Es(r,e){switch(ne(r).code){case 4:return Mc(e);case 41:return Mc(e);case 42:return Hc(e);case 6:case 273:case 33:case 132:return vs(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Hc(e);case 421:return m0(e);case 444:return x0(e);case 445:return E0(e);case 466:return y0(e);default:return j(e,"base16")}}var bs=Object.values($t).map(r=>r.decoder),p0=function(){let r=bs[0].or(bs[1]);return bs.slice(2).forEach(e=>r=r.or(e)),r}();function Mc(r){if(!oo(r))throw new Error("invalid ip address");return ys(r)}function g0(r){let e=Fc(r,0,r.length);if(e==null)throw new Error("ipBuff is required");if(!oo(e))throw new Error("invalid ip address");return e}function vs(r){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,r),new Uint8Array(e)}function qc(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function Hc(r){let e=j(r),t=Uint8Array.from(_r(e.length));return Ce([t,e],t.length+e.length)}function $c(r){let e=cr(r);if(r=r.slice(De(e)),r.length!==e)throw new Error("inconsistent lengths");return Y(r)}function m0(r){let e;r[0]==="Q"||r[0]==="1"?e=Mt(le.decode(`z${r}`)).bytes:e=Be.parse(r).multihash.bytes;let t=Uint8Array.from(_r(e.length));return Ce([t,e],t.length+e.length)}function y0(r){let e=p0.decode(r),t=Uint8Array.from(_r(e.length));return Ce([t,e],t.length+e.length)}function w0(r){let e=cr(r),t=r.slice(De(e));if(t.length!==e)throw new Error("inconsistent lengths");return"u"+Y(t,"base64url")}function b0(r){let e=cr(r),t=r.slice(De(e));if(t.length!==e)throw new Error("inconsistent lengths");return Y(t,"base58btc")}function x0(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=Qe.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=vs(n);return Ce([t,o],t.length+o.length)}function E0(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=Qe.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=vs(n);return Ce([t,o],t.length+o.length)}function Kc(r){let e=r.slice(0,r.length-2),t=r.slice(r.length-2),n=Y(e,"base32"),o=qc(t);return`${n}:${o}`}function zc(r){r=Bs(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=ne(s);if(a.size===0){e.push([a.code]),t.push([a.code]);continue}if(i++,i>=o.length)throw jc("invalid address: "+r);if(a.path===!0){n=Bs(o.slice(i).join("/")),e.push([a.code,Es(a.code,n)]),t.push([a.code,n]);break}let c=Es(a.code,o[i]);e.push([a.code,c]),t.push([a.code,xs(a.code,c)])}return{string:Gc(t),bytes:Ss(e),tuples:e,stringTuples:t,path:n}}function As(r){let e=[],t=[],n=null,o=0;for(;o<r.length;){let i=cr(r,o),s=De(i),a=ne(i),c=v0(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 jc("Invalid address Uint8Array: "+Y(r,"base16"));e.push([i,f]);let u=xs(i,f);if(t.push([i,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(r),string:Gc(t),tuples:e,stringTuples:t,path:n}}function Gc(r){let e=[];return r.map(t=>{let n=ne(t[0]);return e.push(n.name),t.length>1&&t[1]!=null&&e.push(t[1]),null}),Bs(e.join("/"))}function Ss(r){return Ce(r.map(e=>{let t=ne(e[0]),n=Uint8Array.from(_r(t.code));return e.length>1&&e[1]!=null&&(n=Ce([n,e[1]])),n}))}function v0(r,e){if(r.size>0)return r.size/8;if(r.size===0)return 0;{let t=cr(e instanceof Uint8Array?e:Uint8Array.from(e));return t+De(t)}}function Bs(r){return"/"+r.trim().split("/").filter(e=>e).join("/")}function jc(r){return new Error("Error parsing address: "+r)}var B0=Symbol.for("nodejs.util.inspect.custom"),Is=Symbol.for("@multiformats/js-multiaddr/multiaddr"),A0=[ne("dns").code,ne("dns4").code,ne("dns6").code,ne("dnsaddr").code],io=class r{bytes;#e;#r;#i;#a;[Is]=!0;constructor(e){e==null&&(e="");let t;if(e instanceof Uint8Array)t=As(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);t=zc(e)}else if(Zc(e))t=As(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.#i=t.stringTuples,this.#a=t.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,t,n,o,i="",s=ne("tcp"),a=ne("udp"),c=ne("ip4"),f=ne("ip6"),u=ne("dns6"),l=ne("ip6zone");for(let[E,g]of this.stringTuples())E===l.code&&(i=`%${g??""}`),A0.includes(E)&&(t=s.name,o=443,n=`${g??""}${i}`,e=E===u.code?6:4),(E===s.code||E===a.code)&&(t=ne(E).name,o=parseInt(g??"")),(E===c.code||E===f.code)&&(t=ne(E).name,n=`${g??""}${i}`,e=E===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({},ne(e)))}protoCodes(){return this.#r.map(([e])=>e)}protoNames(){return this.#r.map(([e])=>ne(e).name)}tuples(){return this.#r}stringTuples(){return this.#i}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(Ss(t.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,o])=>{n===Lr.p2p.code&&e.push([n,o]),n===Lr["p2p-circuit"].code&&(e=[])});let t=e.pop();if(t?.[1]!=null){let n=t[1];return n[0]==="Q"||n[0]==="1"?Y(le.decode(`z${n}`),"base58btc"):Y(Be.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=Yc.get(t.name);if(n==null)throw new O(`no available resolver for ${t.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(i=>ur(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)}[B0](){return`Multiaddr(${this.#e})`}};var Yc=new Map;function Zc(r){return!!r?.[Is]}function ur(r){return new io(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*so(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 ea={};ye(ea,{Ed25519PrivateKey:()=>gr,Ed25519PublicKey:()=>Sn,generateKeyPair:()=>$p,generateKeyPairFromSeed:()=>Nu,unmarshalEd25519PrivateKey:()=>Mp,unmarshalEd25519PublicKey:()=>Hp});function Ye(r){return r==null?!1:typeof r.then=="function"&&typeof r.catch=="function"&&typeof r.finally=="function"}function Dr(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`positive integer expected, not ${r}`)}function S0(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function Vr(r,...e){if(!S0(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 ao(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Dr(r.outputLen),Dr(r.blockLen)}function Or(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 Wc(r,e){Vr(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var co=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Fr=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),tt=(r,e)=>r<<32-e|r>>>e;var Vb=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;var I0=async()=>{};async function Jc(r,e,t){let n=Date.now();for(let o=0;o<r;o++){t(o);let i=Date.now()-n;i>=0&&i<e||(await I0(),n+=i)}}function Rs(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function Kt(r){return typeof r=="string"&&(r=Rs(r)),Vr(r),r}function uo(...r){let e=0;for(let n=0;n<r.length;n++){let o=r[n];Vr(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 Pr=class{clone(){return this._cloneInto()}},R0={}.toString;function Xc(r,e){if(e!==void 0&&R0.call(e)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(r,e)}function lo(r){let e=n=>r().update(Kt(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function Mr(r=32){if(co&&typeof co.getRandomValues=="function")return co.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}function k0(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 Qc=(r,e,t)=>r&e^~r&t,eu=(r,e,t)=>r&e^r&t^e&t,Hr=class extends Pr{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=Fr(this.buffer)}update(e){Or(this);let{view:t,buffer:n,blockLen:o}=this;e=Kt(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=Fr(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){Or(this),Wc(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;k0(n,o-8,BigInt(this.length*8),i),this.process(n,0);let a=Fr(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 fo=BigInt(4294967295),ks=BigInt(32);function tu(r,e=!1){return e?{h:Number(r&fo),l:Number(r>>ks&fo)}:{h:Number(r>>ks&fo)|0,l:Number(r&fo)|0}}function T0(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}=tu(r[o],e);[t[o],n[o]]=[i,s]}return[t,n]}var N0=(r,e)=>BigInt(r>>>0)<<ks|BigInt(e>>>0),C0=(r,e,t)=>r>>>t,_0=(r,e,t)=>r<<32-t|e>>>t,U0=(r,e,t)=>r>>>t|e<<32-t,L0=(r,e,t)=>r<<32-t|e>>>t,D0=(r,e,t)=>r<<64-t|e>>>t-32,V0=(r,e,t)=>r>>>t-32|e<<64-t,O0=(r,e)=>e,P0=(r,e)=>r,F0=(r,e,t)=>r<<t|e>>>32-t,M0=(r,e,t)=>e<<t|r>>>32-t,H0=(r,e,t)=>e<<t-32|r>>>64-t,$0=(r,e,t)=>r<<t-32|e>>>64-t;function K0(r,e,t,n){let o=(e>>>0)+(n>>>0);return{h:r+t+(o/2**32|0)|0,l:o|0}}var q0=(r,e,t)=>(r>>>0)+(e>>>0)+(t>>>0),z0=(r,e,t,n)=>e+t+n+(r/2**32|0)|0,G0=(r,e,t,n)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0),j0=(r,e,t,n,o)=>e+t+n+o+(r/2**32|0)|0,Y0=(r,e,t,n,o)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0)+(o>>>0),Z0=(r,e,t,n,o,i)=>e+t+n+o+i+(r/2**32|0)|0;var W0={fromBig:tu,split:T0,toBig:N0,shrSH:C0,shrSL:_0,rotrSH:U0,rotrSL:L0,rotrBH:D0,rotrBL:V0,rotr32H:O0,rotr32L:P0,rotlSH:F0,rotlSL:M0,rotlBH:H0,rotlBL:$0,add:K0,add3L:q0,add3H:z0,add4L:G0,add4H:j0,add5H:Z0,add5L:Y0},q=W0;var[J0,X0]=q.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))),qt=new Uint32Array(80),zt=new Uint32Array(80),Ts=class extends Hr{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:d,Gh:E,Gl:g,Hh:h,Hl:p}=this;return[e,t,n,o,i,s,a,c,f,u,l,d,E,g,h,p]}set(e,t,n,o,i,s,a,c,f,u,l,d,E,g,h,p){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=d|0,this.Gh=E|0,this.Gl=g|0,this.Hh=h|0,this.Hl=p|0}process(e,t){for(let v=0;v<16;v++,t+=4)qt[v]=e.getUint32(t),zt[v]=e.getUint32(t+=4);for(let v=16;v<80;v++){let L=qt[v-15]|0,S=zt[v-15]|0,k=q.rotrSH(L,S,1)^q.rotrSH(L,S,8)^q.shrSH(L,S,7),C=q.rotrSL(L,S,1)^q.rotrSL(L,S,8)^q.shrSL(L,S,7),y=qt[v-2]|0,N=zt[v-2]|0,V=q.rotrSH(y,N,19)^q.rotrBH(y,N,61)^q.shrSH(y,N,6),T=q.rotrSL(y,N,19)^q.rotrBL(y,N,61)^q.shrSL(y,N,6),P=q.add4L(C,T,zt[v-7],zt[v-16]),H=q.add4H(P,k,V,qt[v-7],qt[v-16]);qt[v]=H|0,zt[v]=P|0}let{Ah:n,Al:o,Bh:i,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:d,Fh:E,Fl:g,Gh:h,Gl:p,Hh:b,Hl:R}=this;for(let v=0;v<80;v++){let L=q.rotrSH(l,d,14)^q.rotrSH(l,d,18)^q.rotrBH(l,d,41),S=q.rotrSL(l,d,14)^q.rotrSL(l,d,18)^q.rotrBL(l,d,41),k=l&E^~l&h,C=d&g^~d&p,y=q.add5L(R,S,C,X0[v],zt[v]),N=q.add5H(y,b,L,k,J0[v],qt[v]),V=y|0,T=q.rotrSH(n,o,28)^q.rotrBH(n,o,34)^q.rotrBH(n,o,39),P=q.rotrSL(n,o,28)^q.rotrBL(n,o,34)^q.rotrBL(n,o,39),H=n&i^n&a^i&a,J=o&s^o&c^s&c;b=h|0,R=p|0,h=E|0,p=g|0,E=l|0,g=d|0,{h:l,l:d}=q.add(f|0,u|0,N|0,V|0),f=a|0,u=c|0,a=i|0,c=s|0,i=n|0,s=o|0;let x=q.add3L(V,P,J);n=q.add3H(x,N,T,H),o=x|0}({h:n,l:o}=q.add(this.Ah|0,this.Al|0,n|0,o|0)),{h:i,l:s}=q.add(this.Bh|0,this.Bl|0,i|0,s|0),{h:a,l:c}=q.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=q.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=q.add(this.Eh|0,this.El|0,l|0,d|0),{h:E,l:g}=q.add(this.Fh|0,this.Fl|0,E|0,g|0),{h,l:p}=q.add(this.Gh|0,this.Gl|0,h|0,p|0),{h:b,l:R}=q.add(this.Hh|0,this.Hl|0,b|0,R|0),this.set(n,o,i,s,a,c,f,u,l,d,E,g,h,p,b,R)}roundClean(){qt.fill(0),zt.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 $r=lo(()=>new Ts);var po={};ye(po,{abytes:()=>Kr,bitGet:()=>ip,bitLen:()=>op,bitMask:()=>xn,bitSet:()=>sp,bytesToHex:()=>vt,bytesToNumberBE:()=>Bt,bytesToNumberLE:()=>jt,concatBytes:()=>At,createHmacDrbg:()=>_s,ensureBytes:()=>ue,equalBytes:()=>rp,hexToBytes:()=>lr,hexToNumber:()=>Cs,isBytes:()=>Gt,numberToBytesBE:()=>Yt,numberToBytesLE:()=>fr,numberToHexUnpadded:()=>iu,numberToVarBytesBE:()=>tp,utf8ToBytes:()=>np,validateObject:()=>ht});var ou=BigInt(0),ho=BigInt(1),Q0=BigInt(2);function Gt(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function Kr(r){if(!Gt(r))throw new Error("Uint8Array expected")}var ep=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function vt(r){Kr(r);let e="";for(let t=0;t<r.length;t++)e+=ep[r[t]];return e}function iu(r){let e=r.toString(16);return e.length&1?`0${e}`:e}function Cs(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}var Et={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function ru(r){if(r>=Et._0&&r<=Et._9)return r-Et._0;if(r>=Et._A&&r<=Et._F)return r-(Et._A-10);if(r>=Et._a&&r<=Et._f)return r-(Et._a-10)}function lr(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=ru(r.charCodeAt(i)),a=ru(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 Bt(r){return Cs(vt(r))}function jt(r){return Kr(r),Cs(vt(Uint8Array.from(r).reverse()))}function Yt(r,e){return lr(r.toString(16).padStart(e*2,"0"))}function fr(r,e){return Yt(r,e).reverse()}function tp(r){return lr(iu(r))}function ue(r,e,t){let n;if(typeof e=="string")try{n=lr(e)}catch(i){throw new Error(`${r} must be valid hex string, got "${e}". Cause: ${i}`)}else if(Gt(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 At(...r){let e=0;for(let n=0;n<r.length;n++){let o=r[n];Kr(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 rp(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 np(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function op(r){let e;for(e=0;r>ou;r>>=ho,e+=1);return e}function ip(r,e){return r>>BigInt(e)&ho}function sp(r,e,t){return r|(t?ho:ou)<<BigInt(e)}var xn=r=>(Q0<<BigInt(r-1))-ho,Ns=r=>new Uint8Array(r),nu=r=>Uint8Array.from(r);function _s(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=Ns(r),o=Ns(r),i=0,s=()=>{n.fill(1),o.fill(0),i=0},a=(...l)=>t(o,n,...l),c=(l=Ns())=>{o=a(nu([0]),l),n=a(),l.length!==0&&(o=a(nu([1]),l),n=a())},f=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<e;){n=a();let E=n.slice();d.push(E),l+=n.length}return At(...d)};return(l,d)=>{s(),c(l);let E;for(;!(E=d(f()));)c();return s(),E}}var ap={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"||Gt(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 ht(r,e,t={}){let n=(o,i,s)=>{let a=ap[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 me=BigInt(0),oe=BigInt(1),hr=BigInt(2),cp=BigInt(3),Us=BigInt(4),su=BigInt(5),au=BigInt(8),up=BigInt(9),lp=BigInt(16);function re(r,e){let t=r%e;return t>=me?t:e+t}function fp(r,e,t){if(t<=me||e<me)throw new Error("Expected power/modulo > 0");if(t===oe)return me;let n=oe;for(;e>me;)e&oe&&(n=n*r%t),r=r*r%t,e>>=oe;return n}function ie(r,e,t){let n=r;for(;e-- >me;)n*=n,n%=t;return n}function go(r,e){if(r===me||e<=me)throw new Error(`invert: expected positive integers, got n=${r} mod=${e}`);let t=re(r,e),n=e,o=me,i=oe,s=oe,a=me;for(;t!==me;){let f=n/t,u=n%t,l=o-s*f,d=i-a*f;n=t,t=u,o=s,i=a,s=l,a=d}if(n!==oe)throw new Error("invert: does not exist");return re(o,e)}function hp(r){let e=(r-oe)/hr,t,n,o;for(t=r-oe,n=0;t%hr===me;t/=hr,n++);for(o=hr;o<r&&fp(o,e,r)!==r-oe;o++);if(n===1){let s=(r+oe)/Us;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)/hr;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),d=a.pow(c,t);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let E=1;for(let h=a.sqr(d);E<f&&!a.eql(h,a.ONE);E++)h=a.sqr(h);let g=a.pow(u,oe<<BigInt(f-E-1));u=a.sqr(g),l=a.mul(l,g),d=a.mul(d,u),f=E}return l}}function dp(r){if(r%Us===cp){let e=(r+oe)/Us;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%au===su){let e=(r-su)/au;return function(n,o){let i=n.mul(o,hr),s=n.pow(i,e),a=n.mul(o,s),c=n.mul(n.mul(a,hr),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%lp,hp(r)}var cu=(r,e)=>(re(r,e)&oe)===oe,pp=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Ls(r){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},t=pp.reduce((n,o)=>(n[o]="function",n),e);return ht(r,t)}function gp(r,e,t){if(t<me)throw new Error("Expected power > 0");if(t===me)return r.ONE;if(t===oe)return e;let n=r.ONE,o=e;for(;t>me;)t&oe&&(n=r.mul(n,o)),o=r.sqr(o),t>>=oe;return n}function mp(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 Ds(r,e){let t=e!==void 0?e:r.toString(2).length,n=Math.ceil(t/8);return{nBitLength:t,nByteLength:n}}function mo(r,e,t=!1,n={}){if(r<=me)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:o,nByteLength:i}=Ds(r,e);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=dp(r),a=Object.freeze({ORDER:r,BITS:o,BYTES:i,MASK:xn(o),ZERO:me,ONE:oe,create:c=>re(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return me<=c&&c<r},is0:c=>c===me,isOdd:c=>(c&oe)===oe,neg:c=>re(-c,r),eql:(c,f)=>c===f,sqr:c=>re(c*c,r),add:(c,f)=>re(c+f,r),sub:(c,f)=>re(c-f,r),mul:(c,f)=>re(c*f,r),pow:(c,f)=>gp(a,c,f),div:(c,f)=>re(c*go(f,r),r),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>go(c,r),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>mp(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>t?fr(c,i):Yt(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return t?jt(c):Bt(c)}});return Object.freeze(a)}function uu(r,e){if(!r.isOdd)throw new Error("Field doesn't have isOdd");let t=r.sqrt(e);return r.isOdd(t)?r.neg(t):t}function lu(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 Vs(r){let e=lu(r);return e+Math.ceil(e/2)}function fu(r,e,t=!1){let n=r.length,o=lu(e),i=Vs(e);if(n<16||n<i||n>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${n}`);let s=t?Bt(r):jt(r),a=re(s,e-oe)+oe;return t?fr(a,o):Yt(a,o)}var wp=BigInt(0),Os=BigInt(1);function yo(r,e){let t=(o,i)=>{let s=i.negate();return o?s:i},n=o=>{let i=Math.ceil(e/o)+1,s=2**(o-1);return{windows:i,windowSize:s}};return{constTimeNegate:t,unsafeLadder(o,i){let s=r.ZERO,a=o;for(;i>wp;)i&Os&&(s=s.add(a)),a=a.double(),i>>=Os;return s},precomputeWindow(o,i){let{windows:s,windowSize:a}=n(i),c=[],f=o,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let d=1;d<a;d++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(o,i,s){let{windows:a,windowSize:c}=n(o),f=r.ZERO,u=r.BASE,l=BigInt(2**o-1),d=2**o,E=BigInt(o);for(let g=0;g<a;g++){let h=g*c,p=Number(s&l);s>>=E,p>c&&(p-=d,s+=Os);let b=h,R=h+Math.abs(p)-1,v=g%2!==0,L=p<0;p===0?u=u.add(t(v,i[b])):f=f.add(t(L,i[R]))}return{p:f,f:u}},wNAFCached(o,i,s,a){let c=o._WINDOW_SIZE||1,f=i.get(o);return f||(f=this.precomputeWindow(o,c),c!==1&&i.set(o,a(f))),this.wNAF(c,f,s)}}}function En(r){return Ls(r.Fp),ht(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Ds(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}var rt=BigInt(0),Me=BigInt(1),wo=BigInt(2),bp=BigInt(8),xp={zip215:!0};function Ep(r){let e=En(r);return ht(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function bo(r){let e=Ep(r),{Fp:t,n,prehash:o,hash:i,randomBytes:s,nByteLength:a,h:c}=e,f=wo<<BigInt(a*8)-Me,u=t.create,l=e.uvRatio||((B,w)=>{try{return{isValid:!0,value:t.sqrt(B*t.inv(w))}}catch{return{isValid:!1,value:rt}}}),d=e.adjustScalarBytes||(B=>B),E=e.domain||((B,w,D)=>{if(w.length||D)throw new Error("Contexts/pre-hash are not supported");return B}),g=B=>typeof B=="bigint"&&rt<B,h=(B,w)=>g(B)&&g(w)&&B<w,p=B=>B===rt||h(B,f);function b(B,w){if(h(B,w))return B;throw new Error(`Expected valid scalar < ${w}, got ${typeof B} ${B}`)}function R(B){return B===rt?B:b(B,n)}let v=new Map;function L(B){if(!(B instanceof S))throw new Error("ExtendedPoint expected")}class S{constructor(w,D,F,$){if(this.ex=w,this.ey=D,this.ez=F,this.et=$,!p(w))throw new Error("x required");if(!p(D))throw new Error("y required");if(!p(F))throw new Error("z required");if(!p($))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof S)throw new Error("extended point not allowed");let{x:D,y:F}=w||{};if(!p(D)||!p(F))throw new Error("invalid affine point");return new S(D,F,Me,u(D*F))}static normalizeZ(w){let D=t.invertBatch(w.map(F=>F.ez));return w.map((F,$)=>F.toAffine(D[$])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,v.delete(this)}assertValidity(){let{a:w,d:D}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:F,ey:$,ez:z,et:G}=this,ee=u(F*F),W=u($*$),X=u(z*z),he=u(X*X),se=u(ee*w),xe=u(X*u(se+W)),Ee=u(he+u(D*u(ee*W)));if(xe!==Ee)throw new Error("bad point: equation left != right (1)");let ge=u(F*$),Ie=u(z*G);if(ge!==Ie)throw new Error("bad point: equation left != right (2)")}equals(w){L(w);let{ex:D,ey:F,ez:$}=this,{ex:z,ey:G,ez:ee}=w,W=u(D*ee),X=u(z*$),he=u(F*ee),se=u(G*$);return W===X&&he===se}is0(){return this.equals(S.ZERO)}negate(){return new S(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=e,{ex:D,ey:F,ez:$}=this,z=u(D*D),G=u(F*F),ee=u(wo*u($*$)),W=u(w*z),X=D+F,he=u(u(X*X)-z-G),se=W+G,xe=se-ee,Ee=W-G,ge=u(he*xe),Ie=u(se*Ee),bt=u(he*Ee),ir=u(xe*se);return new S(ge,Ie,ir,bt)}add(w){L(w);let{a:D,d:F}=e,{ex:$,ey:z,ez:G,et:ee}=this,{ex:W,ey:X,ez:he,et:se}=w;if(D===BigInt(-1)){let Ga=u((z-$)*(X+W)),ja=u((z+$)*(X-W)),Pi=u(ja-Ga);if(Pi===rt)return this.double();let Ya=u(G*wo*se),Za=u(ee*wo*he),Wa=Za+Ya,Ja=ja+Ga,Xa=Za-Ya,Ih=u(Wa*Pi),Rh=u(Ja*Xa),kh=u(Wa*Xa),Th=u(Pi*Ja);return new S(Ih,Rh,Th,kh)}let xe=u($*W),Ee=u(z*X),ge=u(ee*F*se),Ie=u(G*he),bt=u(($+z)*(W+X)-xe-Ee),ir=Ie-ge,fn=Ie+ge,za=u(Ee-D*xe),vh=u(bt*ir),Bh=u(fn*za),Ah=u(bt*za),Sh=u(ir*fn);return new S(vh,Bh,Sh,Ah)}subtract(w){return this.add(w.negate())}wNAF(w){return y.wNAFCached(this,v,w,S.normalizeZ)}multiply(w){let{p:D,f:F}=this.wNAF(b(w,n));return S.normalizeZ([D,F])[0]}multiplyUnsafe(w){let D=R(w);return D===rt?C:this.equals(C)||D===Me?this:this.equals(k)?this.wNAF(D).p:y.unsafeLadder(this,D)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return y.unsafeLadder(this,n).is0()}toAffine(w){let{ex:D,ey:F,ez:$}=this,z=this.is0();w==null&&(w=z?bp:t.inv($));let G=u(D*w),ee=u(F*w),W=u($*w);if(z)return{x:rt,y:Me};if(W!==Me)throw new Error("invZ was invalid");return{x:G,y:ee}}clearCofactor(){let{h:w}=e;return w===Me?this:this.multiplyUnsafe(w)}static fromHex(w,D=!1){let{d:F,a:$}=e,z=t.BYTES;w=ue("pointHex",w,z);let G=w.slice(),ee=w[z-1];G[z-1]=ee&-129;let W=jt(G);W===rt||(D?b(W,f):b(W,t.ORDER));let X=u(W*W),he=u(X-Me),se=u(F*X-$),{isValid:xe,value:Ee}=l(he,se);if(!xe)throw new Error("Point.fromHex: invalid y coordinate");let ge=(Ee&Me)===Me,Ie=(ee&128)!==0;if(!D&&Ee===rt&&Ie)throw new Error("Point.fromHex: x=0 and x_0=1");return Ie!==ge&&(Ee=u(-Ee)),S.fromAffine({x:Ee,y:W})}static fromPrivateKey(w){return T(w).point}toRawBytes(){let{x:w,y:D}=this.toAffine(),F=fr(D,t.BYTES);return F[F.length-1]|=w&Me?128:0,F}toHex(){return vt(this.toRawBytes())}}S.BASE=new S(e.Gx,e.Gy,Me,u(e.Gx*e.Gy)),S.ZERO=new S(rt,Me,Me,rt);let{BASE:k,ZERO:C}=S,y=yo(S,a*8);function N(B){return re(B,n)}function V(B){return N(jt(B))}function T(B){let w=a;B=ue("private key",B,w);let D=ue("hashed private key",i(B),2*w),F=d(D.slice(0,w)),$=D.slice(w,2*w),z=V(F),G=k.multiply(z),ee=G.toRawBytes();return{head:F,prefix:$,scalar:z,point:G,pointBytes:ee}}function P(B){return T(B).pointBytes}function H(B=new Uint8Array,...w){let D=At(...w);return V(i(E(D,ue("context",B),!!o)))}function J(B,w,D={}){B=ue("message",B),o&&(B=o(B));let{prefix:F,scalar:$,pointBytes:z}=T(w),G=H(D.context,F,B),ee=k.multiply(G).toRawBytes(),W=H(D.context,ee,z,B),X=N(G+W*$);R(X);let he=At(ee,fr(X,t.BYTES));return ue("result",he,a*2)}let x=xp;function A(B,w,D,F=x){let{context:$,zip215:z}=F,G=t.BYTES;B=ue("signature",B,2*G),w=ue("message",w),o&&(w=o(w));let ee=jt(B.slice(G,2*G)),W,X,he;try{W=S.fromHex(D,z),X=S.fromHex(B.slice(0,G),z),he=k.multiplyUnsafe(ee)}catch{return!1}if(!z&&W.isSmallOrder())return!1;let se=H($,X.toRawBytes(),W.toRawBytes(),w);return X.add(W.multiplyUnsafe(se)).subtract(he).clearCofactor().equals(S.ZERO)}return k._setWindowSize(8),{CURVE:e,getPublicKey:P,sign:J,verify:A,ExtendedPoint:S,utils:{getExtendedPublicKey:T,randomPrivateKey:()=>s(t.BYTES),precompute(B=8,w=S.BASE){return w._setWindowSize(B),w.multiply(BigInt(3)),w}}}}var Fs=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),hu=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),ox=BigInt(0),vp=BigInt(1),Ps=BigInt(2),Bp=BigInt(5),du=BigInt(10),Ap=BigInt(20),Sp=BigInt(40),pu=BigInt(80);function Ip(r){let e=Fs,n=r*r%e*r%e,o=ie(n,Ps,e)*n%e,i=ie(o,vp,e)*r%e,s=ie(i,Bp,e)*i%e,a=ie(s,du,e)*s%e,c=ie(a,Ap,e)*a%e,f=ie(c,Sp,e)*c%e,u=ie(f,pu,e)*f%e,l=ie(u,pu,e)*f%e,d=ie(l,du,e)*s%e;return{pow_p_5_8:ie(d,Ps,e)*r%e,b2:n}}function Rp(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function kp(r,e){let t=Fs,n=re(e*e*e,t),o=re(n*n*e,t),i=Ip(r*o).pow_p_5_8,s=re(r*n*i,t),a=re(e*s*s,t),c=s,f=re(s*hu,t),u=a===r,l=a===re(-r,t),d=a===re(-r*hu,t);return u&&(s=c),(l||d)&&(s=f),cu(s,t)&&(s=re(-s,t)),{isValid:u||l,value:s}}var St=mo(Fs,void 0,!0),Ms={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:St,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:$r,randomBytes:Mr,adjustScalarBytes:Rp,uvRatio:kp},qr=bo(Ms);function gu(r,e,t){if(e.length>255)throw new Error("Context is too big");return uo(Rs("SigEd25519 no Ed25519 collisions"),new Uint8Array([t?1:0,e.length]),e,r)}var ix=bo({...Ms,domain:gu}),sx=bo({...Ms,domain:gu,prehash:$r});var Tp=(St.ORDER+BigInt(3))/BigInt(8),ax=St.pow(Ps,Tp),cx=St.sqrt(St.neg(St.ONE)),ux=(St.ORDER-BigInt(5))/BigInt(8),lx=BigInt(486662);var fx=uu(St,St.neg(BigInt(486664)));var hx=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),dx=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),px=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),gx=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var mx=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var zr=32,It=64,xo=32;function mu(){let r=qr.utils.randomPrivateKey(),e=qr.getPublicKey(r);return{privateKey:xu(r,e),publicKey:e}}function yu(r){if(r.length!==xo)throw new TypeError('"seed" must be 32 bytes in length.');if(!(r instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=r,t=qr.getPublicKey(e);return{privateKey:xu(e,t),publicKey:t}}function wu(r,e){let t=r.subarray(0,xo);return qr.sign(e instanceof Uint8Array?e:e.subarray(),t)}function bu(r,e,t){return qr.verify(e,t instanceof Uint8Array?t:t.subarray(),r)}function xu(r,e){let t=new Uint8Array(It);for(let n=0;n<xo;n++)t[n]=r[n],t[xo+n]=e[n];return t}var _e={get(r=globalThis){let e=r.crypto;if(e==null||e.subtle==null)throw Object.assign(new Error("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"),{code:"ERR_MISSING_WEB_CRYPTO"});return e}};var Hs={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function Eu(r){let e=r?.algorithm??"AES-GCM",t=r?.keyLength??16,n=r?.nonceLength??12,o=r?.digest??"SHA-256",i=r?.saltLength??16,s=r?.iterations??32767,a=_e.get();t*=8;async function c(l,d){let E=a.getRandomValues(new Uint8Array(i)),g=a.getRandomValues(new Uint8Array(n)),h={name:e,iv:g};typeof d=="string"&&(d=j(d));let p;if(d.length===0){p=await a.subtle.importKey("jwk",Hs,{name:"AES-GCM"},!0,["encrypt"]);try{let R={name:"PBKDF2",salt:E,iterations:s,hash:{name:o}},v=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);p=await a.subtle.deriveKey(R,v,{name:e,length:t},!0,["encrypt"])}catch{p=await a.subtle.importKey("jwk",Hs,{name:"AES-GCM"},!0,["encrypt"])}}else{let R={name:"PBKDF2",salt:E,iterations:s,hash:{name:o}},v=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);p=await a.subtle.deriveKey(R,v,{name:e,length:t},!0,["encrypt"])}let b=await a.subtle.encrypt(h,p,l);return Ce([E,h.iv,new Uint8Array(b)])}async function f(l,d){let E=l.subarray(0,i),g=l.subarray(i,i+n),h=l.subarray(i+n),p={name:e,iv:g};typeof d=="string"&&(d=j(d));let b;if(d.length===0)try{let v={name:"PBKDF2",salt:E,iterations:s,hash:{name:o}},L=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);b=await a.subtle.deriveKey(v,L,{name:e,length:t},!0,["decrypt"])}catch{b=await a.subtle.importKey("jwk",Hs,{name:"AES-GCM"},!0,["decrypt"])}else{let v={name:"PBKDF2",salt:E,iterations:s,hash:{name:o}},L=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);b=await a.subtle.deriveKey(v,L,{name:e,length:t},!0,["decrypt"])}let R=await a.subtle.decrypt(p,b,h);return new Uint8Array(R)}return{encrypt:c,decrypt:f}}async function Gr(r,e){let n=await Eu().encrypt(r,e);return dn.encode(n)}var $s=new Float32Array([-0]),Zt=new Uint8Array($s.buffer);function vu(r,e,t){$s[0]=r,e[t]=Zt[0],e[t+1]=Zt[1],e[t+2]=Zt[2],e[t+3]=Zt[3]}function Bu(r,e){return Zt[0]=r[e],Zt[1]=r[e+1],Zt[2]=r[e+2],Zt[3]=r[e+3],$s[0]}var Ks=new Float64Array([-0]),ke=new Uint8Array(Ks.buffer);function Au(r,e,t){Ks[0]=r,e[t]=ke[0],e[t+1]=ke[1],e[t+2]=ke[2],e[t+3]=ke[3],e[t+4]=ke[4],e[t+5]=ke[5],e[t+6]=ke[6],e[t+7]=ke[7]}function Su(r,e){return ke[0]=r[e],ke[1]=r[e+1],ke[2]=r[e+2],ke[3]=r[e+3],ke[4]=r[e+4],ke[5]=r[e+5],ke[6]=r[e+6],ke[7]=r[e+7],Ks[0]}var _p=BigInt(Number.MAX_SAFE_INTEGER),Up=BigInt(Number.MIN_SAFE_INTEGER),He=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 dr;if(e<_p&&e>Up)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>Iu&&(o=0n,++n>Iu&&(n=0n))),new r(Number(o),Number(n))}static fromNumber(e){if(e===0)return dr;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):dr}},dr=new He(0,0);dr.toBigInt=function(){return 0n};dr.zzEncode=dr.zzDecode=function(){return this};dr.length=function(){return 1};var Iu=4294967296n;function Ru(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 ku(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 qs(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 nt(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Eo(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var zs=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,nt(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 nt(this,4);return Eo(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw nt(this,4);return Eo(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw nt(this,4);let e=Bu(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw nt(this,4);let e=Su(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 nt(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return ku(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw nt(this,e);this.pos+=e}else do if(this.pos>=this.len)throw nt(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 He(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 nt(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 nt(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 nt(this,8);let e=Eo(this.buf,this.pos+=4),t=Eo(this.buf,this.pos+=4);return new He(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=ps(this.buf,this.pos);return this.pos+=De(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 Gs(r){return new zs(r instanceof Uint8Array?r:r.subarray())}function jr(r,e,t){let n=Gs(r);return e.decode(n,void 0,t)}function js(r){let e=r??8192,t=e>>>1,n,o=e;return function(s){if(s<1||s>t)return et(s);o+s>e&&(n=et(e),o=0);let a=n.subarray(o,o+=s);return o&7&&(o=(o|7)+1),a}}var pr=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function Ys(){}var Ws=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},Lp=js();function Dp(r){return globalThis.Buffer!=null?et(r):Lp(r)}var Bn=class{len;head;tail;states;constructor(){this.len=0,this.head=new pr(Ys,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new pr(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new Js((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(vo,10,He.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=He.fromBigInt(e);return this._push(vo,t.length(),t)}uint64Number(e){return this._push(ds,De(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=He.fromBigInt(e).zzEncode();return this._push(vo,t.length(),t)}sint64Number(e){let t=He.fromNumber(e).zzEncode();return this._push(vo,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(Zs,1,e?1:0)}fixed32(e){return this._push(vn,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=He.fromBigInt(e);return this._push(vn,4,t.lo)._push(vn,4,t.hi)}fixed64Number(e){let t=He.fromNumber(e);return this._push(vn,4,t.lo)._push(vn,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(vu,4,e)}double(e){return this._push(Au,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(Zs,1,0):this.uint32(t)._push(Op,t,e)}string(e){let t=Ru(e);return t!==0?this.uint32(t)._push(qs,t,e):this._push(Zs,1,0)}fork(){return this.states=new Ws(this),this.head=this.tail=new pr(Ys,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 pr(Ys,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=Dp(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function Zs(r,e,t){e[t]=r&255}function Vp(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var Js=class extends pr{next;constructor(e,t){super(Vp,e,t),this.next=void 0}};function vo(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 vn(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 Op(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Bn.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(Pp,e,r),this},Bn.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(Fp,e,r),this});function Pp(r,e,t){e.set(r,t)}function Fp(r,e,t){r.length<40?qs(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(j(r),t)}function Xs(){return new Bn}function Yr(r,e){let t=Xs();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var Zr;(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"})(Zr||(Zr={}));function Bo(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function An(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 Bo("enum",Zr.VARINT,t,n)}function Wr(r,e){return Bo("message",Zr.LENGTH_DELIMITED,r,e)}var fe;(function(r){r.RSA="RSA",r.Ed25519="Ed25519",r.Secp256k1="Secp256k1"})(fe||(fe={}));var Qs;(function(r){r[r.RSA=0]="RSA",r[r.Ed25519=1]="Ed25519",r[r.Secp256k1=2]="Secp256k1"})(Qs||(Qs={}));(function(r){r.codec=()=>An(Qs)})(fe||(fe={}));var dt;(function(r){let e;r.codec=()=>(e==null&&(e=Wr((t,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),fe.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),o.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let o={},i=n==null?t.len:t.pos+n;for(;t.pos<i;){let s=t.uint32();switch(s>>>3){case 1:o.Type=fe.codec().decode(t);break;case 2:o.Data=t.bytes();break;default:t.skipType(s&7);break}}return o})),e),r.encode=t=>Yr(t,r.codec()),r.decode=t=>jr(t,r.codec())})(dt||(dt={}));var Rt;(function(r){let e;r.codec=()=>(e==null&&(e=Wr((t,n,o={})=>{o.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),fe.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),o.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let o={},i=n==null?t.len:t.pos+n;for(;t.pos<i;){let s=t.uint32();switch(s>>>3){case 1:o.Type=fe.codec().decode(t);break;case 2:o.Data=t.bytes();break;default:t.skipType(s&7);break}}return o})),e),r.encode=t=>Yr(t,r.codec()),r.decode=t=>jr(t,r.codec())})(Rt||(Rt={}));var Sn=class{_key;constructor(e){this._key=Jr(e,zr)}verify(e,t){return bu(this._key,t,e)}marshal(){return this._key}get bytes(){return dt.encode({Type:fe.Ed25519,Data:this.marshal()}).subarray()}equals(e){return ce(this.bytes,e.bytes)}hash(){let e=ve.digest(this.bytes);return Ye(e)?e.then(({bytes:t})=>t):e.bytes}},gr=class{_key;_publicKey;constructor(e,t){this._key=Jr(e,It),this._publicKey=Jr(t,zr)}sign(e){return wu(this._key,e)}get public(){return new Sn(this._publicKey)}marshal(){return this._key}get bytes(){return Rt.encode({Type:fe.Ed25519,Data:this.marshal()}).subarray()}equals(e){return ce(this.bytes,e.bytes)}async hash(){let e=ve.digest(this.bytes),t;return Ye(e)?{bytes:t}=await e:t=e.bytes,t}async id(){let e=je.digest(this.public.bytes);return le.encode(e.bytes).substring(1)}async export(e,t="libp2p-key"){if(t==="libp2p-key")return Gr(this.bytes,e);throw new O(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Mp(r){if(r.length>It){r=Jr(r,It+zr);let n=r.subarray(0,It),o=r.subarray(It,r.length);return new gr(n,o)}r=Jr(r,It);let e=r.subarray(0,It),t=r.subarray(zr);return new gr(e,t)}function Hp(r){return r=Jr(r,zr),new Sn(r)}async function $p(){let{privateKey:r,publicKey:e}=mu();return new gr(r,e)}async function Nu(r){let{privateKey:e,publicKey:t}=yu(r);return new gr(e,t)}function Jr(r,e){if(r=Uint8Array.from(r??[]),r.length!==e)throw new O(`Key must be a Uint8Array of length ${e}, got ${r.length}`,"ERR_INVALID_KEY_TYPE");return r}var la={};ye(la,{MAX_RSA_KEY_SIZE:()=>On,RsaPrivateKey:()=>rn,RsaPublicKey:()=>Vn,fromJwk:()=>gg,generateKeyPair:()=>mg,unmarshalRsaPrivateKey:()=>ca,unmarshalRsaPublicKey:()=>pg});function mr(r){if(isNaN(r)||r<=0)throw new O("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Mr(r)}var Qt={};ye(Qt,{exportToPem:()=>ug,importFromPem:()=>lg,jwkToPkcs1:()=>ig,jwkToPkix:()=>ag,pkcs1ToJwk:()=>og,pkixToJwk:()=>sg});var So=class extends Pr{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,ao(e);let n=Kt(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 Or(this),this.iHash.update(e),this}digestInto(e){Or(this),Vr(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()}},In=(r,e,t)=>new So(r,e).update(t).digest();In.create=(r,e)=>new So(r,e);function Kp(r,e,t,n){ao(r);let o=Xc({dkLen:32,asyncTick:10},n),{c:i,dkLen:s,asyncTick:a}=o;if(Dr(i),Dr(s),Dr(a),i<1)throw new Error("PBKDF2: iterations (c) should be >= 1");let c=Kt(e),f=Kt(t),u=new Uint8Array(s),l=In.create(r,c),d=l._cloneInto().update(f);return{c:i,dkLen:s,asyncTick:a,DK:u,PRF:l,PRFSalt:d}}function qp(r,e,t,n,o){return r.destroy(),e.destroy(),n&&n.destroy(),o.fill(0),t}async function ta(r,e,t,n){let{c:o,dkLen:i,asyncTick:s,DK:a,PRF:c,PRFSalt:f}=Kp(r,e,t,n),u,l=new Uint8Array(4),d=Fr(l),E=new Uint8Array(c.outputLen);for(let g=1,h=0;h<i;g++,h+=c.outputLen){let p=a.subarray(h,h+c.outputLen);d.setInt32(0,g,!1),(u=f._cloneInto(u)).update(l).digestInto(E),p.set(E.subarray(0,p.length)),await Jc(o-1,s,()=>{c._cloneInto(u).update(E).digestInto(E);for(let b=0;b<p.length;b++)p[b]^=E[b]})}return qp(c,f,a,u,E)}var Z=Ot(Cu());function yr(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 Wt(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 ko(...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 na(){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=yr(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,yr(i,8)-n}function _u(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=Wt(s,8,n),c=new Uint8Array(a);return c[0]|=128,a}let o=Wt(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 Uu(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 Ve(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 E1=Math.log(2);function To(){if(typeof BigInt>"u")throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function oa(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 _t(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 kn=class{constructor(){this.items=[]}write(e){this.items.push(e)}final(){return oa(this.items)}},Rn=[new Uint8Array([1])],Lu="0123456789";var en="",it=new ArrayBuffer(0),ia=new Uint8Array(0),Tn="EndOfContent",Vu="OCTET STRING",Ou="BIT STRING";function Ut(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?Z.BufferSourceConverter.toUint8Array(i.valueHex):ia}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(!_t(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",it)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:Z.Convert.ToHex(this.valueHexView)}}},e.NAME="hexBlock",e}var Tt=class{constructor({blockLength:e=0,error:t=en,warnings:n=[],valueBeforeDecode:o=ia}={}){this.blockLength=e,this.error=t,this.warnings=n,this.valueBeforeDecodeView=Z.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:Z.Convert.ToHex(this.valueBeforeDecodeView)}}};Tt.NAME="baseBlock";var Te=class extends Tt{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'")}};Te.NAME="valueBlock";var No=class extends Ut(Tt){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?Z.BufferSourceConverter.toUint8Array(e.valueHex):ia,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",it}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=Wt(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=Z.BufferSourceConverter.toUint8Array(e);if(!_t(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 d=new Uint8Array(u);for(let E=0;E<f.length;E++)d[E]=f[E];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=yr(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}}};No.NAME="identificationBlock";var Co=class extends Tt{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=Z.BufferSourceConverter.toUint8Array(e);if(!_t(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=yr(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=Wt(this.length,8);if(o.byteLength>127)return this.error="Too big length",it;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}}};Co.NAME="lengthBlock";var _={},Ae=class extends Tt{constructor({name:e=en,optional:t=!1,primitiveSchema:n,...o}={},i){super(o),this.name=e,this.optional=t,n&&(this.primitiveSchema=n),this.idBlock=new No(o),this.lenBlock=new Co(o),this.valueBlock=i?new i(o):new Te(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 kn;t||Pu(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?it: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():Z.Convert.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${Z.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 Uu(t,n)}};Ae.NAME="BaseBlock";function Pu(r){if(r instanceof _.Constructed)for(let e of r.valueBlock.value)Pu(e)&&(r.lenBlock.isIndefiniteForm=!0);return!!r.lenBlock.isIndefiniteForm}var _o=class extends Ae{constructor({value:e=en,...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}'`}};_o.NAME="BaseStringBlock";var Uo=class extends Ut(Te){constructor({isHexOnly:e=!0,...t}={}){super(t),this.isHexOnly=e}};Uo.NAME="PrimitiveValueBlock";var Fu,Lo=class extends Ae{constructor(e={}){super(e,Uo),this.idBlock.isConstructed=!1}};Fu=Lo;_.Primitive=Fu;Lo.NAME="PRIMITIVE";function Qp(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 di(r,e=0,t=r.length){let n=e,o=new Ae({},Te),i=new Tt;if(!_t(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=Ae;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=Qp(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 tn(r){if(!r.byteLength){let e=new Ae({},Te);return e.error="Input buffer has zero length",{offset:-1,result:e}}return di(Z.BufferSourceConverter.toUint8Array(r).slice(),0,r.byteLength)}function eg(r,e){return r?1:e}var pt=class extends Te{constructor({value:e=[],isIndefiniteForm:t=!1,...n}={}){super(n),this.value=e,this.isIndefiniteForm=t}fromBER(e,t,n){let o=Z.BufferSourceConverter.toUint8Array(e);if(!_t(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(;eg(this.isIndefiniteForm,n)>0;){let s=di(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===Tn)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===Tn?this.value.pop():this.warnings.push("No EndOfContent block encoded")),i}toBER(e,t){let n=t||new kn;for(let o=0;o<this.value.length;o++)this.value[o].toBER(e,n);return t?it:n.final()}toJSON(){let e={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(let t of this.value)e.value.push(t.toJSON());return e}};pt.NAME="ConstructedValueBlock";var Mu,Jt=class extends Ae{constructor(e={}){super(e,pt),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
5
  `));let t=this.idBlock.tagClass===3?`[${this.idBlock.tagNumber}]`:this.constructor.NAME;return e.length?`${t} :
6
6
  ${e.join(`
7
- `)}`:`${t} :`}};Ru=Zt;_.Constructed=Ru;Zt.NAME="CONSTRUCTED";var Co=class extends Re{fromBER(e,t,n){return t}toBER(e){return nt}};Co.override="EndOfContentValueBlock";var ku,_o=class extends ve{constructor(e={}){super(e,Co),this.idBlock.tagClass=1,this.idBlock.tagNumber=0}};ku=_o;_.EndOfContent=ku;_o.NAME=Sn;var Tu,Wt=class extends ve{constructor(e={}){super(e,Re),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}`}};Tu=Wt;_.Null=Tu;Wt.NAME="NULL";var Uo=class extends Ct(Re){constructor({value:e,...t}={}){super(t),t.valueHex?this.valueHexView=Y.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=Y.BufferSourceConverter.toUint8Array(e);return Nt(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,Qs.call(this),this.blockLength=n,t+n):-1}toBER(){return this.valueHexView.slice()}toJSON(){return{...super.toJSON(),value:this.value}}};Uo.NAME="BooleanValueBlock";var Nu,Lo=class extends ve{constructor(e={}){super(e,Uo),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}`}};Nu=Lo;_.Boolean=Nu;Lo.NAME="BOOLEAN";var Vo=class extends Ct(ht){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=ht.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===Sn){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, OCTET STRING may consists of OCTET STRINGs only",-1}if(s!==Bu)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?ht.prototype.toBER.call(this,e,t):e?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),isConstructed:this.isConstructed}}};Vo.NAME="OctetStringValueBlock";var Cu,kt=class r extends ve{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},Vo),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=ui(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?Zt.prototype.onAsciiEncoding.call(this):`${this.constructor.NAME} : ${Y.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 Y.BufferSourceConverter.concat(e)}};Cu=kt;_.OctetString=Cu;kt.NAME=Bu;var Do=class extends Ct(ht){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=ht.prototype.fromBER.call(this,e,t,n),o===-1)return o;for(let a of this.value){let c=a.constructor.NAME;if(c===Sn){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, BIT STRING may consists of BIT STRINGs only",-1}if(c!==Au)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=Y.BufferSourceConverter.toUint8Array(e);if(!Nt(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=ui(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 ht.prototype.toBER.call(this,e,t);if(e)return new ArrayBuffer(this.valueHexView.byteLength+1);if(!this.valueHexView.byteLength)return nt;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}}};Do.NAME="BitStringValueBlock";var _u,Zr=class extends ve{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},Do),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 Zt.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)}`}}};_u=Zr;_.BitString=_u;Zr.NAME=Au;var Uu;function Lp(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 d=u;d>=0;d--,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=Ao(new Uint8Array([f%10]),i);break;default:i[s-l]=f%10}}return t[0]>0&&(i=Ao(t,i)),i}function vu(r){if(r>=Bn.length)for(let e=Bn.length;e<=r;e++){let t=new Uint8Array([0]),n=Bn[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=Ao(t,n)),Bn.push(n)}return Bn[r]}function Vp(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 In=class extends Ct(Re){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=Qs.call(this)))}set valueDec(e){this._valueDec=e,this.isHexOnly=!1,this.valueHexView=new Uint8Array(bu(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=Vp(vu(n),t),s="-";break;default:t=Lp(t,vu(n))}n++,o>>=1}}for(let c=0;c<t.length;c++)t[c]&&(a=!0),a&&(s+=Eu.charAt(t[c]));return a===!1&&(s+=Eu.charAt(0)),s}};Uu=In;In.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,de=class r extends ve{constructor(e={}){super(e,In),this.idBlock.tagClass=1,this.idBlock.tagNumber=2}toBigInt(){return So(),BigInt(this.valueBlock.toString())}static fromBigInt(e){So();let t=BigInt(e),n=new An,o=t.toString(16).replace(/^-/,""),i=new Uint8Array(Y.Convert.FromHex(o));if(t<0){let a=new Uint8Array(i.length+(i[0]&128?1:0));a[0]|=128;let f=BigInt(`0x${Y.Convert.ToHex(a)}`)+t,u=Y.BufferSourceConverter.toUint8Array(Y.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()}`}};Lu=de;_.Integer=Lu;de.NAME="INTEGER";var Vu,Oo=class extends de{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=10}};Vu=Oo;_.Enumerated=Vu;Oo.NAME="ENUMERATED";var Rn=class extends Ct(Re){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=Y.BufferSourceConverter.toUint8Array(e);if(!Nt(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=dr(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),t+this.blockLength)}set valueBigInt(e){So();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=Yt(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",nt;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=Y.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}}};Rn.NAME="sidBlock";var Po=class extends Re{constructor({value:e=Wr,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,n){let o=t;for(;n>0;){let i=new Rn;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,nt;t.push(o)}return ea(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 Rn;if(o>Number.MAX_SAFE_INTEGER){So();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}};Po.NAME="ObjectIdentifierValueBlock";var Du,rt=class extends ve{constructor(e={}){super(e,Po),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()}}};Du=rt;_.ObjectIdentifier=Du;rt.NAME="OBJECT IDENTIFIER";var kn=class extends Ct(Rt){constructor({valueDec:e=0,...t}={}){super(t),this.valueDec=e}fromBER(e,t,n){if(n===0)return t;let o=Y.BufferSourceConverter.toUint8Array(e);if(!Nt(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=dr(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=Yt(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",nt;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=Y.Convert.ToHex(this.valueHexView):e=this.valueDec.toString(),e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}};kn.NAME="relativeSidBlock";var Fo=class extends Re{constructor({value:e=Wr,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,n){let o=t;for(;n>0;){let i=new kn;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,nt;n.push(i)}return ea(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 kn;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}};Fo.NAME="RelativeObjectIdentifierValueBlock";var Ou,Mo=class extends ve{constructor(e={}){super(e,Fo),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()}}};Ou=Mo;_.RelativeObjectIdentifier=Ou;Mo.NAME="RelativeObjectIdentifier";var Pu,ye=class extends Zt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=16}};Pu=ye;_.Sequence=Pu;ye.NAME="SEQUENCE";var Fu,Ho=class extends Zt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=17}};Fu=Ho;_.Set=Fu;Ho.NAME="SET";var Ko=class extends Ct(Re){constructor({...e}={}){super(e),this.isHexOnly=!0,this.value=Wr}toJSON(){return{...super.toJSON(),value:this.value}}};Ko.NAME="StringValueBlock";var $o=class extends Ko{};$o.NAME="SimpleStringValueBlock";var _e=class extends ko{constructor({...e}={}){super(e,$o)}fromBuffer(e){this.valueBlock.value=String.fromCharCode.apply(null,Y.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}};_e.NAME="SIMPLE STRING";var qo=class extends _e{fromBuffer(e){this.valueBlock.valueHexView=Y.BufferSourceConverter.toUint8Array(e);try{this.valueBlock.value=Y.Convert.ToUtf8String(e)}catch(t){this.warnings.push(`Error during "decodeURIComponent": ${t}, using raw string`),this.valueBlock.value=Y.Convert.ToBinary(e)}}fromString(e){this.valueBlock.valueHexView=new Uint8Array(Y.Convert.FromUtf8String(e)),this.valueBlock.value=e}};qo.NAME="Utf8StringValueBlock";var Mu,Tt=class extends qo{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=12}};Mu=Tt;_.Utf8String=Mu;Tt.NAME="UTF8String";var zo=class extends _e{fromBuffer(e){this.valueBlock.value=Y.Convert.ToUtf16String(e),this.valueBlock.valueHexView=Y.BufferSourceConverter.toUint8Array(e)}fromString(e){this.valueBlock.value=e,this.valueBlock.valueHexView=new Uint8Array(Y.Convert.FromUtf16String(e))}};zo.NAME="BmpStringValueBlock";var Hu,Go=class extends zo{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=30}};Hu=Go;_.BmpString=Hu;Go.NAME="BMPString";var jo=class extends _e{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=Yt(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}};jo.NAME="UniversalStringValueBlock";var Ku,Yo=class extends jo{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=28}};Ku=Yo;_.UniversalString=Ku;Yo.NAME="UniversalString";var $u,Zo=class extends _e{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=18}};$u=Zo;_.NumericString=$u;Zo.NAME="NumericString";var qu,Wo=class extends _e{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=19}};qu=Wo;_.PrintableString=qu;Wo.NAME="PrintableString";var zu,Jo=class extends _e{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=20}};zu=Jo;_.TeletexString=zu;Jo.NAME="TeletexString";var Gu,Xo=class extends _e{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=21}};Gu=Xo;_.VideotexString=Gu;Xo.NAME="VideotexString";var ju,Qo=class extends _e{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=22}};ju=Qo;_.IA5String=ju;Qo.NAME="IA5String";var Yu,ei=class extends _e{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=25}};Yu=ei;_.GraphicString=Yu;ei.NAME="GraphicString";var Zu,Tn=class extends _e{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=26}};Zu=Tn;_.VisibleString=Zu;Tn.NAME="VisibleString";var Wu,ti=class extends _e{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=27}};Wu=ti;_.GeneralString=Wu;ti.NAME="GeneralString";var Ju,ri=class extends _e{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=29}};Ju=ri;_.CharacterString=Ju;ri.NAME="CharacterString";var Xu,Nn=class extends Tn{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,Y.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]=Ve(this.year<2e3?this.year-1900:this.year-2e3,2),t[1]=Ve(this.month,2),t[2]=Ve(this.day,2),t[3]=Ve(this.hour,2),t[4]=Ve(this.minute,2),t[5]=Ve(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}}};Xu=Nn;_.UTCTime=Xu;Nn.NAME="UTCTime";var Qu,ni=class extends Nn{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,d=n.indexOf("+"),E="";if(d===-1&&(d=n.indexOf("-"),l=-1),d!==-1){if(E=n.substring(d+1),n=n.substring(0,d),E.length!==2&&E.length!==4)throw new Error("Wrong input string for conversion");let g=parseInt(E.substring(0,2),10);if(isNaN(g.valueOf()))throw new Error("Wrong input string for conversion");if(a=l*g,E.length===4){if(g=parseInt(E.substring(2,4),10),isNaN(g.valueOf()))throw new Error("Wrong input string for conversion");c=l*g}}}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(Ve(this.year,4)),t.push(Ve(this.month,2)),t.push(Ve(this.day,2)),t.push(Ve(this.hour,2)),t.push(Ve(this.minute,2)),t.push(Ve(this.second,2)),this.millisecond!==0&&(t.push("."),t.push(Ve(this.millisecond,3))),t.push("Z"),t.join("")}return super.toString(e)}toJSON(){return{...super.toJSON(),millisecond:this.millisecond}}};Qu=ni;_.GeneralizedTime=Qu;ni.NAME="GeneralizedTime";var el,oi=class extends Tt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=31}};el=oi;_.DATE=el;oi.NAME="DATE";var tl,ii=class extends Tt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=32}};tl=ii;_.TimeOfDay=tl;ii.NAME="TimeOfDay";var rl,si=class extends Tt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=33}};rl=si;_.DateTime=rl;si.NAME="DateTime";var nl,ai=class extends Tt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=34}};nl=ai;_.Duration=nl;ai.NAME="Duration";var ol,ci=class extends Tt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=14}};ol=ci;_.TIME=ol;ci.NAME="TIME";function Op(r){let{result:e}=Jr(r),t=e.valueBlock.value;return{n:W(dt(t[1].toBigInt()),"base64url"),e:W(dt(t[2].toBigInt()),"base64url"),d:W(dt(t[3].toBigInt()),"base64url"),p:W(dt(t[4].toBigInt()),"base64url"),q:W(dt(t[5].toBigInt()),"base64url"),dp:W(dt(t[6].toBigInt()),"base64url"),dq:W(dt(t[7].toBigInt()),"base64url"),qi:W(dt(t[8].toBigInt()),"base64url"),kty:"RSA",alg:"RS256"}}function Pp(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 O("JWK was missing components","ERR_INVALID_PARAMETERS");let t=new ye({value:[new de({value:0}),de.fromBigInt(pt(j(r.n,"base64url"))),de.fromBigInt(pt(j(r.e,"base64url"))),de.fromBigInt(pt(j(r.d,"base64url"))),de.fromBigInt(pt(j(r.p,"base64url"))),de.fromBigInt(pt(j(r.q,"base64url"))),de.fromBigInt(pt(j(r.dp,"base64url"))),de.fromBigInt(pt(j(r.dq,"base64url"))),de.fromBigInt(pt(j(r.qi,"base64url")))]}).toBER();return new Uint8Array(t,0,t.byteLength)}function Fp(r){let{result:e}=Jr(r),t=e.valueBlock.value[1].valueBlock.value[0].valueBlock.value;return{kty:"RSA",n:W(dt(t[0].toBigInt()),"base64url"),e:W(dt(t[1].toBigInt()),"base64url")}}function Mp(r){if(r.n==null||r.e==null)throw new O("JWK was missing components","ERR_INVALID_PARAMETERS");let t=new ye({value:[new ye({value:[new rt({value:"1.2.840.113549.1.1.1"}),new Wt]}),new Zr({valueHex:new ye({value:[de.fromBigInt(pt(j(r.n,"base64url"))),de.fromBigInt(pt(j(r.e,"base64url")))]}).toBER()})]}).toBER();return new Uint8Array(t,0,t.byteLength)}function dt(r){let e=r.toString(16);e.length%2>0&&(e=`0${e}`);let t=e.length/2,n=new Uint8Array(t),o=0,i=0;for(;o<t;)n[o]=parseInt(e.slice(i,i+2),16),o+=1,i+=2;return n}function pt(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(""))}var Hp=16,ra=32,na=1e4;async function Kp(r,e){let t=Ce.get(),o=new ye({value:[new de({value:0}),new ye({value:[new rt({value:"1.2.840.113549.1.1.1"}),new Wt]}),new kt({valueHex:r.marshal()})]}).toBER(),i=new Uint8Array(o,0,o.byteLength),s=hr(Hp),a=await Js(Pr,e,s,{c:na,dkLen:ra}),c=hr(16),f=await t.subtle.importKey("raw",a,"AES-CBC",!1,["encrypt"]),u=await t.subtle.encrypt({name:"AES-CBC",iv:c},f,i),l=new ye({value:[new kt({valueHex:s}),new de({value:na}),new de({value:ra}),new ye({value:[new rt({value:"1.2.840.113549.2.11"}),new Wt]})]}),d=new ye({value:[new rt({value:"1.2.840.113549.1.5.13"}),new ye({value:[new ye({value:[new rt({value:"1.2.840.113549.1.5.12"}),l]}),new ye({value:[new rt({value:"2.16.840.1.101.3.4.1.42"}),new kt({valueHex:c})]})]})]}),g=new ye({value:[d,new kt({valueHex:u})]}).toBER(),h=new Uint8Array(g,0,g.byteLength);return["-----BEGIN ENCRYPTED PRIVATE KEY-----",...W(h,"base64pad").split(/(.{64})/).filter(Boolean),"-----END ENCRYPTED PRIVATE KEY-----"].join(`
8
- `)}async function $p(r,e){let t=Ce.get(),n;if(r.includes("-----BEGIN ENCRYPTED PRIVATE KEY-----")){let o=j(r.replace("-----BEGIN ENCRYPTED PRIVATE KEY-----","").replace("-----END ENCRYPTED PRIVATE KEY-----","").replace(/\n/g,"").trim(),"base64pad"),{result:i}=Jr(o),{iv:s,salt:a,iterations:c,keySize:f,cipherText:u}=qp(i),l=await Js(Pr,e,a,{c,dkLen:f}),d=await t.subtle.importKey("raw",l,"AES-CBC",!1,["decrypt"]),E=Cn(await t.subtle.decrypt({name:"AES-CBC",iv:s},d,u)),{result:g}=Jr(E);n=il(g)}else if(r.includes("-----BEGIN PRIVATE KEY-----")){let o=j(r.replace("-----BEGIN PRIVATE KEY-----","").replace("-----END PRIVATE KEY-----","").replace(/\n/g,"").trim(),"base64pad"),{result:i}=Jr(o);n=il(i)}else throw new O("Could not parse private key from PEM data","ERR_INVALID_PARAMETERS");return oa(n)}function qp(r){let e=r.valueBlock.value[0];if(e.valueBlock.value[0].toString()!=="OBJECT IDENTIFIER : 1.2.840.113549.1.5.13")throw new O("Only pkcs5PBES2 encrypted private keys are supported","ERR_INVALID_PARAMS");let n=e.valueBlock.value[1].valueBlock.value[0];if(n.valueBlock.value[0].toString()!=="OBJECT IDENTIFIER : 1.2.840.113549.1.5.12")throw new O("Only pkcs5PBKDF2 key derivation functions are supported","ERR_INVALID_PARAMS");let i=n.valueBlock.value[1],s=Cn(i.valueBlock.value[0].getValue()),a=na,c=ra;if(i.valueBlock.value.length===3)a=Number(i.valueBlock.value[1].toBigInt()),c=Number(i.valueBlock.value[2].toBigInt());else if(i.valueBlock.value.length===2)throw new O("Could not derive key size and iterations from PEM file - please use @libp2p/rsa to re-import your key","ERR_INVALID_PARAMS");let f=e.valueBlock.value[1].valueBlock.value[1],u=f.valueBlock.value[0].toString();if(u!=="OBJECT IDENTIFIER : 1.2.840.113549.3.7"){if(u!=="OBJECT IDENTIFIER : 1.3.14.3.2.7"){if(u!=="OBJECT IDENTIFIER : 2.16.840.1.101.3.4.1.2"){if(u!=="OBJECT IDENTIFIER : 2.16.840.1.101.3.4.1.22"){if(u!=="OBJECT IDENTIFIER : 2.16.840.1.101.3.4.1.42")throw new O("Only AES-CBC encryption schemes are supported","ERR_INVALID_PARAMS")}}}}let l=Cn(f.valueBlock.value[1].getValue());return{cipherText:Cn(r.valueBlock.value[1].getValue()),salt:s,iterations:a,keySize:c,iv:l}}function il(r){return Cn(r.valueBlock.value[2].getValue())}function Cn(r){return new Uint8Array(r,0,r.byteLength)}async function sl(r){let e=await Ce.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 ul(e);return{privateKey:t[0],publicKey:t[1]}}async function ia(r){let t=[await Ce.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await zp(r)],n=await ul({privateKey:t[0],publicKey:t[1]});return{privateKey:n[0],publicKey:n[1]}}async function al(r,e){let t=await Ce.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await Ce.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},t,e instanceof Uint8Array?e:e.subarray());return new Uint8Array(n,0,n.byteLength)}async function cl(r,e,t){let n=await Ce.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return Ce.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,t instanceof Uint8Array?t:t.subarray())}async function ul(r){if(r.privateKey==null||r.publicKey==null)throw new O("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([Ce.get().subtle.exportKey("jwk",r.privateKey),Ce.get().subtle.exportKey("jwk",r.publicKey)])}async function zp(r){return Ce.get().subtle.importKey("jwk",{kty:r.kty,n:r.n,e:r.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function li(r){if(r.kty!=="RSA")throw new O("invalid key type","ERR_INVALID_KEY_TYPE");if(r.n==null)throw new O("invalid key modulus","ERR_INVALID_KEY_MODULUS");return j(r.n,"base64url").length*8}var Un=8192,_n=class{_key;constructor(e){this._key=e}verify(e,t){return cl(this._key,t,e)}marshal(){return Jt.jwkToPkix(this._key)}get bytes(){return ft.encode({Type:fe.RSA,Data:this.marshal()}).subarray()}equals(e){return ce(this.bytes,e.bytes)}hash(){let e=Ee.digest(this.bytes);return Ge(e)?e.then(({bytes:t})=>t):e.bytes}},Xr=class{_key;_publicKey;constructor(e,t){this._key=e,this._publicKey=t}genSecret(){return hr(16)}sign(e){return al(this._key,e)}get public(){if(this._publicKey==null)throw new O("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new _n(this._publicKey)}marshal(){return Jt.jwkToPkcs1(this._key)}get bytes(){return St.encode({Type:fe.RSA,Data:this.marshal()}).subarray()}equals(e){return ce(this.bytes,e.bytes)}hash(){let e=Ee.digest(this.bytes);return Ge(e)?e.then(({bytes:t})=>t):e.bytes}async id(){let e=await this.public.hash();return W(e,"base58btc")}async export(e,t="pkcs-8"){if(t==="pkcs-8")return Jt.exportToPem(this,e);if(t==="libp2p-key")return Kr(this.bytes,e);throw new O(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};async function oa(r){let e=Jt.pkcs1ToJwk(r);if(li(e)>Un)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await ia(e);return new Xr(t.privateKey,t.publicKey)}function jp(r){let e=Jt.pkixToJwk(r);if(li(e)>Un)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new _n(e)}async function Yp(r){if(li(r)>Un)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await ia(r);return new Xr(e.privateKey,e.publicKey)}async function Zp(r){if(r>Un)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await sl(r);return new Xr(e.privateKey,e.publicKey)}var fa={};me(fa,{Secp256k1PrivateKey:()=>Vn,Secp256k1PublicKey:()=>Ln,generateKeyPair:()=>cg,unmarshalSecp256k1PrivateKey:()=>sg,unmarshalSecp256k1PublicKey:()=>ag});var Wp=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]),Xt=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Qt=new Uint32Array(64),aa=class extends Or{constructor(){super(64,32,8,!1),this.A=Xt[0]|0,this.B=Xt[1]|0,this.C=Xt[2]|0,this.D=Xt[3]|0,this.E=Xt[4]|0,this.F=Xt[5]|0,this.G=Xt[6]|0,this.H=Xt[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)Qt[l]=e.getUint32(t,!1);for(let l=16;l<64;l++){let d=Qt[l-15],E=Qt[l-2],g=Qe(d,7)^Qe(d,18)^d>>>3,h=Qe(E,17)^Qe(E,19)^E>>>10;Qt[l]=h+Qt[l-7]+g+Qt[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=Qe(a,6)^Qe(a,11)^Qe(a,25),E=u+d+Mc(a,c,f)+Wp[l]+Qt[l]|0,h=(Qe(n,2)^Qe(n,13)^Qe(n,22))+Hc(n,o,i)|0;u=f,f=c,c=a,a=s+E|0,s=i,i=o,o=n,n=E+h|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(){Qt.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var ll=so(()=>new aa);function Jp(r){let e=yn(r);lt(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:Xp,hexToBytes:Qp}=uo,pr={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(r){let{Err:e}=pr;if(r.length<2||r[0]!==2)throw new e("Invalid signature integer tag");let t=r[1],n=r.subarray(2,t+2);if(!t||n.length!==t)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:Xp(n),l:r.subarray(t+2)}},toSig(r){let{Err:e}=pr,t=typeof r=="string"?Qp(r):r;Fr(t);let n=t.length;if(n<2||t[0]!=48)throw new e("Invalid signature tag");if(t[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:o,l:i}=pr._parseInt(t.subarray(2)),{d:s,l:a}=pr._parseInt(i);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:o,s}},hexFromSig(r){let e=f=>Number.parseInt(f[0],16)&8?"00"+f:f,t=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=e(t(r.s)),o=e(t(r.r)),i=n.length/2,s=o.length/2,a=t(i),c=t(s);return`30${t(s+i+4)}02${c}${o}02${a}${n}`}},_t=BigInt(0),Ye=BigInt(1),l1=BigInt(2),fl=BigInt(3),f1=BigInt(4);function eg(r){let e=Jp(r),{Fp:t}=e,n=e.toBytes||((g,h,p)=>{let b=h.toAffine();return vt(Uint8Array.from([4]),t.toBytes(b.x),t.toBytes(b.y))}),o=e.fromBytes||(g=>{let h=g.subarray(1),p=t.fromBytes(h.subarray(0,t.BYTES)),b=t.fromBytes(h.subarray(t.BYTES,2*t.BYTES));return{x:p,y:b}});function i(g){let{a:h,b:p}=e,b=t.sqr(g),R=t.mul(b,g);return t.add(t.add(R,t.mul(g,h)),p)}if(!t.eql(t.sqr(e.Gy),i(e.Gx)))throw new Error("bad generator point: equation left != right");function s(g){return typeof g=="bigint"&&_t<g&&g<e.n}function a(g){if(!s(g))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(g){let{allowedPrivateKeyLengths:h,nByteLength:p,wrapPrivateKey:b,n:R}=e;if(h&&typeof g!="bigint"){if(qt(g)&&(g=xt(g)),typeof g!="string"||!h.includes(g.length))throw new Error("Invalid key");g=g.padStart(p*2,"0")}let v;try{v=typeof g=="bigint"?g:Et(ue("private key",g,p))}catch{throw new Error(`private key must be ${p} bytes, hex or bigint, not ${typeof g}`)}return b&&(v=re(v,R)),a(v),v}let f=new Map;function u(g){if(!(g instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(h,p,b){if(this.px=h,this.py=p,this.pz=b,h==null||!t.isValid(h))throw new Error("x required");if(p==null||!t.isValid(p))throw new Error("y required");if(b==null||!t.isValid(b))throw new Error("z required")}static fromAffine(h){let{x:p,y:b}=h||{};if(!h||!t.isValid(p)||!t.isValid(b))throw new Error("invalid affine point");if(h instanceof l)throw new Error("projective point not allowed");let R=v=>t.eql(v,t.ZERO);return R(p)&&R(b)?l.ZERO:new l(p,b,t.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(h){let p=t.invertBatch(h.map(b=>b.pz));return h.map((b,R)=>b.toAffine(p[R])).map(l.fromAffine)}static fromHex(h){let p=l.fromAffine(o(ue("pointHex",h)));return p.assertValidity(),p}static fromPrivateKey(h){return l.BASE.multiply(c(h))}_setWindowSize(h){this._WINDOW_SIZE=h,f.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!t.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:h,y:p}=this.toAffine();if(!t.isValid(h)||!t.isValid(p))throw new Error("bad point: x or y not FE");let b=t.sqr(p),R=i(h);if(!t.eql(b,R))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:h}=this.toAffine();if(t.isOdd)return!t.isOdd(h);throw new Error("Field doesn't support isOdd")}equals(h){u(h);let{px:p,py:b,pz:R}=this,{px:v,py:L,pz:S}=h,k=t.eql(t.mul(p,S),t.mul(v,R)),C=t.eql(t.mul(b,S),t.mul(L,R));return k&&C}negate(){return new l(this.px,t.neg(this.py),this.pz)}double(){let{a:h,b:p}=e,b=t.mul(p,fl),{px:R,py:v,pz:L}=this,S=t.ZERO,k=t.ZERO,C=t.ZERO,y=t.mul(R,R),N=t.mul(v,v),D=t.mul(L,L),T=t.mul(R,v);return T=t.add(T,T),C=t.mul(R,L),C=t.add(C,C),S=t.mul(h,C),k=t.mul(b,D),k=t.add(S,k),S=t.sub(N,k),k=t.add(N,k),k=t.mul(S,k),S=t.mul(T,S),C=t.mul(b,C),D=t.mul(h,D),T=t.sub(y,D),T=t.mul(h,T),T=t.add(T,C),C=t.add(y,y),y=t.add(C,y),y=t.add(y,D),y=t.mul(y,T),k=t.add(k,y),D=t.mul(v,L),D=t.add(D,D),y=t.mul(D,T),S=t.sub(S,y),C=t.mul(D,N),C=t.add(C,C),C=t.add(C,C),new l(S,k,C)}add(h){u(h);let{px:p,py:b,pz:R}=this,{px:v,py:L,pz:S}=h,k=t.ZERO,C=t.ZERO,y=t.ZERO,N=e.a,D=t.mul(e.b,fl),T=t.mul(p,v),P=t.mul(b,L),H=t.mul(R,S),J=t.add(p,b),x=t.add(v,L);J=t.mul(J,x),x=t.add(T,P),J=t.sub(J,x),x=t.add(p,R);let A=t.add(v,S);return x=t.mul(x,A),A=t.add(T,H),x=t.sub(x,A),A=t.add(b,R),k=t.add(L,S),A=t.mul(A,k),k=t.add(P,H),A=t.sub(A,k),y=t.mul(N,x),k=t.mul(D,H),y=t.add(k,y),k=t.sub(P,y),y=t.add(P,y),C=t.mul(k,y),P=t.add(T,T),P=t.add(P,T),H=t.mul(N,H),x=t.mul(D,x),P=t.add(P,H),H=t.sub(T,H),H=t.mul(N,H),x=t.add(x,H),T=t.mul(P,x),C=t.add(C,T),T=t.mul(A,x),k=t.mul(J,k),k=t.sub(k,T),T=t.mul(J,P),y=t.mul(A,y),y=t.add(y,T),new l(k,C,y)}subtract(h){return this.add(h.negate())}is0(){return this.equals(l.ZERO)}wNAF(h){return E.wNAFCached(this,f,h,p=>{let b=t.invertBatch(p.map(R=>R.pz));return p.map((R,v)=>R.toAffine(b[v])).map(l.fromAffine)})}multiplyUnsafe(h){let p=l.ZERO;if(h===_t)return p;if(a(h),h===Ye)return this;let{endo:b}=e;if(!b)return E.unsafeLadder(this,h);let{k1neg:R,k1:v,k2neg:L,k2:S}=b.splitScalar(h),k=p,C=p,y=this;for(;v>_t||S>_t;)v&Ye&&(k=k.add(y)),S&Ye&&(C=C.add(y)),y=y.double(),v>>=Ye,S>>=Ye;return R&&(k=k.negate()),L&&(C=C.negate()),C=new l(t.mul(C.px,b.beta),C.py,C.pz),k.add(C)}multiply(h){a(h);let p=h,b,R,{endo:v}=e;if(v){let{k1neg:L,k1:S,k2neg:k,k2:C}=v.splitScalar(p),{p:y,f:N}=this.wNAF(S),{p:D,f:T}=this.wNAF(C);y=E.constTimeNegate(L,y),D=E.constTimeNegate(k,D),D=new l(t.mul(D.px,v.beta),D.py,D.pz),b=y.add(D),R=N.add(T)}else{let{p:L,f:S}=this.wNAF(p);b=L,R=S}return l.normalizeZ([b,R])[0]}multiplyAndAddUnsafe(h,p,b){let R=l.BASE,v=(S,k)=>k===_t||k===Ye||!S.equals(R)?S.multiplyUnsafe(k):S.multiply(k),L=v(this,p).add(v(h,b));return L.is0()?void 0:L}toAffine(h){let{px:p,py:b,pz:R}=this,v=this.is0();h==null&&(h=v?t.ONE:t.inv(R));let L=t.mul(p,h),S=t.mul(b,h),k=t.mul(R,h);if(v)return{x:t.ZERO,y:t.ZERO};if(!t.eql(k,t.ONE))throw new Error("invZ was invalid");return{x:L,y:S}}isTorsionFree(){let{h,isTorsionFree:p}=e;if(h===Ye)return!0;if(p)return p(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h,clearCofactor:p}=e;return h===Ye?this:p?p(l,this):this.multiplyUnsafe(e.h)}toRawBytes(h=!0){return this.assertValidity(),n(l,this,h)}toHex(h=!0){return xt(this.toRawBytes(h))}}l.BASE=new l(e.Gx,e.Gy,t.ONE),l.ZERO=new l(t.ZERO,t.ONE,t.ZERO);let d=e.nBitLength,E=ho(l,e.endo?Math.ceil(d/2):d);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:i,isWithinCurveOrder:s}}function tg(r){let e=yn(r);return lt(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function hl(r){let e=tg(r),{Fp:t,n}=e,o=t.BYTES+1,i=2*t.BYTES+1;function s(x){return _t<x&&x<t.ORDER}function a(x){return re(x,n)}function c(x){return lo(x,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=eg({...e,toBytes(x,A,M){let B=A.toAffine(),w=t.toBytes(B.x),V=vt;return M?V(Uint8Array.from([A.hasEvenY()?2:3]),w):V(Uint8Array.from([4]),w,t.toBytes(B.y))},fromBytes(x){let A=x.length,M=x[0],B=x.subarray(1);if(A===o&&(M===2||M===3)){let w=Et(B);if(!s(w))throw new Error("Point is not on curve");let V=l(w),F;try{F=t.sqrt(V)}catch(G){let ee=G instanceof Error?": "+G.message:"";throw new Error("Point is not on curve"+ee)}let K=(F&Ye)===Ye;return(M&1)===1!==K&&(F=t.neg(F)),{x:w,y:F}}else if(A===i&&M===4){let w=t.fromBytes(B.subarray(0,t.BYTES)),V=t.fromBytes(B.subarray(t.BYTES,2*t.BYTES));return{x:w,y:V}}else throw new Error(`Point of length ${A} was invalid. Expected ${o} compressed bytes or ${i} uncompressed bytes`)}}),E=x=>xt(Gt(x,e.nByteLength));function g(x){let A=n>>Ye;return x>A}function h(x){return g(x)?a(-x):x}let p=(x,A,M)=>Et(x.slice(A,M));class b{constructor(A,M,B){this.r=A,this.s=M,this.recovery=B,this.assertValidity()}static fromCompact(A){let M=e.nByteLength;return A=ue("compactSignature",A,M*2),new b(p(A,0,M),p(A,M,2*M))}static fromDER(A){let{r:M,s:B}=pr.toSig(ue("DER",A));return new b(M,B)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(A){return new b(this.r,this.s,A)}recoverPublicKey(A){let{r:M,s:B,recovery:w}=this,V=C(ue("msgHash",A));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let F=w===2||w===3?M+e.n:M;if(F>=t.ORDER)throw new Error("recovery id 2 or 3 invalid");let K=w&1?"03":"02",z=f.fromHex(K+E(F)),G=c(F),ee=a(-V*G),Z=a(B*G),X=f.BASE.multiplyAndAddUnsafe(z,ee,Z);if(!X)throw new Error("point at infinify");return X.assertValidity(),X}hasHighS(){return g(this.s)}normalizeS(){return this.hasHighS()?new b(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return sr(this.toDERHex())}toDERHex(){return pr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return sr(this.toCompactHex())}toCompactHex(){return E(this.r)+E(this.s)}}let R={isValidPrivateKey(x){try{return u(x),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let x=_s(e.n);return Xc(e.randomBytes(x),e.n)},precompute(x=8,A=f.BASE){return A._setWindowSize(x),A.multiply(BigInt(3)),A}};function v(x,A=!0){return f.fromPrivateKey(x).toRawBytes(A)}function L(x){let A=qt(x),M=typeof x=="string",B=(A||M)&&x.length;return A?B===o||B===i:M?B===2*o||B===2*i:x instanceof f}function S(x,A,M=!0){if(L(x))throw new Error("first arg must be private key");if(!L(A))throw new Error("second arg must be public key");return f.fromHex(A).multiply(u(x)).toRawBytes(M)}let k=e.bits2int||function(x){let A=Et(x),M=x.length*8-e.nBitLength;return M>0?A>>BigInt(M):A},C=e.bits2int_modN||function(x){return a(k(x))},y=mn(e.nBitLength);function N(x){if(typeof x!="bigint")throw new Error("bigint expected");if(!(_t<=x&&x<y))throw new Error(`bigint expected < 2^${e.nBitLength}`);return Gt(x,e.nByteLength)}function D(x,A,M=T){if(["recovered","canonical"].some(se=>se in M))throw new Error("sign() legacy options not supported");let{hash:B,randomBytes:w}=e,{lowS:V,prehash:F,extraEntropy:K}=M;V==null&&(V=!0),x=ue("msgHash",x),F&&(x=ue("prehashed msgHash",B(x)));let z=C(x),G=u(A),ee=[N(G),N(z)];if(K!=null&&K!==!1){let se=K===!0?w(t.BYTES):K;ee.push(ue("extraEntropy",se))}let Z=vt(...ee),X=z;function he(se){let be=k(se);if(!d(be))return;let xe=c(be),pe=f.BASE.multiply(be).toAffine(),Ae=a(pe.x);if(Ae===_t)return;let yt=a(xe*a(X+Ae*G));if(yt===_t)return;let rr=(pe.x===Ae?0:2)|Number(pe.y&Ye),an=yt;return V&&g(yt)&&(an=h(yt),rr^=1),new b(Ae,an,rr)}return{seed:Z,k2sig:he}}let T={lowS:e.lowS,prehash:!1},P={lowS:e.lowS,prehash:!1};function H(x,A,M=T){let{seed:B,k2sig:w}=D(x,A,M),V=e;return ks(V.hash.outputLen,V.nByteLength,V.hmac)(B,w)}f.BASE._setWindowSize(8);function J(x,A,M,B=P){let w=x;if(A=ue("msgHash",A),M=ue("publicKey",M),"strict"in B)throw new Error("options.strict was renamed to lowS");let{lowS:V,prehash:F}=B,K,z;try{if(typeof w=="string"||qt(w))try{K=b.fromDER(w)}catch(pe){if(!(pe instanceof pr.Err))throw pe;K=b.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:pe,s:Ae}=w;K=new b(pe,Ae)}else throw new Error("PARSE");z=f.fromHex(M)}catch(pe){if(pe.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(V&&K.hasHighS())return!1;F&&(A=e.hash(A));let{r:G,s:ee}=K,Z=C(A),X=c(ee),he=a(Z*X),se=a(G*X),be=f.BASE.multiplyAndAddUnsafe(z,he,se)?.toAffine();return be?a(be.x)===G:!1}return{CURVE:e,getPublicKey:v,getSharedSecret:S,sign:H,verify:J,ProjectivePoint:f,Signature:b,utils:R}}function rg(r){return{hash:r,hmac:(e,...t)=>vn(r,e,io(...t)),randomBytes:Dr}}function dl(r,e){let t=n=>hl({...r,...rg(n)});return Object.freeze({...t(e),create:t})}var ml=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),pl=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),ng=BigInt(1),ca=BigInt(2),gl=(r,e)=>(r+e/ca)/e;function og(r){let e=ml,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,d=ie(l,t,e)*u%e,E=ie(d,ca,e)*f%e,g=ie(E,o,e)*E%e,h=ie(g,i,e)*g%e,p=ie(h,a,e)*h%e,b=ie(p,c,e)*p%e,R=ie(b,a,e)*h%e,v=ie(R,t,e)*u%e,L=ie(v,s,e)*g%e,S=ie(L,n,e)*f%e,k=ie(S,ca,e);if(!ua.eql(ua.sqr(k),r))throw new Error("Cannot find square root");return k}var ua=fo(ml,void 0,void 0,{sqrt:og}),ot=dl({a:BigInt(0),b:BigInt(7),Fp:ua,n:pl,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:r=>{let e=pl,t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-ng*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),o=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=t,s=BigInt("0x100000000000000000000000000000000"),a=gl(i*r,e),c=gl(-n*r,e),f=re(r-a*t-c*o,e),u=re(-a*n-c*i,e),l=f>s,d=u>s;if(l&&(f=e-f),d&&(u=e-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+r);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},ll),x1=BigInt(0);var E1=ot.ProjectivePoint;function yl(){return ot.utils.randomPrivateKey()}function wl(r,e){let t=Ee.digest(e instanceof Uint8Array?e:e.subarray());if(Ge(t))return t.then(({digest:n})=>ot.sign(n,r).toDERRawBytes()).catch(n=>{throw new O(String(n),"ERR_INVALID_INPUT")});try{return ot.sign(t.digest,r).toDERRawBytes()}catch(n){throw new O(String(n),"ERR_INVALID_INPUT")}}function bl(r,e,t){let n=Ee.digest(t instanceof Uint8Array?t:t.subarray());if(Ge(n))return n.then(({digest:o})=>ot.verify(e,o,r)).catch(o=>{throw new O(String(o),"ERR_INVALID_INPUT")});try{return ot.verify(e,n.digest,r)}catch(o){throw new O(String(o),"ERR_INVALID_INPUT")}}function xl(r){return ot.ProjectivePoint.fromHex(r).toRawBytes(!0)}function El(r){try{ot.getPublicKey(r,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}function la(r){try{ot.ProjectivePoint.fromHex(r)}catch(e){throw new O(String(e),"ERR_INVALID_PUBLIC_KEY")}}function vl(r){try{return ot.getPublicKey(r,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}var Ln=class{_key;constructor(e){la(e),this._key=e}verify(e,t){return bl(this._key,t,e)}marshal(){return xl(this._key)}get bytes(){return ft.encode({Type:fe.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return ce(this.bytes,e.bytes)}async hash(){let e=Ee.digest(this.bytes),t;return Ge(e)?{bytes:t}=await e:t=e.bytes,t}},Vn=class{_key;_publicKey;constructor(e,t){this._key=e,this._publicKey=t??vl(e),El(this._key),la(this._publicKey)}sign(e){return wl(this._key,e)}get public(){return new Ln(this._publicKey)}marshal(){return this._key}get bytes(){return St.encode({Type:fe.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return ce(this.bytes,e.bytes)}hash(){let e=Ee.digest(this.bytes);return Ge(e)?e.then(({bytes:t})=>t):e.bytes}async id(){let e=await this.public.hash();return W(e,"base58btc")}async export(e,t="libp2p-key"){if(t==="libp2p-key")return Kr(this.bytes,e);throw new O(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function sg(r){return new Vn(r)}function ag(r){return new Ln(r)}async function cg(){let r=yl();return new Vn(r)}var fi={rsa:sa,ed25519:Ws,secp256k1:fa};function ug(r){let e=Object.keys(fi).join(" / ");return new O(`invalid or unsupported key type ${r}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function ha(r){let e=ft.decode(r),t=e.Data??new Uint8Array;switch(e.Type){case fe.RSA:return fi.rsa.unmarshalRsaPublicKey(t);case fe.Ed25519:return fi.ed25519.unmarshalEd25519PublicKey(t);case fe.Secp256k1:return fi.secp256k1.unmarshalSecp256k1PublicKey(t);default:throw ug(e.Type??"unknown")}}var qg=Vt(hi(),1);var fg="/",hg=new TextEncoder().encode(fg),P1=hg[0];var zg=Vt(pa(),1);var Sl="ERR_IPNS_EXPIRED_RECORD",di="ERR_UNRECOGNIZED_VALIDITY";var Ut="ERR_SIGNATURE_VERIFICATION";var ga="ERR_UNDEFINED_PARAMETER",Il="ERR_INVALID_RECORD_DATA",Rl="ERR_INVALID_VALUE",kl="ERR_INVALID_EMBEDDED_KEY";var Tl="ERR_RECORD_TOO_LARGE";var it;(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=()=>xn(t)}(e=r.ValidityType||(r.ValidityType={}));let n;r.codec=()=>(n==null&&(n=Gr((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)=>{let s={},a=i==null?o.len:o.pos+i;for(;o.pos<a;){let c=o.uint32();switch(c>>>3){case 1:s.value=o.bytes();break;case 2:s.signatureV1=o.bytes();break;case 3:s.validityType=r.ValidityType.codec().decode(o);break;case 4:s.validity=o.bytes();break;case 5:s.sequence=o.uint64();break;case 6:s.ttl=o.uint64();break;case 7:s.pubKey=o.bytes();break;case 8:s.signatureV2=o.bytes();break;case 9:s.data=o.bytes();break;default:o.skipType(c&7);break}}return s})),n),r.encode=o=>qr(o,r.codec()),r.decode=o=>$r(o,r.codec())})(it||(it={}));var dg=["string","number","bigint","symbol"],pg=["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 Cl(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(dg.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(gg(r))return"Buffer";let t=mg(r);return t||"Object"}function gg(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function mg(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(pg.includes(e))return e}var m=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}};m.uint=new m(0,"uint",!0);m.negint=new m(1,"negint",!0);m.bytes=new m(2,"bytes",!0);m.string=new m(3,"string",!0);m.array=new m(4,"array",!1);m.map=new m(5,"map",!1);m.tag=new m(6,"tag",!1);m.float=new m(7,"float",!0);m.false=new m(7,"false",!0);m.true=new m(7,"true",!0);m.null=new m(7,"null",!0);m.undefined=new m(7,"undefined",!0);m.break=new m(7,"break",!0);var U=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 Qr=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",yg=new TextDecoder,wg=new TextEncoder;function pi(r){return Qr&&globalThis.Buffer.isBuffer(r)}function Vl(r){return r instanceof Uint8Array?pi(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Dl=Qr?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):Ul(r,e,t):(r,e,t)=>t-e>64?yg.decode(r.subarray(e,t)):Ul(r,e,t),Ol=Qr?r=>r.length>64?globalThis.Buffer.from(r):_l(r):r=>r.length>64?wg.encode(r):_l(r);var en=Qr?(r,e,t)=>pi(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),Pl=Qr?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Vl(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},Fl=Qr?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Ml(r,e){if(pi(r)&&pi(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 _l(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 Ul(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 bg(n)}var Ll=4096;function bg(r){let e=r.length;if(e<=Ll)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=Ll));return t}var xg=256,gi=class{constructor(e=xg){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=Fl(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=en(n,0,this.cursor)}else t=Pl(this.chunks,this.cursor);return e&&this.reset(),t}};var $="CBOR decode error:",ma="CBOR encode error:",Dn=[];Dn[23]=1;Dn[24]=2;Dn[25]=3;Dn[26]=5;Dn[27]=9;function Lt(r,e,t){if(r.length-e<t)throw new Error(`${$} not enough data for type`)}var we=[24,256,65536,4294967296,BigInt("18446744073709551616")];function He(r,e,t){Lt(r,e,1);let n=r[e];if(t.strict===!0&&n<we[0])throw new Error(`${$} integer encoded in more bytes than necessary (strict decode)`);return n}function Ke(r,e,t){Lt(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<we[1])throw new Error(`${$} integer encoded in more bytes than necessary (strict decode)`);return n}function $e(r,e,t){Lt(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<we[2])throw new Error(`${$} integer encoded in more bytes than necessary (strict decode)`);return n}function qe(r,e,t){Lt(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<we[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 Hl(r,e,t,n){return new U(m.uint,He(r,e+1,n),2)}function Kl(r,e,t,n){return new U(m.uint,Ke(r,e+1,n),3)}function $l(r,e,t,n){return new U(m.uint,$e(r,e+1,n),5)}function ql(r,e,t,n){return new U(m.uint,qe(r,e+1,n),9)}function Ze(r,e){return Be(r,0,e.value)}function Be(r,e,t){if(t<we[0]){let n=Number(t);r.push([e|n])}else if(t<we[1]){let n=Number(t);r.push([e|24,n])}else if(t<we[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<we[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<we[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 Be.encodedSize(e.value)};Be.encodedSize=function(e){return e<we[0]?1:e<we[1]?2:e<we[2]?3:e<we[3]?5:9};Ze.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function zl(r,e,t,n){return new U(m.negint,-1-He(r,e+1,n),2)}function Gl(r,e,t,n){return new U(m.negint,-1-Ke(r,e+1,n),3)}function jl(r,e,t,n){return new U(m.negint,-1-$e(r,e+1,n),5)}var ya=BigInt(-1),Yl=BigInt(1);function Zl(r,e,t,n){let o=qe(r,e+1,n);if(typeof o!="bigint"){let i=-1-o;if(i>=Number.MIN_SAFE_INTEGER)return new U(m.negint,i,9)}if(n.allowBigInt!==!0)throw new Error(`${$} integers outside of the safe integer range are not supported`);return new U(m.negint,ya-BigInt(o),9)}function mi(r,e){let t=e.value,n=typeof t=="bigint"?t*ya-Yl:t*-1-1;Be(r,e.type.majorEncoded,n)}mi.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*ya-Yl:t*-1-1;return n<we[0]?1:n<we[1]?2:n<we[2]?3:n<we[3]?5:9};mi.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function On(r,e,t,n){Lt(r,e,t+n);let o=en(r,e+t,e+t+n);return new U(m.bytes,o,t+n)}function Wl(r,e,t,n){return On(r,e,1,t)}function Jl(r,e,t,n){return On(r,e,2,He(r,e+1,n))}function Xl(r,e,t,n){return On(r,e,3,Ke(r,e+1,n))}function Ql(r,e,t,n){return On(r,e,5,$e(r,e+1,n))}function ef(r,e,t,n){let o=qe(r,e+1,n);if(typeof o=="bigint")throw new Error(`${$} 64-bit integer bytes lengths not supported`);return On(r,e,9,o)}function yi(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===m.string?Ol(r.value):r.value),r.encodedBytes}function tn(r,e){let t=yi(e);Be(r,e.type.majorEncoded,t.length),r.push(t)}tn.encodedSize=function(e){let t=yi(e);return Be.encodedSize(t.length)+t.length};tn.compareTokens=function(e,t){return vg(yi(e),yi(t))};function vg(r,e){return r.length<e.length?-1:r.length>e.length?1:Ml(r,e)}function Pn(r,e,t,n,o){let i=t+n;Lt(r,e,i);let s=new U(m.string,Dl(r,e+t,e+i),i);return o.retainStringBytes===!0&&(s.byteValue=en(r,e+t,e+i)),s}function tf(r,e,t,n){return Pn(r,e,1,t,n)}function rf(r,e,t,n){return Pn(r,e,2,He(r,e+1,n),n)}function nf(r,e,t,n){return Pn(r,e,3,Ke(r,e+1,n),n)}function of(r,e,t,n){return Pn(r,e,5,$e(r,e+1,n),n)}function sf(r,e,t,n){let o=qe(r,e+1,n);if(typeof o=="bigint")throw new Error(`${$} 64-bit integer string lengths not supported`);return Pn(r,e,9,o,n)}var af=tn;function rn(r,e,t,n){return new U(m.array,n,t)}function cf(r,e,t,n){return rn(r,e,1,t)}function uf(r,e,t,n){return rn(r,e,2,He(r,e+1,n))}function lf(r,e,t,n){return rn(r,e,3,Ke(r,e+1,n))}function ff(r,e,t,n){return rn(r,e,5,$e(r,e+1,n))}function hf(r,e,t,n){let o=qe(r,e+1,n);if(typeof o=="bigint")throw new Error(`${$} 64-bit integer array lengths not supported`);return rn(r,e,9,o)}function df(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${$} indefinite length items not allowed`);return rn(r,e,1,1/0)}function wi(r,e){Be(r,m.array.majorEncoded,e.value)}wi.compareTokens=Ze.compareTokens;wi.encodedSize=function(e){return Be.encodedSize(e.value)};function nn(r,e,t,n){return new U(m.map,n,t)}function pf(r,e,t,n){return nn(r,e,1,t)}function gf(r,e,t,n){return nn(r,e,2,He(r,e+1,n))}function mf(r,e,t,n){return nn(r,e,3,Ke(r,e+1,n))}function yf(r,e,t,n){return nn(r,e,5,$e(r,e+1,n))}function wf(r,e,t,n){let o=qe(r,e+1,n);if(typeof o=="bigint")throw new Error(`${$} 64-bit integer map lengths not supported`);return nn(r,e,9,o)}function bf(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${$} indefinite length items not allowed`);return nn(r,e,1,1/0)}function bi(r,e){Be(r,m.map.majorEncoded,e.value)}bi.compareTokens=Ze.compareTokens;bi.encodedSize=function(e){return Be.encodedSize(e.value)};function xf(r,e,t,n){return new U(m.tag,t,1)}function Ef(r,e,t,n){return new U(m.tag,He(r,e+1,n),2)}function vf(r,e,t,n){return new U(m.tag,Ke(r,e+1,n),3)}function Bf(r,e,t,n){return new U(m.tag,$e(r,e+1,n),5)}function Af(r,e,t,n){return new U(m.tag,qe(r,e+1,n),9)}function xi(r,e){Be(r,m.tag.majorEncoded,e.value)}xi.compareTokens=Ze.compareTokens;xi.encodedSize=function(e){return Be.encodedSize(e.value)};var kg=20,Tg=21,Ng=22,Cg=23;function Sf(r,e,t,n){if(n.allowUndefined===!1)throw new Error(`${$} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new U(m.null,null,1):new U(m.undefined,void 0,1)}function If(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${$} indefinite length items not allowed`);return new U(m.break,void 0,1)}function wa(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 U(m.float,r,e)}function Rf(r,e,t,n){return wa(ba(r,e+1),3,n)}function kf(r,e,t,n){return wa(xa(r,e+1),5,n)}function Tf(r,e,t,n){return wa(Uf(r,e+1),9,n)}function Ei(r,e,t){let n=e.value;if(n===!1)r.push([m.float.majorEncoded|kg]);else if(n===!0)r.push([m.float.majorEncoded|Tg]);else if(n===null)r.push([m.float.majorEncoded|Ng]);else if(n===void 0)r.push([m.float.majorEncoded|Cg]);else{let o,i=!1;(!t||t.float64!==!0)&&(Cf(n),o=ba(st,1),n===o||Number.isNaN(n)?(st[0]=249,r.push(st.slice(0,3)),i=!0):(_f(n),o=xa(st,1),n===o&&(st[0]=250,r.push(st.slice(0,5)),i=!0))),i||(_g(n),o=Uf(st,1),st[0]=251,r.push(st.slice(0,9)))}}Ei.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){Cf(n);let o=ba(st,1);if(n===o||Number.isNaN(n))return 3;if(_f(n),o=xa(st,1),n===o)return 5}return 9};var Nf=new ArrayBuffer(9),We=new DataView(Nf,1),st=new Uint8Array(Nf,0);function Cf(r){if(r===1/0)We.setUint16(0,31744,!1);else if(r===-1/0)We.setUint16(0,64512,!1);else if(Number.isNaN(r))We.setUint16(0,32256,!1);else{We.setFloat32(0,r);let e=We.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)We.setUint16(0,31744,!1);else if(t===0)We.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let o=t-127;o<-24?We.setUint16(0,0):o<-14?We.setUint16(0,(e&2147483648)>>16|1<<24+o,!1):We.setUint16(0,(e&2147483648)>>16|o+15<<10|n>>13,!1)}}}function ba(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 _f(r){We.setFloat32(0,r,!1)}function xa(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 _g(r){We.setFloat64(0,r,!1)}function Uf(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)}Ei.compareTokens=Ze.compareTokens;function Q(r,e,t){throw new Error(`${$} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function vi(r){return()=>{throw new Error(`${$} ${r}`)}}var I=[];for(let r=0;r<=23;r++)I[r]=Q;I[24]=Hl;I[25]=Kl;I[26]=$l;I[27]=ql;I[28]=Q;I[29]=Q;I[30]=Q;I[31]=Q;for(let r=32;r<=55;r++)I[r]=Q;I[56]=zl;I[57]=Gl;I[58]=jl;I[59]=Zl;I[60]=Q;I[61]=Q;I[62]=Q;I[63]=Q;for(let r=64;r<=87;r++)I[r]=Wl;I[88]=Jl;I[89]=Xl;I[90]=Ql;I[91]=ef;I[92]=Q;I[93]=Q;I[94]=Q;I[95]=vi("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)I[r]=tf;I[120]=rf;I[121]=nf;I[122]=of;I[123]=sf;I[124]=Q;I[125]=Q;I[126]=Q;I[127]=vi("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)I[r]=cf;I[152]=uf;I[153]=lf;I[154]=ff;I[155]=hf;I[156]=Q;I[157]=Q;I[158]=Q;I[159]=df;for(let r=160;r<=183;r++)I[r]=pf;I[184]=gf;I[185]=mf;I[186]=yf;I[187]=wf;I[188]=Q;I[189]=Q;I[190]=Q;I[191]=bf;for(let r=192;r<=215;r++)I[r]=xf;I[216]=Ef;I[217]=vf;I[218]=Bf;I[219]=Af;I[220]=Q;I[221]=Q;I[222]=Q;I[223]=Q;for(let r=224;r<=243;r++)I[r]=vi("simple values are not supported");I[244]=Q;I[245]=Q;I[246]=Q;I[247]=Sf;I[248]=vi("simple values are not supported");I[249]=Rf;I[250]=kf;I[251]=Tf;I[252]=Q;I[253]=Q;I[254]=Q;I[255]=If;var at=[];for(let r=0;r<24;r++)at[r]=new U(m.uint,r,1);for(let r=-1;r>=-24;r--)at[31-r]=new U(m.negint,r,1);at[64]=new U(m.bytes,new Uint8Array(0),1);at[96]=new U(m.string,"",1);at[128]=new U(m.array,0,1);at[160]=new U(m.map,0,1);at[244]=new U(m.false,!1,1);at[245]=new U(m.true,!0,1);at[246]=new U(m.null,null,1);function Lg(){let r=[];return r[m.uint.major]=Ze,r[m.negint.major]=mi,r[m.bytes.major]=tn,r[m.string.major]=af,r[m.array.major]=wi,r[m.map.major]=bi,r[m.tag.major]=xi,r[m.float.major]=Ei,r}var VE=Lg(),DE=new gi,Bi=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(`${ma} object contains circular references`);return new r(t,e)}},er={null:new U(m.null,null),undefined:new U(m.undefined,void 0),true:new U(m.true,!0),false:new U(m.false,!1),emptyArray:new U(m.array,0),emptyMap:new U(m.map,0)},tr={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new U(m.float,r):r>=0?new U(m.uint,r):new U(m.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new U(m.uint,r):new U(m.negint,r)},Uint8Array(r,e,t,n){return new U(m.bytes,r)},string(r,e,t,n){return new U(m.string,r)},boolean(r,e,t,n){return r?er.true:er.false},null(r,e,t,n){return er.null},undefined(r,e,t,n){return er.undefined},ArrayBuffer(r,e,t,n){return new U(m.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new U(m.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[er.emptyArray,new U(m.break)]:er.emptyArray;n=Bi.createCheck(n,r);let o=[],i=0;for(let s of r)o[i++]=Ea(s,t,n);return t.addBreakTokens?[new U(m.array,r.length),o,new U(m.break)]:[new U(m.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?[er.emptyMap,new U(m.break)]:er.emptyMap;n=Bi.createCheck(n,r);let a=[],c=0;for(let f of i)a[c++]=[Ea(f,t,n),Ea(o?r.get(f):r[f],t,n)];return Vg(a,t),t.addBreakTokens?[new U(m.map,s),a,new U(m.break)]:[new U(m.map,s),a]}};tr.Map=tr.Object;tr.Buffer=tr.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))tr[`${r}Array`]=tr.DataView;function Ea(r,e={},t){let n=Cl(r),o=e&&e.typeEncoders&&e.typeEncoders[n]||tr[n];if(typeof o=="function"){let s=o(r,n,e,t);if(s!=null)return s}let i=tr[n];if(!i)throw new Error(`${ma} unsupported type: ${n}`);return i(r,n,e,t)}function Vg(r,e){e.mapSorter&&r.sort(e.mapSorter)}var Dg={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},Ai=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=at[e];if(t===void 0){let n=I[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}},Fn=Symbol.for("DONE"),Si=Symbol.for("BREAK");function Og(r,e,t){let n=[];for(let o=0;o<r.value;o++){let i=on(e,t);if(i===Si){if(r.value===1/0)break;throw new Error(`${$} got unexpected break to lengthed array`)}if(i===Fn)throw new Error(`${$} found array but not enough entries (got ${o}, expected ${r.value})`);n[o]=i}return n}function Pg(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=on(e,t);if(a===Si){if(r.value===1/0)break;throw new Error(`${$} got unexpected break to lengthed map`)}if(a===Fn)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=on(e,t);if(c===Fn)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 on(r,e){if(r.done())return Fn;let t=r.next();if(t.type===m.break)return Si;if(t.type.terminal)return t.value;if(t.type===m.array)return Og(t,r,e);if(t.type===m.map)return Pg(t,r,e);if(t.type===m.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=on(r,e);return e.tags[t.value](n)}throw new Error(`${$} tag not supported (${t.value})`)}throw new Error("unsupported")}function Lf(r,e){if(!(r instanceof Uint8Array))throw new Error(`${$} data to decode must be a Uint8Array`);e=Object.assign({},Dg,e);let t=e.tokenizer||new Ai(r,e),n=on(t,e);if(n===Fn)throw new Error(`${$} did not find any content to decode`);if(n===Si)throw new Error(`${$} got unexpected break`);return[n,r.subarray(t.pos())]}function va(r,e){let[t,n]=Lf(r,e);if(n.length>0)throw new Error(`${$} too many terminals, data makes no sense`);return t}var ze=Vt(hi(),1);var Vf=Ot("ipns:utils"),Df=j("/ipns/"),Hg=114,Of=async(r,e)=>{if(e==null||r==null){let n=new Error("one or more of the provided parameters are not defined");throw Vf.error(n),(0,ze.default)(n,ga)}let t;if(e.pubKey!=null){try{t=ha(e.pubKey)}catch(o){throw Vf.error(o),o}if(!(await mc(e.pubKey)).equals(r))throw(0,ze.default)(new Error("Embedded public key did not match PeerID"),kl)}else r.publicKey!=null&&(t=ha(r.publicKey));if(t!=null)return t;throw(0,ze.default)(new Error("no public key is available"),ga)};var Pf=r=>{let e=j("ipns-signature:");return Ne([e,r])},mr=r=>"signatureV1"in r?it.encode({value:j(r.value),signatureV1:r.signatureV1,validityType:r.validityType,validity:j(r.validity),sequence:r.sequence,ttl:r.ttl,pubKey:r.pubKey,signatureV2:r.signatureV2,data:r.data}):it.encode({pubKey:r.pubKey,signatureV2:r.signatureV2,data:r.data});function gt(r){let e=it.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(0,ze.default)(new Error("missing data or signatureV2"),Ut);let t=Ff(e.data),n=Kg(t.Value),o=W(t.Validity);if(e.value!=null&&e.signatureV1!=null)return $g(e),{value:n,validityType:it.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:it.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")}var Ba=r=>Ne([Df,r.toBytes()]),sn=r=>dn(r.slice(Df.length));var Ff=r=>{let e=va(r);if(e.ValidityType===0)e.ValidityType=it.ValidityType.EOL;else throw(0,ze.default)(new Error("Unknown validity type"),di);return Number.isInteger(e.Sequence)&&(e.Sequence=BigInt(e.Sequence)),Number.isInteger(e.TTL)&&(e.TTL=BigInt(e.TTL)),e},Kg=r=>{if(r!=null){if(Ka(r))return`/ipns/${r.toCID().toString(Zn)}`;if(r instanceof Uint8Array){let n=W(r);n.startsWith("/")&&(r=n)}let e=r.toString().trim();if(e.startsWith("/")&&e.length>1)return e;let t=Te.asCID(r);if(t!=null)return t.code===Hg?`/ipns/${t.toString(Zn)}`:`/ipfs/${t.toV1().toString()}`;try{return r instanceof Uint8Array?`/ipfs/${Te.decode(r).toV1().toString()}`:`/ipfs/${Te.parse(e).toV1().toString()}`}catch{}}throw(0,ze.default)(new Error("Value must be a valid content path starting with /"),Rl)},$g=r=>{if(r.data==null)throw(0,ze.default)(new Error("Record data is missing"),Il);let e=Ff(r.data);if(!ce(e.Value,r.value??new Uint8Array(0)))throw(0,ze.default)(new Error('Field "value" did not match between protobuf and CBOR'),Ut);if(!ce(e.Validity,r.validity??new Uint8Array(0)))throw(0,ze.default)(new Error('Field "validity" did not match between protobuf and CBOR'),Ut);if(e.ValidityType!==r.validityType)throw(0,ze.default)(new Error('Field "validityType" did not match between protobuf and CBOR'),Ut);if(e.Sequence!==r.sequence)throw(0,ze.default)(new Error('Field "sequence" did not match between protobuf and CBOR'),Ut);if(e.TTL!==r.ttl)throw(0,ze.default)(new Error('Field "ttl" did not match between protobuf and CBOR'),Ut)};var l2=Ot("ipns"),f2=ut.code,h2=60*60*1e9,Gg="/ipns/",d2=Gg.length;var Mn=Vt(hi(),1),Mf=Vt(pa(),1);var Ii=Ot("ipns:validator"),jg=1024*10,Yg=async(r,e)=>{let t=gt(e),n;try{let o=Pf(t.data);n=await r.verify(o,t.signatureV2)}catch{n=!1}if(!n)throw Ii.error("record signature verification failed"),(0,Mn.default)(new Error("record signature verification failed"),Ut);if(t.validityType===it.ValidityType.EOL){if(Mf.default.fromString(t.validity).toDate().getTime()<Date.now())throw Ii.error("record has expired"),(0,Mn.default)(new Error("record has expired"),Sl)}else if(t.validityType!=null)throw Ii.error("unrecognized validity type"),(0,Mn.default)(new Error("unrecognized validity type"),di);Ii("ipns record for %s is valid",t.value)};async function Hf(r,e){if(e.byteLength>jg)throw(0,Mn.default)(new Error("record too large"),Tl);let t=sn(r),n=gt(e),o=await Of(t,n);await Yg(o,e)}async function*Hn(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 mt(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var Sa=Vt($f(),1);var $n=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Ia=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},qf=r=>globalThis.DOMException===void 0?new Ia(r):new DOMException(r),zf=r=>{let e=r.reason===void 0?qf("This operation was aborted."):r.reason;return e instanceof Error?e:qf(e)};function Ra(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:d}=e;d.aborted&&u(zf(d)),d.addEventListener("abort",()=>{u(zf(d))})}if(t===Number.POSITIVE_INFINITY){r.then(f,u);return}let l=new $n;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 ${t} milliseconds`,u(l))},t),(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,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 qn=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=ka(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 zn=class extends Sa.default{#e;#r;#i=0;#a;#c;#p=0;#n;#u;#t;#g;#o=0;#l;#s;#m;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:qn,...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.#t=new e.queueClass,this.#g=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#m=e.throwOnTimeout===!0,this.#s=e.autoStart===!1}get#b(){return this.#r||this.#i<this.#a}get#x(){return this.#o<this.#l}#E(){this.#o--,this.#f(),this.emit("next")}#v(){this.#w(),this.#y(),this.#u=void 0}get#B(){let e=Date.now();if(this.#n===void 0){let t=this.#p-e;if(t<0)this.#i=this.#e?this.#o:0;else return this.#u===void 0&&(this.#u=setTimeout(()=>{this.#v()},t)),!0}return!1}#f(){if(this.#t.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 e=!this.#B;if(this.#b&&this.#x){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#y(),!0):!1}}return!1}#y(){this.#r||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.#e?this.#o: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.#m,...t},new Promise((n,o)=>{this.#t.enqueue(async()=>{this.#o++,this.#i++;try{t.signal?.throwIfAborted();let i=e({signal:t.signal});t.timeout&&(i=Ra(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 $n&&!t.throwOnTimeout){n();return}o(i),this.emit("error",i)}finally{this.#E()}},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.#t=new this.#g}async onEmpty(){this.#t.size!==0&&await this.#d("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#d("next",()=>this.#t.size<e)}async onIdle(){this.#o===0&&this.#t.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.#t.size}sizeBy(e){return this.#t.filter(e).length}get pending(){return this.#o}get isPaused(){return this.#s}};function Jg(r){return r[Symbol.asyncIterator]!=null}function Xg(r){if(Jg(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var ki=Xg;function Qg(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 Gf=Qg;function em(r){return r[Symbol.asyncIterator]!=null}function tm(r,e){if(em(r))return async function*(){for await(let a of r)yield e(a)}();let t=Gf(r),{value:n,done:o}=t.next();if(o===!0)return function*(){}();let i=e(n);if(typeof i.then=="function")return async function*(){yield await i;for await(let a of t)yield e(a)}();let s=e;return function*(){yield i;for(let a of t)yield s(a)}()}var Ti=tm;var Ta=j("/ipns/");function jf(r){return ce(r.subarray(0,Ta.byteLength),Ta)}var Yf=r=>dn(r.slice(Ta.length)),Ni=class{client;constructor(e){this.client=e}async*findProviders(e,t={}){yield*Ti(this.client.getProviders(e,t),n=>({id:n.ID,multiaddrs:n.Addrs??[]}))}async provide(){}async put(e,t,n){if(!jf(e))return;let o=Yf(e),i=gt(t);await this.client.putIPNS(o,i,n)}async get(e,t){if(!jf(e))throw new O("Not found","ERR_NOT_FOUND");let n=Yf(e);try{let o=await this.client.getIPNS(n,t);return mr(o)}catch(o){throw o.code==="ERR_BAD_RESPONSE"?new O("Not found","ERR_NOT_FOUND"):o}}},Ci=class{client;constructor(e){this.client=e}async findPeer(e,t={}){let n=await ki(this.client.getPeers(e,t));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new O("Not found","ERR_NOT_FOUND")}async*getClosestPeers(e,t={}){}};var De=Ot("delegated-routing-v1-http-api-client"),Zf={concurrentRequests:4,timeout:3e4},_i=class{started;httpQueue;shutDownController;clientUrl;timeout;contentRouting;peerRouting;constructor(e,t={}){this.started=!1,this.shutDownController=new AbortController,yr(1/0,this.shutDownController.signal),this.httpQueue=new zn({concurrency:t.concurrentRequests??Zf.concurrentRequests}),this.clientUrl=e instanceof URL?e:new URL(e),this.timeout=t.timeout??Zf.timeout,this.contentRouting=new Ni(this),this.peerRouting=new Ci(this)}get[Ha](){return this.contentRouting}get[$a](){return this.peerRouting}isStarted(){return this.started}start(){this.started=!0}stop(){this.httpQueue.clear(),this.shutDownController.abort(),this.started=!1}async*getProviders(e,t={}){De("getProviders starts: %c",e);let n=AbortSignal.timeout(this.timeout),o=gn([this.shutDownController.signal,n,t.signal]);yr(1/0,n,o);let i=mt(),s=mt();this.httpQueue.add(async()=>(i.resolve(),s.promise));try{await i.promise;let a=`${this.clientUrl}routing/v1/providers/${e.toString()}`,f=await fetch(a,{headers:{Accept:"application/x-ndjson"},signal:o});if(f.status===404)throw new O("No matching records found.","ERR_NOT_FOUND");if(f.status===422)throw new O("Request does not conform to schema or semantic constraints.","ERR_INVALID_REQUEST");if(f.body==null)throw new O("Routing response had no body","ERR_BAD_RESPONSE");if(f.headers.get("Content-Type")==="application/json"){let l=await f.json();for(let d of l.Providers){let E=this.#e(d);E!=null&&(yield E)}}else for await(let l of Hn(ro(f.body))){let d=this.#e(l);d!=null&&(yield d)}}catch(a){De.error("getProviders errored:",a)}finally{o.clear(),s.resolve(),De("getProviders finished: %c",e)}}async*getPeers(e,t={}){De("getPeers starts: %c",e);let n=AbortSignal.timeout(this.timeout),o=gn([this.shutDownController.signal,n,t.signal]);yr(1/0,n,o);let i=mt(),s=mt();this.httpQueue.add(async()=>(i.resolve(),s.promise));try{await i.promise;let a=`${this.clientUrl}routing/v1/peers/${e.toCID().toString()}`,f=await fetch(a,{headers:{Accept:"application/x-ndjson"},signal:o});if(f.status===404)throw new O("No matching records found.","ERR_NOT_FOUND");if(f.status===422)throw new O("Request does not conform to schema or semantic constraints.","ERR_INVALID_REQUEST");if(f.body==null)throw new O("Routing response had no body","ERR_BAD_RESPONSE");if(f.headers.get("Content-Type")==="application/json"){let l=await f.json();for(let d of l.Peers){let E=this.#e(d);E!=null&&(yield E)}}else for await(let l of Hn(ro(f.body))){let d=this.#e(l);d!=null&&(yield d)}}catch(a){De.error("getPeers errored:",a)}finally{o.clear(),s.resolve(),De("getPeers finished: %c",e)}}async getIPNS(e,t={}){De("getIPNS starts: %c",e);let n=AbortSignal.timeout(this.timeout),o=gn([this.shutDownController.signal,n,t.signal]);yr(1/0,n,o);let i=mt(),s=mt();this.httpQueue.add(async()=>(i.resolve(),s.promise));let a=`${this.clientUrl}routing/v1/ipns/${e.toCID().toString()}`;try{await i.promise;let f=await fetch(a,{headers:{Accept:"application/vnd.ipfs.ipns-record"},signal:o});if(De("getIPNS GET %s %d",a,f.status),f.status===404)throw new O("No matching records found.","ERR_NOT_FOUND");if(f.status===422)throw new O("Request does not conform to schema or semantic constraints.","ERR_INVALID_REQUEST");if(f.body==null)throw new O("GET ipns response had no body","ERR_BAD_RESPONSE");let u=await f.arrayBuffer(),l=new Uint8Array(u,0,u.byteLength);return t.validate!==!1&&await Hf(Ba(e),l),gt(l)}catch(c){throw De.error("getIPNS GET %s error:",a,c),c}finally{o.clear(),s.resolve(),De("getIPNS finished: %c",e)}}async putIPNS(e,t,n={}){De("putIPNS starts: %c",e);let o=AbortSignal.timeout(this.timeout),i=gn([this.shutDownController.signal,o,n.signal]);yr(1/0,o,i);let s=mt(),a=mt();this.httpQueue.add(async()=>(s.resolve(),a.promise));let c=`${this.clientUrl}routing/v1/ipns/${e.toCID().toString()}`;try{await s.promise;let f=mr(t),l=await fetch(c,{method:"PUT",headers:{"Content-Type":"application/vnd.ipfs.ipns-record"},body:f,signal:i});if(De("putIPNS PUT %s %d",c,l.status),l.status!==200)throw new O("PUT ipns response had status other than 200","ERR_BAD_RESPONSE")}catch(f){throw De.error("putIPNS PUT %s error:",c,f.stack),f}finally{i.clear(),a.resolve(),De("putIPNS finished: %c",e)}}#e(e){let t=[],n=e.Addrs?.map(pn)??[];return e.Protocols!=null&&t.push(...e.Protocols),e.Protocol!=null&&(t.push(e.Protocol),delete e.Protocol),{...e,Schema:"peer",ID:ns(e.ID),Addrs:n,Protocols:t}}};function Wf(r,e={}){return new _i(new URL(r),e)}var Jf=j("/ipns/");function Xf(r){return ce(r.subarray(0,Jf.byteLength),Jf)}var Na=class{client;constructor(e){this.client=Wf(e)}async provide(e,t){}async*findProviders(e,t){yield*Ti(this.client.getProviders(e,t),n=>({id:n.ID,multiaddrs:n.Addrs,protocols:n.Protocols}))}async put(e,t,n){if(!Xf(e))return;let o=sn(e),i=gt(t);await this.client.putIPNS(o,i,n)}async get(e,t){if(!Xf(e))throw new O("Not found","ERR_NOT_FOUND");let n=sn(e);try{let o=await this.client.getIPNS(n,t);return mr(o)}catch(o){throw o.code==="ERR_BAD_RESPONSE"?new O("Not found","ERR_NOT_FOUND"):o}}async findPeer(e,t){let n=await ki(this.client.getPeers(e,t));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new O("Not found","ERR_NOT_FOUND")}async*getClosestPeers(e,t){}};function Qf(r){return new Na(new URL(r))}var Ca=class{libp2p;constructor(e){this.libp2p=e}async provide(e,t){await this.libp2p.contentRouting.provide(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 Ca(r)}return ph(rm);})();
7
+ `)}`:`${t} :`}};Mu=Jt;_.Constructed=Mu;Jt.NAME="CONSTRUCTED";var Do=class extends Te{fromBER(e,t,n){return t}toBER(e){return it}};Do.override="EndOfContentValueBlock";var Hu,Vo=class extends Ae{constructor(e={}){super(e,Do),this.idBlock.tagClass=1,this.idBlock.tagNumber=0}};Hu=Vo;_.EndOfContent=Hu;Vo.NAME=Tn;var $u,Xt=class extends Ae{constructor(e={}){super(e,Te),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}`}};$u=Xt;_.Null=$u;Xt.NAME="NULL";var Oo=class extends Ut(Te){constructor({value:e,...t}={}){super(t),t.valueHex?this.valueHexView=Z.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=Z.BufferSourceConverter.toUint8Array(e);return _t(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,na.call(this),this.blockLength=n,t+n):-1}toBER(){return this.valueHexView.slice()}toJSON(){return{...super.toJSON(),value:this.value}}};Oo.NAME="BooleanValueBlock";var Ku,Po=class extends Ae{constructor(e={}){super(e,Oo),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}`}};Ku=Po;_.Boolean=Ku;Po.NAME="BOOLEAN";var Fo=class extends Ut(pt){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=pt.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===Tn){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, OCTET STRING may consists of OCTET STRINGs only",-1}if(s!==Vu)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?pt.prototype.toBER.call(this,e,t):e?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),isConstructed:this.isConstructed}}};Fo.NAME="OctetStringValueBlock";var qu,Nt=class r extends Ae{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},Fo),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=di(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?Jt.prototype.onAsciiEncoding.call(this):`${this.constructor.NAME} : ${Z.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 Z.BufferSourceConverter.concat(e)}};qu=Nt;_.OctetString=qu;Nt.NAME=Vu;var Mo=class extends Ut(pt){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=pt.prototype.fromBER.call(this,e,t,n),o===-1)return o;for(let a of this.value){let c=a.constructor.NAME;if(c===Tn){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, BIT STRING may consists of BIT STRINGs only",-1}if(c!==Ou)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=Z.BufferSourceConverter.toUint8Array(e);if(!_t(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=di(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 pt.prototype.toBER.call(this,e,t);if(e)return new ArrayBuffer(this.valueHexView.byteLength+1);if(!this.valueHexView.byteLength)return it;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}}};Mo.NAME="BitStringValueBlock";var zu,Qr=class extends Ae{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},Mo),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 Jt.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)}`}}};zu=Qr;_.BitString=zu;Qr.NAME=Ou;var Gu;function tg(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 d=u;d>=0;d--,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=ko(new Uint8Array([f%10]),i);break;default:i[s-l]=f%10}}return t[0]>0&&(i=ko(t,i)),i}function Du(r){if(r>=Rn.length)for(let e=Rn.length;e<=r;e++){let t=new Uint8Array([0]),n=Rn[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=ko(t,n)),Rn.push(n)}return Rn[r]}function rg(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 Nn=class extends Ut(Te){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=na.call(this)))}set valueDec(e){this._valueDec=e,this.isHexOnly=!1,this.valueHexView=new Uint8Array(_u(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=rg(Du(n),t),s="-";break;default:t=tg(t,Du(n))}n++,o>>=1}}for(let c=0;c<t.length;c++)t[c]&&(a=!0),a&&(s+=Lu.charAt(t[c]));return a===!1&&(s+=Lu.charAt(0)),s}};Gu=Nn;Nn.NAME="IntegerValueBlock";Object.defineProperty(Gu.prototype,"valueHex",{set:function(r){this.valueHexView=new Uint8Array(r),this.setValueHex()},get:function(){return this.valueHexView.slice().buffer}});var ju,de=class r extends Ae{constructor(e={}){super(e,Nn),this.idBlock.tagClass=1,this.idBlock.tagNumber=2}toBigInt(){return To(),BigInt(this.valueBlock.toString())}static fromBigInt(e){To();let t=BigInt(e),n=new kn,o=t.toString(16).replace(/^-/,""),i=new Uint8Array(Z.Convert.FromHex(o));if(t<0){let a=new Uint8Array(i.length+(i[0]&128?1:0));a[0]|=128;let f=BigInt(`0x${Z.Convert.ToHex(a)}`)+t,u=Z.BufferSourceConverter.toUint8Array(Z.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()}`}};ju=de;_.Integer=ju;de.NAME="INTEGER";var Yu,Ho=class extends de{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=10}};Yu=Ho;_.Enumerated=Yu;Ho.NAME="ENUMERATED";var Cn=class extends Ut(Te){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=Z.BufferSourceConverter.toUint8Array(e);if(!_t(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=yr(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),t+this.blockLength)}set valueBigInt(e){To();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=Wt(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",it;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=Z.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}}};Cn.NAME="sidBlock";var $o=class extends Te{constructor({value:e=en,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,n){let o=t;for(;n>0;){let i=new Cn;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,it;t.push(o)}return oa(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 Cn;if(o>Number.MAX_SAFE_INTEGER){To();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}};$o.NAME="ObjectIdentifierValueBlock";var Zu,ot=class extends Ae{constructor(e={}){super(e,$o),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()}}};Zu=ot;_.ObjectIdentifier=Zu;ot.NAME="OBJECT IDENTIFIER";var _n=class extends Ut(Tt){constructor({valueDec:e=0,...t}={}){super(t),this.valueDec=e}fromBER(e,t,n){if(n===0)return t;let o=Z.BufferSourceConverter.toUint8Array(e);if(!_t(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=yr(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=Wt(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",it;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=Z.Convert.ToHex(this.valueHexView):e=this.valueDec.toString(),e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}};_n.NAME="relativeSidBlock";var Ko=class extends Te{constructor({value:e=en,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,n){let o=t;for(;n>0;){let i=new _n;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,it;n.push(i)}return oa(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 _n;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}};Ko.NAME="RelativeObjectIdentifierValueBlock";var Wu,qo=class extends Ae{constructor(e={}){super(e,Ko),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()}}};Wu=qo;_.RelativeObjectIdentifier=Wu;qo.NAME="RelativeObjectIdentifier";var Ju,we=class extends Jt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=16}};Ju=we;_.Sequence=Ju;we.NAME="SEQUENCE";var Xu,zo=class extends Jt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=17}};Xu=zo;_.Set=Xu;zo.NAME="SET";var Go=class extends Ut(Te){constructor({...e}={}){super(e),this.isHexOnly=!0,this.value=en}toJSON(){return{...super.toJSON(),value:this.value}}};Go.NAME="StringValueBlock";var jo=class extends Go{};jo.NAME="SimpleStringValueBlock";var Ue=class extends _o{constructor({...e}={}){super(e,jo)}fromBuffer(e){this.valueBlock.value=String.fromCharCode.apply(null,Z.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}};Ue.NAME="SIMPLE STRING";var Yo=class extends Ue{fromBuffer(e){this.valueBlock.valueHexView=Z.BufferSourceConverter.toUint8Array(e);try{this.valueBlock.value=Z.Convert.ToUtf8String(e)}catch(t){this.warnings.push(`Error during "decodeURIComponent": ${t}, using raw string`),this.valueBlock.value=Z.Convert.ToBinary(e)}}fromString(e){this.valueBlock.valueHexView=new Uint8Array(Z.Convert.FromUtf8String(e)),this.valueBlock.value=e}};Yo.NAME="Utf8StringValueBlock";var Qu,Ct=class extends Yo{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=12}};Qu=Ct;_.Utf8String=Qu;Ct.NAME="UTF8String";var Zo=class extends Ue{fromBuffer(e){this.valueBlock.value=Z.Convert.ToUtf16String(e),this.valueBlock.valueHexView=Z.BufferSourceConverter.toUint8Array(e)}fromString(e){this.valueBlock.value=e,this.valueBlock.valueHexView=new Uint8Array(Z.Convert.FromUtf16String(e))}};Zo.NAME="BmpStringValueBlock";var el,Wo=class extends Zo{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=30}};el=Wo;_.BmpString=el;Wo.NAME="BMPString";var Jo=class extends Ue{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=Wt(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}};Jo.NAME="UniversalStringValueBlock";var tl,Xo=class extends Jo{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=28}};tl=Xo;_.UniversalString=tl;Xo.NAME="UniversalString";var rl,Qo=class extends Ue{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=18}};rl=Qo;_.NumericString=rl;Qo.NAME="NumericString";var nl,ei=class extends Ue{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=19}};nl=ei;_.PrintableString=nl;ei.NAME="PrintableString";var ol,ti=class extends Ue{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=20}};ol=ti;_.TeletexString=ol;ti.NAME="TeletexString";var il,ri=class extends Ue{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=21}};il=ri;_.VideotexString=il;ri.NAME="VideotexString";var sl,ni=class extends Ue{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=22}};sl=ni;_.IA5String=sl;ni.NAME="IA5String";var al,oi=class extends Ue{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=25}};al=oi;_.GraphicString=al;oi.NAME="GraphicString";var cl,Un=class extends Ue{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=26}};cl=Un;_.VisibleString=cl;Un.NAME="VisibleString";var ul,ii=class extends Ue{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=27}};ul=ii;_.GeneralString=ul;ii.NAME="GeneralString";var ll,si=class extends Ue{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=29}};ll=si;_.CharacterString=ll;si.NAME="CharacterString";var fl,Ln=class extends Un{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,Z.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]=Ve(this.year<2e3?this.year-1900:this.year-2e3,2),t[1]=Ve(this.month,2),t[2]=Ve(this.day,2),t[3]=Ve(this.hour,2),t[4]=Ve(this.minute,2),t[5]=Ve(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}}};fl=Ln;_.UTCTime=fl;Ln.NAME="UTCTime";var hl,ai=class extends Ln{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,d=n.indexOf("+"),E="";if(d===-1&&(d=n.indexOf("-"),l=-1),d!==-1){if(E=n.substring(d+1),n=n.substring(0,d),E.length!==2&&E.length!==4)throw new Error("Wrong input string for conversion");let g=parseInt(E.substring(0,2),10);if(isNaN(g.valueOf()))throw new Error("Wrong input string for conversion");if(a=l*g,E.length===4){if(g=parseInt(E.substring(2,4),10),isNaN(g.valueOf()))throw new Error("Wrong input string for conversion");c=l*g}}}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(Ve(this.year,4)),t.push(Ve(this.month,2)),t.push(Ve(this.day,2)),t.push(Ve(this.hour,2)),t.push(Ve(this.minute,2)),t.push(Ve(this.second,2)),this.millisecond!==0&&(t.push("."),t.push(Ve(this.millisecond,3))),t.push("Z"),t.join("")}return super.toString(e)}toJSON(){return{...super.toJSON(),millisecond:this.millisecond}}};hl=ai;_.GeneralizedTime=hl;ai.NAME="GeneralizedTime";var dl,ci=class extends Ct{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=31}};dl=ci;_.DATE=dl;ci.NAME="DATE";var pl,ui=class extends Ct{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=32}};pl=ui;_.TimeOfDay=pl;ui.NAME="TimeOfDay";var gl,li=class extends Ct{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=33}};gl=li;_.DateTime=gl;li.NAME="DateTime";var ml,fi=class extends Ct{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=34}};ml=fi;_.Duration=ml;fi.NAME="Duration";var yl,hi=class extends Ct{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=14}};yl=hi;_.TIME=yl;hi.NAME="TIME";function og(r){let{result:e}=tn(r),t=e.valueBlock.value;return{n:Y(gt(t[1].toBigInt()),"base64url"),e:Y(gt(t[2].toBigInt()),"base64url"),d:Y(gt(t[3].toBigInt()),"base64url"),p:Y(gt(t[4].toBigInt()),"base64url"),q:Y(gt(t[5].toBigInt()),"base64url"),dp:Y(gt(t[6].toBigInt()),"base64url"),dq:Y(gt(t[7].toBigInt()),"base64url"),qi:Y(gt(t[8].toBigInt()),"base64url"),kty:"RSA",alg:"RS256"}}function ig(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 O("JWK was missing components","ERR_INVALID_PARAMETERS");let t=new we({value:[new de({value:0}),de.fromBigInt(mt(j(r.n,"base64url"))),de.fromBigInt(mt(j(r.e,"base64url"))),de.fromBigInt(mt(j(r.d,"base64url"))),de.fromBigInt(mt(j(r.p,"base64url"))),de.fromBigInt(mt(j(r.q,"base64url"))),de.fromBigInt(mt(j(r.dp,"base64url"))),de.fromBigInt(mt(j(r.dq,"base64url"))),de.fromBigInt(mt(j(r.qi,"base64url")))]}).toBER();return new Uint8Array(t,0,t.byteLength)}function sg(r){let{result:e}=tn(r),t=e.valueBlock.value[1].valueBlock.value[0].valueBlock.value;return{kty:"RSA",n:Y(gt(t[0].toBigInt()),"base64url"),e:Y(gt(t[1].toBigInt()),"base64url")}}function ag(r){if(r.n==null||r.e==null)throw new O("JWK was missing components","ERR_INVALID_PARAMETERS");let t=new we({value:[new we({value:[new ot({value:"1.2.840.113549.1.1.1"}),new Xt]}),new Qr({valueHex:new we({value:[de.fromBigInt(mt(j(r.n,"base64url"))),de.fromBigInt(mt(j(r.e,"base64url")))]}).toBER()})]}).toBER();return new Uint8Array(t,0,t.byteLength)}function gt(r){let e=r.toString(16);e.length%2>0&&(e=`0${e}`);let t=e.length/2,n=new Uint8Array(t),o=0,i=0;for(;o<t;)n[o]=parseInt(e.slice(i,i+2),16),o+=1,i+=2;return n}function mt(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(""))}var cg=16,sa=32,aa=1e4;async function ug(r,e){let t=_e.get(),o=new we({value:[new de({value:0}),new we({value:[new ot({value:"1.2.840.113549.1.1.1"}),new Xt]}),new Nt({valueHex:r.marshal()})]}).toBER(),i=new Uint8Array(o,0,o.byteLength),s=mr(cg),a=await ta($r,e,s,{c:aa,dkLen:sa}),c=mr(16),f=await t.subtle.importKey("raw",a,"AES-CBC",!1,["encrypt"]),u=await t.subtle.encrypt({name:"AES-CBC",iv:c},f,i),l=new we({value:[new Nt({valueHex:s}),new de({value:aa}),new de({value:sa}),new we({value:[new ot({value:"1.2.840.113549.2.11"}),new Xt]})]}),d=new we({value:[new ot({value:"1.2.840.113549.1.5.13"}),new we({value:[new we({value:[new ot({value:"1.2.840.113549.1.5.12"}),l]}),new we({value:[new ot({value:"2.16.840.1.101.3.4.1.42"}),new Nt({valueHex:c})]})]})]}),g=new we({value:[d,new Nt({valueHex:u})]}).toBER(),h=new Uint8Array(g,0,g.byteLength);return["-----BEGIN ENCRYPTED PRIVATE KEY-----",...Y(h,"base64pad").split(/(.{64})/).filter(Boolean),"-----END ENCRYPTED PRIVATE KEY-----"].join(`
8
+ `)}async function lg(r,e){let t=_e.get(),n;if(r.includes("-----BEGIN ENCRYPTED PRIVATE KEY-----")){let o=j(r.replace("-----BEGIN ENCRYPTED PRIVATE KEY-----","").replace("-----END ENCRYPTED PRIVATE KEY-----","").replace(/\n/g,"").trim(),"base64pad"),{result:i}=tn(o),{iv:s,salt:a,iterations:c,keySize:f,cipherText:u}=fg(i),l=await ta($r,e,a,{c,dkLen:f}),d=await t.subtle.importKey("raw",l,"AES-CBC",!1,["decrypt"]),E=Dn(await t.subtle.decrypt({name:"AES-CBC",iv:s},d,u)),{result:g}=tn(E);n=wl(g)}else if(r.includes("-----BEGIN PRIVATE KEY-----")){let o=j(r.replace("-----BEGIN PRIVATE KEY-----","").replace("-----END PRIVATE KEY-----","").replace(/\n/g,"").trim(),"base64pad"),{result:i}=tn(o);n=wl(i)}else throw new O("Could not parse private key from PEM data","ERR_INVALID_PARAMETERS");return ca(n)}function fg(r){let e=r.valueBlock.value[0];if(e.valueBlock.value[0].toString()!=="OBJECT IDENTIFIER : 1.2.840.113549.1.5.13")throw new O("Only pkcs5PBES2 encrypted private keys are supported","ERR_INVALID_PARAMS");let n=e.valueBlock.value[1].valueBlock.value[0];if(n.valueBlock.value[0].toString()!=="OBJECT IDENTIFIER : 1.2.840.113549.1.5.12")throw new O("Only pkcs5PBKDF2 key derivation functions are supported","ERR_INVALID_PARAMS");let i=n.valueBlock.value[1],s=Dn(i.valueBlock.value[0].getValue()),a=aa,c=sa;if(i.valueBlock.value.length===3)a=Number(i.valueBlock.value[1].toBigInt()),c=Number(i.valueBlock.value[2].toBigInt());else if(i.valueBlock.value.length===2)throw new O("Could not derive key size and iterations from PEM file - please use @libp2p/rsa to re-import your key","ERR_INVALID_PARAMS");let f=e.valueBlock.value[1].valueBlock.value[1],u=f.valueBlock.value[0].toString();if(u!=="OBJECT IDENTIFIER : 1.2.840.113549.3.7"){if(u!=="OBJECT IDENTIFIER : 1.3.14.3.2.7"){if(u!=="OBJECT IDENTIFIER : 2.16.840.1.101.3.4.1.2"){if(u!=="OBJECT IDENTIFIER : 2.16.840.1.101.3.4.1.22"){if(u!=="OBJECT IDENTIFIER : 2.16.840.1.101.3.4.1.42")throw new O("Only AES-CBC encryption schemes are supported","ERR_INVALID_PARAMS")}}}}let l=Dn(f.valueBlock.value[1].getValue());return{cipherText:Dn(r.valueBlock.value[1].getValue()),salt:s,iterations:a,keySize:c,iv:l}}function wl(r){return Dn(r.valueBlock.value[2].getValue())}function Dn(r){return new Uint8Array(r,0,r.byteLength)}async function bl(r){let e=await _e.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 vl(e);return{privateKey:t[0],publicKey:t[1]}}async function ua(r){let t=[await _e.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await hg(r)],n=await vl({privateKey:t[0],publicKey:t[1]});return{privateKey:n[0],publicKey:n[1]}}async function xl(r,e){let t=await _e.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await _e.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},t,e instanceof Uint8Array?e:e.subarray());return new Uint8Array(n,0,n.byteLength)}async function El(r,e,t){let n=await _e.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return _e.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,t instanceof Uint8Array?t:t.subarray())}async function vl(r){if(r.privateKey==null||r.publicKey==null)throw new O("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([_e.get().subtle.exportKey("jwk",r.privateKey),_e.get().subtle.exportKey("jwk",r.publicKey)])}async function hg(r){return _e.get().subtle.importKey("jwk",{kty:r.kty,n:r.n,e:r.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function pi(r){if(r.kty!=="RSA")throw new O("invalid key type","ERR_INVALID_KEY_TYPE");if(r.n==null)throw new O("invalid key modulus","ERR_INVALID_KEY_MODULUS");return j(r.n,"base64url").length*8}var On=8192,Vn=class{_key;constructor(e){this._key=e}verify(e,t){return El(this._key,t,e)}marshal(){return Qt.jwkToPkix(this._key)}get bytes(){return dt.encode({Type:fe.RSA,Data:this.marshal()}).subarray()}equals(e){return ce(this.bytes,e.bytes)}hash(){let e=ve.digest(this.bytes);return Ye(e)?e.then(({bytes:t})=>t):e.bytes}},rn=class{_key;_publicKey;constructor(e,t){this._key=e,this._publicKey=t}genSecret(){return mr(16)}sign(e){return xl(this._key,e)}get public(){if(this._publicKey==null)throw new O("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Vn(this._publicKey)}marshal(){return Qt.jwkToPkcs1(this._key)}get bytes(){return Rt.encode({Type:fe.RSA,Data:this.marshal()}).subarray()}equals(e){return ce(this.bytes,e.bytes)}hash(){let e=ve.digest(this.bytes);return Ye(e)?e.then(({bytes:t})=>t):e.bytes}async id(){let e=await this.public.hash();return Y(e,"base58btc")}async export(e,t="pkcs-8"){if(t==="pkcs-8")return Qt.exportToPem(this,e);if(t==="libp2p-key")return Gr(this.bytes,e);throw new O(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};async function ca(r){let e=Qt.pkcs1ToJwk(r);if(pi(e)>On)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await ua(e);return new rn(t.privateKey,t.publicKey)}function pg(r){let e=Qt.pkixToJwk(r);if(pi(e)>On)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Vn(e)}async function gg(r){if(pi(r)>On)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await ua(r);return new rn(e.privateKey,e.publicKey)}async function mg(r){if(r>On)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await bl(r);return new rn(e.privateKey,e.publicKey)}var ga={};ye(ga,{Secp256k1PrivateKey:()=>Fn,Secp256k1PublicKey:()=>Pn,generateKeyPair:()=>Tg,unmarshalSecp256k1PrivateKey:()=>Rg,unmarshalSecp256k1PublicKey:()=>kg});var yg=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]),er=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),tr=new Uint32Array(64),fa=class extends Hr{constructor(){super(64,32,8,!1),this.A=er[0]|0,this.B=er[1]|0,this.C=er[2]|0,this.D=er[3]|0,this.E=er[4]|0,this.F=er[5]|0,this.G=er[6]|0,this.H=er[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)tr[l]=e.getUint32(t,!1);for(let l=16;l<64;l++){let d=tr[l-15],E=tr[l-2],g=tt(d,7)^tt(d,18)^d>>>3,h=tt(E,17)^tt(E,19)^E>>>10;tr[l]=h+tr[l-7]+g+tr[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=tt(a,6)^tt(a,11)^tt(a,25),E=u+d+Qc(a,c,f)+yg[l]+tr[l]|0,h=(tt(n,2)^tt(n,13)^tt(n,22))+eu(n,o,i)|0;u=f,f=c,c=a,a=s+E|0,s=i,i=o,o=n,n=E+h|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(){tr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Bl=lo(()=>new fa);function wg(r){let e=En(r);ht(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:bg,hexToBytes:xg}=po,wr={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(r){let{Err:e}=wr;if(r.length<2||r[0]!==2)throw new e("Invalid signature integer tag");let t=r[1],n=r.subarray(2,t+2);if(!t||n.length!==t)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:bg(n),l:r.subarray(t+2)}},toSig(r){let{Err:e}=wr,t=typeof r=="string"?xg(r):r;Kr(t);let n=t.length;if(n<2||t[0]!=48)throw new e("Invalid signature tag");if(t[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:o,l:i}=wr._parseInt(t.subarray(2)),{d:s,l:a}=wr._parseInt(i);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:o,s}},hexFromSig(r){let e=f=>Number.parseInt(f[0],16)&8?"00"+f:f,t=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=e(t(r.s)),o=e(t(r.r)),i=n.length/2,s=o.length/2,a=t(i),c=t(s);return`30${t(s+i+4)}02${c}${o}02${a}${n}`}},Lt=BigInt(0),We=BigInt(1),j1=BigInt(2),Al=BigInt(3),Y1=BigInt(4);function Eg(r){let e=wg(r),{Fp:t}=e,n=e.toBytes||((g,h,p)=>{let b=h.toAffine();return At(Uint8Array.from([4]),t.toBytes(b.x),t.toBytes(b.y))}),o=e.fromBytes||(g=>{let h=g.subarray(1),p=t.fromBytes(h.subarray(0,t.BYTES)),b=t.fromBytes(h.subarray(t.BYTES,2*t.BYTES));return{x:p,y:b}});function i(g){let{a:h,b:p}=e,b=t.sqr(g),R=t.mul(b,g);return t.add(t.add(R,t.mul(g,h)),p)}if(!t.eql(t.sqr(e.Gy),i(e.Gx)))throw new Error("bad generator point: equation left != right");function s(g){return typeof g=="bigint"&&Lt<g&&g<e.n}function a(g){if(!s(g))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(g){let{allowedPrivateKeyLengths:h,nByteLength:p,wrapPrivateKey:b,n:R}=e;if(h&&typeof g!="bigint"){if(Gt(g)&&(g=vt(g)),typeof g!="string"||!h.includes(g.length))throw new Error("Invalid key");g=g.padStart(p*2,"0")}let v;try{v=typeof g=="bigint"?g:Bt(ue("private key",g,p))}catch{throw new Error(`private key must be ${p} bytes, hex or bigint, not ${typeof g}`)}return b&&(v=re(v,R)),a(v),v}let f=new Map;function u(g){if(!(g instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(h,p,b){if(this.px=h,this.py=p,this.pz=b,h==null||!t.isValid(h))throw new Error("x required");if(p==null||!t.isValid(p))throw new Error("y required");if(b==null||!t.isValid(b))throw new Error("z required")}static fromAffine(h){let{x:p,y:b}=h||{};if(!h||!t.isValid(p)||!t.isValid(b))throw new Error("invalid affine point");if(h instanceof l)throw new Error("projective point not allowed");let R=v=>t.eql(v,t.ZERO);return R(p)&&R(b)?l.ZERO:new l(p,b,t.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(h){let p=t.invertBatch(h.map(b=>b.pz));return h.map((b,R)=>b.toAffine(p[R])).map(l.fromAffine)}static fromHex(h){let p=l.fromAffine(o(ue("pointHex",h)));return p.assertValidity(),p}static fromPrivateKey(h){return l.BASE.multiply(c(h))}_setWindowSize(h){this._WINDOW_SIZE=h,f.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!t.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:h,y:p}=this.toAffine();if(!t.isValid(h)||!t.isValid(p))throw new Error("bad point: x or y not FE");let b=t.sqr(p),R=i(h);if(!t.eql(b,R))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:h}=this.toAffine();if(t.isOdd)return!t.isOdd(h);throw new Error("Field doesn't support isOdd")}equals(h){u(h);let{px:p,py:b,pz:R}=this,{px:v,py:L,pz:S}=h,k=t.eql(t.mul(p,S),t.mul(v,R)),C=t.eql(t.mul(b,S),t.mul(L,R));return k&&C}negate(){return new l(this.px,t.neg(this.py),this.pz)}double(){let{a:h,b:p}=e,b=t.mul(p,Al),{px:R,py:v,pz:L}=this,S=t.ZERO,k=t.ZERO,C=t.ZERO,y=t.mul(R,R),N=t.mul(v,v),V=t.mul(L,L),T=t.mul(R,v);return T=t.add(T,T),C=t.mul(R,L),C=t.add(C,C),S=t.mul(h,C),k=t.mul(b,V),k=t.add(S,k),S=t.sub(N,k),k=t.add(N,k),k=t.mul(S,k),S=t.mul(T,S),C=t.mul(b,C),V=t.mul(h,V),T=t.sub(y,V),T=t.mul(h,T),T=t.add(T,C),C=t.add(y,y),y=t.add(C,y),y=t.add(y,V),y=t.mul(y,T),k=t.add(k,y),V=t.mul(v,L),V=t.add(V,V),y=t.mul(V,T),S=t.sub(S,y),C=t.mul(V,N),C=t.add(C,C),C=t.add(C,C),new l(S,k,C)}add(h){u(h);let{px:p,py:b,pz:R}=this,{px:v,py:L,pz:S}=h,k=t.ZERO,C=t.ZERO,y=t.ZERO,N=e.a,V=t.mul(e.b,Al),T=t.mul(p,v),P=t.mul(b,L),H=t.mul(R,S),J=t.add(p,b),x=t.add(v,L);J=t.mul(J,x),x=t.add(T,P),J=t.sub(J,x),x=t.add(p,R);let A=t.add(v,S);return x=t.mul(x,A),A=t.add(T,H),x=t.sub(x,A),A=t.add(b,R),k=t.add(L,S),A=t.mul(A,k),k=t.add(P,H),A=t.sub(A,k),y=t.mul(N,x),k=t.mul(V,H),y=t.add(k,y),k=t.sub(P,y),y=t.add(P,y),C=t.mul(k,y),P=t.add(T,T),P=t.add(P,T),H=t.mul(N,H),x=t.mul(V,x),P=t.add(P,H),H=t.sub(T,H),H=t.mul(N,H),x=t.add(x,H),T=t.mul(P,x),C=t.add(C,T),T=t.mul(A,x),k=t.mul(J,k),k=t.sub(k,T),T=t.mul(J,P),y=t.mul(A,y),y=t.add(y,T),new l(k,C,y)}subtract(h){return this.add(h.negate())}is0(){return this.equals(l.ZERO)}wNAF(h){return E.wNAFCached(this,f,h,p=>{let b=t.invertBatch(p.map(R=>R.pz));return p.map((R,v)=>R.toAffine(b[v])).map(l.fromAffine)})}multiplyUnsafe(h){let p=l.ZERO;if(h===Lt)return p;if(a(h),h===We)return this;let{endo:b}=e;if(!b)return E.unsafeLadder(this,h);let{k1neg:R,k1:v,k2neg:L,k2:S}=b.splitScalar(h),k=p,C=p,y=this;for(;v>Lt||S>Lt;)v&We&&(k=k.add(y)),S&We&&(C=C.add(y)),y=y.double(),v>>=We,S>>=We;return R&&(k=k.negate()),L&&(C=C.negate()),C=new l(t.mul(C.px,b.beta),C.py,C.pz),k.add(C)}multiply(h){a(h);let p=h,b,R,{endo:v}=e;if(v){let{k1neg:L,k1:S,k2neg:k,k2:C}=v.splitScalar(p),{p:y,f:N}=this.wNAF(S),{p:V,f:T}=this.wNAF(C);y=E.constTimeNegate(L,y),V=E.constTimeNegate(k,V),V=new l(t.mul(V.px,v.beta),V.py,V.pz),b=y.add(V),R=N.add(T)}else{let{p:L,f:S}=this.wNAF(p);b=L,R=S}return l.normalizeZ([b,R])[0]}multiplyAndAddUnsafe(h,p,b){let R=l.BASE,v=(S,k)=>k===Lt||k===We||!S.equals(R)?S.multiplyUnsafe(k):S.multiply(k),L=v(this,p).add(v(h,b));return L.is0()?void 0:L}toAffine(h){let{px:p,py:b,pz:R}=this,v=this.is0();h==null&&(h=v?t.ONE:t.inv(R));let L=t.mul(p,h),S=t.mul(b,h),k=t.mul(R,h);if(v)return{x:t.ZERO,y:t.ZERO};if(!t.eql(k,t.ONE))throw new Error("invZ was invalid");return{x:L,y:S}}isTorsionFree(){let{h,isTorsionFree:p}=e;if(h===We)return!0;if(p)return p(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h,clearCofactor:p}=e;return h===We?this:p?p(l,this):this.multiplyUnsafe(e.h)}toRawBytes(h=!0){return this.assertValidity(),n(l,this,h)}toHex(h=!0){return vt(this.toRawBytes(h))}}l.BASE=new l(e.Gx,e.Gy,t.ONE),l.ZERO=new l(t.ZERO,t.ONE,t.ZERO);let d=e.nBitLength,E=yo(l,e.endo?Math.ceil(d/2):d);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:i,isWithinCurveOrder:s}}function vg(r){let e=En(r);return ht(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function Sl(r){let e=vg(r),{Fp:t,n}=e,o=t.BYTES+1,i=2*t.BYTES+1;function s(x){return Lt<x&&x<t.ORDER}function a(x){return re(x,n)}function c(x){return go(x,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=Eg({...e,toBytes(x,A,M){let B=A.toAffine(),w=t.toBytes(B.x),D=At;return M?D(Uint8Array.from([A.hasEvenY()?2:3]),w):D(Uint8Array.from([4]),w,t.toBytes(B.y))},fromBytes(x){let A=x.length,M=x[0],B=x.subarray(1);if(A===o&&(M===2||M===3)){let w=Bt(B);if(!s(w))throw new Error("Point is not on curve");let D=l(w),F;try{F=t.sqrt(D)}catch(G){let ee=G instanceof Error?": "+G.message:"";throw new Error("Point is not on curve"+ee)}let $=(F&We)===We;return(M&1)===1!==$&&(F=t.neg(F)),{x:w,y:F}}else if(A===i&&M===4){let w=t.fromBytes(B.subarray(0,t.BYTES)),D=t.fromBytes(B.subarray(t.BYTES,2*t.BYTES));return{x:w,y:D}}else throw new Error(`Point of length ${A} was invalid. Expected ${o} compressed bytes or ${i} uncompressed bytes`)}}),E=x=>vt(Yt(x,e.nByteLength));function g(x){let A=n>>We;return x>A}function h(x){return g(x)?a(-x):x}let p=(x,A,M)=>Bt(x.slice(A,M));class b{constructor(A,M,B){this.r=A,this.s=M,this.recovery=B,this.assertValidity()}static fromCompact(A){let M=e.nByteLength;return A=ue("compactSignature",A,M*2),new b(p(A,0,M),p(A,M,2*M))}static fromDER(A){let{r:M,s:B}=wr.toSig(ue("DER",A));return new b(M,B)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(A){return new b(this.r,this.s,A)}recoverPublicKey(A){let{r:M,s:B,recovery:w}=this,D=C(ue("msgHash",A));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let F=w===2||w===3?M+e.n:M;if(F>=t.ORDER)throw new Error("recovery id 2 or 3 invalid");let $=w&1?"03":"02",z=f.fromHex($+E(F)),G=c(F),ee=a(-D*G),W=a(B*G),X=f.BASE.multiplyAndAddUnsafe(z,ee,W);if(!X)throw new Error("point at infinify");return X.assertValidity(),X}hasHighS(){return g(this.s)}normalizeS(){return this.hasHighS()?new b(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return lr(this.toDERHex())}toDERHex(){return wr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return lr(this.toCompactHex())}toCompactHex(){return E(this.r)+E(this.s)}}let R={isValidPrivateKey(x){try{return u(x),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let x=Vs(e.n);return fu(e.randomBytes(x),e.n)},precompute(x=8,A=f.BASE){return A._setWindowSize(x),A.multiply(BigInt(3)),A}};function v(x,A=!0){return f.fromPrivateKey(x).toRawBytes(A)}function L(x){let A=Gt(x),M=typeof x=="string",B=(A||M)&&x.length;return A?B===o||B===i:M?B===2*o||B===2*i:x instanceof f}function S(x,A,M=!0){if(L(x))throw new Error("first arg must be private key");if(!L(A))throw new Error("second arg must be public key");return f.fromHex(A).multiply(u(x)).toRawBytes(M)}let k=e.bits2int||function(x){let A=Bt(x),M=x.length*8-e.nBitLength;return M>0?A>>BigInt(M):A},C=e.bits2int_modN||function(x){return a(k(x))},y=xn(e.nBitLength);function N(x){if(typeof x!="bigint")throw new Error("bigint expected");if(!(Lt<=x&&x<y))throw new Error(`bigint expected < 2^${e.nBitLength}`);return Yt(x,e.nByteLength)}function V(x,A,M=T){if(["recovered","canonical"].some(se=>se in M))throw new Error("sign() legacy options not supported");let{hash:B,randomBytes:w}=e,{lowS:D,prehash:F,extraEntropy:$}=M;D==null&&(D=!0),x=ue("msgHash",x),F&&(x=ue("prehashed msgHash",B(x)));let z=C(x),G=u(A),ee=[N(G),N(z)];if($!=null&&$!==!1){let se=$===!0?w(t.BYTES):$;ee.push(ue("extraEntropy",se))}let W=At(...ee),X=z;function he(se){let xe=k(se);if(!d(xe))return;let Ee=c(xe),ge=f.BASE.multiply(xe).toAffine(),Ie=a(ge.x);if(Ie===Lt)return;let bt=a(Ee*a(X+Ie*G));if(bt===Lt)return;let ir=(ge.x===Ie?0:2)|Number(ge.y&We),fn=bt;return D&&g(bt)&&(fn=h(bt),ir^=1),new b(Ie,fn,ir)}return{seed:W,k2sig:he}}let T={lowS:e.lowS,prehash:!1},P={lowS:e.lowS,prehash:!1};function H(x,A,M=T){let{seed:B,k2sig:w}=V(x,A,M),D=e;return _s(D.hash.outputLen,D.nByteLength,D.hmac)(B,w)}f.BASE._setWindowSize(8);function J(x,A,M,B=P){let w=x;if(A=ue("msgHash",A),M=ue("publicKey",M),"strict"in B)throw new Error("options.strict was renamed to lowS");let{lowS:D,prehash:F}=B,$,z;try{if(typeof w=="string"||Gt(w))try{$=b.fromDER(w)}catch(ge){if(!(ge instanceof wr.Err))throw ge;$=b.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:ge,s:Ie}=w;$=new b(ge,Ie)}else throw new Error("PARSE");z=f.fromHex(M)}catch(ge){if(ge.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(D&&$.hasHighS())return!1;F&&(A=e.hash(A));let{r:G,s:ee}=$,W=C(A),X=c(ee),he=a(W*X),se=a(G*X),xe=f.BASE.multiplyAndAddUnsafe(z,he,se)?.toAffine();return xe?a(xe.x)===G:!1}return{CURVE:e,getPublicKey:v,getSharedSecret:S,sign:H,verify:J,ProjectivePoint:f,Signature:b,utils:R}}function Bg(r){return{hash:r,hmac:(e,...t)=>In(r,e,uo(...t)),randomBytes:Mr}}function Il(r,e){let t=n=>Sl({...r,...Bg(n)});return Object.freeze({...t(e),create:t})}var Tl=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Rl=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Ag=BigInt(1),ha=BigInt(2),kl=(r,e)=>(r+e/ha)/e;function Sg(r){let e=Tl,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,d=ie(l,t,e)*u%e,E=ie(d,ha,e)*f%e,g=ie(E,o,e)*E%e,h=ie(g,i,e)*g%e,p=ie(h,a,e)*h%e,b=ie(p,c,e)*p%e,R=ie(b,a,e)*h%e,v=ie(R,t,e)*u%e,L=ie(v,s,e)*g%e,S=ie(L,n,e)*f%e,k=ie(S,ha,e);if(!da.eql(da.sqr(k),r))throw new Error("Cannot find square root");return k}var da=mo(Tl,void 0,void 0,{sqrt:Sg}),st=Il({a:BigInt(0),b:BigInt(7),Fp:da,n:Rl,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:r=>{let e=Rl,t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Ag*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),o=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=t,s=BigInt("0x100000000000000000000000000000000"),a=kl(i*r,e),c=kl(-n*r,e),f=re(r-a*t-c*o,e),u=re(-a*n-c*i,e),l=f>s,d=u>s;if(l&&(f=e-f),d&&(u=e-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+r);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},Bl),n2=BigInt(0);var o2=st.ProjectivePoint;function Nl(){return st.utils.randomPrivateKey()}function Cl(r,e){let t=ve.digest(e instanceof Uint8Array?e:e.subarray());if(Ye(t))return t.then(({digest:n})=>st.sign(n,r).toDERRawBytes()).catch(n=>{throw new O(String(n),"ERR_INVALID_INPUT")});try{return st.sign(t.digest,r).toDERRawBytes()}catch(n){throw new O(String(n),"ERR_INVALID_INPUT")}}function _l(r,e,t){let n=ve.digest(t instanceof Uint8Array?t:t.subarray());if(Ye(n))return n.then(({digest:o})=>st.verify(e,o,r)).catch(o=>{throw new O(String(o),"ERR_INVALID_INPUT")});try{return st.verify(e,n.digest,r)}catch(o){throw new O(String(o),"ERR_INVALID_INPUT")}}function Ul(r){return st.ProjectivePoint.fromHex(r).toRawBytes(!0)}function Ll(r){try{st.getPublicKey(r,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}function pa(r){try{st.ProjectivePoint.fromHex(r)}catch(e){throw new O(String(e),"ERR_INVALID_PUBLIC_KEY")}}function Dl(r){try{return st.getPublicKey(r,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}var Pn=class{_key;constructor(e){pa(e),this._key=e}verify(e,t){return _l(this._key,t,e)}marshal(){return Ul(this._key)}get bytes(){return dt.encode({Type:fe.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return ce(this.bytes,e.bytes)}async hash(){let e=ve.digest(this.bytes),t;return Ye(e)?{bytes:t}=await e:t=e.bytes,t}},Fn=class{_key;_publicKey;constructor(e,t){this._key=e,this._publicKey=t??Dl(e),Ll(this._key),pa(this._publicKey)}sign(e){return Cl(this._key,e)}get public(){return new Pn(this._publicKey)}marshal(){return this._key}get bytes(){return Rt.encode({Type:fe.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return ce(this.bytes,e.bytes)}hash(){let e=ve.digest(this.bytes);return Ye(e)?e.then(({bytes:t})=>t):e.bytes}async id(){let e=await this.public.hash();return Y(e,"base58btc")}async export(e,t="libp2p-key"){if(t==="libp2p-key")return Gr(this.bytes,e);throw new O(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Rg(r){return new Fn(r)}function kg(r){return new Pn(r)}async function Tg(){let r=Nl();return new Fn(r)}var gi={rsa:la,ed25519:ea,secp256k1:ga};function Ng(r){let e=Object.keys(gi).join(" / ");return new O(`invalid or unsupported key type ${r}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function ma(r){let e=dt.decode(r),t=e.Data??new Uint8Array;switch(e.Type){case fe.RSA:return gi.rsa.unmarshalRsaPublicKey(t);case fe.Ed25519:return gi.ed25519.unmarshalEd25519PublicKey(t);case fe.Secp256k1:return gi.secp256k1.unmarshalSecp256k1PublicKey(t);default:throw Ng(e.Type??"unknown")}}var fm=Ot(mi(),1);var _g="/",Ug=new TextEncoder().encode(_g),E2=Ug[0];var hm=Ot(wa(),1);var Pl="ERR_IPNS_EXPIRED_RECORD",yi="ERR_UNRECOGNIZED_VALIDITY";var Dt="ERR_SIGNATURE_VERIFICATION";var ba="ERR_UNDEFINED_PARAMETER",Fl="ERR_INVALID_RECORD_DATA",Ml="ERR_INVALID_VALUE",Hl="ERR_INVALID_EMBEDDED_KEY";var $l="ERR_RECORD_TOO_LARGE";var at;(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=()=>An(t)}(e=r.ValidityType||(r.ValidityType={}));let n;r.codec=()=>(n==null&&(n=Wr((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)=>{let s={},a=i==null?o.len:o.pos+i;for(;o.pos<a;){let c=o.uint32();switch(c>>>3){case 1:s.value=o.bytes();break;case 2:s.signatureV1=o.bytes();break;case 3:s.validityType=r.ValidityType.codec().decode(o);break;case 4:s.validity=o.bytes();break;case 5:s.sequence=o.uint64();break;case 6:s.ttl=o.uint64();break;case 7:s.pubKey=o.bytes();break;case 8:s.signatureV2=o.bytes();break;case 9:s.data=o.bytes();break;default:o.skipType(c&7);break}}return s})),n),r.encode=o=>Yr(o,r.codec()),r.decode=o=>jr(o,r.codec())})(at||(at={}));var Lg=["string","number","bigint","symbol"],Dg=["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 ql(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(Lg.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(Vg(r))return"Buffer";let t=Og(r);return t||"Object"}function Vg(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function Og(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(Dg.includes(e))return e}var m=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}};m.uint=new m(0,"uint",!0);m.negint=new m(1,"negint",!0);m.bytes=new m(2,"bytes",!0);m.string=new m(3,"string",!0);m.array=new m(4,"array",!1);m.map=new m(5,"map",!1);m.tag=new m(6,"tag",!1);m.float=new m(7,"float",!0);m.false=new m(7,"false",!0);m.true=new m(7,"true",!0);m.null=new m(7,"null",!0);m.undefined=new m(7,"undefined",!0);m.break=new m(7,"break",!0);var U=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 nn=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",Pg=new TextDecoder,Fg=new TextEncoder;function wi(r){return nn&&globalThis.Buffer.isBuffer(r)}function Yl(r){return r instanceof Uint8Array?wi(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Zl=nn?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):Gl(r,e,t):(r,e,t)=>t-e>64?Pg.decode(r.subarray(e,t)):Gl(r,e,t),Wl=nn?r=>r.length>64?globalThis.Buffer.from(r):zl(r):r=>r.length>64?Fg.encode(r):zl(r);var on=nn?(r,e,t)=>wi(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),Jl=nn?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Yl(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},Xl=nn?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Ql(r,e){if(wi(r)&&wi(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 zl(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 Gl(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 Mg(n)}var jl=4096;function Mg(r){let e=r.length;if(e<=jl)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=jl));return t}var Hg=256,bi=class{constructor(e=Hg){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=Xl(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=on(n,0,this.cursor)}else t=Jl(this.chunks,this.cursor);return e&&this.reset(),t}};var K="CBOR decode error:",xa="CBOR encode error:",Mn=[];Mn[23]=1;Mn[24]=2;Mn[25]=3;Mn[26]=5;Mn[27]=9;function Vt(r,e,t){if(r.length-e<t)throw new Error(`${K} not enough data for type`)}var be=[24,256,65536,4294967296,BigInt("18446744073709551616")];function $e(r,e,t){Vt(r,e,1);let n=r[e];if(t.strict===!0&&n<be[0])throw new Error(`${K} integer encoded in more bytes than necessary (strict decode)`);return n}function Ke(r,e,t){Vt(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<be[1])throw new Error(`${K} integer encoded in more bytes than necessary (strict decode)`);return n}function qe(r,e,t){Vt(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<be[2])throw new Error(`${K} integer encoded in more bytes than necessary (strict decode)`);return n}function ze(r,e,t){Vt(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<be[3])throw new Error(`${K} 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(`${K} integers outside of the safe integer range are not supported`)}function ef(r,e,t,n){return new U(m.uint,$e(r,e+1,n),2)}function tf(r,e,t,n){return new U(m.uint,Ke(r,e+1,n),3)}function rf(r,e,t,n){return new U(m.uint,qe(r,e+1,n),5)}function nf(r,e,t,n){return new U(m.uint,ze(r,e+1,n),9)}function Je(r,e){return Se(r,0,e.value)}function Se(r,e,t){if(t<be[0]){let n=Number(t);r.push([e|n])}else if(t<be[1]){let n=Number(t);r.push([e|24,n])}else if(t<be[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<be[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<be[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(`${K} encountered BigInt larger than allowable range`)}}Je.encodedSize=function(e){return Se.encodedSize(e.value)};Se.encodedSize=function(e){return e<be[0]?1:e<be[1]?2:e<be[2]?3:e<be[3]?5:9};Je.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function of(r,e,t,n){return new U(m.negint,-1-$e(r,e+1,n),2)}function sf(r,e,t,n){return new U(m.negint,-1-Ke(r,e+1,n),3)}function af(r,e,t,n){return new U(m.negint,-1-qe(r,e+1,n),5)}var Ea=BigInt(-1),cf=BigInt(1);function uf(r,e,t,n){let o=ze(r,e+1,n);if(typeof o!="bigint"){let i=-1-o;if(i>=Number.MIN_SAFE_INTEGER)return new U(m.negint,i,9)}if(n.allowBigInt!==!0)throw new Error(`${K} integers outside of the safe integer range are not supported`);return new U(m.negint,Ea-BigInt(o),9)}function xi(r,e){let t=e.value,n=typeof t=="bigint"?t*Ea-cf:t*-1-1;Se(r,e.type.majorEncoded,n)}xi.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*Ea-cf:t*-1-1;return n<be[0]?1:n<be[1]?2:n<be[2]?3:n<be[3]?5:9};xi.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function Hn(r,e,t,n){Vt(r,e,t+n);let o=on(r,e+t,e+t+n);return new U(m.bytes,o,t+n)}function lf(r,e,t,n){return Hn(r,e,1,t)}function ff(r,e,t,n){return Hn(r,e,2,$e(r,e+1,n))}function hf(r,e,t,n){return Hn(r,e,3,Ke(r,e+1,n))}function df(r,e,t,n){return Hn(r,e,5,qe(r,e+1,n))}function pf(r,e,t,n){let o=ze(r,e+1,n);if(typeof o=="bigint")throw new Error(`${K} 64-bit integer bytes lengths not supported`);return Hn(r,e,9,o)}function Ei(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===m.string?Wl(r.value):r.value),r.encodedBytes}function sn(r,e){let t=Ei(e);Se(r,e.type.majorEncoded,t.length),r.push(t)}sn.encodedSize=function(e){let t=Ei(e);return Se.encodedSize(t.length)+t.length};sn.compareTokens=function(e,t){return Kg(Ei(e),Ei(t))};function Kg(r,e){return r.length<e.length?-1:r.length>e.length?1:Ql(r,e)}function $n(r,e,t,n,o){let i=t+n;Vt(r,e,i);let s=new U(m.string,Zl(r,e+t,e+i),i);return o.retainStringBytes===!0&&(s.byteValue=on(r,e+t,e+i)),s}function gf(r,e,t,n){return $n(r,e,1,t,n)}function mf(r,e,t,n){return $n(r,e,2,$e(r,e+1,n),n)}function yf(r,e,t,n){return $n(r,e,3,Ke(r,e+1,n),n)}function wf(r,e,t,n){return $n(r,e,5,qe(r,e+1,n),n)}function bf(r,e,t,n){let o=ze(r,e+1,n);if(typeof o=="bigint")throw new Error(`${K} 64-bit integer string lengths not supported`);return $n(r,e,9,o,n)}var xf=sn;function an(r,e,t,n){return new U(m.array,n,t)}function Ef(r,e,t,n){return an(r,e,1,t)}function vf(r,e,t,n){return an(r,e,2,$e(r,e+1,n))}function Bf(r,e,t,n){return an(r,e,3,Ke(r,e+1,n))}function Af(r,e,t,n){return an(r,e,5,qe(r,e+1,n))}function Sf(r,e,t,n){let o=ze(r,e+1,n);if(typeof o=="bigint")throw new Error(`${K} 64-bit integer array lengths not supported`);return an(r,e,9,o)}function If(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${K} indefinite length items not allowed`);return an(r,e,1,1/0)}function vi(r,e){Se(r,m.array.majorEncoded,e.value)}vi.compareTokens=Je.compareTokens;vi.encodedSize=function(e){return Se.encodedSize(e.value)};function cn(r,e,t,n){return new U(m.map,n,t)}function Rf(r,e,t,n){return cn(r,e,1,t)}function kf(r,e,t,n){return cn(r,e,2,$e(r,e+1,n))}function Tf(r,e,t,n){return cn(r,e,3,Ke(r,e+1,n))}function Nf(r,e,t,n){return cn(r,e,5,qe(r,e+1,n))}function Cf(r,e,t,n){let o=ze(r,e+1,n);if(typeof o=="bigint")throw new Error(`${K} 64-bit integer map lengths not supported`);return cn(r,e,9,o)}function _f(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${K} indefinite length items not allowed`);return cn(r,e,1,1/0)}function Bi(r,e){Se(r,m.map.majorEncoded,e.value)}Bi.compareTokens=Je.compareTokens;Bi.encodedSize=function(e){return Se.encodedSize(e.value)};function Uf(r,e,t,n){return new U(m.tag,t,1)}function Lf(r,e,t,n){return new U(m.tag,$e(r,e+1,n),2)}function Df(r,e,t,n){return new U(m.tag,Ke(r,e+1,n),3)}function Vf(r,e,t,n){return new U(m.tag,qe(r,e+1,n),5)}function Of(r,e,t,n){return new U(m.tag,ze(r,e+1,n),9)}function Ai(r,e){Se(r,m.tag.majorEncoded,e.value)}Ai.compareTokens=Je.compareTokens;Ai.encodedSize=function(e){return Se.encodedSize(e.value)};var Zg=20,Wg=21,Jg=22,Xg=23;function Pf(r,e,t,n){if(n.allowUndefined===!1)throw new Error(`${K} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new U(m.null,null,1):new U(m.undefined,void 0,1)}function Ff(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${K} indefinite length items not allowed`);return new U(m.break,void 0,1)}function va(r,e,t){if(t){if(t.allowNaN===!1&&Number.isNaN(r))throw new Error(`${K} NaN values are not supported`);if(t.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${K} Infinity values are not supported`)}return new U(m.float,r,e)}function Mf(r,e,t,n){return va(Ba(r,e+1),3,n)}function Hf(r,e,t,n){return va(Aa(r,e+1),5,n)}function $f(r,e,t,n){return va(Gf(r,e+1),9,n)}function Si(r,e,t){let n=e.value;if(n===!1)r.push([m.float.majorEncoded|Zg]);else if(n===!0)r.push([m.float.majorEncoded|Wg]);else if(n===null)r.push([m.float.majorEncoded|Jg]);else if(n===void 0)r.push([m.float.majorEncoded|Xg]);else{let o,i=!1;(!t||t.float64!==!0)&&(qf(n),o=Ba(ct,1),n===o||Number.isNaN(n)?(ct[0]=249,r.push(ct.slice(0,3)),i=!0):(zf(n),o=Aa(ct,1),n===o&&(ct[0]=250,r.push(ct.slice(0,5)),i=!0))),i||(Qg(n),o=Gf(ct,1),ct[0]=251,r.push(ct.slice(0,9)))}}Si.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){qf(n);let o=Ba(ct,1);if(n===o||Number.isNaN(n))return 3;if(zf(n),o=Aa(ct,1),n===o)return 5}return 9};var Kf=new ArrayBuffer(9),Xe=new DataView(Kf,1),ct=new Uint8Array(Kf,0);function qf(r){if(r===1/0)Xe.setUint16(0,31744,!1);else if(r===-1/0)Xe.setUint16(0,64512,!1);else if(Number.isNaN(r))Xe.setUint16(0,32256,!1);else{Xe.setFloat32(0,r);let e=Xe.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)Xe.setUint16(0,31744,!1);else if(t===0)Xe.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let o=t-127;o<-24?Xe.setUint16(0,0):o<-14?Xe.setUint16(0,(e&2147483648)>>16|1<<24+o,!1):Xe.setUint16(0,(e&2147483648)>>16|o+15<<10|n>>13,!1)}}}function Ba(r,e){if(r.length-e<2)throw new Error(`${K} 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 zf(r){Xe.setFloat32(0,r,!1)}function Aa(r,e){if(r.length-e<4)throw new Error(`${K} not enough data for float32`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,4).getFloat32(0,!1)}function Qg(r){Xe.setFloat64(0,r,!1)}function Gf(r,e){if(r.length-e<8)throw new Error(`${K} not enough data for float64`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,8).getFloat64(0,!1)}Si.compareTokens=Je.compareTokens;function Q(r,e,t){throw new Error(`${K} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function Ii(r){return()=>{throw new Error(`${K} ${r}`)}}var I=[];for(let r=0;r<=23;r++)I[r]=Q;I[24]=ef;I[25]=tf;I[26]=rf;I[27]=nf;I[28]=Q;I[29]=Q;I[30]=Q;I[31]=Q;for(let r=32;r<=55;r++)I[r]=Q;I[56]=of;I[57]=sf;I[58]=af;I[59]=uf;I[60]=Q;I[61]=Q;I[62]=Q;I[63]=Q;for(let r=64;r<=87;r++)I[r]=lf;I[88]=ff;I[89]=hf;I[90]=df;I[91]=pf;I[92]=Q;I[93]=Q;I[94]=Q;I[95]=Ii("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)I[r]=gf;I[120]=mf;I[121]=yf;I[122]=wf;I[123]=bf;I[124]=Q;I[125]=Q;I[126]=Q;I[127]=Ii("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)I[r]=Ef;I[152]=vf;I[153]=Bf;I[154]=Af;I[155]=Sf;I[156]=Q;I[157]=Q;I[158]=Q;I[159]=If;for(let r=160;r<=183;r++)I[r]=Rf;I[184]=kf;I[185]=Tf;I[186]=Nf;I[187]=Cf;I[188]=Q;I[189]=Q;I[190]=Q;I[191]=_f;for(let r=192;r<=215;r++)I[r]=Uf;I[216]=Lf;I[217]=Df;I[218]=Vf;I[219]=Of;I[220]=Q;I[221]=Q;I[222]=Q;I[223]=Q;for(let r=224;r<=243;r++)I[r]=Ii("simple values are not supported");I[244]=Q;I[245]=Q;I[246]=Q;I[247]=Pf;I[248]=Ii("simple values are not supported");I[249]=Mf;I[250]=Hf;I[251]=$f;I[252]=Q;I[253]=Q;I[254]=Q;I[255]=Ff;var ut=[];for(let r=0;r<24;r++)ut[r]=new U(m.uint,r,1);for(let r=-1;r>=-24;r--)ut[31-r]=new U(m.negint,r,1);ut[64]=new U(m.bytes,new Uint8Array(0),1);ut[96]=new U(m.string,"",1);ut[128]=new U(m.array,0,1);ut[160]=new U(m.map,0,1);ut[244]=new U(m.false,!1,1);ut[245]=new U(m.true,!0,1);ut[246]=new U(m.null,null,1);function tm(){let r=[];return r[m.uint.major]=Je,r[m.negint.major]=xi,r[m.bytes.major]=sn,r[m.string.major]=xf,r[m.array.major]=vi,r[m.map.major]=Bi,r[m.tag.major]=Ai,r[m.float.major]=Si,r}var wE=tm(),bE=new bi,Ri=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(`${xa} object contains circular references`);return new r(t,e)}},rr={null:new U(m.null,null),undefined:new U(m.undefined,void 0),true:new U(m.true,!0),false:new U(m.false,!1),emptyArray:new U(m.array,0),emptyMap:new U(m.map,0)},nr={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new U(m.float,r):r>=0?new U(m.uint,r):new U(m.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new U(m.uint,r):new U(m.negint,r)},Uint8Array(r,e,t,n){return new U(m.bytes,r)},string(r,e,t,n){return new U(m.string,r)},boolean(r,e,t,n){return r?rr.true:rr.false},null(r,e,t,n){return rr.null},undefined(r,e,t,n){return rr.undefined},ArrayBuffer(r,e,t,n){return new U(m.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new U(m.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[rr.emptyArray,new U(m.break)]:rr.emptyArray;n=Ri.createCheck(n,r);let o=[],i=0;for(let s of r)o[i++]=Sa(s,t,n);return t.addBreakTokens?[new U(m.array,r.length),o,new U(m.break)]:[new U(m.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?[rr.emptyMap,new U(m.break)]:rr.emptyMap;n=Ri.createCheck(n,r);let a=[],c=0;for(let f of i)a[c++]=[Sa(f,t,n),Sa(o?r.get(f):r[f],t,n)];return rm(a,t),t.addBreakTokens?[new U(m.map,s),a,new U(m.break)]:[new U(m.map,s),a]}};nr.Map=nr.Object;nr.Buffer=nr.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))nr[`${r}Array`]=nr.DataView;function Sa(r,e={},t){let n=ql(r),o=e&&e.typeEncoders&&e.typeEncoders[n]||nr[n];if(typeof o=="function"){let s=o(r,n,e,t);if(s!=null)return s}let i=nr[n];if(!i)throw new Error(`${xa} unsupported type: ${n}`);return i(r,n,e,t)}function rm(r,e){e.mapSorter&&r.sort(e.mapSorter)}var nm={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},ki=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=ut[e];if(t===void 0){let n=I[e];if(!n)throw new Error(`${K} 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}},Kn=Symbol.for("DONE"),Ti=Symbol.for("BREAK");function om(r,e,t){let n=[];for(let o=0;o<r.value;o++){let i=un(e,t);if(i===Ti){if(r.value===1/0)break;throw new Error(`${K} got unexpected break to lengthed array`)}if(i===Kn)throw new Error(`${K} found array but not enough entries (got ${o}, expected ${r.value})`);n[o]=i}return n}function im(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=un(e,t);if(a===Ti){if(r.value===1/0)break;throw new Error(`${K} got unexpected break to lengthed map`)}if(a===Kn)throw new Error(`${K} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${K} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&i.has(a)||!n&&a in o))throw new Error(`${K} found repeat map key "${a}"`);let c=un(e,t);if(c===Kn)throw new Error(`${K} 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 un(r,e){if(r.done())return Kn;let t=r.next();if(t.type===m.break)return Ti;if(t.type.terminal)return t.value;if(t.type===m.array)return om(t,r,e);if(t.type===m.map)return im(t,r,e);if(t.type===m.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=un(r,e);return e.tags[t.value](n)}throw new Error(`${K} tag not supported (${t.value})`)}throw new Error("unsupported")}function jf(r,e){if(!(r instanceof Uint8Array))throw new Error(`${K} data to decode must be a Uint8Array`);e=Object.assign({},nm,e);let t=e.tokenizer||new ki(r,e),n=un(t,e);if(n===Kn)throw new Error(`${K} did not find any content to decode`);if(n===Ti)throw new Error(`${K} got unexpected break`);return[n,r.subarray(t.pos())]}function Ia(r,e){let[t,n]=jf(r,e);if(n.length>0)throw new Error(`${K} too many terminals, data makes no sense`);return t}var Ge=Ot(mi(),1);var Yf=Ft("ipns:utils"),Zf=j("/ipns/"),cm=114,Wf=async(r,e)=>{if(e==null||r==null){let n=new Error("one or more of the provided parameters are not defined");throw Yf.error(n),(0,Ge.default)(n,ba)}let t;if(e.pubKey!=null){try{t=ma(e.pubKey)}catch(o){throw Yf.error(o),o}if(!(await Tc(e.pubKey)).equals(r))throw(0,Ge.default)(new Error("Embedded public key did not match PeerID"),Hl)}else r.publicKey!=null&&(t=ma(r.publicKey));if(t!=null)return t;throw(0,Ge.default)(new Error("no public key is available"),ba)};var Jf=r=>{let e=j("ipns-signature:");return Ce([e,r])},xr=r=>"signatureV1"in r?at.encode({value:j(r.value),signatureV1:r.signatureV1,validityType:r.validityType,validity:j(r.validity),sequence:r.sequence,ttl:r.ttl,pubKey:r.pubKey,signatureV2:r.signatureV2,data:r.data}):at.encode({pubKey:r.pubKey,signatureV2:r.signatureV2,data:r.data});function yt(r){let e=at.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(0,Ge.default)(new Error("missing data or signatureV2"),Dt);let t=Xf(e.data),n=um(t.Value),o=Y(t.Validity);if(e.value!=null&&e.signatureV1!=null)return lm(e),{value:n,validityType:at.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:at.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")}var Ra=r=>Ce([Zf,r.toBytes()]),ln=r=>wn(r.slice(Zf.length));var Xf=r=>{let e=Ia(r);if(e.ValidityType===0)e.ValidityType=at.ValidityType.EOL;else throw(0,Ge.default)(new Error("Unknown validity type"),yi);return Number.isInteger(e.Sequence)&&(e.Sequence=BigInt(e.Sequence)),Number.isInteger(e.TTL)&&(e.TTL=BigInt(e.TTL)),e},um=r=>{if(r!=null){if(tc(r))return`/ipns/${r.toCID().toString(Qn)}`;if(r instanceof Uint8Array){let n=Y(r);n.startsWith("/")&&(r=n)}let e=r.toString().trim();if(e.startsWith("/")&&e.length>1)return e;let t=Be.asCID(r);if(t!=null)return t.code===cm?`/ipns/${t.toString(Qn)}`:`/ipfs/${t.toV1().toString()}`;try{return r instanceof Uint8Array?`/ipfs/${Be.decode(r).toV1().toString()}`:`/ipfs/${Be.parse(e).toV1().toString()}`}catch{}}throw(0,Ge.default)(new Error("Value must be a valid content path starting with /"),Ml)},lm=r=>{if(r.data==null)throw(0,Ge.default)(new Error("Record data is missing"),Fl);let e=Xf(r.data);if(!ce(e.Value,r.value??new Uint8Array(0)))throw(0,Ge.default)(new Error('Field "value" did not match between protobuf and CBOR'),Dt);if(!ce(e.Validity,r.validity??new Uint8Array(0)))throw(0,Ge.default)(new Error('Field "validity" did not match between protobuf and CBOR'),Dt);if(e.ValidityType!==r.validityType)throw(0,Ge.default)(new Error('Field "validityType" did not match between protobuf and CBOR'),Dt);if(e.Sequence!==r.sequence)throw(0,Ge.default)(new Error('Field "sequence" did not match between protobuf and CBOR'),Dt);if(e.TTL!==r.ttl)throw(0,Ge.default)(new Error('Field "ttl" did not match between protobuf and CBOR'),Dt)};var jE=Ft("ipns"),YE=je.code,ZE=60*60*1e9,dm="/ipns/",WE=dm.length;var qn=Ot(mi(),1),Qf=Ot(wa(),1);var Ni=Ft("ipns:validator"),pm=1024*10,gm=async(r,e)=>{let t=yt(e),n;try{let o=Jf(t.data);n=await r.verify(o,t.signatureV2)}catch{n=!1}if(!n)throw Ni.error("record signature verification failed"),(0,qn.default)(new Error("record signature verification failed"),Dt);if(t.validityType===at.ValidityType.EOL){if(Qf.default.fromString(t.validity).toDate().getTime()<Date.now())throw Ni.error("record has expired"),(0,qn.default)(new Error("record has expired"),Pl)}else if(t.validityType!=null)throw Ni.error("unrecognized validity type"),(0,qn.default)(new Error("unrecognized validity type"),yi);Ni("ipns record for %s is valid",t.value)};async function eh(r,e){if(e.byteLength>pm)throw(0,qn.default)(new Error("record too large"),$l);let t=ln(r),n=yt(e),o=await Wf(t,n);await gm(o,e)}async function*zn(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 wt(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var Ta=Ot(rh(),1);var jn=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Na=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},nh=r=>globalThis.DOMException===void 0?new Na(r):new DOMException(r),oh=r=>{let e=r.reason===void 0?nh("This operation was aborted."):r.reason;return e instanceof Error?e:nh(e)};function Ca(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:d}=e;d.aborted&&u(oh(d)),d.addEventListener("abort",()=>{u(oh(d))})}if(t===Number.POSITIVE_INFINITY){r.then(f,u);return}let l=new jn;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 ${t} milliseconds`,u(l))},t),(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 _a(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 Yn=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=_a(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 Zn=class extends Ta.default{#e;#r;#i=0;#a;#c;#p=0;#n;#u;#t;#g;#o=0;#l;#s;#m;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:Yn,...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.#t=new e.queueClass,this.#g=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#m=e.throwOnTimeout===!0,this.#s=e.autoStart===!1}get#b(){return this.#r||this.#i<this.#a}get#x(){return this.#o<this.#l}#E(){this.#o--,this.#f(),this.emit("next")}#v(){this.#w(),this.#y(),this.#u=void 0}get#B(){let e=Date.now();if(this.#n===void 0){let t=this.#p-e;if(t<0)this.#i=this.#e?this.#o:0;else return this.#u===void 0&&(this.#u=setTimeout(()=>{this.#v()},t)),!0}return!1}#f(){if(this.#t.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 e=!this.#B;if(this.#b&&this.#x){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#y(),!0):!1}}return!1}#y(){this.#r||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.#e?this.#o: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.#m,...t},new Promise((n,o)=>{this.#t.enqueue(async()=>{this.#o++,this.#i++;try{t.signal?.throwIfAborted();let i=e({signal:t.signal});t.timeout&&(i=Ca(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 jn&&!t.throwOnTimeout){n();return}o(i),this.emit("error",i)}finally{this.#E()}},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.#t=new this.#g}async onEmpty(){this.#t.size!==0&&await this.#d("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#d("next",()=>this.#t.size<e)}async onIdle(){this.#o===0&&this.#t.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.#t.size}sizeBy(e){return this.#t.filter(e).length}get pending(){return this.#o}get isPaused(){return this.#s}};function wm(r){return r[Symbol.asyncIterator]!=null}function bm(r){if(wm(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var _i=bm;function xm(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 ih=xm;function Em(r){return r[Symbol.asyncIterator]!=null}function vm(r,e){let t=0;if(Em(r))return async function*(){for await(let c of r)yield e(c,t++)}();let n=ih(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 Ui=vm;var Ua=j("/ipns/");function sh(r){return ce(r.subarray(0,Ua.byteLength),Ua)}var ah=r=>wn(r.slice(Ua.length)),Li=class{client;constructor(e){this.client=e}async*findProviders(e,t={}){yield*Ui(this.client.getProviders(e,t),n=>({id:n.ID,multiaddrs:n.Addrs??[]}))}async provide(){}async put(e,t,n){if(!sh(e))return;let o=ah(e),i=yt(t);await this.client.putIPNS(o,i,n)}async get(e,t){if(!sh(e))throw new O("Not found","ERR_NOT_FOUND");let n=ah(e);try{let o=await this.client.getIPNS(n,t);return xr(o)}catch(o){throw o.code==="ERR_BAD_RESPONSE"?new O("Not found","ERR_NOT_FOUND"):o}}},Di=class{client;constructor(e){this.client=e}async findPeer(e,t={}){let n=await _i(this.client.getPeers(e,t));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new O("Not found","ERR_NOT_FOUND")}async*getClosestPeers(e,t={}){}};var Oe=Ft("delegated-routing-v1-http-api-client"),ch={concurrentRequests:4,timeout:3e4},Vi=class{started;httpQueue;shutDownController;clientUrl;timeout;contentRouting;peerRouting;constructor(e,t={}){this.started=!1,this.shutDownController=new AbortController,Er(1/0,this.shutDownController.signal),this.httpQueue=new Zn({concurrency:t.concurrentRequests??ch.concurrentRequests}),this.clientUrl=e instanceof URL?e:new URL(e),this.timeout=t.timeout??ch.timeout,this.contentRouting=new Li(this),this.peerRouting=new Di(this)}get[ec](){return this.contentRouting}get[rc](){return this.peerRouting}isStarted(){return this.started}start(){this.started=!0}stop(){this.httpQueue.clear(),this.shutDownController.abort(),this.started=!1}async*getProviders(e,t={}){Oe("getProviders starts: %c",e);let n=AbortSignal.timeout(this.timeout),o=bn([this.shutDownController.signal,n,t.signal]);Er(1/0,n,o);let i=wt(),s=wt();this.httpQueue.add(async()=>(i.resolve(),s.promise));try{await i.promise;let a=`${this.clientUrl}routing/v1/providers/${e.toString()}`,f=await fetch(a,{headers:{Accept:"application/x-ndjson"},signal:o});if(f.status===404)throw new O("No matching records found.","ERR_NOT_FOUND");if(f.status===422)throw new O("Request does not conform to schema or semantic constraints.","ERR_INVALID_REQUEST");if(f.body==null)throw new O("Routing response had no body","ERR_BAD_RESPONSE");if(f.headers.get("Content-Type")==="application/json"){let l=await f.json();for(let d of l.Providers){let E=this.#e(d);E!=null&&(yield E)}}else for await(let l of zn(so(f.body))){let d=this.#e(l);d!=null&&(yield d)}}catch(a){Oe.error("getProviders errored:",a)}finally{o.clear(),s.resolve(),Oe("getProviders finished: %c",e)}}async*getPeers(e,t={}){Oe("getPeers starts: %c",e);let n=AbortSignal.timeout(this.timeout),o=bn([this.shutDownController.signal,n,t.signal]);Er(1/0,n,o);let i=wt(),s=wt();this.httpQueue.add(async()=>(i.resolve(),s.promise));try{await i.promise;let a=`${this.clientUrl}routing/v1/peers/${e.toCID().toString()}`,f=await fetch(a,{headers:{Accept:"application/x-ndjson"},signal:o});if(f.status===404)throw new O("No matching records found.","ERR_NOT_FOUND");if(f.status===422)throw new O("Request does not conform to schema or semantic constraints.","ERR_INVALID_REQUEST");if(f.body==null)throw new O("Routing response had no body","ERR_BAD_RESPONSE");if(f.headers.get("Content-Type")==="application/json"){let l=await f.json();for(let d of l.Peers){let E=this.#e(d);E!=null&&(yield E)}}else for await(let l of zn(so(f.body))){let d=this.#e(l);d!=null&&(yield d)}}catch(a){Oe.error("getPeers errored:",a)}finally{o.clear(),s.resolve(),Oe("getPeers finished: %c",e)}}async getIPNS(e,t={}){Oe("getIPNS starts: %c",e);let n=AbortSignal.timeout(this.timeout),o=bn([this.shutDownController.signal,n,t.signal]);Er(1/0,n,o);let i=wt(),s=wt();this.httpQueue.add(async()=>(i.resolve(),s.promise));let a=`${this.clientUrl}routing/v1/ipns/${e.toCID().toString()}`;try{await i.promise;let f=await fetch(a,{headers:{Accept:"application/vnd.ipfs.ipns-record"},signal:o});if(Oe("getIPNS GET %s %d",a,f.status),f.status===404)throw new O("No matching records found.","ERR_NOT_FOUND");if(f.status===422)throw new O("Request does not conform to schema or semantic constraints.","ERR_INVALID_REQUEST");if(f.body==null)throw new O("GET ipns response had no body","ERR_BAD_RESPONSE");let u=await f.arrayBuffer(),l=new Uint8Array(u,0,u.byteLength);return t.validate!==!1&&await eh(Ra(e),l),yt(l)}catch(c){throw Oe.error("getIPNS GET %s error:",a,c),c}finally{o.clear(),s.resolve(),Oe("getIPNS finished: %c",e)}}async putIPNS(e,t,n={}){Oe("putIPNS starts: %c",e);let o=AbortSignal.timeout(this.timeout),i=bn([this.shutDownController.signal,o,n.signal]);Er(1/0,o,i);let s=wt(),a=wt();this.httpQueue.add(async()=>(s.resolve(),a.promise));let c=`${this.clientUrl}routing/v1/ipns/${e.toCID().toString()}`;try{await s.promise;let f=xr(t),l=await fetch(c,{method:"PUT",headers:{"Content-Type":"application/vnd.ipfs.ipns-record"},body:f,signal:i});if(Oe("putIPNS PUT %s %d",c,l.status),l.status!==200)throw new O("PUT ipns response had status other than 200","ERR_BAD_RESPONSE")}catch(f){throw Oe.error("putIPNS PUT %s error:",c,f.stack),f}finally{i.clear(),a.resolve(),Oe("putIPNS finished: %c",e)}}#e(e){let t=[],n=e.Addrs?.map(ur)??[];return e.Protocols!=null&&t.push(...e.Protocols),e.Protocol!=null&&(t.push(e.Protocol),delete e.Protocol),{...e,Schema:"peer",ID:as(e.ID),Addrs:n,Protocols:t}}};function uh(r,e={}){return new Vi(new URL(r),e)}var lh=j("/ipns/");function fh(r){return ce(r.subarray(0,lh.byteLength),lh)}var La=class{client;constructor(e){this.client=uh(e)}async provide(e,t){}async*findProviders(e,t){yield*Ui(this.client.getProviders(e,t),n=>({id:n.ID,multiaddrs:n.Addrs,protocols:n.Protocols}))}async put(e,t,n){if(!fh(e))return;let o=ln(e),i=yt(t);await this.client.putIPNS(o,i,n)}async get(e,t){if(!fh(e))throw new O("Not found","ERR_NOT_FOUND");let n=ln(e);try{let o=await this.client.getIPNS(n,t);return xr(o)}catch(o){throw o.code==="ERR_BAD_RESPONSE"?new O("Not found","ERR_NOT_FOUND"):o}}async findPeer(e,t){let n=await _i(this.client.getPeers(e,t));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new O("Not found","ERR_NOT_FOUND")}async*getClosestPeers(e,t){}};function hh(r){return new La(new URL(r))}var dh="[a-fA-F\\d:]",or=r=>r&&r.includeBoundaries?`(?:(?<=\\s|^)(?=${dh})|(?<=${dh})(?=\\s|$))`:"",lt="(?: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}",pe="[a-fA-F\\d]{1,4}",Oi=`
9
+ (?:
10
+ (?:${pe}:){7}(?:${pe}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8
11
+ (?:${pe}:){6}(?:${lt}|:${pe}|:)| // 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
12
+ (?:${pe}:){5}(?::${lt}|(?::${pe}){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
13
+ (?:${pe}:){4}(?:(?::${pe}){0,1}:${lt}|(?::${pe}){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
14
+ (?:${pe}:){3}(?:(?::${pe}){0,2}:${lt}|(?::${pe}){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
15
+ (?:${pe}:){2}(?:(?::${pe}){0,3}:${lt}|(?::${pe}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4
16
+ (?:${pe}:){1}(?:(?::${pe}){0,4}:${lt}|(?::${pe}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4
17
+ (?::(?:(?::${pe}){0,5}:${lt}|(?::${pe}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4
18
+ )(?:%[0-9a-zA-Z]{1,})? // %eth0 %1
19
+ `.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),Bm=new RegExp(`(?:^${lt}$)|(?:^${Oi}$)`),Am=new RegExp(`^${lt}$`),Sm=new RegExp(`^${Oi}$`),Da=r=>r&&r.exact?Bm:new RegExp(`(?:${or(r)}${lt}${or(r)})|(?:${or(r)}${Oi}${or(r)})`,"g");Da.v4=r=>r&&r.exact?Am:new RegExp(`${or(r)}${lt}${or(r)}`,"g");Da.v6=r=>r&&r.exact?Sm:new RegExp(`${or(r)}${Oi}${or(r)}`,"g");var Va=Da;function Oa(r){let e=(...t)=>r(...t);return Object.defineProperty(e,"name",{value:`functionTimeout(${r.name||"<anonymous>"})`,configurable:!0}),e}function ph(){return!1}var{toString:Im}=Object.prototype;function Pa(r){return Im.call(r)==="[object RegExp]"}var gh={global:"g",ignoreCase:"i",multiline:"m",dotAll:"s",sticky:"y",unicode:"u"};function Fa(r,e={}){if(!Pa(r))throw new TypeError("Expected a RegExp instance");let t=Object.keys(gh).map(o=>(typeof e[o]=="boolean"?e[o]:r[o])?gh[o]:"").join(""),n=new RegExp(e.source||r.source,t);return n.lastIndex=typeof e.lastIndex=="number"?e.lastIndex:r.lastIndex,n}function Ma(r,e,{timeout:t}={}){try{return Oa(()=>Fa(r).test(e),{timeout:t})()}catch(n){if(ph(n))return!1;throw n}}var Rm=15,km=45,mh={timeout:400};function Ha(r){return r.length>km?!1:Ma(Va.v6({exact:!0}),r,mh)}function yh(r){return r.length>Rm?!1:Ma(Va.v4({exact:!0}),r,mh)}var wh={http:"80",https:"443",ws:"80",wss:"443"},Tm=["http","https","ws","wss"];function bh(r,e){e=e??{};let t=e.defaultDnsType??"dns4",{scheme:n,hostname:o,port:i}=Nm(r),a="/"+[Cm(o,t),_m(i,n),Um(n)].filter(c=>!!c).reduce((c,f)=>c.concat(f),[]).join("/");return ur(a)}function Nm(r){let[e]=r.split(":");Tm.includes(e)||(r="http"+r.substring(e.length));let{protocol:t,hostname:n,port:o}=new URL(r);if(o==null||o===""){let i=Lm(e);i!=null&&(o=i),i==null&&t==="http:"&&(o="80")}return{scheme:e,hostname:n,port:o}}function Cm(r,e){if(!(r==null||r==="")){if(yh(r))return["ip4",r];if(Ha(r))return["ip6",r];if(r[0]==="["){let t=r.substring(1,r.length-1);if(Ha(t))return["ip6",t]}return[e,r]}}function _m(r,e){if(!(r==null||r===""))return e==="udp"?["udp",r]:["tcp",r]}function Um(r){if(r.match(/^tcp$|^udp$/)==null)return[r]}function Lm(r){if(!(r==null||r===""||wh[r]==null))return wh[r]}var Dm=["https://trustless-gateway.link","https://4everland.io"],Vm=2336,Om=Symbol.for("nodejs.util.inspect.custom"),$a=class{type="url";multihash;privateKey;publicKey;url;constructor(e){this.url=e.toString(),this.multihash=je.digest(j(this.url))}[Om](){return`PeerId(${this.url})`}[hn]=!0;toString(){return this.toCID().toString()}toCID(){return Be.createV1(Vm,this.multihash)}toBytes(){return this.toCID().bytes}equals(e){return e==null?!1:(e instanceof Uint8Array&&(e=Y(e)),e.toString()===this.toString())}};function Pm(r){return r=r.toString(),{id:new $a(new URL(r)),multiaddrs:[bh(r)]}}var Ka=class{gateways;constructor(e={}){this.gateways=(e.gateways??Dm).map(t=>Pm(t))}async*findProviders(e,t){yield*this.gateways.toSorted(()=>Math.random()>.5?1:-1).map(n=>({...n,protocols:["transport-ipfs-gateway-http"]}))}};function xh(r={}){return new Ka(r)}var qa=class{libp2p;constructor(e){this.libp2p=e}async provide(e,t){await this.libp2p.contentRouting.provide(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 qa(r)}return Dh(Fm);})();
9
20
  /*! Bundled license information:
10
21
 
11
22
  pvtsutils/build/index.js: