@libp2p/bootstrap
Advanced tools
Comparing version 8.0.0 to 9.0.0-5ffa7a74
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.Libp2PBootstrap = factory()}(typeof self !== 'undefined' ? self : this, function () { | ||
"use strict";var Libp2PBootstrap=(()=>{var en=Object.create;var he=Object.defineProperty;var tn=Object.getOwnPropertyDescriptor;var rn=Object.getOwnPropertyNames;var nn=Object.getPrototypeOf,on=Object.prototype.hasOwnProperty;var sn=(t,e,r)=>e in t?he(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var J=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),P=(t,e)=>{for(var r in e)he(t,r,{get:e[r],enumerable:!0})},Rt=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of rn(e))!on.call(t,o)&&o!==r&&he(t,o,{get:()=>e[o],enumerable:!(n=tn(e,o))||n.enumerable});return t};var Ue=(t,e,r)=>(r=t!=null?en(nn(t)):{},Rt(e||!t||!t.__esModule?he(r,"default",{value:t,enumerable:!0}):r,t)),an=t=>Rt(he({},"__esModule",{value:!0}),t);var Xe=(t,e,r)=>(sn(t,typeof e!="symbol"?e+"":e,r),r);var _t=J((Ns,$t)=>{var Z=1e3,ee=Z*60,te=ee*60,H=te*24,un=H*7,ln=H*365.25;$t.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return fn(t);if(r==="number"&&isFinite(t))return e.long?pn(t):dn(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function fn(t){if(t=String(t),!(t.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(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*ln;case"weeks":case"week":case"w":return r*un;case"days":case"day":case"d":return r*H;case"hours":case"hour":case"hrs":case"hr":case"h":return r*te;case"minutes":case"minute":case"mins":case"min":case"m":return r*ee;case"seconds":case"second":case"secs":case"sec":case"s":return r*Z;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function dn(t){var e=Math.abs(t);return e>=H?Math.round(t/H)+"d":e>=te?Math.round(t/te)+"h":e>=ee?Math.round(t/ee)+"m":e>=Z?Math.round(t/Z)+"s":t+"ms"}function pn(t){var e=Math.abs(t);return e>=H?Ne(t,e,H,"day"):e>=te?Ne(t,e,te,"hour"):e>=ee?Ne(t,e,ee,"minute"):e>=Z?Ne(t,e,Z,"second"):t+" ms"}function Ne(t,e,r,n){var o=e>=r*1.5;return Math.round(t/r)+" "+n+(o?"s":"")}});var jt=J((ks,Vt)=>{function hn(t){r.debug=r,r.default=r,r.coerce=w,r.disable=s,r.enable=o,r.enabled=i,r.humanize=_t(),r.destroy=I,Object.keys(t).forEach(c=>{r[c]=t[c]}),r.names=[],r.skips=[],r.formatters={};function e(c){let l=0;for(let p=0;p<c.length;p++)l=(l<<5)-l+c.charCodeAt(p),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=e;function r(c){let l,p=null,S,d;function g(...y){if(!g.enabled)return;let x=g,A=Number(new Date),D=A-(l||A);x.diff=D,x.prev=l,x.curr=A,l=A,y[0]=r.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let E=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(N,F)=>{if(N==="%%")return"%";E++;let k=r.formatters[F];if(typeof k=="function"){let Y=y[E];N=k.call(x,Y),y.splice(E,1),E--}return N}),r.formatArgs.call(x,y),(x.log||r.log).apply(x,y)}return g.namespace=c,g.useColors=r.useColors(),g.color=r.selectColor(c),g.extend=n,g.destroy=r.destroy,Object.defineProperty(g,"enabled",{enumerable:!0,configurable:!1,get:()=>p!==null?p:(S!==r.namespaces&&(S=r.namespaces,d=r.enabled(c)),d),set:y=>{p=y}}),typeof r.init=="function"&&r.init(g),g}function n(c,l){let p=r(this.namespace+(typeof l>"u"?":":l)+c);return p.log=this.log,p}function o(c){r.save(c),r.namespaces=c,r.names=[],r.skips=[];let l,p=(typeof c=="string"?c:"").split(/[\s,]+/),S=p.length;for(l=0;l<S;l++)p[l]&&(c=p[l].replace(/\*/g,".*?"),c[0]==="-"?r.skips.push(new RegExp("^"+c.slice(1)+"$")):r.names.push(new RegExp("^"+c+"$")))}function s(){let c=[...r.names.map(f),...r.skips.map(f).map(l=>"-"+l)].join(",");return r.enable(""),c}function i(c){if(c[c.length-1]==="*")return!0;let l,p;for(l=0,p=r.skips.length;l<p;l++)if(r.skips[l].test(c))return!1;for(l=0,p=r.names.length;l<p;l++)if(r.names[l].test(c))return!0;return!1}function f(c){return c.toString().substring(2,c.toString().length-2).replace(/\.\*\?$/,"*")}function w(c){return c instanceof Error?c.stack||c.message:c}function I(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Vt.exports=hn});var qt=J((U,ke)=>{U.formatArgs=gn;U.save=bn;U.load=wn;U.useColors=mn;U.storage=yn();U.destroy=(()=>{let t=!1;return()=>{t||(t=!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`."))}})();U.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 mn(){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 gn(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+ke.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(r++,o==="%c"&&(n=r))}),t.splice(n,0,e)}U.log=console.debug||console.log||(()=>{});function bn(t){try{t?U.storage.setItem("debug",t):U.storage.removeItem("debug")}catch{}}function wn(){let t;try{t=U.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function yn(){try{return localStorage}catch{}}ke.exports=jt()(U);var{formatters:xn}=ke.exports;xn.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Er=J((Qi,Sr)=>{Sr.exports=At;var Cr=128,Lo=127,zo=~Lo,Ro=Math.pow(2,31);function At(t,e,r){if(Number.MAX_SAFE_INTEGER&&t>Number.MAX_SAFE_INTEGER)throw At.bytes=0,new RangeError("Could not encode varint");e=e||[],r=r||0;for(var n=r;t>=Ro;)e[r++]=t&255|Cr,t/=128;for(;t&zo;)e[r++]=t&255|Cr,t>>>=7;return e[r]=t|0,At.bytes=r-n+1,e}});var Ir=J((Xi,Tr)=>{Tr.exports=Tt;var Oo=128,Ar=127;function Tt(t,n){var r=0,n=n||0,o=0,s=n,i,f=t.length;do{if(s>=f||o>49)throw Tt.bytes=0,new RangeError("Could not decode varint");i=t[s++],r+=o<28?(i&Ar)<<o:(i&Ar)*Math.pow(2,o),o+=7}while(i>=Oo);return Tt.bytes=s-n,r}});var Pr=J((Ki,Fr)=>{var $o=Math.pow(2,7),_o=Math.pow(2,14),Vo=Math.pow(2,21),jo=Math.pow(2,28),qo=Math.pow(2,35),Wo=Math.pow(2,42),Go=Math.pow(2,49),Jo=Math.pow(2,56),Ho=Math.pow(2,63);Fr.exports=function(t){return t<$o?1:t<_o?2:t<Vo?3:t<jo?4:t<qo?5:t<Wo?6:t<Go?7:t<Jo?8:t<Ho?9:10}});var Ve=J((Yi,Ur)=>{Ur.exports={encode:Er(),decode:Ir(),encodingLength:Pr()}});var Fs={};P(Fs,{bootstrap:()=>Is});var Ot=Symbol.for("@libp2p/peer-discovery");var De=class extends EventTarget{#e=new Map;listenerCount(e){let r=this.#e.get(e);return r==null?0:r.length}addEventListener(e,r,n){super.addEventListener(e,r,n);let o=this.#e.get(e);o==null&&(o=[],this.#e.set(e,o)),o.push({callback:r,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(e,r,n){super.removeEventListener(e.toString(),r??null,n);let o=this.#e.get(e);o!=null&&(o=o.filter(({callback:s})=>s!==r),this.#e.set(e,o))}dispatchEvent(e){let r=super.dispatchEvent(e),n=this.#e.get(e.type);return n==null||(n=n.filter(({once:o})=>!o),this.#e.set(e.type,n)),r}safeDispatchEvent(e,r){return this.dispatchEvent(new cn(e,r))}},Ke=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},cn=globalThis.CustomEvent??Ke;var M=Ue(qt(),1);var rt={};P(rt,{base58btc:()=>v,base58flickr:()=>Tn});function vn(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var o=0;o<t.length;o++){var s=t.charAt(o),i=s.charCodeAt(0);if(r[i]!==255)throw new TypeError(s+" is ambiguous");r[i]=o}var f=t.length,w=t.charAt(0),I=Math.log(f)/Math.log(256),c=Math.log(256)/Math.log(f);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var g=0,y=0,x=0,A=d.length;x!==A&&d[x]===0;)x++,g++;for(var D=(A-x)*c+1>>>0,E=new Uint8Array(D);x!==A;){for(var B=d[x],N=0,F=D-1;(B!==0||N<y)&&F!==-1;F--,N++)B+=256*E[F]>>>0,E[F]=B%f>>>0,B=B/f>>>0;if(B!==0)throw new Error("Non-zero carry");y=N,x++}for(var k=D-y;k!==D&&E[k]===0;)k++;for(var Y=w.repeat(g);k<D;++k)Y+=t.charAt(E[k]);return Y}function p(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var g=0;if(d[g]!==" "){for(var y=0,x=0;d[g]===w;)y++,g++;for(var A=(d.length-g)*I+1>>>0,D=new Uint8Array(A);d[g];){var E=r[d.charCodeAt(g)];if(E===255)return;for(var B=0,N=A-1;(E!==0||B<x)&&N!==-1;N--,B++)E+=f*D[N]>>>0,D[N]=E%256>>>0,E=E/256>>>0;if(E!==0)throw new Error("Non-zero carry");x=B,g++}if(d[g]!==" "){for(var F=A-x;F!==A&&D[F]===0;)F++;for(var k=new Uint8Array(y+(A-F)),Y=y;F!==A;)k[Y++]=D[F++];return k}}}function S(d){var g=p(d);if(g)return g;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:p,decode:S}}var Cn=vn,Sn=Cn,Wt=Sn;var Bs=new Uint8Array(0);var Gt=(t,e)=>{if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0},R=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")};var Jt=t=>new TextEncoder().encode(t),Ht=t=>new TextDecoder().decode(t);var Ye=class{constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Ze=class{constructor(e,r,n){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.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 Xt(this,e)}},et=class{constructor(e){this.decoders=e}or(e){return Xt(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},Xt=(t,e)=>new et({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),tt=class{constructor(e,r,n,o){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new Ye(e,r,n),this.decoder=new Ze(e,r,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},re=({name:t,prefix:e,encode:r,decode:n})=>new tt(t,e,r,n),V=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:o}=Wt(r,e);return re({prefix:t,name:e,encode:n,decode:s=>R(o(s))})},En=(t,e,r,n)=>{let o={};for(let c=0;c<e.length;++c)o[e[c]]=c;let s=t.length;for(;t[s-1]==="=";)--s;let i=new Uint8Array(s*r/8|0),f=0,w=0,I=0;for(let c=0;c<s;++c){let l=o[t[c]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);w=w<<r|l,f+=r,f>=8&&(f-=8,i[I++]=255&w>>f)}if(f>=r||255&w<<8-f)throw new SyntaxError("Unexpected end of data");return i},An=(t,e,r)=>{let n=e[e.length-1]==="=",o=(1<<r)-1,s="",i=0,f=0;for(let w=0;w<t.length;++w)for(f=f<<8|t[w],i+=8;i>r;)i-=r,s+=e[o&f>>i];if(i&&(s+=e[o&f<<r-i]),n)for(;s.length*r&7;)s+="=";return s},b=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>re({prefix:e,name:t,encode(o){return An(o,n,r)},decode(o){return En(o,n,r,t)}});var v=V({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Tn=V({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var nt={};P(nt,{base32:()=>L,base32hex:()=>Un,base32hexpad:()=>Nn,base32hexpadupper:()=>kn,base32hexupper:()=>Dn,base32pad:()=>Fn,base32padupper:()=>Pn,base32upper:()=>In,base32z:()=>Mn});var L=b({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),In=b({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Fn=b({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Pn=b({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Un=b({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Dn=b({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Nn=b({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),kn=b({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Mn=b({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var st={};P(st,{base64:()=>ot,base64pad:()=>Bn,base64url:()=>Ln,base64urlpad:()=>zn});var ot=b({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Bn=b({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Ln=b({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),zn=b({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});M.default.formatters.b=t=>t==null?"undefined":v.baseEncode(t);M.default.formatters.t=t=>t==null?"undefined":L.baseEncode(t);M.default.formatters.m=t=>t==null?"undefined":ot.baseEncode(t);M.default.formatters.p=t=>t==null?"undefined":t.toString();M.default.formatters.c=t=>t==null?"undefined":t.toString();M.default.formatters.k=t=>t==null?"undefined":t.toString();function Rn(t){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=t,e.destroy=()=>!0,e.extend=()=>e,e}function Kt(t){let e=Rn(`${t}:trace`);return M.default.enabled(`${t}:trace`)&&M.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(e=(0,M.default)(`${t}:trace`)),Object.assign((0,M.default)(t),{error:(0,M.default)(`${t}:error`),trace:e})}var On=er,Yt=128,$n=127,_n=~$n,Vn=Math.pow(2,31);function er(t,e,r){e=e||[],r=r||0;for(var n=r;t>=Vn;)e[r++]=t&255|Yt,t/=128;for(;t&_n;)e[r++]=t&255|Yt,t>>>=7;return e[r]=t|0,er.bytes=r-n+1,e}var jn=it,qn=128,Zt=127;function it(t,n){var r=0,n=n||0,o=0,s=n,i,f=t.length;do{if(s>=f)throw it.bytes=0,new RangeError("Could not decode varint");i=t[s++],r+=o<28?(i&Zt)<<o:(i&Zt)*Math.pow(2,o),o+=7}while(i>=qn);return it.bytes=s-n,r}var Wn=Math.pow(2,7),Gn=Math.pow(2,14),Jn=Math.pow(2,21),Hn=Math.pow(2,28),Qn=Math.pow(2,35),Xn=Math.pow(2,42),Kn=Math.pow(2,49),Yn=Math.pow(2,56),Zn=Math.pow(2,63),eo=function(t){return t<Wn?1:t<Gn?2:t<Jn?3:t<Hn?4:t<Qn?5:t<Xn?6:t<Kn?7:t<Yn?8:t<Zn?9:10},to={encode:On,decode:jn,encodingLength:eo},ro=to,me=ro;var ge=(t,e=0)=>[me.decode(t,e),me.decode.bytes],ne=(t,e,r=0)=>(me.encode(t,e,r),e),oe=t=>me.encodingLength(t);var j=(t,e)=>{let r=e.byteLength,n=oe(t),o=n+oe(r),s=new Uint8Array(o+r);return ne(t,s,0),ne(r,s,n),s.set(e,o),new se(t,r,e,s)},Q=t=>{let e=R(t),[r,n]=ge(e),[o,s]=ge(e.subarray(n)),i=e.subarray(n+s);if(i.byteLength!==o)throw new Error("Incorrect length");return new se(r,o,i,e)},tr=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&Gt(t.bytes,r.bytes)}},se=class{constructor(e,r,n,o){this.code=e,this.size=r,this.digest=n,this.bytes=o}};var rr=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return oo(r,at(t),e||v.encoder);default:return so(r,at(t),e||L.encoder)}};var nr=new WeakMap,at=t=>{let e=nr.get(t);if(e==null){let r=new Map;return nr.set(t,r),r}return e},h=class{constructor(e,r,n,o){this.code=r,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:r}=this;if(e!==be)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==io)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return h.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=j(e,r);return h.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 h.equals(this,e)}static equals(e,r){let n=r;return n&&e.code===n.code&&e.version===n.version&&tr(e.multihash,n.multihash)}toString(e){return rr(this,e)}toJSON(){return{"/":rr(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof h)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:o,multihash:s,bytes:i}=r;return new h(n,o,s,i||or(n,o,s.bytes))}else if(r[ao]===!0){let{version:n,multihash:o,code:s}=r,i=Q(o);return h.create(n,s,i)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(r!==be)throw new Error(`Version 0 CID must use dag-pb (code: ${be}) block encoding`);return new h(e,r,n,n.bytes)}case 1:{let o=or(e,r,n.bytes);return new h(e,r,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return h.create(0,be,e)}static createV1(e,r){return h.create(1,e,r)}static decode(e){let[r,n]=h.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=h.inspectBytes(e),n=r.size-r.multihashSize,o=R(e.subarray(n,n+r.multihashSize));if(o.byteLength!==r.multihashSize)throw new Error("Incorrect length");let s=o.subarray(r.multihashSize-r.digestSize),i=new se(r.multihashCode,r.digestSize,s,o);return[r.version===0?h.createV0(i):h.createV1(r.codec,i),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[l,p]=ge(e.subarray(r));return r+=p,l},o=n(),s=be;if(o===18?(o=0,r=0):s=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let i=r,f=n(),w=n(),I=r+w,c=I-i;return{version:o,codec:s,multihashCode:f,digestSize:w,multihashSize:c,size:I}}static parse(e,r){let[n,o]=no(e,r),s=h.decode(o);if(s.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return at(s).set(n,e),s}},no=(t,e)=>{switch(t[0]){case"Q":{let r=e||v;return[v.prefix,r.decode(`${v.prefix}${t}`)]}case v.prefix:{let r=e||v;return[v.prefix,r.decode(t)]}case L.prefix:{let r=e||L;return[L.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}},oo=(t,e,r)=>{let{prefix:n}=r;if(n!==v.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let o=e.get(n);if(o==null){let s=r.encode(t).slice(1);return e.set(n,s),s}else return o},so=(t,e,r)=>{let{prefix:n}=r,o=e.get(n);if(o==null){let s=r.encode(t);return e.set(n,s),s}else return o},be=112,io=18,or=(t,e,r)=>{let n=oe(t),o=n+oe(e),s=new Uint8Array(o+r.byteLength);return ne(t,s,0),ne(e,s,n),s.set(r,o),s},ao=Symbol.for("@ipld/js-cid/CID");var ct={};P(ct,{identity:()=>co});var co=re({prefix:"\0",name:"identity",encode:t=>Ht(t),decode:t=>Jt(t)});var ut={};P(ut,{base2:()=>uo});var uo=b({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var lt={};P(lt,{base8:()=>lo});var lo=b({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ft={};P(ft,{base10:()=>fo});var fo=V({prefix:"9",name:"base10",alphabet:"0123456789"});var dt={};P(dt,{base16:()=>po,base16upper:()=>ho});var po=b({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),ho=b({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var pt={};P(pt,{base36:()=>mo,base36upper:()=>go});var mo=V({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),go=V({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ht={};P(ht,{base256emoji:()=>vo});var sr=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}"),bo=sr.reduce((t,e,r)=>(t[r]=e,t),[]),wo=sr.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function yo(t){return t.reduce((e,r)=>(e+=bo[r],e),"")}function xo(t){let e=[];for(let r of t){let n=wo[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var vo=re({prefix:"\u{1F680}",name:"base256emoji",encode:yo,decode:xo});var bt={};P(bt,{sha256:()=>Be,sha512:()=>Co});var gt=({name:t,code:e,encode:r})=>new mt(t,e,r),mt=class{constructor(e,r,n){this.name=e,this.code=r,this.encode=n}digest(e){if(e instanceof Uint8Array){let r=this.encode(e);return r instanceof Uint8Array?j(this.code,r):r.then(n=>j(this.code,n))}else throw Error("Unknown type, must be binary type")}};var ar=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Be=gt({name:"sha2-256",code:18,encode:ar("SHA-256")}),Co=gt({name:"sha2-512",code:19,encode:ar("SHA-512")});var wt={};P(wt,{identity:()=>Le});var cr=0,So="identity",ur=R,Eo=t=>j(cr,ur(t)),Le={code:cr,name:So,encode:ur,digest:Eo};var fi=new TextEncoder,di=new TextDecoder;var q={...ct,...ut,...lt,...ft,...dt,...nt,...pt,...rt,...st,...ht},bi={...bt,...wt};function we(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}var ye=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var lr=Symbol.for("@libp2p/peer-id");var Io=Symbol.for("nodejs.util.inspect.custom"),fr=Object.values(q).map(t=>t.decoder).reduce((t,e)=>t.or(e),q.identity.decoder),dr=114,pr=36,hr=37,xe=class{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()})`}get[lr](){return!0}toString(){return this.string==null&&(this.string=v.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return h.createV1(dr,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return we(this.multihash.bytes,e);if(typeof e=="string")return yt(e).equals(this);if(e?.multihash?.bytes!=null)return we(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[Io](){return`PeerId(${this.toString()})`}},ve=class extends xe{constructor(e){super({...e,type:"RSA"}),this.type="RSA",this.publicKey=e.publicKey}},Ce=class extends xe{constructor(e){super({...e,type:"Ed25519"}),this.type="Ed25519",this.publicKey=e.multihash.digest}},Se=class extends xe{constructor(e){super({...e,type:"secp256k1"}),this.type="secp256k1",this.publicKey=e.multihash.digest}};function yt(t,e){if(e=e??fr,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=Q(v.decode(`z${t}`));return t.startsWith("12D")?new Ce({multihash:r}):t.startsWith("16U")?new Se({multihash:r}):new ve({multihash:r})}return Fo(fr.decode(t))}function Fo(t){try{let e=Q(t);if(e.code===Le.code){if(e.digest.length===pr)return new Ce({multihash:e});if(e.digest.length===hr)return new Se({multihash:e})}if(e.code===Be.code)return new ve({multihash:e})}catch{return Po(h.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function Po(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==dr)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Be.code)return new ve({multihash:t.multihash});if(e.code===Le.code){if(e.digest.length===pr)return new Ce({multihash:t.multihash});if(e.digest.length===hr)return new Se({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}var ze=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let r=this.index,n=e();return n===void 0&&(this.index=r),n}parseWith(e){let r=e();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let r=this.readChar();if(r===e)return r})}readSeparator(e,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,r,n,o){return this.readAtomically(()=>{let s=0,i=0,f=this.peekChar();if(f===void 0)return;let w=f==="0",I=2**(8*o)-1;for(;;){let c=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let p=Number.parseInt(l,e);if(!Number.isNaN(p))return p});if(c===void 0)break;if(s*=e,s+=c,s>I||(i+=1,r!==void 0&&i>r))return}if(i!==0)return!n&&w&&i>1?void 0:s})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let r=0;r<e.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[r]=n}return e})}readIPv6Addr(){let e=r=>{for(let n=0;n<r.length/2;n++){let o=n*2;if(n<r.length-3){let i=this.readSeparator(":",n,()=>this.readIPv4Addr());if(i!==void 0)return r[o]=i[0],r[o+1]=i[1],r[o+2]=i[2],r[o+3]=i[3],[o+4,!0]}let s=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(s===void 0)return[o,!1];r[o]=s>>8,r[o+1]=s&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,o]=e(r);if(n===16)return r;if(o||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let s=new Uint8Array(14),i=16-(n+2),[f]=e(s.subarray(0,i));return r.set(s.subarray(0,f),16-f),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var mr=45,Uo=15,ie=new ze;function xt(t){if(!(t.length>Uo))return ie.new(t).parseWith(()=>ie.readIPv4Addr())}function vt(t){if(!(t.length>mr))return ie.new(t).parseWith(()=>ie.readIPv6Addr())}function Re(t){if(!(t.length>mr))return ie.new(t).parseWith(()=>ie.readIPAddr())}function gr(t){return!!xt(t)}function br(t){return!!vt(t)}function Oe(t){return!!Re(t)}function ae(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function $e(t=0){return globalThis.Buffer?.allocUnsafe!=null?ae(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function yr(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var wr=yr("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Ct=yr("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=$e(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Do={utf8:wr,"utf-8":wr,hex:q.base16,latin1:Ct,ascii:Ct,binary:Ct,...q},_e=Do;function T(t,e="utf8"){let r=_e[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var xr=gr,No=br,St=function(t){let e=0;if(t=t.toString().trim(),xr(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(No(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let s=xr(r[n]),i;s&&(i=St(r[n]),r[n]=T(i.slice(0,2),"base16")),i!=null&&++n<8&&r.splice(n,0,T(i.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let s=[n,1];for(n=9-r.length;n>0;n--)s.push("0");r.splice.apply(r,s)}let o=new Uint8Array(e+16);for(n=0;n<r.length;n++){let s=parseInt(r[n],16);o[e++]=s>>8&255,o[e++]=s&255}return o}throw new Error("invalid ip address")},vr=function(t,e=0,r){e=~~e,r=r??t.length-e;let n=new DataView(t.buffer);if(r===4){let o=[];for(let s=0;s<r;s++)o.push(t[e+s]);return o.join(".")}if(r===16){let o=[];for(let s=0;s<r;s+=2)o.push(n.getUint16(e+s).toString(16));return o.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Ee={},Et={},Mo=[[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"]];Mo.forEach(t=>{let e=Bo(...t);Et[e.code]=e,Ee[e.name]=e});function Bo(t,e,r,n,o){return{code:t,size:e,name:r,resolvable:!!n,path:!!o}}function m(t){if(typeof t=="number"){if(Et[t]!=null)return Et[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(Ee[t]!=null)return Ee[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var z=Ue(Ve(),1);function It(t,e="utf8"){let r=_e[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ae(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function O(t,e){e==null&&(e=t.reduce((o,s)=>o+s.length,0));let r=$e(e),n=0;for(let o of t)r.set(o,n),n+=o.length;return ae(r)}var fa=parseInt("0xFFFF",16),da=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);var ja=m("ip4"),qa=m("ip6"),Wa=m("ipcidr");function zr(t,e){switch(m(t).code){case 4:case 41:return es(e);case 42:return Br(e);case 6:case 273:case 33:case 132:return Or(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Br(e);case 421:return os(e);case 444:return Lr(e);case 445:return Lr(e);case 466:return ns(e);default:return T(e,"base16")}}function Rr(t,e){switch(m(t).code){case 4:return kr(e);case 41:return kr(e);case 42:return Mr(e);case 6:case 273:case 33:case 132:return Pt(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Mr(e);case 421:return ts(e);case 444:return ss(e);case 445:return is(e);case 466:return rs(e);default:return It(e,"base16")}}var Ft=Object.values(q).map(t=>t.decoder),Zo=function(){let t=Ft[0].or(Ft[1]);return Ft.slice(2).forEach(e=>t=t.or(e)),t}();function kr(t){if(!Oe(t))throw new Error("invalid ip address");return St(t)}function es(t){let e=vr(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!Oe(e))throw new Error("invalid ip address");return e}function Pt(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function Or(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function Mr(t){let e=It(t),r=Uint8Array.from(z.default.encode(e.length));return O([r,e],r.length+e.length)}function Br(t){let e=z.default.decode(t);if(t=t.slice(z.default.decode.bytes),t.length!==e)throw new Error("inconsistent lengths");return T(t)}function ts(t){let e;t[0]==="Q"||t[0]==="1"?e=Q(v.decode(`z${t}`)).bytes:e=h.parse(t).multihash.bytes;let r=Uint8Array.from(z.default.encode(e.length));return O([r,e],r.length+e.length)}function rs(t){let e=Zo.decode(t),r=Uint8Array.from(z.default.encode(e.length));return O([r,e],r.length+e.length)}function ns(t){let e=z.default.decode(t),r=t.slice(z.default.decode.bytes);if(r.length!==e)throw new Error("inconsistent lengths");return"u"+T(r,"base64url")}function os(t){let e=z.default.decode(t),r=t.slice(z.default.decode.bytes);if(r.length!==e)throw new Error("inconsistent lengths");return T(r,"base58btc")}function ss(t){let e=t.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 r=L.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=Pt(n);return O([r,o],r.length+o.length)}function is(t){let e=t.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 r=L.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=Pt(n);return O([r,o],r.length+o.length)}function Lr(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=T(e,"base32"),o=Or(r);return`${n}:${o}`}var ce=Ue(Ve(),1);function as(t){let e=[],r=t.split("/").slice(1);if(r.length===1&&r[0]==="")return[];for(let n=0;n<r.length;n++){let o=r[n],s=m(o);if(s.size===0){e.push([o]);continue}if(n++,n>=r.length)throw _r("invalid address: "+t);if(s.path===!0){e.push([o,Mt(r.slice(n).join("/"))]);break}e.push([o,r[n]])}return e}function cs(t){let e=[];return t.map(r=>{let n=We(r);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),Mt(e.join("/"))}function us(t){return t.map(e=>{Array.isArray(e)||(e=[e]);let r=We(e);return e.length>1?[r.code,Rr(r.code,e[1])]:[r.code]})}function Ut(t){return t.map(e=>{let r=We(e);return e[1]!=null?[r.code,zr(r.code,e[1])]:[r.code]})}function Dt(t){return qe(O(t.map(e=>{let r=We(e),n=Uint8Array.from(ce.default.encode(r.code));return e.length>1&&e[1]!=null&&(n=O([n,e[1]])),n})))}function Nt(t,e){return t.size>0?t.size/8:t.size===0?0:ce.default.decode(e)+(ce.default.decode.bytes??0)}function je(t){let e=[],r=0;for(;r<t.length;){let n=ce.default.decode(t,r),o=ce.default.decode.bytes??0,s=m(n),i=Nt(s,t.slice(r+o));if(i===0){e.push([n]),r+=o;continue}let f=t.slice(r+o,r+o+i);if(r+=i+o,r>t.length)throw _r("Invalid address Uint8Array: "+T(t,"base16"));e.push([n,f])}return e}function kt(t){let e=je(t),r=Ut(e);return cs(r)}function ls(t){t=Mt(t);let e=as(t),r=us(e);return Dt(r)}function $r(t){return ls(t)}function qe(t){let e=fs(t);if(e!=null)throw e;return Uint8Array.from(t)}function fs(t){try{je(t)}catch(e){return e}}function Mt(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function _r(t){return new Error("Error parsing address: "+t)}function We(t){return m(t[0])}var Bt=Ue(Ve(),1);var $=function(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)},le=function(t,e,r,n,o){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!o)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!o:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?o.call(t,r):o?o.value=r:e.set(t,r),r},Ae,Te,Ie,W,Vr,ps=Symbol.for("nodejs.util.inspect.custom"),hs=[m("dns").code,m("dns4").code,m("dns6").code,m("dnsaddr").code],ms=new Map,jr=Symbol.for("@multiformats/js-multiaddr/multiaddr");function gs(t){return!!t?.[jr]}var _=class{constructor(e){if(Ae.set(this,void 0),Te.set(this,void 0),Ie.set(this,void 0),W.set(this,void 0),this[Vr]=!0,e==null&&(e=""),e instanceof Uint8Array)this.bytes=qe(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);this.bytes=$r(e)}else if(gs(e))this.bytes=qe(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr")}toString(){return $(this,Ae,"f")==null&&le(this,Ae,kt(this.bytes),"f"),$(this,Ae,"f")}toJSON(){return this.toString()}toOptions(){let e,r,n,o,s="",i=m("tcp"),f=m("udp"),w=m("ip4"),I=m("ip6"),c=m("dns6"),l=m("ip6zone");for(let[S,d]of this.stringTuples())S===l.code&&(s=`%${d??""}`),hs.includes(S)&&(r=i.name,o=443,n=`${d??""}${s}`,e=S===c.code?6:4),(S===i.code||S===f.code)&&(r=m(S).name,o=parseInt(d??"")),(S===w.code||S===I.code)&&(r=m(S).name,n=`${d??""}${s}`,e=S===I.code?6:4);if(e==null||r==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:r,port:o}}protos(){return this.protoCodes().map(e=>Object.assign({},m(e)))}protoCodes(){let e=[],r=this.bytes,n=0;for(;n<r.length;){let o=Bt.default.decode(r,n),s=Bt.default.decode.bytes??0,i=m(o),f=Nt(i,r.slice(n+s));n+=f+s,e.push(o)}return e}protoNames(){return this.protos().map(e=>e.name)}tuples(){return $(this,Te,"f")==null&&le(this,Te,je(this.bytes),"f"),$(this,Te,"f")}stringTuples(){return $(this,Ie,"f")==null&&le(this,Ie,Ut(this.tuples()),"f"),$(this,Ie,"f")}encapsulate(e){return e=new _(e),new _(this.toString()+e.toString())}decapsulate(e){let r=e.toString(),n=this.toString(),o=n.lastIndexOf(r);if(o<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new _(n.slice(0,o))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new _(Dt(r.slice(0,n)));return this}getPeerId(){try{let r=this.stringTuples().filter(n=>n[0]===Ee.ipfs.code).pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?T(v.decode(`z${n}`),"base58btc"):T(h.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){if($(this,W,"f")===void 0)try{le(this,W,this.stringTuples().filter(e=>m(e[0]).path===!0)[0][1],"f"),$(this,W,"f")==null&&le(this,W,null,"f")}catch{le(this,W,null,"f")}return $(this,W,"f")}equals(e){return we(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(s=>s.resolvable);if(r==null)return[this];let n=ms.get(r.name);if(n==null)throw new ye(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(s=>new _(s))}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 r=(e??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[(Ae=new WeakMap,Te=new WeakMap,Ie=new WeakMap,W=new WeakMap,Vr=jr,ps)](){return`Multiaddr(${kt(this.bytes)})`}};function ue(t){return new _(t)}var bs=a("dns4"),ws=a("dns6"),ys=a("dnsaddr"),K=C(a("dns"),ys,bs,ws),Ge=C(a("ip4"),a("ip6")),de=C(u(Ge,a("tcp")),u(K,a("tcp"))),Je=u(Ge,a("udp")),xs=u(Je,a("utp")),vs=u(Je,a("quic")),Cs=u(Je,a("quic-v1")),Fe=C(u(de,a("ws")),u(K,a("ws"))),Pe=C(u(de,a("wss")),u(K,a("wss")),u(de,a("tls"),a("ws")),u(K,a("tls"),a("ws"))),Lt=C(u(de,a("http")),u(Ge,a("http")),u(K,a("http"))),zt=C(u(de,a("https")),u(Ge,a("https")),u(K,a("https"))),qr=u(Je,a("webrtc-direct"),a("certhash")),Jr=C(u(qr,a("p2p")),qr),Wr=u(Cs,a("webtransport"),a("certhash"),a("certhash")),Hr=C(u(Wr,a("p2p")),Wr),Qr=C(u(Fe,a("p2p-webrtc-star"),a("p2p")),u(Pe,a("p2p-webrtc-star"),a("p2p")),u(Fe,a("p2p-webrtc-star")),u(Pe,a("p2p-webrtc-star"))),fc=C(u(Fe,a("p2p-websocket-star"),a("p2p")),u(Pe,a("p2p-websocket-star"),a("p2p")),u(Fe,a("p2p-websocket-star")),u(Pe,a("p2p-websocket-star"))),Xr=C(u(Lt,a("p2p-webrtc-direct"),a("p2p")),u(zt,a("p2p-webrtc-direct"),a("p2p")),u(Lt,a("p2p-webrtc-direct")),u(zt,a("p2p-webrtc-direct"))),pe=C(Fe,Pe,Lt,zt,Qr,Xr,de,xs,vs,K,Jr,Hr),dc=C(u(pe,a("p2p-stardust"),a("p2p")),u(pe,a("p2p-stardust"))),G=C(u(pe,a("p2p")),Qr,Xr,Jr,Hr,a("p2p")),Gr=C(u(G,a("p2p-circuit"),G),u(G,a("p2p-circuit")),u(a("p2p-circuit"),G),u(pe,a("p2p-circuit")),u(a("p2p-circuit"),pe),a("p2p-circuit")),Kr=()=>C(u(Gr,Kr),Gr),fe=Kr(),Yr=C(u(fe,G,fe),u(G,fe),u(fe,G),fe,G);var pc=C(u(fe,a("webrtc")),u(pe,a("webrtc")),a("webrtc"));function Zr(t){function e(r){let n;try{n=ue(r)}catch{return!1}let o=t(n.protoNames());return o===null?!1:o===!0||o===!1?o:o.length===0}return e}function u(...t){function e(r){if(r.length<t.length)return null;let n=r;return t.some(o=>(n=typeof o=="function"?o().partialMatch(r):o.partialMatch(r),Array.isArray(n)&&(r=n),n===null)),n}return{toString:function(){return"{ "+t.join(" ")+" }"},input:t,matches:Zr(e),partialMatch:e}}function C(...t){function e(n){let o=null;return t.some(s=>{let i=typeof s=="function"?s().partialMatch(n):s.partialMatch(n);return i!=null?(o=i,!0):!1}),o}return{toString:function(){return"{ "+t.join(" ")+" }"},input:t,matches:Zr(e),partialMatch:e}}function a(t){let e=t;function r(o){let s;try{s=ue(o)}catch{return!1}let i=s.protoNames();return i.length===1&&i[0]===e}function n(o){return o.length===0?null:o[0]===e?o.slice(1):null}return{toString:function(){return e},matches:r,partialMatch:n}}var He=Kt("libp2p:bootstrap"),Ss="bootstrap",Es=50,As=12e4,Ts=1e3,Qe=class extends De{timer;list;timeout;components;_init;constructor(e,r={list:[]}){if(r.list==null||r.list.length===0)throw new Error("Bootstrap requires a list of peer addresses");super(),this.components=e,this.timeout=r.timeout??Ts,this.list=[];for(let n of r.list){if(!Yr.matches(n)){He.error("Invalid multiaddr");continue}let o=ue(n),s=o.getPeerId();if(s==null){He.error("Invalid bootstrap multiaddr without peer id");continue}let i={id:yt(s),multiaddrs:[o],protocols:[]};this.list.push(i)}this._init=r}[Ot]=this;[Symbol.toStringTag]="@libp2p/bootstrap";isStarted(){return!!this.timer}start(){this.isStarted()||(He("Starting bootstrap node discovery, discovering peers after %s ms",this.timeout),this.timer=setTimeout(()=>{this._discoverBootstrapPeers().catch(e=>{He.error(e)})},this.timeout))}async _discoverBootstrapPeers(){if(this.timer!=null)for(let e of this.list){if(await this.components.peerStore.merge(e.id,{tags:{[this._init.tagName??Ss]:{value:this._init.tagValue??Es,ttl:this._init.tagTTL??As}}}),this.timer==null)return;this.safeDispatchEvent("peer",{detail:e})}}stop(){this.timer!=null&&clearTimeout(this.timer),this.timer=void 0}};Xe(Qe,"tag","bootstrap");function Is(t){return e=>new Qe(e,t)}return an(Fs);})(); | ||
"use strict";var Libp2PBootstrap=(()=>{var Gn=Object.create;var Me=Object.defineProperty;var Wn=Object.getOwnPropertyDescriptor;var Xn=Object.getOwnPropertyNames;var Kn=Object.getPrototypeOf,Hn=Object.prototype.hasOwnProperty;var X=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),C=(t,e)=>{for(var r in e)Me(t,r,{get:e[r],enumerable:!0})},fr=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Xn(e))!Hn.call(t,o)&&o!==r&&Me(t,o,{get:()=>e[o],enumerable:!(n=Wn(e,o))||n.enumerable});return t};var Ze=(t,e,r)=>(r=t!=null?Gn(Kn(t)):{},fr(e||!t||!t.__esModule?Me(r,"default",{value:t,enumerable:!0}):r,t)),Qn=t=>fr(Me({},"__esModule",{value:!0}),t);var mr=X((Ea,hr)=>{var re=1e3,ne=re*60,oe=ne*60,K=oe*24,Zn=K*7,eo=K*365.25;hr.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return to(t);if(r==="number"&&isFinite(t))return e.long?no(t):ro(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function to(t){if(t=String(t),!(t.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(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*eo;case"weeks":case"week":case"w":return r*Zn;case"days":case"day":case"d":return r*K;case"hours":case"hour":case"hrs":case"hr":case"h":return r*oe;case"minutes":case"minute":case"mins":case"min":case"m":return r*ne;case"seconds":case"second":case"secs":case"sec":case"s":return r*re;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function ro(t){var e=Math.abs(t);return e>=K?Math.round(t/K)+"d":e>=oe?Math.round(t/oe)+"h":e>=ne?Math.round(t/ne)+"m":e>=re?Math.round(t/re)+"s":t+"ms"}function no(t){var e=Math.abs(t);return e>=K?ze(t,e,K,"day"):e>=oe?ze(t,e,oe,"hour"):e>=ne?ze(t,e,ne,"minute"):e>=re?ze(t,e,re,"second"):t+" ms"}function ze(t,e,r,n){var o=e>=r*1.5;return Math.round(t/r)+" "+n+(o?"s":"")}});var gr=X((Aa,br)=>{function oo(t){r.debug=r,r.default=r,r.coerce=l,r.disable=s,r.enable=o,r.enabled=i,r.humanize=mr(),r.destroy=S,Object.keys(t).forEach(d=>{r[d]=t[d]}),r.names=[],r.skips=[],r.formatters={};function e(d){let f=0;for(let m=0;m<d.length;m++)f=(f<<5)-f+d.charCodeAt(m),f|=0;return r.colors[Math.abs(f)%r.colors.length]}r.selectColor=e;function r(d){let f,m=null,U,u;function h(...w){if(!h.enabled)return;let b=h,x=Number(new Date),E=x-(f||x);b.diff=E,b.prev=f,b.curr=x,f=x,w[0]=r.coerce(w[0]),typeof w[0]!="string"&&w.unshift("%O");let g=0;w[0]=w[0].replace(/%([a-zA-Z%])/g,(F,v)=>{if(F==="%%")return"%";g++;let I=r.formatters[v];if(typeof I=="function"){let B=w[g];F=I.call(b,B),w.splice(g,1),g--}return F}),r.formatArgs.call(b,w),(b.log||r.log).apply(b,w)}return h.namespace=d,h.useColors=r.useColors(),h.color=r.selectColor(d),h.extend=n,h.destroy=r.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>m!==null?m:(U!==r.namespaces&&(U=r.namespaces,u=r.enabled(d)),u),set:w=>{m=w}}),typeof r.init=="function"&&r.init(h),h}function n(d,f){let m=r(this.namespace+(typeof f>"u"?":":f)+d);return m.log=this.log,m}function o(d){r.save(d),r.namespaces=d,r.names=[],r.skips=[];let f,m=(typeof d=="string"?d:"").split(/[\s,]+/),U=m.length;for(f=0;f<U;f++)m[f]&&(d=m[f].replace(/\*/g,".*?"),d[0]==="-"?r.skips.push(new RegExp("^"+d.slice(1)+"$")):r.names.push(new RegExp("^"+d+"$")))}function s(){let d=[...r.names.map(a),...r.skips.map(a).map(f=>"-"+f)].join(",");return r.enable(""),d}function i(d){if(d[d.length-1]==="*")return!0;let f,m;for(f=0,m=r.skips.length;f<m;f++)if(r.skips[f].test(d))return!1;for(f=0,m=r.names.length;f<m;f++)if(r.names[f].test(d))return!0;return!1}function a(d){return d.toString().substring(2,d.toString().length-2).replace(/\.\*\?$/,"*")}function l(d){return d instanceof Error?d.stack||d.message:d}function S(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}br.exports=oo});var wr=X((k,Be)=>{k.formatArgs=io;k.save=ao;k.load=co;k.useColors=so;k.storage=uo();k.destroy=(()=>{let t=!1;return()=>{t||(t=!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`."))}})();k.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 so(){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 io(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+Be.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(r++,o==="%c"&&(n=r))}),t.splice(n,0,e)}k.log=console.debug||console.log||(()=>{});function ao(t){try{t?k.storage.setItem("debug",t):k.storage.removeItem("debug")}catch{}}function co(){let t;try{t=k.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function uo(){try{return localStorage}catch{}}Be.exports=gr()(k);var{formatters:po}=Be.exports;po.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var ln=X((gd,fn)=>{fn.exports=Jt;var pn=128,Di=127,Fi=~Di,Pi=Math.pow(2,31);function Jt(t,e,r){if(Number.MAX_SAFE_INTEGER&&t>Number.MAX_SAFE_INTEGER)throw Jt.bytes=0,new RangeError("Could not encode varint");e=e||[],r=r||0;for(var n=r;t>=Pi;)e[r++]=t&255|pn,t/=128;for(;t&Fi;)e[r++]=t&255|pn,t>>>=7;return e[r]=t|0,Jt.bytes=r-n+1,e}});var bn=X((wd,mn)=>{mn.exports=Gt;var Ui=128,hn=127;function Gt(t,n){var r=0,n=n||0,o=0,s=n,i,a=t.length;do{if(s>=a||o>49)throw Gt.bytes=0,new RangeError("Could not decode varint");i=t[s++],r+=o<28?(i&hn)<<o:(i&hn)*Math.pow(2,o),o+=7}while(i>=Ui);return Gt.bytes=s-n,r}});var wn=X((xd,gn)=>{var Ni=Math.pow(2,7),Mi=Math.pow(2,14),ki=Math.pow(2,21),zi=Math.pow(2,28),Bi=Math.pow(2,35),Li=Math.pow(2,42),Oi=Math.pow(2,49),Ri=Math.pow(2,56),Vi=Math.pow(2,63);gn.exports=function(t){return t<Ni?1:t<Mi?2:t<ki?3:t<zi?4:t<Bi?5:t<Li?6:t<Oi?7:t<Ri?8:t<Vi?9:10}});var Wt=X((yd,xn)=>{xn.exports={encode:ln(),decode:bn(),encodingLength:wn()}});var ya={};C(ya,{bootstrap:()=>xa});var ke=class extends EventTarget{#e=new Map;listenerCount(e){let r=this.#e.get(e);return r==null?0:r.length}addEventListener(e,r,n){super.addEventListener(e,r,n);let o=this.#e.get(e);o==null&&(o=[],this.#e.set(e,o)),o.push({callback:r,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(e,r,n){super.removeEventListener(e.toString(),r??null,n);let o=this.#e.get(e);o!=null&&(o=o.filter(({callback:s})=>s!==r),this.#e.set(e,o))}dispatchEvent(e){let r=super.dispatchEvent(e),n=this.#e.get(e.type);return n==null||(n=n.filter(({once:o})=>!o),this.#e.set(e.type,n)),r}safeDispatchEvent(e,r){return this.dispatchEvent(new Yn(e,r))}},et=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},Yn=globalThis.CustomEvent??et;var lr=Symbol.for("@libp2p/peer-discovery");var z=Ze(wr(),1);var st={};C(st,{base32:()=>L,base32hex:()=>yo,base32hexpad:()=>Co,base32hexpadupper:()=>So,base32hexupper:()=>vo,base32pad:()=>wo,base32padupper:()=>xo,base32upper:()=>go,base32z:()=>Eo});function fo(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var o=0;o<t.length;o++){var s=t.charAt(o),i=s.charCodeAt(0);if(r[i]!==255)throw new TypeError(s+" is ambiguous");r[i]=o}var a=t.length,l=t.charAt(0),S=Math.log(a)/Math.log(256),d=Math.log(256)/Math.log(a);function f(u){if(u instanceof Uint8Array||(ArrayBuffer.isView(u)?u=new Uint8Array(u.buffer,u.byteOffset,u.byteLength):Array.isArray(u)&&(u=Uint8Array.from(u))),!(u instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(u.length===0)return"";for(var h=0,w=0,b=0,x=u.length;b!==x&&u[b]===0;)b++,h++;for(var E=(x-b)*d+1>>>0,g=new Uint8Array(E);b!==x;){for(var A=u[b],F=0,v=E-1;(A!==0||F<w)&&v!==-1;v--,F++)A+=256*g[v]>>>0,g[v]=A%a>>>0,A=A/a>>>0;if(A!==0)throw new Error("Non-zero carry");w=F,b++}for(var I=E-w;I!==E&&g[I]===0;)I++;for(var B=l.repeat(h);I<E;++I)B+=t.charAt(g[I]);return B}function m(u){if(typeof u!="string")throw new TypeError("Expected String");if(u.length===0)return new Uint8Array;var h=0;if(u[h]!==" "){for(var w=0,b=0;u[h]===l;)w++,h++;for(var x=(u.length-h)*S+1>>>0,E=new Uint8Array(x);u[h];){var g=r[u.charCodeAt(h)];if(g===255)return;for(var A=0,F=x-1;(g!==0||A<b)&&F!==-1;F--,A++)g+=a*E[F]>>>0,E[F]=g%256>>>0,g=g/256>>>0;if(g!==0)throw new Error("Non-zero carry");b=A,h++}if(u[h]!==" "){for(var v=x-b;v!==x&&E[v]===0;)v++;for(var I=new Uint8Array(w+(x-v)),B=w;v!==x;)I[B++]=E[v++];return I}}}function U(u){var h=m(u);if(h)return h;throw new Error(`Non-${e} character`)}return{encode:f,decodeUnsafe:m,decode:U}}var lo=fo,ho=lo,xr=ho;var Ta=new Uint8Array(0);var yr=(t,e)=>{if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0},$=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")};var vr=t=>new TextEncoder().encode(t),Cr=t=>new TextDecoder().decode(t);var tt=class{constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},rt=class{constructor(e,r,n){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.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 Er(this,e)}},nt=class{constructor(e){this.decoders=e}or(e){return Er(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},Er=(t,e)=>new nt({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),ot=class{constructor(e,r,n,o){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new tt(e,r,n),this.decoder=new rt(e,r,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},se=({name:t,prefix:e,encode:r,decode:n})=>new ot(t,e,r,n),_=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:o}=xr(r,e);return se({prefix:t,name:e,encode:n,decode:s=>$(o(s))})},mo=(t,e,r,n)=>{let o={};for(let d=0;d<e.length;++d)o[e[d]]=d;let s=t.length;for(;t[s-1]==="=";)--s;let i=new Uint8Array(s*r/8|0),a=0,l=0,S=0;for(let d=0;d<s;++d){let f=o[t[d]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);l=l<<r|f,a+=r,a>=8&&(a-=8,i[S++]=255&l>>a)}if(a>=r||255&l<<8-a)throw new SyntaxError("Unexpected end of data");return i},bo=(t,e,r)=>{let n=e[e.length-1]==="=",o=(1<<r)-1,s="",i=0,a=0;for(let l=0;l<t.length;++l)for(a=a<<8|t[l],i+=8;i>r;)i-=r,s+=e[o&a>>i];if(i&&(s+=e[o&a<<r-i]),n)for(;s.length*r&7;)s+="=";return s},T=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>se({prefix:e,name:t,encode(o){return bo(o,n,r)},decode(o){return mo(o,n,r,t)}});var L=T({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),go=T({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),wo=T({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),xo=T({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),yo=T({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),vo=T({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Co=T({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),So=T({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Eo=T({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var it={};C(it,{base58btc:()=>N,base58flickr:()=>Ao});var N=_({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Ao=_({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ct={};C(ct,{base64:()=>at,base64pad:()=>Io,base64url:()=>To,base64urlpad:()=>Do});var at=T({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Io=T({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),To=T({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Do=T({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});z.default.formatters.b=t=>t==null?"undefined":N.baseEncode(t);z.default.formatters.t=t=>t==null?"undefined":L.baseEncode(t);z.default.formatters.m=t=>t==null?"undefined":at.baseEncode(t);z.default.formatters.p=t=>t==null?"undefined":t.toString();z.default.formatters.c=t=>t==null?"undefined":t.toString();z.default.formatters.k=t=>t==null?"undefined":t.toString();z.default.formatters.a=t=>t==null?"undefined":t.toString();function Fo(t){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=t,e.destroy=()=>!0,e.extend=()=>e,e}function Ar(t){let e=Fo(`${t}:trace`);return z.default.enabled(`${t}:trace`)&&z.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(e=(0,z.default)(`${t}:trace`)),Object.assign((0,z.default)(t),{error:(0,z.default)(`${t}:error`),trace:e})}var Ir=Symbol.for("@libp2p/peer-id");var dt={};C(dt,{identity:()=>Po});var Po=se({prefix:"\0",name:"identity",encode:t=>Cr(t),decode:t=>vr(t)});var ut={};C(ut,{base2:()=>Uo});var Uo=T({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var pt={};C(pt,{base8:()=>No});var No=T({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ft={};C(ft,{base10:()=>Mo});var Mo=_({prefix:"9",name:"base10",alphabet:"0123456789"});var lt={};C(lt,{base16:()=>ko,base16upper:()=>zo});var ko=T({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),zo=T({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var ht={};C(ht,{base36:()=>Bo,base36upper:()=>Lo});var Bo=_({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Lo=_({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var mt={};C(mt,{base256emoji:()=>jo});var Tr=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}"),Oo=Tr.reduce((t,e,r)=>(t[r]=e,t),[]),Ro=Tr.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function Vo(t){return t.reduce((e,r)=>(e+=Oo[r],e),"")}function $o(t){let e=[];for(let r of t){let n=Ro[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var jo=se({prefix:"\u{1F680}",name:"base256emoji",encode:Vo,decode:$o});var xt={};C(xt,{sha256:()=>Oe,sha512:()=>as});var qo=Pr,Dr=128,_o=127,Jo=~_o,Go=Math.pow(2,31);function Pr(t,e,r){e=e||[],r=r||0;for(var n=r;t>=Go;)e[r++]=t&255|Dr,t/=128;for(;t&Jo;)e[r++]=t&255|Dr,t>>>=7;return e[r]=t|0,Pr.bytes=r-n+1,e}var Wo=bt,Xo=128,Fr=127;function bt(t,n){var r=0,n=n||0,o=0,s=n,i,a=t.length;do{if(s>=a)throw bt.bytes=0,new RangeError("Could not decode varint");i=t[s++],r+=o<28?(i&Fr)<<o:(i&Fr)*Math.pow(2,o),o+=7}while(i>=Xo);return bt.bytes=s-n,r}var Ko=Math.pow(2,7),Ho=Math.pow(2,14),Qo=Math.pow(2,21),Yo=Math.pow(2,28),Zo=Math.pow(2,35),es=Math.pow(2,42),ts=Math.pow(2,49),rs=Math.pow(2,56),ns=Math.pow(2,63),os=function(t){return t<Ko?1:t<Ho?2:t<Qo?3:t<Yo?4:t<Zo?5:t<es?6:t<ts?7:t<rs?8:t<ns?9:10},ss={encode:qo,decode:Wo,encodingLength:os},is=ss,ye=is;var ve=(t,e=0)=>[ye.decode(t,e),ye.decode.bytes],ie=(t,e,r=0)=>(ye.encode(t,e,r),e),ae=t=>ye.encodingLength(t);var J=(t,e)=>{let r=e.byteLength,n=ae(t),o=n+ae(r),s=new Uint8Array(o+r);return ie(t,s,0),ie(r,s,n),s.set(e,o),new ce(t,r,e,s)},H=t=>{let e=$(t),[r,n]=ve(e),[o,s]=ve(e.subarray(n)),i=e.subarray(n+s);if(i.byteLength!==o)throw new Error("Incorrect length");return new ce(r,o,i,e)},Ur=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&yr(t.bytes,r.bytes)}},ce=class{constructor(e,r,n,o){this.code=e,this.size=r,this.digest=n,this.bytes=o}};var wt=({name:t,code:e,encode:r})=>new gt(t,e,r),gt=class{constructor(e,r,n){this.name=e,this.code=r,this.encode=n}digest(e){if(e instanceof Uint8Array){let r=this.encode(e);return r instanceof Uint8Array?J(this.code,r):r.then(n=>J(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Mr=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Oe=wt({name:"sha2-256",code:18,encode:Mr("SHA-256")}),as=wt({name:"sha2-512",code:19,encode:Mr("SHA-512")});var yt={};C(yt,{identity:()=>Re});var kr=0,cs="identity",zr=$,ds=t=>J(kr,zr(t)),Re={code:kr,name:cs,encode:zr,digest:ds};var ec=new TextEncoder,tc=new TextDecoder;var Br=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return ls(r,vt(t),e||N.encoder);default:return hs(r,vt(t),e||L.encoder)}};var Lr=new WeakMap,vt=t=>{let e=Lr.get(t);if(e==null){let r=new Map;return Lr.set(t,r),r}return e},O=class t{constructor(e,r,n,o){this.code=r,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:r}=this;if(e!==Ce)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==ms)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=J(e,r);return t.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 t.equals(this,e)}static equals(e,r){let n=r;return n&&e.code===n.code&&e.version===n.version&&Ur(e.multihash,n.multihash)}toString(e){return Br(this,e)}toJSON(){return{"/":Br(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:o,multihash:s,bytes:i}=r;return new t(n,o,s,i||Or(n,o,s.bytes))}else if(r[bs]===!0){let{version:n,multihash:o,code:s}=r,i=H(o);return t.create(n,s,i)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(r!==Ce)throw new Error(`Version 0 CID must use dag-pb (code: ${Ce}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let o=Or(e,r,n.bytes);return new t(e,r,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,Ce,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,o=$(e.subarray(n,n+r.multihashSize));if(o.byteLength!==r.multihashSize)throw new Error("Incorrect length");let s=o.subarray(r.multihashSize-r.digestSize),i=new ce(r.multihashCode,r.digestSize,s,o);return[r.version===0?t.createV0(i):t.createV1(r.codec,i),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[f,m]=ve(e.subarray(r));return r+=m,f},o=n(),s=Ce;if(o===18?(o=0,r=0):s=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let i=r,a=n(),l=n(),S=r+l,d=S-i;return{version:o,codec:s,multihashCode:a,digestSize:l,multihashSize:d,size:S}}static parse(e,r){let[n,o]=fs(e,r),s=t.decode(o);if(s.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return vt(s).set(n,e),s}},fs=(t,e)=>{switch(t[0]){case"Q":{let r=e||N;return[N.prefix,r.decode(`${N.prefix}${t}`)]}case N.prefix:{let r=e||N;return[N.prefix,r.decode(t)]}case L.prefix:{let r=e||L;return[L.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}},ls=(t,e,r)=>{let{prefix:n}=r;if(n!==N.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let o=e.get(n);if(o==null){let s=r.encode(t).slice(1);return e.set(n,s),s}else return o},hs=(t,e,r)=>{let{prefix:n}=r,o=e.get(n);if(o==null){let s=r.encode(t);return e.set(n,s),s}else return o},Ce=112,ms=18,Or=(t,e,r)=>{let n=ae(t),o=n+ae(e),s=new Uint8Array(o+r.byteLength);return ie(t,s,0),ie(e,s,n),s.set(r,o),s},bs=Symbol.for("@ipld/js-cid/CID");var Se={...dt,...ut,...pt,...ft,...lt,...st,...ht,...it,...ct,...mt},pc={...xt,...yt};function Ee(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}var gs=Symbol.for("nodejs.util.inspect.custom"),Rr=Object.values(Se).map(t=>t.decoder).reduce((t,e)=>t.or(e),Se.identity.decoder),Vr=114,$r=36,jr=37,Ae=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()})`}[Ir]=!0;toString(){return this.string==null&&(this.string=N.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return O.createV1(Vr,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Ee(this.multihash.bytes,e);if(typeof e=="string")return Ct(e).equals(this);if(e?.multihash?.bytes!=null)return Ee(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[gs](){return`PeerId(${this.toString()})`}},Ie=class extends Ae{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Te=class extends Ae{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},De=class extends Ae{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Ct(t,e){if(e=e??Rr,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=H(N.decode(`z${t}`));return t.startsWith("12D")?new Te({multihash:r}):t.startsWith("16U")?new De({multihash:r}):new Ie({multihash:r})}return ws(Rr.decode(t))}function ws(t){try{let e=H(t);if(e.code===Re.code){if(e.digest.length===$r)return new Te({multihash:e});if(e.digest.length===jr)return new De({multihash:e})}if(e.code===Oe.code)return new Ie({multihash:e})}catch{return xs(O.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function xs(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==Vr)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Oe.code)return new Ie({multihash:t.multihash});if(e.code===Re.code){if(e.digest.length===$r)return new Te({multihash:t.multihash});if(e.digest.length===jr)return new De({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}var Ve=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var Tt={};C(Tt,{identity:()=>As});function ys(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var o=0;o<t.length;o++){var s=t.charAt(o),i=s.charCodeAt(0);if(r[i]!==255)throw new TypeError(s+" is ambiguous");r[i]=o}var a=t.length,l=t.charAt(0),S=Math.log(a)/Math.log(256),d=Math.log(256)/Math.log(a);function f(u){if(u instanceof Uint8Array||(ArrayBuffer.isView(u)?u=new Uint8Array(u.buffer,u.byteOffset,u.byteLength):Array.isArray(u)&&(u=Uint8Array.from(u))),!(u instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(u.length===0)return"";for(var h=0,w=0,b=0,x=u.length;b!==x&&u[b]===0;)b++,h++;for(var E=(x-b)*d+1>>>0,g=new Uint8Array(E);b!==x;){for(var A=u[b],F=0,v=E-1;(A!==0||F<w)&&v!==-1;v--,F++)A+=256*g[v]>>>0,g[v]=A%a>>>0,A=A/a>>>0;if(A!==0)throw new Error("Non-zero carry");w=F,b++}for(var I=E-w;I!==E&&g[I]===0;)I++;for(var B=l.repeat(h);I<E;++I)B+=t.charAt(g[I]);return B}function m(u){if(typeof u!="string")throw new TypeError("Expected String");if(u.length===0)return new Uint8Array;var h=0;if(u[h]!==" "){for(var w=0,b=0;u[h]===l;)w++,h++;for(var x=(u.length-h)*S+1>>>0,E=new Uint8Array(x);u[h];){var g=r[u.charCodeAt(h)];if(g===255)return;for(var A=0,F=x-1;(g!==0||A<b)&&F!==-1;F--,A++)g+=a*E[F]>>>0,E[F]=g%256>>>0,g=g/256>>>0;if(g!==0)throw new Error("Non-zero carry");b=A,h++}if(u[h]!==" "){for(var v=x-b;v!==x&&E[v]===0;)v++;for(var I=new Uint8Array(w+(x-v)),B=w;v!==x;)I[B++]=E[v++];return I}}}function U(u){var h=m(u);if(h)return h;throw new Error(`Non-${e} character`)}return{encode:f,decodeUnsafe:m,decode:U}}var vs=ys,Cs=vs,qr=Cs;var Ic=new Uint8Array(0);var _r=(t,e)=>{if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0},j=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")};var Jr=t=>new TextEncoder().encode(t),Gr=t=>new TextDecoder().decode(t);var St=class{constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Et=class{constructor(e,r,n){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.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 Xr(this,e)}},At=class{constructor(e){this.decoders=e}or(e){return Xr(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},Xr=(t,e)=>new At({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),It=class{constructor(e,r,n,o){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new St(e,r,n),this.decoder=new Et(e,r,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},de=({name:t,prefix:e,encode:r,decode:n})=>new It(t,e,r,n),G=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:o}=qr(r,e);return de({prefix:t,name:e,encode:n,decode:s=>j(o(s))})},Ss=(t,e,r,n)=>{let o={};for(let d=0;d<e.length;++d)o[e[d]]=d;let s=t.length;for(;t[s-1]==="=";)--s;let i=new Uint8Array(s*r/8|0),a=0,l=0,S=0;for(let d=0;d<s;++d){let f=o[t[d]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);l=l<<r|f,a+=r,a>=8&&(a-=8,i[S++]=255&l>>a)}if(a>=r||255&l<<8-a)throw new SyntaxError("Unexpected end of data");return i},Es=(t,e,r)=>{let n=e[e.length-1]==="=",o=(1<<r)-1,s="",i=0,a=0;for(let l=0;l<t.length;++l)for(a=a<<8|t[l],i+=8;i>r;)i-=r,s+=e[o&a>>i];if(i&&(s+=e[o&a<<r-i]),n)for(;s.length*r&7;)s+="=";return s},D=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>de({prefix:e,name:t,encode(o){return Es(o,n,r)},decode(o){return Ss(o,n,r,t)}});var As=de({prefix:"\0",name:"identity",encode:t=>Gr(t),decode:t=>Jr(t)});var Dt={};C(Dt,{base2:()=>Is});var Is=D({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ft={};C(Ft,{base8:()=>Ts});var Ts=D({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Pt={};C(Pt,{base10:()=>Ds});var Ds=G({prefix:"9",name:"base10",alphabet:"0123456789"});var Ut={};C(Ut,{base16:()=>Fs,base16upper:()=>Ps});var Fs=D({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Ps=D({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Nt={};C(Nt,{base32:()=>ue,base32hex:()=>ks,base32hexpad:()=>Bs,base32hexpadupper:()=>Ls,base32hexupper:()=>zs,base32pad:()=>Ns,base32padupper:()=>Ms,base32upper:()=>Us,base32z:()=>Os});var ue=D({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Us=D({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Ns=D({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Ms=D({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),ks=D({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),zs=D({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Bs=D({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Ls=D({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Os=D({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Mt={};C(Mt,{base36:()=>Rs,base36upper:()=>Vs});var Rs=G({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Vs=G({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var kt={};C(kt,{base58btc:()=>R,base58flickr:()=>$s});var R=G({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),$s=G({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var zt={};C(zt,{base64:()=>js,base64pad:()=>qs,base64url:()=>_s,base64urlpad:()=>Js});var js=D({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),qs=D({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),_s=D({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Js=D({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Bt={};C(Bt,{base256emoji:()=>Hs});var Kr=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}"),Gs=Kr.reduce((t,e,r)=>(t[r]=e,t),[]),Ws=Kr.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function Xs(t){return t.reduce((e,r)=>(e+=Gs[r],e),"")}function Ks(t){let e=[];for(let r of t){let n=Ws[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var Hs=de({prefix:"\u{1F680}",name:"base256emoji",encode:Xs,decode:Ks});var Vt={};C(Vt,{sha256:()=>mi,sha512:()=>bi});var Qs=Yr,Hr=128,Ys=127,Zs=~Ys,ei=Math.pow(2,31);function Yr(t,e,r){e=e||[],r=r||0;for(var n=r;t>=ei;)e[r++]=t&255|Hr,t/=128;for(;t&Zs;)e[r++]=t&255|Hr,t>>>=7;return e[r]=t|0,Yr.bytes=r-n+1,e}var ti=Lt,ri=128,Qr=127;function Lt(t,n){var r=0,n=n||0,o=0,s=n,i,a=t.length;do{if(s>=a)throw Lt.bytes=0,new RangeError("Could not decode varint");i=t[s++],r+=o<28?(i&Qr)<<o:(i&Qr)*Math.pow(2,o),o+=7}while(i>=ri);return Lt.bytes=s-n,r}var ni=Math.pow(2,7),oi=Math.pow(2,14),si=Math.pow(2,21),ii=Math.pow(2,28),ai=Math.pow(2,35),ci=Math.pow(2,42),di=Math.pow(2,49),ui=Math.pow(2,56),pi=Math.pow(2,63),fi=function(t){return t<ni?1:t<oi?2:t<si?3:t<ii?4:t<ai?5:t<ci?6:t<di?7:t<ui?8:t<pi?9:10},li={encode:Qs,decode:ti,encodingLength:fi},hi=li,Fe=hi;var Pe=(t,e=0)=>[Fe.decode(t,e),Fe.decode.bytes],pe=(t,e,r=0)=>(Fe.encode(t,e,r),e),fe=t=>Fe.encodingLength(t);var Y=(t,e)=>{let r=e.byteLength,n=fe(t),o=n+fe(r),s=new Uint8Array(o+r);return pe(t,s,0),pe(r,s,n),s.set(e,o),new le(t,r,e,s)},Zr=t=>{let e=j(t),[r,n]=Pe(e),[o,s]=Pe(e.subarray(n)),i=e.subarray(n+s);if(i.byteLength!==o)throw new Error("Incorrect length");return new le(r,o,i,e)},en=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&_r(t.bytes,r.bytes)}},le=class{constructor(e,r,n,o){this.code=e,this.size=r,this.digest=n,this.bytes=o}};var Rt=({name:t,code:e,encode:r})=>new Ot(t,e,r),Ot=class{constructor(e,r,n){this.name=e,this.code=r,this.encode=n}digest(e){if(e instanceof Uint8Array){let r=this.encode(e);return r instanceof Uint8Array?Y(this.code,r):r.then(n=>Y(this.code,n))}else throw Error("Unknown type, must be binary type")}};var rn=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),mi=Rt({name:"sha2-256",code:18,encode:rn("SHA-256")}),bi=Rt({name:"sha2-512",code:19,encode:rn("SHA-512")});var $t={};C($t,{identity:()=>xi});var nn=0,gi="identity",on=j,wi=t=>Y(nn,on(t)),xi={code:nn,name:gi,encode:on,digest:wi};var Wc=new TextEncoder,Xc=new TextDecoder;var sn=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return Si(r,jt(t),e||R.encoder);default:return Ei(r,jt(t),e||ue.encoder)}};var an=new WeakMap,jt=t=>{let e=an.get(t);if(e==null){let r=new Map;return an.set(t,r),r}return e},je=class t{constructor(e,r,n,o){this.code=r,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:r}=this;if(e!==Ne)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Ai)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=Y(e,r);return t.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 t.equals(this,e)}static equals(e,r){let n=r;return n&&e.code===n.code&&e.version===n.version&&en(e.multihash,n.multihash)}toString(e){return sn(this,e)}toJSON(){return{"/":sn(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:o,multihash:s,bytes:i}=r;return new t(n,o,s,i||cn(n,o,s.bytes))}else if(r[Ii]===!0){let{version:n,multihash:o,code:s}=r,i=Zr(o);return t.create(n,s,i)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(r!==Ne)throw new Error(`Version 0 CID must use dag-pb (code: ${Ne}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let o=cn(e,r,n.bytes);return new t(e,r,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,Ne,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,o=j(e.subarray(n,n+r.multihashSize));if(o.byteLength!==r.multihashSize)throw new Error("Incorrect length");let s=o.subarray(r.multihashSize-r.digestSize),i=new le(r.multihashCode,r.digestSize,s,o);return[r.version===0?t.createV0(i):t.createV1(r.codec,i),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[f,m]=Pe(e.subarray(r));return r+=m,f},o=n(),s=Ne;if(o===18?(o=0,r=0):s=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let i=r,a=n(),l=n(),S=r+l,d=S-i;return{version:o,codec:s,multihashCode:a,digestSize:l,multihashSize:d,size:S}}static parse(e,r){let[n,o]=Ci(e,r),s=t.decode(o);if(s.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return jt(s).set(n,e),s}},Ci=(t,e)=>{switch(t[0]){case"Q":{let r=e||R;return[R.prefix,r.decode(`${R.prefix}${t}`)]}case R.prefix:{let r=e||R;return[R.prefix,r.decode(t)]}case ue.prefix:{let r=e||ue;return[ue.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}},Si=(t,e,r)=>{let{prefix:n}=r;if(n!==R.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let o=e.get(n);if(o==null){let s=r.encode(t).slice(1);return e.set(n,s),s}else return o},Ei=(t,e,r)=>{let{prefix:n}=r,o=e.get(n);if(o==null){let s=r.encode(t);return e.set(n,s),s}else return o},Ne=112,Ai=18,cn=(t,e,r)=>{let n=fe(t),o=n+fe(e),s=new Uint8Array(o+r.byteLength);return pe(t,s,0),pe(e,s,n),s.set(r,o),s},Ii=Symbol.for("@ipld/js-cid/CID");var qt={...Tt,...Dt,...Ft,...Pt,...Ut,...Nt,...Mt,...kt,...zt,...Bt},od={...Vt,...$t};function he(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function qe(t=0){return globalThis.Buffer?.allocUnsafe!=null?he(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function un(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var dn=un("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),_t=un("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=qe(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Ti={utf8:dn,"utf-8":dn,hex:qt.base16,latin1:_t,ascii:_t,binary:_t,...qt},_e=Ti;function M(t,e="utf8"){let r=_e[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}function q(t,e){e==null&&(e=t.reduce((o,s)=>o+s.length,0));let r=qe(e),n=0;for(let o of t)r.set(o,n),n+=o.length;return he(r)}var ge=Ze(Wt(),1);var Je=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let r=this.index,n=e();return n===void 0&&(this.index=r),n}parseWith(e){let r=e();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let r=this.readChar();if(r===e)return r})}readSeparator(e,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,r,n,o){return this.readAtomically(()=>{let s=0,i=0,a=this.peekChar();if(a===void 0)return;let l=a==="0",S=2**(8*o)-1;for(;;){let d=this.readAtomically(()=>{let f=this.readChar();if(f===void 0)return;let m=Number.parseInt(f,e);if(!Number.isNaN(m))return m});if(d===void 0)break;if(s*=e,s+=d,s>S||(i+=1,r!==void 0&&i>r))return}if(i!==0)return!n&&l&&i>1?void 0:s})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let r=0;r<e.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[r]=n}return e})}readIPv6Addr(){let e=r=>{for(let n=0;n<r.length/2;n++){let o=n*2;if(n<r.length-3){let i=this.readSeparator(":",n,()=>this.readIPv4Addr());if(i!==void 0)return r[o]=i[0],r[o+1]=i[1],r[o+2]=i[2],r[o+3]=i[3],[o+4,!0]}let s=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(s===void 0)return[o,!1];r[o]=s>>8,r[o+1]=s&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,o]=e(r);if(n===16)return r;if(o||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let s=new Uint8Array(14),i=16-(n+2),[a]=e(s.subarray(0,i));return r.set(s.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var yn=45,$i=15,me=new Je;function Xt(t){if(!(t.length>$i))return me.new(t).parseWith(()=>me.readIPv4Addr())}function Kt(t){if(!(t.length>yn))return me.new(t).parseWith(()=>me.readIPv6Addr())}function Ge(t){if(!(t.length>yn))return me.new(t).parseWith(()=>me.readIPAddr())}var Pd=parseInt("0xFFFF",16),Ud=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function Ht(t,e="utf8"){let r=_e[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?he(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var V=Ze(Wt(),1);function Sn(t){return!!Xt(t)}function En(t){return!!Kt(t)}function We(t){return!!Ge(t)}var An=Sn,Gi=En,Qt=function(t){let e=0;if(t=t.toString().trim(),An(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(Gi(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let s=An(r[n]),i;s&&(i=Qt(r[n]),r[n]=M(i.slice(0,2),"base16")),i!=null&&++n<8&&r.splice(n,0,M(i.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let s=[n,1];for(n=9-r.length;n>0;n--)s.push("0");r.splice.apply(r,s)}let o=new Uint8Array(e+16);for(n=0;n<r.length;n++){let s=parseInt(r[n],16);o[e++]=s>>8&255,o[e++]=s&255}return o}throw new Error("invalid ip address")},In=function(t,e=0,r){e=~~e,r=r??t.length-e;let n=new DataView(t.buffer);if(r===4){let o=[];for(let s=0;s<r;s++)o.push(t[e+s]);return o.join(".")}if(r===16){let o=[];for(let s=0;s<r;s+=2)o.push(n.getUint16(e+s).toString(16));return o.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var be={},Yt={},Xi=[[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"]];Xi.forEach(t=>{let e=Ki(...t);Yt[e.code]=e,be[e.name]=e});function Ki(t,e,r,n,o){return{code:t,size:e,name:r,resolvable:!!n,path:!!o}}function y(t){if(typeof t=="number"){if(Yt[t]!=null)return Yt[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(be[t]!=null)return be[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var gu=y("ip4"),wu=y("ip6"),xu=y("ipcidr");function er(t,e){switch(y(t).code){case 4:case 41:return Qi(e);case 42:return Fn(e);case 6:case 273:case 33:case 132:return Un(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Fn(e);case 421:return ta(e);case 444:return Pn(e);case 445:return Pn(e);case 466:return ea(e);default:return M(e,"base16")}}function tr(t,e){switch(y(t).code){case 4:return Tn(e);case 41:return Tn(e);case 42:return Dn(e);case 6:case 273:case 33:case 132:return rr(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Dn(e);case 421:return Yi(e);case 444:return ra(e);case 445:return na(e);case 466:return Zi(e);default:return Ht(e,"base16")}}var Zt=Object.values(Se).map(t=>t.decoder),Hi=function(){let t=Zt[0].or(Zt[1]);return Zt.slice(2).forEach(e=>t=t.or(e)),t}();function Tn(t){if(!We(t))throw new Error("invalid ip address");return Qt(t)}function Qi(t){let e=In(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!We(e))throw new Error("invalid ip address");return e}function rr(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function Un(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function Dn(t){let e=Ht(t),r=Uint8Array.from(V.default.encode(e.length));return q([r,e],r.length+e.length)}function Fn(t){let e=V.default.decode(t);if(t=t.slice(V.default.decode.bytes),t.length!==e)throw new Error("inconsistent lengths");return M(t)}function Yi(t){let e;t[0]==="Q"||t[0]==="1"?e=H(N.decode(`z${t}`)).bytes:e=O.parse(t).multihash.bytes;let r=Uint8Array.from(V.default.encode(e.length));return q([r,e],r.length+e.length)}function Zi(t){let e=Hi.decode(t),r=Uint8Array.from(V.default.encode(e.length));return q([r,e],r.length+e.length)}function ea(t){let e=V.default.decode(t),r=t.slice(V.default.decode.bytes);if(r.length!==e)throw new Error("inconsistent lengths");return"u"+M(r,"base64url")}function ta(t){let e=V.default.decode(t),r=t.slice(V.default.decode.bytes);if(r.length!==e)throw new Error("inconsistent lengths");return M(r,"base58btc")}function ra(t){let e=t.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 r=L.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=rr(n);return q([r,o],r.length+o.length)}function na(t){let e=t.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 r=L.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=rr(n);return q([r,o],r.length+o.length)}function Pn(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=M(e,"base32"),o=Un(r);return`${n}:${o}`}function Nn(t){t=nr(t);let e=[],r=[],n=null,o=t.split("/").slice(1);if(o.length===1&&o[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let s=0;s<o.length;s++){let i=o[s],a=y(i);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(s++,s>=o.length)throw kn("invalid address: "+t);if(a.path===!0){n=nr(o.slice(s).join("/")),e.push([a.code,tr(a.code,n)]),r.push([a.code,n]);break}let l=tr(a.code,o[s]);e.push([a.code,l]),r.push([a.code,er(a.code,l)])}return{string:Mn(r),bytes:sr(e),tuples:e,stringTuples:r,path:n}}function or(t){let e=[],r=[],n=null,o=0;for(;o<t.length;){let s=ge.default.decode(t,o),i=ge.default.decode.bytes??0,a=y(s),l=oa(a,t.slice(o+i));if(l===0){e.push([s]),r.push([s]),o+=i;continue}let S=t.slice(o+i,o+i+l);if(o+=l+i,o>t.length)throw kn("Invalid address Uint8Array: "+M(t,"base16"));e.push([s,S]);let d=er(s,S);if(r.push([s,d]),a.path===!0){n=d;break}}return{bytes:Uint8Array.from(t),string:Mn(r),tuples:e,stringTuples:r,path:n}}function Mn(t){let e=[];return t.map(r=>{let n=y(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),nr(e.join("/"))}function sr(t){return q(t.map(e=>{let r=y(e[0]),n=Uint8Array.from(ge.default.encode(r.code));return e.length>1&&e[1]!=null&&(n=q([n,e[1]])),n}))}function oa(t,e){return t.size>0?t.size/8:t.size===0?0:ge.default.decode(e)+(ge.default.decode.bytes??0)}function nr(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function kn(t){return new Error("Error parsing address: "+t)}var sa=Symbol.for("nodejs.util.inspect.custom"),ia=[y("dns").code,y("dns4").code,y("dns6").code,y("dnsaddr").code],aa=new Map,zn=Symbol.for("@multiformats/js-multiaddr/multiaddr");function ca(t){return!!t?.[zn]}var ir=class t{bytes;#e;#t;#r;#n;[zn]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=or(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=Nn(e)}else if(ca(e))r=or(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,r,n,o,s="",i=y("tcp"),a=y("udp"),l=y("ip4"),S=y("ip6"),d=y("dns6"),f=y("ip6zone");for(let[U,u]of this.stringTuples())U===f.code&&(s=`%${u??""}`),ia.includes(U)&&(r=i.name,o=443,n=`${u??""}${s}`,e=U===d.code?6:4),(U===i.code||U===a.code)&&(r=y(U).name,o=parseInt(u??"")),(U===l.code||U===S.code)&&(r=y(U).name,n=`${u??""}${s}`,e=U===S.code?6:4);if(e==null||r==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:r,port:o}}protos(){return this.#t.map(([e])=>Object.assign({},y(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>y(e).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(e){return e=new t(e),new t(this.toString()+e.toString())}decapsulate(e){let r=e.toString(),n=this.toString(),o=n.lastIndexOf(r);if(o<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new t(n.slice(0,o))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new t(sr(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,o])=>{n===be.p2p.code&&e.push([n,o]),n===be["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?M(N.decode(`z${n}`),"base58btc"):M(O.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return Ee(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(s=>s.resolvable);if(r==null)return[this];let n=aa.get(r.name);if(n==null)throw new Ve(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(s=>new t(s))}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 r=(e??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[sa](){return`Multiaddr(${this.#e})`}};function we(t){return new ir(t)}var da=c("dns4"),ua=c("dns6"),pa=c("dnsaddr"),ee=P(c("dns"),pa,da,ua),He=P(c("ip4"),c("ip6")),xe=P(p(He,c("tcp")),p(ee,c("tcp"))),Qe=p(He,c("udp")),fa=p(Qe,c("utp")),la=p(Qe,c("quic")),ha=p(Qe,c("quic-v1")),ar=P(p(xe,c("ws")),p(ee,c("ws"))),Xe=P(p(ar,c("p2p")),ar),cr=P(p(xe,c("wss")),p(ee,c("wss")),p(xe,c("tls"),c("ws")),p(ee,c("tls"),c("ws"))),Ke=P(p(cr,c("p2p")),cr),dr=P(p(xe,c("http")),p(He,c("http")),p(ee,c("http"))),ur=P(p(xe,c("https")),p(He,c("https")),p(ee,c("https"))),Bn=p(Qe,c("webrtc-direct"),c("certhash")),Rn=P(p(Bn,c("p2p")),Bn),Ln=p(ha,c("webtransport"),c("certhash"),c("certhash")),Vn=P(p(Ln,c("p2p")),Ln),$n=P(p(Xe,c("p2p-webrtc-star"),c("p2p")),p(Ke,c("p2p-webrtc-star"),c("p2p")),p(Xe,c("p2p-webrtc-star")),p(Ke,c("p2p-webrtc-star"))),$u=P(p(Xe,c("p2p-websocket-star"),c("p2p")),p(Ke,c("p2p-websocket-star"),c("p2p")),p(Xe,c("p2p-websocket-star")),p(Ke,c("p2p-websocket-star"))),jn=P(p(dr,c("p2p-webrtc-direct"),c("p2p")),p(ur,c("p2p-webrtc-direct"),c("p2p")),p(dr,c("p2p-webrtc-direct")),p(ur,c("p2p-webrtc-direct"))),te=P(ar,cr,dr,ur,$n,jn,xe,fa,la,ee,Rn,Vn),ju=P(p(te,c("p2p-stardust"),c("p2p")),p(te,c("p2p-stardust"))),W=P(p(te,c("p2p")),$n,jn,Rn,Vn,c("p2p")),On=P(p(W,c("p2p-circuit"),W),p(W,c("p2p-circuit")),p(c("p2p-circuit"),W),p(te,c("p2p-circuit")),p(c("p2p-circuit"),te),c("p2p-circuit")),qn=()=>P(p(On,qn),On),Z=qn(),_n=P(p(Z,W,Z),p(W,Z),p(Z,W),Z,W);var qu=P(p(Z,c("webrtc"),c("p2p")),p(Z,c("webrtc")),p(te,c("webrtc"),c("p2p")),p(te,c("webrtc")),c("webrtc"));function Jn(t){function e(r){let n;try{n=we(r)}catch{return!1}let o=t(n.protoNames());return o===null?!1:o===!0||o===!1?o:o.length===0}return e}function p(...t){function e(r){if(r.length<t.length)return null;let n=r;return t.some(o=>(n=typeof o=="function"?o().partialMatch(r):o.partialMatch(r),Array.isArray(n)&&(r=n),n===null)),n}return{toString:function(){return"{ "+t.join(" ")+" }"},input:t,matches:Jn(e),partialMatch:e}}function P(...t){function e(n){let o=null;return t.some(s=>{let i=typeof s=="function"?s().partialMatch(n):s.partialMatch(n);return i!=null?(o=i,!0):!1}),o}return{toString:function(){return"{ "+t.join(" ")+" }"},input:t,matches:Jn(e),partialMatch:e}}function c(t){let e=t;function r(o){let s;try{s=we(o)}catch{return!1}let i=s.protoNames();return i.length===1&&i[0]===e}function n(o){return o.length===0?null:o[0]===e?o.slice(1):null}return{toString:function(){return e},matches:r,partialMatch:n}}var Ye=Ar("libp2p:bootstrap"),ma="bootstrap",ba=50,ga=12e4,wa=1e3,pr=class extends ke{static tag="bootstrap";timer;list;timeout;components;_init;constructor(e,r={list:[]}){if(r.list==null||r.list.length===0)throw new Error("Bootstrap requires a list of peer addresses");super(),this.components=e,this.timeout=r.timeout??wa,this.list=[];for(let n of r.list){if(!_n.matches(n)){Ye.error("Invalid multiaddr");continue}let o=we(n),s=o.getPeerId();if(s==null){Ye.error("Invalid bootstrap multiaddr without peer id");continue}let i={id:Ct(s),multiaddrs:[o],protocols:[]};this.list.push(i)}this._init=r}[lr]=this;[Symbol.toStringTag]="@libp2p/bootstrap";isStarted(){return!!this.timer}start(){this.isStarted()||(Ye("Starting bootstrap node discovery, discovering peers after %s ms",this.timeout),this.timer=setTimeout(()=>{this._discoverBootstrapPeers().catch(e=>{Ye.error(e)})},this.timeout))}async _discoverBootstrapPeers(){if(this.timer!=null)for(let e of this.list){if(await this.components.peerStore.merge(e.id,{tags:{[this._init.tagName??ma]:{value:this._init.tagValue??ba,ttl:this._init.tagTTL??ga}}}),this.timer==null)return;this.safeDispatchEvent("peer",{detail:e})}}stop(){this.timer!=null&&clearTimeout(this.timer),this.timer=void 0}};function xa(t){return e=>new pr(e,t)}return Qn(ya);})(); | ||
return Libp2PBootstrap})); |
@@ -1,3 +0,3 @@ | ||
import type { PeerDiscovery } from '@libp2p/interface-peer-discovery'; | ||
import type { PeerStore } from '@libp2p/interface-peer-store'; | ||
import type { PeerDiscovery } from '@libp2p/interface/peer-discovery'; | ||
import type { PeerStore } from '@libp2p/interface/peer-store'; | ||
export interface BootstrapInit { | ||
@@ -4,0 +4,0 @@ /** |
@@ -1,3 +0,3 @@ | ||
import { peerDiscovery } from '@libp2p/interface-peer-discovery'; | ||
import { EventEmitter } from '@libp2p/interfaces/events'; | ||
import { EventEmitter } from '@libp2p/interface/events'; | ||
import { peerDiscovery } from '@libp2p/interface/peer-discovery'; | ||
import { logger } from '@libp2p/logger'; | ||
@@ -4,0 +4,0 @@ import { peerIdFromString } from '@libp2p/peer-id'; |
121
package.json
{ | ||
"name": "@libp2p/bootstrap", | ||
"version": "8.0.0", | ||
"description": "Node.js IPFS Implementation of the railing process of a Node through a bootstrap peer list", | ||
"version": "9.0.0-5ffa7a74", | ||
"description": "Peer discovery via a list of bootstrap peers", | ||
"license": "Apache-2.0 OR MIT", | ||
"homepage": "https://github.com/libp2p/js-libp2p-bootstrap#readme", | ||
"homepage": "https://github.com/libp2p/js-libp2p/tree/master/packages/peer-discovery-bootstrap#readme", | ||
"repository": { | ||
"type": "git", | ||
"url": "git+https://github.com/libp2p/js-libp2p-bootstrap.git" | ||
"url": "git+https://github.com/libp2p/js-libp2p.git" | ||
}, | ||
"bugs": { | ||
"url": "https://github.com/libp2p/js-libp2p-bootstrap/issues" | ||
"url": "https://github.com/libp2p/js-libp2p/issues" | ||
}, | ||
@@ -17,6 +17,2 @@ "keywords": [ | ||
], | ||
"engines": { | ||
"node": ">=16.0.0", | ||
"npm": ">=7.0.0" | ||
}, | ||
"type": "module", | ||
@@ -42,87 +38,2 @@ "types": "./dist/src/index.d.ts", | ||
}, | ||
"release": { | ||
"branches": [ | ||
"master" | ||
], | ||
"plugins": [ | ||
[ | ||
"@semantic-release/commit-analyzer", | ||
{ | ||
"preset": "conventionalcommits", | ||
"releaseRules": [ | ||
{ | ||
"breaking": true, | ||
"release": "major" | ||
}, | ||
{ | ||
"revert": true, | ||
"release": "patch" | ||
}, | ||
{ | ||
"type": "feat", | ||
"release": "minor" | ||
}, | ||
{ | ||
"type": "fix", | ||
"release": "patch" | ||
}, | ||
{ | ||
"type": "docs", | ||
"release": "patch" | ||
}, | ||
{ | ||
"type": "test", | ||
"release": "patch" | ||
}, | ||
{ | ||
"type": "deps", | ||
"release": "patch" | ||
}, | ||
{ | ||
"scope": "no-release", | ||
"release": false | ||
} | ||
] | ||
} | ||
], | ||
[ | ||
"@semantic-release/release-notes-generator", | ||
{ | ||
"preset": "conventionalcommits", | ||
"presetConfig": { | ||
"types": [ | ||
{ | ||
"type": "feat", | ||
"section": "Features" | ||
}, | ||
{ | ||
"type": "fix", | ||
"section": "Bug Fixes" | ||
}, | ||
{ | ||
"type": "chore", | ||
"section": "Trivial Changes" | ||
}, | ||
{ | ||
"type": "docs", | ||
"section": "Documentation" | ||
}, | ||
{ | ||
"type": "deps", | ||
"section": "Dependencies" | ||
}, | ||
{ | ||
"type": "test", | ||
"section": "Tests" | ||
} | ||
] | ||
} | ||
} | ||
], | ||
"@semantic-release/changelog", | ||
"@semantic-release/npm", | ||
"@semantic-release/github", | ||
"@semantic-release/git" | ||
] | ||
}, | ||
"scripts": { | ||
@@ -139,22 +50,16 @@ "clean": "aegir clean", | ||
"test:node": "aegir test -t node --cov", | ||
"test:electron-main": "aegir test -t electron-main", | ||
"release": "aegir release", | ||
"docs": "aegir docs" | ||
"test:electron-main": "aegir test -t electron-main" | ||
}, | ||
"dependencies": { | ||
"@libp2p/interface-peer-discovery": "^2.0.0", | ||
"@libp2p/interface-peer-info": "^1.0.7", | ||
"@libp2p/interface-peer-store": "^2.0.0", | ||
"@libp2p/interfaces": "^3.0.3", | ||
"@libp2p/logger": "^2.0.1", | ||
"@libp2p/peer-id": "^2.0.0", | ||
"@multiformats/mafmt": "^12.0.0", | ||
"@multiformats/multiaddr": "^12.0.0" | ||
"@libp2p/interface": "0.1.0-5ffa7a74", | ||
"@libp2p/logger": "3.0.0-5ffa7a74", | ||
"@libp2p/peer-id": "3.0.0-5ffa7a74", | ||
"@multiformats/mafmt": "^12.1.2", | ||
"@multiformats/multiaddr": "^12.1.3" | ||
}, | ||
"devDependencies": { | ||
"@libp2p/interface-peer-discovery-compliance-tests": "^2.0.0", | ||
"@libp2p/interface-peer-id": "^2.0.0", | ||
"aegir": "^39.0.5", | ||
"@libp2p/interface-compliance-tests": "4.0.0-5ffa7a74", | ||
"aegir": "^40.0.1", | ||
"sinon-ts": "^1.0.0" | ||
} | ||
} |
@@ -5,6 +5,6 @@ # @libp2p/bootstrap <!-- omit in toc --> | ||
[](https://discuss.libp2p.io) | ||
[](https://codecov.io/gh/libp2p/js-libp2p-bootstrap) | ||
[](https://github.com/libp2p/js-libp2p-bootstrap/actions/workflows/js-test-and-release.yml?query=branch%3Amaster) | ||
[](https://codecov.io/gh/libp2p/js-libp2p) | ||
[](https://github.com/libp2p/js-libp2p/actions/workflows/main.yml?query=branch%3Amaster) | ||
> Node.js IPFS Implementation of the railing process of a Node through a bootstrap peer list | ||
> Peer discovery via a list of bootstrap peers | ||
@@ -93,3 +93,3 @@ ## Table of contents <!-- omit in toc --> | ||
- <https://libp2p.github.io/js-libp2p-bootstrap> | ||
- <https://libp2p.github.io/js-libp2p/modules/_libp2p_bootstrap.html> | ||
@@ -96,0 +96,0 @@ ## License |
@@ -1,3 +0,3 @@ | ||
import { peerDiscovery } from '@libp2p/interface-peer-discovery' | ||
import { EventEmitter } from '@libp2p/interfaces/events' | ||
import { EventEmitter } from '@libp2p/interface/events' | ||
import { peerDiscovery } from '@libp2p/interface/peer-discovery' | ||
import { logger } from '@libp2p/logger' | ||
@@ -7,6 +7,6 @@ import { peerIdFromString } from '@libp2p/peer-id' | ||
import { multiaddr } from '@multiformats/multiaddr' | ||
import type { PeerDiscovery, PeerDiscoveryEvents } from '@libp2p/interface-peer-discovery' | ||
import type { PeerInfo } from '@libp2p/interface-peer-info' | ||
import type { PeerStore } from '@libp2p/interface-peer-store' | ||
import type { Startable } from '@libp2p/interfaces/dist/src/startable' | ||
import type { PeerDiscovery, PeerDiscoveryEvents } from '@libp2p/interface/peer-discovery' | ||
import type { PeerInfo } from '@libp2p/interface/peer-info' | ||
import type { PeerStore } from '@libp2p/interface/peer-store' | ||
import type { Startable } from '@libp2p/interface/startable' | ||
@@ -13,0 +13,0 @@ const log = logger('libp2p:bootstrap') |
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
77845
5
3
498
9
1
1
+ Added@libp2p/interface@0.1.0-5ffa7a74(transitive)
+ Added@libp2p/logger@3.0.0-5ffa7a74(transitive)
+ Added@libp2p/peer-id@3.0.0-5ffa7a74(transitive)
+ Added@multiformats/multiaddr@12.4.0(transitive)
+ Added@types/node@22.13.5(transitive)
+ Addedabortable-iterator@5.1.0(transitive)
+ Addedget-iterator@2.0.1(transitive)
+ Addedit-pushable@3.2.3(transitive)
+ Addedit-stream-types@2.0.2(transitive)
+ Addedp-defer@4.0.1(transitive)
- Removed@libp2p/interface-peer-info@^1.0.7
- Removed@libp2p/interface-peer-store@^2.0.0
- Removed@libp2p/interfaces@^3.0.3
- Removed@libp2p/interface-peer-discovery@2.0.0(transitive)
- Removed@libp2p/interface-peer-id@2.0.2(transitive)
- Removed@libp2p/interface-peer-info@1.0.10(transitive)
- Removed@libp2p/interface-peer-store@2.0.4(transitive)
- Removed@libp2p/interfaces@3.3.2(transitive)
- Removed@libp2p/logger@2.1.1(transitive)
- Removed@libp2p/peer-id@2.0.4(transitive)
- Removed@multiformats/multiaddr@12.3.5(transitive)
- Removed@types/node@22.13.4(transitive)
- Removedmultiformats@11.0.2(transitive)
Updated@multiformats/mafmt@^12.1.2