@libp2p/mdns 7.0.4 → 8.0.0-3dfc236e

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,8 +2,8 @@
2
2
 
3
3
  [![libp2p.io](https://img.shields.io/badge/project-libp2p-yellow.svg?style=flat-square)](http://libp2p.io/)
4
4
  [![Discuss](https://img.shields.io/discourse/https/discuss.libp2p.io/posts.svg?style=flat-square)](https://discuss.libp2p.io)
5
- [![codecov](https://img.shields.io/codecov/c/github/libp2p/js-libp2p-mdns.svg?style=flat-square)](https://codecov.io/gh/libp2p/js-libp2p-mdns)
6
- [![CI](https://img.shields.io/github/actions/workflow/status/libp2p/js-libp2p-mdns/js-test-and-release.yml?branch=master\&style=flat-square)](https://github.com/libp2p/js-libp2p-mdns/actions/workflows/js-test-and-release.yml?query=branch%3Amaster)
5
+ [![codecov](https://img.shields.io/codecov/c/github/libp2p/js-libp2p.svg?style=flat-square)](https://codecov.io/gh/libp2p/js-libp2p)
6
+ [![CI](https://img.shields.io/github/actions/workflow/status/libp2p/js-libp2p/main.yml?branch=master\&style=flat-square)](https://github.com/libp2p/js-libp2p/actions/workflows/main.yml?query=branch%3Amaster)
7
7
 
8
8
  > Node.js libp2p mDNS discovery implementation for peer discovery
9
9
 
@@ -14,7 +14,7 @@
14
14
  - [MDNS messages](#mdns-messages)
15
15
  - [API Docs](#api-docs)
16
16
  - [License](#license)
17
- - [Contribute](#contribute)
17
+ - [Contribution](#contribution)
18
18
 
19
19
  ## Install
20
20
 
@@ -52,7 +52,6 @@ async function start () {
52
52
  - `interval` - query interval, default 10 \* 1000 (10 seconds)
53
53
  - `serviceTag` - name of the service announce , default 'ipfs.local\`
54
54
 
55
-
56
55
  ## MDNS messages
57
56
 
58
57
  A query is sent to discover the IPFS nodes on the local network
@@ -100,7 +99,7 @@ When a query is detected, each IPFS node sends an answer about itself
100
99
 
101
100
  ## API Docs
102
101
 
103
- - <https://libp2p.github.io/js-libp2p-mdns>
102
+ - <https://libp2p.github.io/js-libp2p/modules/_libp2p_mdns.html>
104
103
 
105
104
  ## License
106
105
 
@@ -109,6 +108,6 @@ Licensed under either of
109
108
  - Apache 2.0, ([LICENSE-APACHE](LICENSE-APACHE) / <http://www.apache.org/licenses/LICENSE-2.0>)
110
109
  - MIT ([LICENSE-MIT](LICENSE-MIT) / <http://opensource.org/licenses/MIT>)
111
110
 
112
- ## Contribute
111
+ ## Contribution
113
112
 
114
113
  Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
package/dist/index.min.js CHANGED
@@ -1,7 +1,7 @@
1
1
  (function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.Libp2PMdns = factory()}(typeof self !== 'undefined' ? self : this, function () {
2
- "use strict";var Libp2PMdns=(()=>{var co=Object.create;var ar=Object.defineProperty;var ao=Object.getOwnPropertyDescriptor;var lo=Object.getOwnPropertyNames;var uo=Object.getPrototypeOf,ho=Object.prototype.hasOwnProperty;var ce=(r=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(r,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):r)(function(r){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+r+'" is not supported')});var L=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),z=(r,e)=>{for(var t in e)ar(r,t,{get:e[t],enumerable:!0})},Pt=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of lo(e))!ho.call(r,o)&&o!==t&&ar(r,o,{get:()=>e[o],enumerable:!(n=ao(e,o))||n.enumerable});return r};var De=(r,e,t)=>(t=r!=null?co(uo(r)):{},Pt(e||!r||!r.__esModule?ar(t,"default",{value:r,enumerable:!0}):t,r)),po=r=>Pt(ar({},"__esModule",{value:!0}),r);var Nt=L(Br=>{"use strict";Br.toString=function(r){switch(r){case 1:return"A";case 10:return"NULL";case 28:return"AAAA";case 18:return"AFSDB";case 42:return"APL";case 257:return"CAA";case 60:return"CDNSKEY";case 59:return"CDS";case 37:return"CERT";case 5:return"CNAME";case 49:return"DHCID";case 32769:return"DLV";case 39:return"DNAME";case 48:return"DNSKEY";case 43:return"DS";case 55:return"HIP";case 13:return"HINFO";case 45:return"IPSECKEY";case 25:return"KEY";case 36:return"KX";case 29:return"LOC";case 15:return"MX";case 35:return"NAPTR";case 2:return"NS";case 47:return"NSEC";case 50:return"NSEC3";case 51:return"NSEC3PARAM";case 12:return"PTR";case 46:return"RRSIG";case 17:return"RP";case 24:return"SIG";case 6:return"SOA";case 99:return"SPF";case 33:return"SRV";case 44:return"SSHFP";case 32768:return"TA";case 249:return"TKEY";case 52:return"TLSA";case 250:return"TSIG";case 16:return"TXT";case 252:return"AXFR";case 251:return"IXFR";case 41:return"OPT";case 255:return"ANY"}return"UNKNOWN_"+r};Br.toType=function(r){switch(r.toUpperCase()){case"A":return 1;case"NULL":return 10;case"AAAA":return 28;case"AFSDB":return 18;case"APL":return 42;case"CAA":return 257;case"CDNSKEY":return 60;case"CDS":return 59;case"CERT":return 37;case"CNAME":return 5;case"DHCID":return 49;case"DLV":return 32769;case"DNAME":return 39;case"DNSKEY":return 48;case"DS":return 43;case"HIP":return 55;case"HINFO":return 13;case"IPSECKEY":return 45;case"KEY":return 25;case"KX":return 36;case"LOC":return 29;case"MX":return 15;case"NAPTR":return 35;case"NS":return 2;case"NSEC":return 47;case"NSEC3":return 50;case"NSEC3PARAM":return 51;case"PTR":return 12;case"RRSIG":return 46;case"RP":return 17;case"SIG":return 24;case"SOA":return 6;case"SPF":return 99;case"SRV":return 33;case"SSHFP":return 44;case"TA":return 32768;case"TKEY":return 249;case"TLSA":return 52;case"TSIG":return 250;case"TXT":return 16;case"AXFR":return 252;case"IXFR":return 251;case"OPT":return 41;case"ANY":return 255;case"*":return 255}return r.toUpperCase().startsWith("UNKNOWN_")?parseInt(r.slice(8)):0}});var Rt=L(Pr=>{"use strict";Pr.toString=function(r){switch(r){case 0:return"NOERROR";case 1:return"FORMERR";case 2:return"SERVFAIL";case 3:return"NXDOMAIN";case 4:return"NOTIMP";case 5:return"REFUSED";case 6:return"YXDOMAIN";case 7:return"YXRRSET";case 8:return"NXRRSET";case 9:return"NOTAUTH";case 10:return"NOTZONE";case 11:return"RCODE_11";case 12:return"RCODE_12";case 13:return"RCODE_13";case 14:return"RCODE_14";case 15:return"RCODE_15"}return"RCODE_"+r};Pr.toRcode=function(r){switch(r.toUpperCase()){case"NOERROR":return 0;case"FORMERR":return 1;case"SERVFAIL":return 2;case"NXDOMAIN":return 3;case"NOTIMP":return 4;case"REFUSED":return 5;case"YXDOMAIN":return 6;case"YXRRSET":return 7;case"NXRRSET":return 8;case"NOTAUTH":return 9;case"NOTZONE":return 10;case"RCODE_11":return 11;case"RCODE_12":return 12;case"RCODE_13":return 13;case"RCODE_14":return 14;case"RCODE_15":return 15}return 0}});var Dt=L(Nr=>{"use strict";Nr.toString=function(r){switch(r){case 0:return"QUERY";case 1:return"IQUERY";case 2:return"STATUS";case 3:return"OPCODE_3";case 4:return"NOTIFY";case 5:return"UPDATE";case 6:return"OPCODE_6";case 7:return"OPCODE_7";case 8:return"OPCODE_8";case 9:return"OPCODE_9";case 10:return"OPCODE_10";case 11:return"OPCODE_11";case 12:return"OPCODE_12";case 13:return"OPCODE_13";case 14:return"OPCODE_14";case 15:return"OPCODE_15"}return"OPCODE_"+r};Nr.toOpcode=function(r){switch(r.toUpperCase()){case"QUERY":return 0;case"IQUERY":return 1;case"STATUS":return 2;case"OPCODE_3":return 3;case"NOTIFY":return 4;case"UPDATE":return 5;case"OPCODE_6":return 6;case"OPCODE_7":return 7;case"OPCODE_8":return 8;case"OPCODE_9":return 9;case"OPCODE_10":return 10;case"OPCODE_11":return 11;case"OPCODE_12":return 12;case"OPCODE_13":return 13;case"OPCODE_14":return 14;case"OPCODE_15":return 15}return 0}});var Ft=L(Rr=>{"use strict";Rr.toString=function(r){switch(r){case 1:return"IN";case 2:return"CS";case 3:return"CH";case 4:return"HS";case 255:return"ANY"}return"UNKNOWN_"+r};Rr.toClass=function(r){switch(r.toUpperCase()){case"IN":return 1;case"CS":return 2;case"CH":return 3;case"HS":return 4;case"ANY":return 255}return 0}});var _t=L(Dr=>{"use strict";Dr.toString=function(r){switch(r){case 1:return"LLQ";case 2:return"UL";case 3:return"NSID";case 5:return"DAU";case 6:return"DHU";case 7:return"N3U";case 8:return"CLIENT_SUBNET";case 9:return"EXPIRE";case 10:return"COOKIE";case 11:return"TCP_KEEPALIVE";case 12:return"PADDING";case 13:return"CHAIN";case 14:return"KEY_TAG";case 26946:return"DEVICEID"}return r<0?null:`OPTION_${r}`};Dr.toCode=function(r){if(typeof r=="number")return r;if(!r)return-1;switch(r.toUpperCase()){case"OPTION_0":return 0;case"LLQ":return 1;case"UL":return 2;case"NSID":return 3;case"OPTION_4":return 4;case"DAU":return 5;case"DHU":return 6;case"N3U":return 7;case"CLIENT_SUBNET":return 8;case"EXPIRE":return 9;case"COOKIE":return 10;case"TCP_KEEPALIVE":return 11;case"PADDING":return 12;case"CHAIN":return 13;case"KEY_TAG":return 14;case"DEVICEID":return 26946;case"OPTION_65535":return 65535}let e=r.match(/_(\d+)$/);return e?parseInt(e[1],10):-1}});var qt=L((kt,Fr)=>{var Mt=function(r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.decode=a,r.encode=p,r.familyOf=w,r.name=void 0,r.sizeOf=I,r.v6=r.v4=void 0;let e=/^(\d{1,3}\.){3,3}\d{1,3}$/,t=4,n=/^(::)?(((\d{1,3}\.){3}(\d{1,3}){1})?([0-9a-f]){0,4}:{0,2}){1,8}(::)?$/i,o=16,i={name:"v4",size:t,isFormat:d=>e.test(d),encode(d,l,s){s=~~s,l=l||new Uint8Array(s+t);let g=d.length,E=0;for(let x=0;x<g;){let b=d.charCodeAt(x++);b===46?(l[s++]=E,E=0):E=E*10+(b-48)}return l[s]=E,l},decode(d,l){return l=~~l,`${d[l++]}.${d[l++]}.${d[l++]}.${d[l]}`}};r.v4=i;let c={name:"v6",size:o,isFormat:d=>d.length>0&&n.test(d),encode(d,l,s){s=~~s;let g=s+o,E=-1,x=0,b=0,P=!0,U=!1;l=l||new Uint8Array(s+o);for(let T=0;T<d.length;T++){let A=d.charCodeAt(T);A===58?(P?E!==-1?(s<g&&(l[s]=0),s<g-1&&(l[s+1]=0),s+=2):s<g&&(E=s):(U===!0?(s<g&&(l[s]=b),s++):(s<g&&(l[s]=x>>8),s<g-1&&(l[s+1]=x&255),s+=2),x=0,b=0),P=!0,U=!1):A===46?(s<g&&(l[s]=b),s++,b=0,x=0,P=!1,U=!0):(P=!1,A>=97?A-=87:A>=65?A-=55:(A-=48,b=b*10+A),x=(x<<4)+A)}if(P===!1)U===!0?(s<g&&(l[s]=b),s++):(s<g&&(l[s]=x>>8),s<g-1&&(l[s+1]=x&255),s+=2);else if(E===0)s<g&&(l[s]=0),s<g-1&&(l[s+1]=0),s+=2;else if(E!==-1){s+=2;for(let T=Math.min(s-1,g-1);T>=E+2;T--)l[T]=l[T-2];l[E]=0,l[E+1]=0,E=s}if(E!==s&&E!==-1)for(s>g-2&&(s=g-2);g>E;)l[--g]=s<g&&s>E?l[--s]:0;else for(;s<g;)l[s++]=0;return l},decode(d,l){l=~~l;let s="";for(let g=0;g<o;g+=2)g!==0&&(s+=":"),s+=(d[l+g]<<8|d[l+g+1]).toString(16);return s.replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}};r.v6=c;let u="ip";r.name=u;function I(d){if(i.isFormat(d))return i.size;if(c.isFormat(d))return c.size;throw Error(`Invalid ip address: ${d}`)}function w(d){return I(d)===i.size?1:2}function p(d,l,s){s=~~s;let g=I(d);return typeof l=="function"&&(l=l(s+g)),g===i.size?i.encode(d,l,s):c.encode(d,l,s)}function a(d,l,s){if(l=~~l,s=s||d.length-l,s===i.size)return i.decode(d,l,s);if(s===c.size)return c.decode(d,l,s);throw Error(`Invalid buffer size needs to be ${i.size} for v4 or ${c.size} for v6.`)}return"default"in r?r.default:r}({});typeof define=="function"&&define.amd?define([],function(){return Mt}):typeof Fr=="object"&&typeof kt=="object"&&(Fr.exports=Mt)});var Vt=L(m=>{"use strict";var y=ce("buffer").Buffer,we=Nt(),go=Rt(),mo=Dt(),lr=Ft(),_r=_t(),Te=qt(),yo=0,zt=1<<15,Mr=1<<15,wo=~Mr,$t=1<<15,Eo=~$t,h=m.name={};h.encode=function(r,e,t){e||(e=y.alloc(h.encodingLength(r))),t||(t=0);let n=t,o=r.replace(/^\.|\.$/gm,"");if(o.length){let i=o.split(".");for(let c=0;c<i.length;c++){let u=e.write(i[c],t+1);e[t]=u,t+=u+1}}return e[t++]=0,h.encode.bytes=t-n,e};h.encode.bytes=0;h.decode=function(r,e){e||(e=0);let t=[],n=e,o=0,i=0,c=!1;for(;;){if(e>=r.length)throw new Error("Cannot decode name (buffer overflow)");let u=r[e++];if(i+=c?0:1,u===0)break;if(u&192)if((u&192)===192){if(e+1>r.length)throw new Error("Cannot decode name (buffer overflow)");let I=r.readUInt16BE(e-1)-49152;if(I>=n)throw new Error("Cannot decode name (bad pointer)");e=I,n=I,i+=c?0:1,c=!0}else throw new Error("Cannot decode name (bad label)");else{if(e+u>r.length)throw new Error("Cannot decode name (buffer overflow)");if(o+=u+1,o>254)throw new Error("Cannot decode name (name too long)");t.push(r.toString("utf-8",e,e+u)),e+=u,i+=c?0:u}}return h.decode.bytes=i,t.length===0?".":t.join(".")};h.decode.bytes=0;h.encodingLength=function(r){return r==="."||r===".."?1:y.byteLength(r.replace(/^\.|\.$/gm,""))+2};var v={};v.encode=function(r,e,t){e||(e=y.alloc(v.encodingLength(r))),t||(t=0);let n=e.write(r,t+1);return e[t]=n,v.encode.bytes=n+1,e};v.encode.bytes=0;v.decode=function(r,e){e||(e=0);let t=r[e],n=r.toString("utf-8",e+1,e+1+t);return v.decode.bytes=t+1,n};v.decode.bytes=0;v.encodingLength=function(r){return y.byteLength(r)+1};var Q={};Q.encode=function(r,e,t){e||(e=Q.encodingLength(r)),t||(t=0);let n=(r.flags||0)&32767,o=r.type==="response"?zt:yo;return e.writeUInt16BE(r.id||0,t),e.writeUInt16BE(n|o,t+2),e.writeUInt16BE(r.questions.length,t+4),e.writeUInt16BE(r.answers.length,t+6),e.writeUInt16BE(r.authorities.length,t+8),e.writeUInt16BE(r.additionals.length,t+10),e};Q.encode.bytes=12;Q.decode=function(r,e){if(e||(e=0),r.length<12)throw new Error("Header must be 12 bytes");let t=r.readUInt16BE(e+2);return{id:r.readUInt16BE(e),type:t&zt?"response":"query",flags:t&32767,flag_qr:(t>>15&1)===1,opcode:mo.toString(t>>11&15),flag_aa:(t>>10&1)===1,flag_tc:(t>>9&1)===1,flag_rd:(t>>8&1)===1,flag_ra:(t>>7&1)===1,flag_z:(t>>6&1)===1,flag_ad:(t>>5&1)===1,flag_cd:(t>>4&1)===1,rcode:go.toString(t&15),questions:new Array(r.readUInt16BE(e+4)),answers:new Array(r.readUInt16BE(e+6)),authorities:new Array(r.readUInt16BE(e+8)),additionals:new Array(r.readUInt16BE(e+10))}};Q.decode.bytes=12;Q.encodingLength=function(){return 12};var ae=m.unknown={};ae.encode=function(r,e,t){return e||(e=y.alloc(ae.encodingLength(r))),t||(t=0),e.writeUInt16BE(r.length,t),r.copy(e,t+2),ae.encode.bytes=r.length+2,e};ae.encode.bytes=0;ae.decode=function(r,e){e||(e=0);let t=r.readUInt16BE(e),n=r.slice(e+2,e+2+t);return ae.decode.bytes=t+2,n};ae.decode.bytes=0;ae.encodingLength=function(r){return r.length+2};var de=m.ns={};de.encode=function(r,e,t){return e||(e=y.alloc(de.encodingLength(r))),t||(t=0),h.encode(r,e,t+2),e.writeUInt16BE(h.encode.bytes,t),de.encode.bytes=h.encode.bytes+2,e};de.encode.bytes=0;de.decode=function(r,e){e||(e=0);let t=r.readUInt16BE(e),n=h.decode(r,e+2);return de.decode.bytes=t+2,n};de.decode.bytes=0;de.encodingLength=function(r){return h.encodingLength(r)+2};var le=m.soa={};le.encode=function(r,e,t){e||(e=y.alloc(le.encodingLength(r))),t||(t=0);let n=t;return t+=2,h.encode(r.mname,e,t),t+=h.encode.bytes,h.encode(r.rname,e,t),t+=h.encode.bytes,e.writeUInt32BE(r.serial||0,t),t+=4,e.writeUInt32BE(r.refresh||0,t),t+=4,e.writeUInt32BE(r.retry||0,t),t+=4,e.writeUInt32BE(r.expire||0,t),t+=4,e.writeUInt32BE(r.minimum||0,t),t+=4,e.writeUInt16BE(t-n-2,n),le.encode.bytes=t-n,e};le.encode.bytes=0;le.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.mname=h.decode(r,e),e+=h.decode.bytes,n.rname=h.decode(r,e),e+=h.decode.bytes,n.serial=r.readUInt32BE(e),e+=4,n.refresh=r.readUInt32BE(e),e+=4,n.retry=r.readUInt32BE(e),e+=4,n.expire=r.readUInt32BE(e),e+=4,n.minimum=r.readUInt32BE(e),e+=4,le.decode.bytes=e-t,n};le.decode.bytes=0;le.encodingLength=function(r){return 22+h.encodingLength(r.mname)+h.encodingLength(r.rname)};var ue=m.txt={};ue.encode=function(r,e,t){Array.isArray(r)||(r=[r]);for(let o=0;o<r.length;o++)if(typeof r[o]=="string"&&(r[o]=y.from(r[o])),!y.isBuffer(r[o]))throw new Error("Must be a Buffer");e||(e=y.alloc(ue.encodingLength(r))),t||(t=0);let n=t;return t+=2,r.forEach(function(o){e[t++]=o.length,o.copy(e,t,0,o.length),t+=o.length}),e.writeUInt16BE(t-n-2,n),ue.encode.bytes=t-n,e};ue.encode.bytes=0;ue.decode=function(r,e){e||(e=0);let t=e,n=r.readUInt16BE(e);e+=2;let o=[];for(;n>0;){let i=r[e++];if(--n,n<i)throw new Error("Buffer overflow");o.push(r.slice(e,e+i)),e+=i,n-=i}return ue.decode.bytes=e-t,o};ue.decode.bytes=0;ue.encodingLength=function(r){Array.isArray(r)||(r=[r]);let e=2;return r.forEach(function(t){typeof t=="string"?e+=y.byteLength(t)+1:e+=t.length+1}),e};var he=m.null={};he.encode=function(r,e,t){e||(e=y.alloc(he.encodingLength(r))),t||(t=0),typeof r=="string"&&(r=y.from(r)),r||(r=y.alloc(0));let n=t;t+=2;let o=r.length;return r.copy(e,t,0,o),t+=o,e.writeUInt16BE(t-n-2,n),he.encode.bytes=t-n,e};he.encode.bytes=0;he.decode=function(r,e){e||(e=0);let t=e,n=r.readUInt16BE(e);e+=2;let o=r.slice(e,e+n);return e+=n,he.decode.bytes=e-t,o};he.decode.bytes=0;he.encodingLength=function(r){return r?(y.isBuffer(r)?r.length:y.byteLength(r))+2:2};var pe=m.hinfo={};pe.encode=function(r,e,t){e||(e=y.alloc(pe.encodingLength(r))),t||(t=0);let n=t;return t+=2,v.encode(r.cpu,e,t),t+=v.encode.bytes,v.encode(r.os,e,t),t+=v.encode.bytes,e.writeUInt16BE(t-n-2,n),pe.encode.bytes=t-n,e};pe.encode.bytes=0;pe.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.cpu=v.decode(r,e),e+=v.decode.bytes,n.os=v.decode(r,e),e+=v.decode.bytes,pe.decode.bytes=e-t,n};pe.decode.bytes=0;pe.encodingLength=function(r){return v.encodingLength(r.cpu)+v.encodingLength(r.os)+2};var X=m.ptr={},Io=m.cname=X,vo=m.dname=X;X.encode=function(r,e,t){return e||(e=y.alloc(X.encodingLength(r))),t||(t=0),h.encode(r,e,t+2),e.writeUInt16BE(h.encode.bytes,t),X.encode.bytes=h.encode.bytes+2,e};X.encode.bytes=0;X.decode=function(r,e){e||(e=0);let t=h.decode(r,e+2);return X.decode.bytes=h.decode.bytes+2,t};X.decode.bytes=0;X.encodingLength=function(r){return h.encodingLength(r)+2};var ge=m.srv={};ge.encode=function(r,e,t){e||(e=y.alloc(ge.encodingLength(r))),t||(t=0),e.writeUInt16BE(r.priority||0,t+2),e.writeUInt16BE(r.weight||0,t+4),e.writeUInt16BE(r.port||0,t+6),h.encode(r.target,e,t+8);let n=h.encode.bytes+6;return e.writeUInt16BE(n,t),ge.encode.bytes=n+2,e};ge.encode.bytes=0;ge.decode=function(r,e){e||(e=0);let t=r.readUInt16BE(e),n={};return n.priority=r.readUInt16BE(e+2),n.weight=r.readUInt16BE(e+4),n.port=r.readUInt16BE(e+6),n.target=h.decode(r,e+8),ge.decode.bytes=t+2,n};ge.decode.bytes=0;ge.encodingLength=function(r){return 8+h.encodingLength(r.target)};var $=m.caa={};$.ISSUER_CRITICAL=1<<7;$.encode=function(r,e,t){let n=$.encodingLength(r);return e||(e=y.alloc($.encodingLength(r))),t||(t=0),r.issuerCritical&&(r.flags=$.ISSUER_CRITICAL),e.writeUInt16BE(n-2,t),t+=2,e.writeUInt8(r.flags||0,t),t+=1,v.encode(r.tag,e,t),t+=v.encode.bytes,e.write(r.value,t),t+=y.byteLength(r.value),$.encode.bytes=n,e};$.encode.bytes=0;$.decode=function(r,e){e||(e=0);let t=r.readUInt16BE(e);e+=2;let n=e,o={};return o.flags=r.readUInt8(e),e+=1,o.tag=v.decode(r,e),e+=v.decode.bytes,o.value=r.toString("utf-8",e,n+t),o.issuerCritical=!!(o.flags&$.ISSUER_CRITICAL),$.decode.bytes=t+2,o};$.decode.bytes=0;$.encodingLength=function(r){return v.encodingLength(r.tag)+v.encodingLength(r.value)+2};var Ce=m.mx={};Ce.encode=function(r,e,t){e||(e=y.alloc(Ce.encodingLength(r))),t||(t=0);let n=t;return t+=2,e.writeUInt16BE(r.preference||0,t),t+=2,h.encode(r.exchange,e,t),t+=h.encode.bytes,e.writeUInt16BE(t-n-2,n),Ce.encode.bytes=t-n,e};Ce.encode.bytes=0;Ce.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.preference=r.readUInt16BE(e),e+=2,n.exchange=h.decode(r,e),e+=h.decode.bytes,Ce.decode.bytes=e-t,n};Ce.encodingLength=function(r){return 4+h.encodingLength(r.exchange)};var me=m.a={};me.encode=function(r,e,t){return e||(e=y.alloc(me.encodingLength(r))),t||(t=0),e.writeUInt16BE(4,t),t+=2,Te.v4.encode(r,e,t),me.encode.bytes=6,e};me.encode.bytes=0;me.decode=function(r,e){e||(e=0),e+=2;let t=Te.v4.decode(r,e);return me.decode.bytes=6,t};me.decode.bytes=0;me.encodingLength=function(){return 6};var ye=m.aaaa={};ye.encode=function(r,e,t){return e||(e=y.alloc(ye.encodingLength(r))),t||(t=0),e.writeUInt16BE(16,t),t+=2,Te.v6.encode(r,e,t),ye.encode.bytes=18,e};ye.encode.bytes=0;ye.decode=function(r,e){e||(e=0),e+=2;let t=Te.v6.decode(r,e);return ye.decode.bytes=18,t};ye.decode.bytes=0;ye.encodingLength=function(){return 18};var M=m.option={};M.encode=function(r,e,t){e||(e=y.alloc(M.encodingLength(r))),t||(t=0);let n=t,o=_r.toCode(r.code);if(e.writeUInt16BE(o,t),t+=2,r.data)e.writeUInt16BE(r.data.length,t),t+=2,r.data.copy(e,t),t+=r.data.length;else switch(o){case 8:let i=r.sourcePrefixLength||0,c=r.family||Te.familyOf(r.ip),u=Te.encode(r.ip,y.alloc),I=Math.ceil(i/8);e.writeUInt16BE(I+4,t),t+=2,e.writeUInt16BE(c,t),t+=2,e.writeUInt8(i,t++),e.writeUInt8(r.scopePrefixLength||0,t++),u.copy(e,t,0,I),t+=I;break;case 11:r.timeout?(e.writeUInt16BE(2,t),t+=2,e.writeUInt16BE(r.timeout,t),t+=2):(e.writeUInt16BE(0,t),t+=2);break;case 12:let w=r.length||0;e.writeUInt16BE(w,t),t+=2,e.fill(0,t,t+w),t+=w;break;case 14:let p=r.tags.length*2;e.writeUInt16BE(p,t),t+=2;for(let a of r.tags)e.writeUInt16BE(a,t),t+=2;break;default:throw new Error(`Unknown roption code: ${r.code}`)}return M.encode.bytes=t-n,e};M.encode.bytes=0;M.decode=function(r,e){e||(e=0);let t={};t.code=r.readUInt16BE(e),t.type=_r.toString(t.code),e+=2;let n=r.readUInt16BE(e);switch(e+=2,t.data=r.slice(e,e+n),t.code){case 8:t.family=r.readUInt16BE(e),e+=2,t.sourcePrefixLength=r.readUInt8(e++),t.scopePrefixLength=r.readUInt8(e++);let o=y.alloc(t.family===1?4:16);r.copy(o,0,e,e+n-4),t.ip=Te.decode(o);break;case 11:n>0&&(t.timeout=r.readUInt16BE(e),e+=2);break;case 14:t.tags=[];for(let i=0;i<n;i+=2)t.tags.push(r.readUInt16BE(e)),e+=2}return M.decode.bytes=n+4,t};M.decode.bytes=0;M.encodingLength=function(r){if(r.data)return r.data.length+4;switch(_r.toCode(r.code)){case 8:let t=r.sourcePrefixLength||0;return Math.ceil(t/8)+8;case 11:return typeof r.timeout=="number"?6:4;case 12:return r.length+4;case 14:return 4+r.tags.length*2}throw new Error(`Unknown roption code: ${r.code}`)};var j=m.opt={};j.encode=function(r,e,t){e||(e=y.alloc(j.encodingLength(r))),t||(t=0);let n=t,o=Fe(r,M);return e.writeUInt16BE(o,t),t=Ke(r,M,e,t+2),j.encode.bytes=t-n,e};j.encode.bytes=0;j.decode=function(r,e){e||(e=0);let t=e,n=[],o=r.readUInt16BE(e);e+=2;let i=0;for(;o>0;)n[i++]=M.decode(r,e),e+=M.decode.bytes,o-=M.decode.bytes;return j.decode.bytes=e-t,n};j.decode.bytes=0;j.encodingLength=function(r){return 2+Fe(r||[],M)};var _=m.dnskey={};_.PROTOCOL_DNSSEC=3;_.ZONE_KEY=128;_.SECURE_ENTRYPOINT=32768;_.encode=function(r,e,t){e||(e=y.alloc(_.encodingLength(r))),t||(t=0);let n=t,o=r.key;if(!y.isBuffer(o))throw new Error("Key must be a Buffer");return t+=2,e.writeUInt16BE(r.flags,t),t+=2,e.writeUInt8(_.PROTOCOL_DNSSEC,t),t+=1,e.writeUInt8(r.algorithm,t),t+=1,o.copy(e,t,0,o.length),t+=o.length,_.encode.bytes=t-n,e.writeUInt16BE(_.encode.bytes-2,n),e};_.encode.bytes=0;_.decode=function(r,e){e||(e=0);let t=e;var n={},o=r.readUInt16BE(e);if(e+=2,n.flags=r.readUInt16BE(e),e+=2,r.readUInt8(e)!==_.PROTOCOL_DNSSEC)throw new Error("Protocol must be 3");return e+=1,n.algorithm=r.readUInt8(e),e+=1,n.key=r.slice(e,t+o+2),e+=n.key.length,_.decode.bytes=e-t,n};_.decode.bytes=0;_.encodingLength=function(r){return 6+y.byteLength(r.key)};var f=m.rrsig={};f.encode=function(r,e,t){e||(e=y.alloc(f.encodingLength(r))),t||(t=0);let n=t,o=r.signature;if(!y.isBuffer(o))throw new Error("Signature must be a Buffer");return t+=2,e.writeUInt16BE(we.toType(r.typeCovered),t),t+=2,e.writeUInt8(r.algorithm,t),t+=1,e.writeUInt8(r.labels,t),t+=1,e.writeUInt32BE(r.originalTTL,t),t+=4,e.writeUInt32BE(r.expiration,t),t+=4,e.writeUInt32BE(r.inception,t),t+=4,e.writeUInt16BE(r.keyTag,t),t+=2,h.encode(r.signersName,e,t),t+=h.encode.bytes,o.copy(e,t,0,o.length),t+=o.length,f.encode.bytes=t-n,e.writeUInt16BE(f.encode.bytes-2,n),e};f.encode.bytes=0;f.decode=function(r,e){e||(e=0);let t=e;var n={},o=r.readUInt16BE(e);return e+=2,n.typeCovered=we.toString(r.readUInt16BE(e)),e+=2,n.algorithm=r.readUInt8(e),e+=1,n.labels=r.readUInt8(e),e+=1,n.originalTTL=r.readUInt32BE(e),e+=4,n.expiration=r.readUInt32BE(e),e+=4,n.inception=r.readUInt32BE(e),e+=4,n.keyTag=r.readUInt16BE(e),e+=2,n.signersName=h.decode(r,e),e+=h.decode.bytes,n.signature=r.slice(e,t+o+2),e+=n.signature.length,f.decode.bytes=e-t,n};f.decode.bytes=0;f.encodingLength=function(r){return 20+h.encodingLength(r.signersName)+y.byteLength(r.signature)};var ee=m.rp={};ee.encode=function(r,e,t){e||(e=y.alloc(ee.encodingLength(r))),t||(t=0);let n=t;return t+=2,h.encode(r.mbox||".",e,t),t+=h.encode.bytes,h.encode(r.txt||".",e,t),t+=h.encode.bytes,ee.encode.bytes=t-n,e.writeUInt16BE(ee.encode.bytes-2,n),e};ee.encode.bytes=0;ee.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.mbox=h.decode(r,e)||".",e+=h.decode.bytes,n.txt=h.decode(r,e)||".",e+=h.decode.bytes,ee.decode.bytes=e-t,n};ee.decode.bytes=0;ee.encodingLength=function(r){return 2+h.encodingLength(r.mbox||".")+h.encodingLength(r.txt||".")};var N={};N.encode=function(r,e,t){e||(e=y.alloc(N.encodingLength(r))),t||(t=0);let n=t;for(var o=[],i=0;i<r.length;i++){var c=we.toType(r[i]);o[c>>8]===void 0&&(o[c>>8]=[]),o[c>>8][c>>3&31]|=1<<7-(c&7)}for(i=0;i<o.length;i++)if(o[i]!==void 0){var u=y.from(o[i]);e.writeUInt8(i,t),t+=1,e.writeUInt8(u.length,t),t+=1,u.copy(e,t),t+=u.length}return N.encode.bytes=t-n,e};N.encode.bytes=0;N.decode=function(r,e,t){e||(e=0);let n=e;for(var o=[];e-n<t;){var i=r.readUInt8(e);e+=1;var c=r.readUInt8(e);e+=1;for(var u=0;u<c;u++)for(var I=r.readUInt8(e+u),w=0;w<8;w++)if(I&1<<7-w){var p=we.toString(i<<8|u<<3|w);o.push(p)}e+=c}return N.decode.bytes=e-n,o};N.decode.bytes=0;N.encodingLength=function(r){for(var e=[],t=0;t<r.length;t++){var n=we.toType(r[t]);e[n>>8]=Math.max(e[n>>8]||0,n&255)}var o=0;for(t=0;t<e.length;t++)e[t]!==void 0&&(o+=2+Math.ceil((e[t]+1)/8));return o};var re=m.nsec={};re.encode=function(r,e,t){e||(e=y.alloc(re.encodingLength(r))),t||(t=0);let n=t;return t+=2,h.encode(r.nextDomain,e,t),t+=h.encode.bytes,N.encode(r.rrtypes,e,t),t+=N.encode.bytes,re.encode.bytes=t-n,e.writeUInt16BE(re.encode.bytes-2,n),e};re.encode.bytes=0;re.decode=function(r,e){e||(e=0);let t=e;var n={},o=r.readUInt16BE(e);return e+=2,n.nextDomain=h.decode(r,e),e+=h.decode.bytes,n.rrtypes=N.decode(r,e,o-(e-t)),e+=N.decode.bytes,re.decode.bytes=e-t,n};re.decode.bytes=0;re.encodingLength=function(r){return 2+h.encodingLength(r.nextDomain)+N.encodingLength(r.rrtypes)};var te=m.nsec3={};te.encode=function(r,e,t){e||(e=y.alloc(te.encodingLength(r))),t||(t=0);let n=t,o=r.salt;if(!y.isBuffer(o))throw new Error("salt must be a Buffer");let i=r.nextDomain;if(!y.isBuffer(i))throw new Error("nextDomain must be a Buffer");return t+=2,e.writeUInt8(r.algorithm,t),t+=1,e.writeUInt8(r.flags,t),t+=1,e.writeUInt16BE(r.iterations,t),t+=2,e.writeUInt8(o.length,t),t+=1,o.copy(e,t,0,o.length),t+=o.length,e.writeUInt8(i.length,t),t+=1,i.copy(e,t,0,i.length),t+=i.length,N.encode(r.rrtypes,e,t),t+=N.encode.bytes,te.encode.bytes=t-n,e.writeUInt16BE(te.encode.bytes-2,n),e};te.encode.bytes=0;te.decode=function(r,e){e||(e=0);let t=e;var n={},o=r.readUInt16BE(e);e+=2,n.algorithm=r.readUInt8(e),e+=1,n.flags=r.readUInt8(e),e+=1,n.iterations=r.readUInt16BE(e),e+=2;let i=r.readUInt8(e);e+=1,n.salt=r.slice(e,e+i),e+=i;let c=r.readUInt8(e);return e+=1,n.nextDomain=r.slice(e,e+c),e+=c,n.rrtypes=N.decode(r,e,o-(e-t)),e+=N.decode.bytes,te.decode.bytes=e-t,n};te.decode.bytes=0;te.encodingLength=function(r){return 8+r.salt.length+r.nextDomain.length+N.encodingLength(r.rrtypes)};var ne=m.ds={};ne.encode=function(r,e,t){e||(e=y.alloc(ne.encodingLength(r))),t||(t=0);let n=t,o=r.digest;if(!y.isBuffer(o))throw new Error("Digest must be a Buffer");return t+=2,e.writeUInt16BE(r.keyTag,t),t+=2,e.writeUInt8(r.algorithm,t),t+=1,e.writeUInt8(r.digestType,t),t+=1,o.copy(e,t,0,o.length),t+=o.length,ne.encode.bytes=t-n,e.writeUInt16BE(ne.encode.bytes-2,n),e};ne.encode.bytes=0;ne.decode=function(r,e){e||(e=0);let t=e;var n={},o=r.readUInt16BE(e);return e+=2,n.keyTag=r.readUInt16BE(e),e+=2,n.algorithm=r.readUInt8(e),e+=1,n.digestType=r.readUInt8(e),e+=1,n.digest=r.slice(e,t+o+2),e+=n.digest.length,ne.decode.bytes=e-t,n};ne.decode.bytes=0;ne.encodingLength=function(r){return 6+y.byteLength(r.digest)};var V=m.sshfp={};V.getFingerprintLengthForHashType=function(e){switch(e){case 1:return 20;case 2:return 32}};V.encode=function(e,t,n){t||(t=y.alloc(V.encodingLength(e))),n||(n=0);let o=n;n+=2,t[n]=e.algorithm,n+=1,t[n]=e.hash,n+=1;let i=y.from(e.fingerprint.toUpperCase(),"hex");if(i.length!==V.getFingerprintLengthForHashType(e.hash))throw new Error("Invalid fingerprint length");return i.copy(t,n),n+=i.byteLength,V.encode.bytes=n-o,t.writeUInt16BE(V.encode.bytes-2,o),t};V.encode.bytes=0;V.decode=function(e,t){t||(t=0);let n=t,o={};t+=2,o.algorithm=e[t],t+=1,o.hash=e[t],t+=1;let i=V.getFingerprintLengthForHashType(o.hash);return o.fingerprint=e.slice(t,t+i).toString("hex").toUpperCase(),t+=i,V.decode.bytes=t-n,o};V.decode.bytes=0;V.encodingLength=function(r){return 4+y.from(r.fingerprint,"hex").byteLength};var oe=m.naptr={};oe.encode=function(r,e,t){e||(e=y.alloc(oe.encodingLength(r))),t||(t=0);let n=t;return t+=2,e.writeUInt16BE(r.order||0,t),t+=2,e.writeUInt16BE(r.preference||0,t),t+=2,v.encode(r.flags,e,t),t+=v.encode.bytes,v.encode(r.services,e,t),t+=v.encode.bytes,v.encode(r.regexp,e,t),t+=v.encode.bytes,h.encode(r.replacement,e,t),t+=h.encode.bytes,oe.encode.bytes=t-n,e.writeUInt16BE(oe.encode.bytes-2,n),e};oe.encode.bytes=0;oe.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.order=r.readUInt16BE(e),e+=2,n.preference=r.readUInt16BE(e),e+=2,n.flags=v.decode(r,e),e+=v.decode.bytes,n.services=v.decode(r,e),e+=v.decode.bytes,n.regexp=v.decode(r,e),e+=v.decode.bytes,n.replacement=h.decode(r,e),e+=h.decode.bytes,oe.decode.bytes=e-t,n};oe.decode.bytes=0;oe.encodingLength=function(r){return v.encodingLength(r.flags)+v.encodingLength(r.services)+v.encodingLength(r.regexp)+h.encodingLength(r.replacement)+6};var ie=m.tlsa={};ie.encode=function(r,e,t){e||(e=y.alloc(ie.encodingLength(r))),t||(t=0);let n=t,o=r.certificate;if(!y.isBuffer(o))throw new Error("Certificate must be a Buffer");return t+=2,e.writeUInt8(r.usage,t),t+=1,e.writeUInt8(r.selector,t),t+=1,e.writeUInt8(r.matchingType,t),t+=1,o.copy(e,t,0,o.length),t+=o.length,ie.encode.bytes=t-n,e.writeUInt16BE(ie.encode.bytes-2,n),e};ie.encode.bytes=0;ie.decode=function(r,e){e||(e=0);let t=e,n={},o=r.readUInt16BE(e);return e+=2,n.usage=r.readUInt8(e),e+=1,n.selector=r.readUInt8(e),e+=1,n.matchingType=r.readUInt8(e),e+=1,n.certificate=r.slice(e,t+o+2),e+=n.certificate.length,ie.decode.bytes=e-t,n};ie.decode.bytes=0;ie.encodingLength=function(r){return 5+y.byteLength(r.certificate)};var kr=m.record=function(r){switch(r.toUpperCase()){case"A":return me;case"PTR":return X;case"CNAME":return Io;case"DNAME":return vo;case"TXT":return ue;case"NULL":return he;case"AAAA":return ye;case"SRV":return ge;case"HINFO":return pe;case"CAA":return $;case"NS":return de;case"SOA":return le;case"MX":return Ce;case"OPT":return j;case"DNSKEY":return _;case"RRSIG":return f;case"RP":return ee;case"NSEC":return re;case"NSEC3":return te;case"SSHFP":return V;case"DS":return ne;case"NAPTR":return oe;case"TLSA":return ie}return ae},R=m.answer={};R.encode=function(r,e,t){e||(e=y.alloc(R.encodingLength(r))),t||(t=0);let n=t;if(h.encode(r.name,e,t),t+=h.encode.bytes,e.writeUInt16BE(we.toType(r.type),t),r.type.toUpperCase()==="OPT"){if(r.name!==".")throw new Error("OPT name must be root.");e.writeUInt16BE(r.udpPayloadSize||4096,t+2),e.writeUInt8(r.extendedRcode||0,t+4),e.writeUInt8(r.ednsVersion||0,t+5),e.writeUInt16BE(r.flags||0,t+6),t+=8,j.encode(r.options||[],e,t),t+=j.encode.bytes}else{let o=lr.toClass(r.class===void 0?"IN":r.class);r.flush&&(o|=Mr),e.writeUInt16BE(o,t+2),e.writeUInt32BE(r.ttl||0,t+4),t+=8;let i=kr(r.type);i.encode(r.data,e,t),t+=i.encode.bytes}return R.encode.bytes=t-n,e};R.encode.bytes=0;R.decode=function(r,e){e||(e=0);let t={},n=e;if(t.name=h.decode(r,e),e+=h.decode.bytes,t.type=we.toString(r.readUInt16BE(e)),t.type==="OPT")t.udpPayloadSize=r.readUInt16BE(e+2),t.extendedRcode=r.readUInt8(e+4),t.ednsVersion=r.readUInt8(e+5),t.flags=r.readUInt16BE(e+6),t.flag_do=(t.flags>>15&1)===1,t.options=j.decode(r,e+8),e+=8+j.decode.bytes;else{let o=r.readUInt16BE(e+2);t.ttl=r.readUInt32BE(e+4),t.class=lr.toString(o&wo),t.flush=!!(o&Mr);let i=kr(t.type);t.data=i.decode(r,e+8),e+=8+i.decode.bytes}return R.decode.bytes=e-n,t};R.decode.bytes=0;R.encodingLength=function(r){let e=r.data!==null&&r.data!==void 0?r.data:r.options;return h.encodingLength(r.name)+8+kr(r.type).encodingLength(e)};var W=m.question={};W.encode=function(r,e,t){e||(e=y.alloc(W.encodingLength(r))),t||(t=0);let n=t;return h.encode(r.name,e,t),t+=h.encode.bytes,e.writeUInt16BE(we.toType(r.type),t),t+=2,e.writeUInt16BE(lr.toClass(r.class===void 0?"IN":r.class),t),t+=2,W.encode.bytes=t-n,r};W.encode.bytes=0;W.decode=function(r,e){e||(e=0);let t=e,n={};return n.name=h.decode(r,e),e+=h.decode.bytes,n.type=we.toString(r.readUInt16BE(e)),e+=2,n.class=lr.toString(r.readUInt16BE(e)),e+=2,!!(n.class&$t)&&(n.class&=Eo),W.decode.bytes=e-t,n};W.decode.bytes=0;W.encodingLength=function(r){return h.encodingLength(r.name)+4};m.AUTHORITATIVE_ANSWER=1<<10;m.TRUNCATED_RESPONSE=1<<9;m.RECURSION_DESIRED=1<<8;m.RECURSION_AVAILABLE=1<<7;m.AUTHENTIC_DATA=1<<5;m.CHECKING_DISABLED=1<<4;m.DNSSEC_OK=1<<15;m.encode=function(r,e,t){let n=!e;n&&(e=y.alloc(m.encodingLength(r))),t||(t=0);let o=t;return r.questions||(r.questions=[]),r.answers||(r.answers=[]),r.authorities||(r.authorities=[]),r.additionals||(r.additionals=[]),Q.encode(r,e,t),t+=Q.encode.bytes,t=Ke(r.questions,W,e,t),t=Ke(r.answers,R,e,t),t=Ke(r.authorities,R,e,t),t=Ke(r.additionals,R,e,t),m.encode.bytes=t-o,n&&m.encode.bytes!==e.length?e.slice(0,m.encode.bytes):e};m.encode.bytes=0;m.decode=function(r,e){e||(e=0);let t=e,n=Q.decode(r,e);return e+=Q.decode.bytes,e=dr(n.questions,W,r,e),e=dr(n.answers,R,r,e),e=dr(n.authorities,R,r,e),e=dr(n.additionals,R,r,e),m.decode.bytes=e-t,n};m.decode.bytes=0;m.encodingLength=function(r){return Q.encodingLength(r)+Fe(r.questions||[],W)+Fe(r.answers||[],R)+Fe(r.authorities||[],R)+Fe(r.additionals||[],R)};m.streamEncode=function(r){let e=m.encode(r),t=y.alloc(2);t.writeUInt16BE(e.byteLength);let n=y.concat([t,e]);return m.streamEncode.bytes=n.byteLength,n};m.streamEncode.bytes=0;m.streamDecode=function(r){let e=r.readUInt16BE(0);if(r.byteLength<e+2)return null;let t=m.decode(r.slice(2));return m.streamDecode.bytes=m.decode.bytes,t};m.streamDecode.bytes=0;function Fe(r,e){let t=0;for(let n=0;n<r.length;n++)t+=e.encodingLength(r[n]);return t}function Ke(r,e,t,n){for(let o=0;o<r.length;o++)e.encode(r[o],t,n),n+=e.encode.bytes;return n}function dr(r,e,t,n){for(let o=0;o<r.length;o++)r[o]=e.decode(t,n),n+=e.decode.bytes;return n}});var Ht=L((sc,Gt)=>{"use strict";var jt=Ao;process.nextTick(Uo,42);Gt.exports=xo;function xo(r){var e=n;return t;function t(o){e(o||bo)}function n(o){var i=[o];e=c,r(u);function c(I){i.push(I)}function u(I){var w=arguments;for(e=Co(I)?n:p;i.length;)p(i.shift());function p(a){jt(So,a,w)}}}}function Co(r){return Object.prototype.toString.call(r)==="[object Error]"}function bo(){}function So(r,e){r.apply(null,e)}function Uo(r){r===42&&(jt=process.nextTick)}function Ao(r,e,t){process.nextTick(function(){r(e,t)})}});var Xt=L((cc,Kt)=>{var qr=Vt(),Oo=ce("dgram"),To=Ht(),Lo=ce("events"),$r=ce("os"),zr=function(){};Kt.exports=function(r){r||(r={});var e=new Lo.EventEmitter,t=typeof r.port=="number"?r.port:5353,n=r.type||"udp4",o=r.ip||r.host||(n==="udp4"?"224.0.0.251":null),i={address:o,port:t},c={},u=!1,I=null;if(n==="udp6"&&(!o||!r.interface))throw new Error("For IPv6 multicast you must specify `ip` and `interface`");var w=r.socket||Oo.createSocket({type:n,reuseAddr:r.reuseAddr!==!1,toString:function(){return n}});w.on("error",function(a){a.code==="EACCES"||a.code==="EADDRINUSE"?e.emit("error",a):e.emit("warning",a)}),w.on("message",function(a,d){try{a=qr.decode(a)}catch(l){e.emit("warning",l);return}e.emit("packet",a,d),a.type==="query"&&e.emit("query",a,d),a.type==="response"&&e.emit("response",a,d)}),w.on("listening",function(){t||(t=i.port=w.address().port),r.multicast!==!1&&(e.update(),I=setInterval(e.update,5e3),w.setMulticastTTL(r.ttl||255),w.setMulticastLoopback(r.loopback!==!1))});var p=To(function(a){if(!t||r.bind===!1)return a(null);w.once("error",a),w.bind(t,r.bind||r.interface,function(){w.removeListener("error",a),a(null)})});return p(function(a){if(a)return e.emit("error",a);e.emit("ready")}),e.send=function(a,d,l){if(typeof d=="function")return e.send(a,null,d);l||(l=zr),d?!d.host&&!d.address&&(d.address=i.address):d=i,p(s);function s(g){if(u)return l();if(g)return l(g);var E=qr.encode(a);w.send(E,0,E.length,d.port,d.address||d.host,l)}},e.response=e.respond=function(a,d,l){Array.isArray(a)&&(a={answers:a}),a.type="response",a.flags=(a.flags||0)|qr.AUTHORITATIVE_ANSWER,e.send(a,d,l)},e.query=function(a,d,l,s){if(typeof d=="function")return e.query(a,null,null,d);if(typeof d=="object"&&d&&d.port)return e.query(a,null,d,l);if(typeof l=="function")return e.query(a,d,null,l);s||(s=zr),typeof a=="string"&&(a=[{name:a,type:d||"ANY"}]),Array.isArray(a)&&(a={type:"query",questions:a}),a.type="query",e.send(a,l,s)},e.destroy=function(a){if(a||(a=zr),u)return process.nextTick(a);u=!0,clearInterval(I);for(var d in c)try{w.dropMembership(o,d)}catch{}c={},w.close(a)},e.update=function(){for(var a=r.interface?[].concat(r.interface):Po(),d=!1,l=0;l<a.length;l++){var s=a[l];if(!c[s])try{w.addMembership(o,s),c[s]=!0,d=!0}catch(g){e.emit("warning",g)}}if(d){if(w.setMulticastInterface)try{w.setMulticastInterface(r.interface||Bo())}catch(g){e.emit("warning",g)}e.emit("networkInterface")}},e};function Bo(){for(var r=$r.networkInterfaces(),e=Object.keys(r),t=0;t<e.length;t++)for(var n=r[e[t]],o=0;o<n.length;o++){var i=n[o];if(Yt(i.family)&&!i.internal)return $r.platform()==="darwin"&&e[t]==="en0"?i.address:"0.0.0.0"}return"127.0.0.1"}function Po(){for(var r=$r.networkInterfaces(),e=Object.keys(r),t=[],n=0;n<e.length;n++)for(var o=r[e[n]],i=0;i<o.length;i++){var c=o[i];if(Yt(c.family)){t.push(c.address);break}}return t}function Yt(r){return r===4||r==="IPv4"}});var Qt=L((dc,Wt)=>{var _e=1e3,Me=_e*60,ke=Me*60,Be=ke*24,No=Be*7,Ro=Be*365.25;Wt.exports=function(r,e){e=e||{};var t=typeof r;if(t==="string"&&r.length>0)return Do(r);if(t==="number"&&isFinite(r))return e.long?_o(r):Fo(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function Do(r){if(r=String(r),!(r.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(e){var t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*Ro;case"weeks":case"week":case"w":return t*No;case"days":case"day":case"d":return t*Be;case"hours":case"hour":case"hrs":case"hr":case"h":return t*ke;case"minutes":case"minute":case"mins":case"min":case"m":return t*Me;case"seconds":case"second":case"secs":case"sec":case"s":return t*_e;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function Fo(r){var e=Math.abs(r);return e>=Be?Math.round(r/Be)+"d":e>=ke?Math.round(r/ke)+"h":e>=Me?Math.round(r/Me)+"m":e>=_e?Math.round(r/_e)+"s":r+"ms"}function _o(r){var e=Math.abs(r);return e>=Be?pr(r,e,Be,"day"):e>=ke?pr(r,e,ke,"hour"):e>=Me?pr(r,e,Me,"minute"):e>=_e?pr(r,e,_e,"second"):r+" ms"}function pr(r,e,t,n){var o=e>=t*1.5;return Math.round(r/t)+" "+n+(o?"s":"")}});var jr=L((lc,Jt)=>{function Mo(r){t.debug=t,t.default=t,t.coerce=I,t.disable=i,t.enable=o,t.enabled=c,t.humanize=Qt(),t.destroy=w,Object.keys(r).forEach(p=>{t[p]=r[p]}),t.names=[],t.skips=[],t.formatters={};function e(p){let a=0;for(let d=0;d<p.length;d++)a=(a<<5)-a+p.charCodeAt(d),a|=0;return t.colors[Math.abs(a)%t.colors.length]}t.selectColor=e;function t(p){let a,d=null,l,s;function g(...E){if(!g.enabled)return;let x=g,b=Number(new Date),P=b-(a||b);x.diff=P,x.prev=a,x.curr=b,a=b,E[0]=t.coerce(E[0]),typeof E[0]!="string"&&E.unshift("%O");let U=0;E[0]=E[0].replace(/%([a-zA-Z%])/g,(A,q)=>{if(A==="%%")return"%";U++;let H=t.formatters[q];if(typeof H=="function"){let Re=E[U];A=H.call(x,Re),E.splice(U,1),U--}return A}),t.formatArgs.call(x,E),(x.log||t.log).apply(x,E)}return g.namespace=p,g.useColors=t.useColors(),g.color=t.selectColor(p),g.extend=n,g.destroy=t.destroy,Object.defineProperty(g,"enabled",{enumerable:!0,configurable:!1,get:()=>d!==null?d:(l!==t.namespaces&&(l=t.namespaces,s=t.enabled(p)),s),set:E=>{d=E}}),typeof t.init=="function"&&t.init(g),g}function n(p,a){let d=t(this.namespace+(typeof a>"u"?":":a)+p);return d.log=this.log,d}function o(p){t.save(p),t.namespaces=p,t.names=[],t.skips=[];let a,d=(typeof p=="string"?p:"").split(/[\s,]+/),l=d.length;for(a=0;a<l;a++)d[a]&&(p=d[a].replace(/\*/g,".*?"),p[0]==="-"?t.skips.push(new RegExp("^"+p.slice(1)+"$")):t.names.push(new RegExp("^"+p+"$")))}function i(){let p=[...t.names.map(u),...t.skips.map(u).map(a=>"-"+a)].join(",");return t.enable(""),p}function c(p){if(p[p.length-1]==="*")return!0;let a,d;for(a=0,d=t.skips.length;a<d;a++)if(t.skips[a].test(p))return!1;for(a=0,d=t.names.length;a<d;a++)if(t.names[a].test(p))return!0;return!1}function u(p){return p.toString().substring(2,p.toString().length-2).replace(/\.\*\?$/,"*")}function I(p){return p instanceof Error?p.stack||p.message:p}function w(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}Jt.exports=Mo});var Zt=L((G,gr)=>{G.formatArgs=qo;G.save=zo;G.load=$o;G.useColors=ko;G.storage=Vo();G.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();G.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 ko(){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 qo(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+gr.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(t++,o==="%c"&&(n=t))}),r.splice(n,0,e)}G.log=console.debug||console.log||(()=>{});function zo(r){try{r?G.storage.setItem("debug",r):G.storage.removeItem("debug")}catch{}}function $o(){let r;try{r=G.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function Vo(){try{return localStorage}catch{}}gr.exports=jr()(G);var{formatters:jo}=gr.exports;jo.j=function(r){try{return JSON.stringify(r)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var en=L((uc,ft)=>{"use strict";ft.exports=(r,e)=>{e=e||process.argv;let t=r.startsWith("-")?"":r.length===1?"-":"--",n=e.indexOf(t+r),o=e.indexOf("--");return n!==-1&&(o===-1?!0:n<o)}});var tn=L((hc,rn)=>{"use strict";var Go=ce("os"),J=en(),F=process.env,qe;J("no-color")||J("no-colors")||J("color=false")?qe=!1:(J("color")||J("colors")||J("color=true")||J("color=always"))&&(qe=!0);"FORCE_COLOR"in F&&(qe=F.FORCE_COLOR.length===0||parseInt(F.FORCE_COLOR,10)!==0);function Ho(r){return r===0?!1:{level:r,hasBasic:!0,has256:r>=2,has16m:r>=3}}function Yo(r){if(qe===!1)return 0;if(J("color=16m")||J("color=full")||J("color=truecolor"))return 3;if(J("color=256"))return 2;if(r&&!r.isTTY&&qe!==!0)return 0;let e=qe?1:0;if(process.platform==="win32"){let t=Go.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(t[0])>=10&&Number(t[2])>=10586?Number(t[2])>=14931?3:2:1}if("CI"in F)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(t=>t in F)||F.CI_NAME==="codeship"?1:e;if("TEAMCITY_VERSION"in F)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(F.TEAMCITY_VERSION)?1:0;if(F.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in F){let t=parseInt((F.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(F.TERM_PROGRAM){case"iTerm.app":return t>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(F.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(F.TERM)||"COLORTERM"in F?1:(F.TERM==="dumb",e)}function Gr(r){let e=Yo(r);return Ho(e)}rn.exports={supportsColor:Gr,stdout:Gr(process.stdout),stderr:Gr(process.stderr)}});var on=L((D,yr)=>{var Ko=ce("tty"),mr=ce("util");D.init=ei;D.log=Jo;D.formatArgs=Wo;D.save=Zo;D.load=fo;D.useColors=Xo;D.destroy=mr.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");D.colors=[6,2,3,4,5,1];try{let r=tn();r&&(r.stderr||r).level>=2&&(D.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}D.inspectOpts=Object.keys(process.env).filter(r=>/^debug_/i.test(r)).reduce((r,e)=>{let t=e.substring(6).toLowerCase().replace(/_([a-z])/g,(o,i)=>i.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),r[t]=n,r},{});function Xo(){return"colors"in D.inspectOpts?!!D.inspectOpts.colors:Ko.isatty(process.stderr.fd)}function Wo(r){let{namespace:e,useColors:t}=this;if(t){let n=this.color,o="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${o};1m${e} \x1B[0m`;r[0]=i+r[0].split(`
2
+ "use strict";var Libp2PMdns=(()=>{var Zt=Object.create;var er=Object.defineProperty;var ft=Object.getOwnPropertyDescriptor;var eo=Object.getOwnPropertyNames;var ro=Object.getPrototypeOf,no=Object.prototype.hasOwnProperty;var ce=(r=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(r,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):r)(function(r){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+r+'" is not supported')});var L=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),z=(r,e)=>{for(var n in e)er(r,n,{get:e[n],enumerable:!0})},Sn=(r,e,n,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of eo(e))!no.call(r,o)&&o!==n&&er(r,o,{get:()=>e[o],enumerable:!(t=ft(e,o))||t.enumerable});return r};var Be=(r,e,n)=>(n=r!=null?Zt(ro(r)):{},Sn(e||!r||!r.__esModule?er(n,"default",{value:r,enumerable:!0}):n,r)),to=r=>Sn(er({},"__esModule",{value:!0}),r);var On=L((Ys,An)=>{var Ne=1e3,Pe=Ne*60,Re=Pe*60,Ue=Re*24,oo=Ue*7,io=Ue*365.25;An.exports=function(r,e){e=e||{};var n=typeof r;if(n==="string"&&r.length>0)return so(r);if(n==="number"&&isFinite(r))return e.long?ao(r):co(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function so(r){if(r=String(r),!(r.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(e){var n=parseFloat(e[1]),t=(e[2]||"ms").toLowerCase();switch(t){case"years":case"year":case"yrs":case"yr":case"y":return n*io;case"weeks":case"week":case"w":return n*oo;case"days":case"day":case"d":return n*Ue;case"hours":case"hour":case"hrs":case"hr":case"h":return n*Re;case"minutes":case"minute":case"mins":case"min":case"m":return n*Pe;case"seconds":case"second":case"secs":case"sec":case"s":return n*Ne;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:return}}}}function co(r){var e=Math.abs(r);return e>=Ue?Math.round(r/Ue)+"d":e>=Re?Math.round(r/Re)+"h":e>=Pe?Math.round(r/Pe)+"m":e>=Ne?Math.round(r/Ne)+"s":r+"ms"}function ao(r){var e=Math.abs(r);return e>=Ue?tr(r,e,Ue,"day"):e>=Re?tr(r,e,Re,"hour"):e>=Pe?tr(r,e,Pe,"minute"):e>=Ne?tr(r,e,Ne,"second"):r+" ms"}function tr(r,e,n,t){var o=e>=n*1.5;return Math.round(r/n)+" "+t+(o?"s":"")}});var br=L((Xs,Tn)=>{function lo(r){n.debug=n,n.default=n,n.coerce=I,n.disable=i,n.enable=o,n.enabled=c,n.humanize=On(),n.destroy=w,Object.keys(r).forEach(p=>{n[p]=r[p]}),n.names=[],n.skips=[],n.formatters={};function e(p){let a=0;for(let d=0;d<p.length;d++)a=(a<<5)-a+p.charCodeAt(d),a|=0;return n.colors[Math.abs(a)%n.colors.length]}n.selectColor=e;function n(p){let a,d=null,l,s;function g(...E){if(!g.enabled)return;let v=g,b=Number(new Date),N=b-(a||b);v.diff=N,v.prev=a,v.curr=b,a=b,E[0]=n.coerce(E[0]),typeof E[0]!="string"&&E.unshift("%O");let U=0;E[0]=E[0].replace(/%([a-zA-Z%])/g,(A,q)=>{if(A==="%%")return"%";U++;let G=n.formatters[q];if(typeof G=="function"){let Le=E[U];A=G.call(v,Le),E.splice(U,1),U--}return A}),n.formatArgs.call(v,E),(v.log||n.log).apply(v,E)}return g.namespace=p,g.useColors=n.useColors(),g.color=n.selectColor(p),g.extend=t,g.destroy=n.destroy,Object.defineProperty(g,"enabled",{enumerable:!0,configurable:!1,get:()=>d!==null?d:(l!==n.namespaces&&(l=n.namespaces,s=n.enabled(p)),s),set:E=>{d=E}}),typeof n.init=="function"&&n.init(g),g}function t(p,a){let d=n(this.namespace+(typeof a>"u"?":":a)+p);return d.log=this.log,d}function o(p){n.save(p),n.namespaces=p,n.names=[],n.skips=[];let a,d=(typeof p=="string"?p:"").split(/[\s,]+/),l=d.length;for(a=0;a<l;a++)d[a]&&(p=d[a].replace(/\*/g,".*?"),p[0]==="-"?n.skips.push(new RegExp("^"+p.slice(1)+"$")):n.names.push(new RegExp("^"+p+"$")))}function i(){let p=[...n.names.map(u),...n.skips.map(u).map(a=>"-"+a)].join(",");return n.enable(""),p}function c(p){if(p[p.length-1]==="*")return!0;let a,d;for(a=0,d=n.skips.length;a<d;a++)if(n.skips[a].test(p))return!1;for(a=0,d=n.names.length;a<d;a++)if(n.names[a].test(p))return!0;return!1}function u(p){return p.toString().substring(2,p.toString().length-2).replace(/\.\*\?$/,"*")}function I(p){return p instanceof Error?p.stack||p.message:p}function w(){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 n.enable(n.load()),n}Tn.exports=lo});var Ln=L(($,or)=>{$.formatArgs=ho;$.save=po;$.load=go;$.useColors=uo;$.storage=mo();$.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();$.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 uo(){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 ho(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+or.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let n=0,t=0;r[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(n++,o==="%c"&&(t=n))}),r.splice(t,0,e)}$.log=console.debug||console.log||(()=>{});function po(r){try{r?$.storage.setItem("debug",r):$.storage.removeItem("debug")}catch{}}function go(){let r;try{r=$.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function mo(){try{return localStorage}catch{}}or.exports=br()($);var{formatters:yo}=or.exports;yo.j=function(r){try{return JSON.stringify(r)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Nn=L((Qs,Bn)=>{"use strict";Bn.exports=(r,e)=>{e=e||process.argv;let n=r.startsWith("-")?"":r.length===1?"-":"--",t=e.indexOf(n+r),o=e.indexOf("--");return t!==-1&&(o===-1?!0:t<o)}});var Rn=L((Ws,Pn)=>{"use strict";var wo=ce("os"),X=Nn(),F=process.env,De;X("no-color")||X("no-colors")||X("color=false")?De=!1:(X("color")||X("colors")||X("color=true")||X("color=always"))&&(De=!0);"FORCE_COLOR"in F&&(De=F.FORCE_COLOR.length===0||parseInt(F.FORCE_COLOR,10)!==0);function Eo(r){return r===0?!1:{level:r,hasBasic:!0,has256:r>=2,has16m:r>=3}}function Io(r){if(De===!1)return 0;if(X("color=16m")||X("color=full")||X("color=truecolor"))return 3;if(X("color=256"))return 2;if(r&&!r.isTTY&&De!==!0)return 0;let e=De?1:0;if(process.platform==="win32"){let n=wo.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in F)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(n=>n in F)||F.CI_NAME==="codeship"?1:e;if("TEAMCITY_VERSION"in F)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(F.TEAMCITY_VERSION)?1:0;if(F.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in F){let n=parseInt((F.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(F.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(F.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(F.TERM)||"COLORTERM"in F?1:(F.TERM==="dumb",e)}function Sr(r){let e=Io(r);return Eo(e)}Pn.exports={supportsColor:Sr,stdout:Sr(process.stdout),stderr:Sr(process.stderr)}});var Fn=L((R,sr)=>{var xo=ce("tty"),ir=ce("util");R.init=Oo;R.log=So;R.formatArgs=Co;R.save=Uo;R.load=Ao;R.useColors=vo;R.destroy=ir.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");R.colors=[6,2,3,4,5,1];try{let r=Rn();r&&(r.stderr||r).level>=2&&(R.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}R.inspectOpts=Object.keys(process.env).filter(r=>/^debug_/i.test(r)).reduce((r,e)=>{let n=e.substring(6).toLowerCase().replace(/_([a-z])/g,(o,i)=>i.toUpperCase()),t=process.env[e];return/^(yes|on|true|enabled)$/i.test(t)?t=!0:/^(no|off|false|disabled)$/i.test(t)?t=!1:t==="null"?t=null:t=Number(t),r[n]=t,r},{});function vo(){return"colors"in R.inspectOpts?!!R.inspectOpts.colors:xo.isatty(process.stderr.fd)}function Co(r){let{namespace:e,useColors:n}=this;if(n){let t=this.color,o="\x1B[3"+(t<8?t:"8;5;"+t),i=` ${o};1m${e} \x1B[0m`;r[0]=i+r[0].split(`
3
3
  `).join(`
4
- `+i),r.push(o+"m+"+yr.exports.humanize(this.diff)+"\x1B[0m")}else r[0]=Qo()+e+" "+r[0]}function Qo(){return D.inspectOpts.hideDate?"":new Date().toISOString()+" "}function Jo(...r){return process.stderr.write(mr.format(...r)+`
5
- `)}function Zo(r){r?process.env.DEBUG=r:delete process.env.DEBUG}function fo(){return process.env.DEBUG}function ei(r){r.inspectOpts={};let e=Object.keys(D.inspectOpts);for(let t=0;t<e.length;t++)r.inspectOpts[e[t]]=D.inspectOpts[e[t]]}yr.exports=jr()(D);var{formatters:nn}=yr.exports;nn.o=function(r){return this.inspectOpts.colors=this.useColors,mr.inspect(r,this.inspectOpts).split(`
6
- `).map(e=>e.trim()).join(" ")};nn.O=function(r){return this.inspectOpts.colors=this.useColors,mr.inspect(r,this.inspectOpts)}});var sn=L((pc,Hr)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?Hr.exports=Zt():Hr.exports=on()});var Fn=L((Ua,Dn)=>{Dn.exports=Et;var Rn=128,gs=127,ms=~gs,ys=Math.pow(2,31);function Et(r,e,t){if(Number.MAX_SAFE_INTEGER&&r>Number.MAX_SAFE_INTEGER)throw Et.bytes=0,new RangeError("Could not encode varint");e=e||[],t=t||0;for(var n=t;r>=ys;)e[t++]=r&255|Rn,r/=128;for(;r&ms;)e[t++]=r&255|Rn,r>>>=7;return e[t]=r|0,Et.bytes=t-n+1,e}});var kn=L((Aa,Mn)=>{Mn.exports=It;var ws=128,_n=127;function It(r,n){var t=0,n=n||0,o=0,i=n,c,u=r.length;do{if(i>=u||o>49)throw It.bytes=0,new RangeError("Could not decode varint");c=r[i++],t+=o<28?(c&_n)<<o:(c&_n)*Math.pow(2,o),o+=7}while(c>=ws);return It.bytes=i-n,t}});var zn=L((Oa,qn)=>{var Es=Math.pow(2,7),Is=Math.pow(2,14),vs=Math.pow(2,21),xs=Math.pow(2,28),Cs=Math.pow(2,35),bs=Math.pow(2,42),Ss=Math.pow(2,49),Us=Math.pow(2,56),As=Math.pow(2,63);qn.exports=function(r){return r<Es?1:r<Is?2:r<vs?3:r<xs?4:r<Cs?5:r<bs?6:r<Ss?7:r<Us?8:r<As?9:10}});var Sr=L((Ta,$n)=>{$n.exports={encode:Fn(),decode:kn(),encodingLength:zn()}});var Zs={};z(Zs,{mdns:()=>Js});var so=De(Xt(),1);var Le=function(r,e,t,n){if(t==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!n:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?n:t==="a"?n.call(r):n?n.value:e.get(r)},Ee,ur=class extends EventTarget{constructor(){super(...arguments),Ee.set(this,new Map)}listenerCount(e){let t=Le(this,Ee,"f").get(e);return t==null?0:t.length}addEventListener(e,t,n){super.addEventListener(e,t,n);let o=Le(this,Ee,"f").get(e);o==null&&(o=[],Le(this,Ee,"f").set(e,o)),o.push({callback:t,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(e,t,n){super.removeEventListener(e.toString(),t??null,n);let o=Le(this,Ee,"f").get(e);o!=null&&(o=o.filter(({callback:i})=>i!==t),Le(this,Ee,"f").set(e,o))}dispatchEvent(e){let t=super.dispatchEvent(e),n=Le(this,Ee,"f").get(e.type);return n==null||(n=n.filter(({once:o})=>!o),Le(this,Ee,"f").set(e.type,n)),t}safeDispatchEvent(e,t){return this.dispatchEvent(new hr(e,t))}};Ee=new WeakMap;var Vr=class extends Event{constructor(e,t){super(e,t),this.detail=t?.detail}},hr=globalThis.CustomEvent??Vr;var K=De(sn(),1);var Qr={};z(Qr,{base58btc:()=>B,base58flickr:()=>si});function ri(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var o=0;o<r.length;o++){var i=r.charAt(o),c=i.charCodeAt(0);if(t[c]!==255)throw new TypeError(i+" is ambiguous");t[c]=o}var u=r.length,I=r.charAt(0),w=Math.log(u)/Math.log(256),p=Math.log(256)/Math.log(u);function a(s){if(s instanceof Uint8Array||(ArrayBuffer.isView(s)?s=new Uint8Array(s.buffer,s.byteOffset,s.byteLength):Array.isArray(s)&&(s=Uint8Array.from(s))),!(s instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(s.length===0)return"";for(var g=0,E=0,x=0,b=s.length;x!==b&&s[x]===0;)x++,g++;for(var P=(b-x)*p+1>>>0,U=new Uint8Array(P);x!==b;){for(var T=s[x],A=0,q=P-1;(T!==0||A<E)&&q!==-1;q--,A++)T+=256*U[q]>>>0,U[q]=T%u>>>0,T=T/u>>>0;if(T!==0)throw new Error("Non-zero carry");E=A,x++}for(var H=P-E;H!==P&&U[H]===0;)H++;for(var Re=I.repeat(g);H<P;++H)Re+=r.charAt(U[H]);return Re}function d(s){if(typeof s!="string")throw new TypeError("Expected String");if(s.length===0)return new Uint8Array;var g=0;if(s[g]!==" "){for(var E=0,x=0;s[g]===I;)E++,g++;for(var b=(s.length-g)*w+1>>>0,P=new Uint8Array(b);s[g];){var U=t[s.charCodeAt(g)];if(U===255)return;for(var T=0,A=b-1;(U!==0||T<x)&&A!==-1;A--,T++)U+=u*P[A]>>>0,P[A]=U%256>>>0,U=U/256>>>0;if(U!==0)throw new Error("Non-zero carry");x=T,g++}if(s[g]!==" "){for(var q=b-x;q!==b&&P[q]===0;)q++;for(var H=new Uint8Array(E+(b-q)),Re=E;q!==b;)H[Re++]=P[q++];return H}}}function l(s){var g=d(s);if(g)return g;throw new Error(`Non-${e} character`)}return{encode:a,decodeUnsafe:d,decode:l}}var ti=ri,ni=ti,cn=ni;var mc=new Uint8Array(0);var an=(r,e)=>{if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0},Y=r=>{if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")};var dn=r=>new TextEncoder().encode(r),ln=r=>new TextDecoder().decode(r);var Yr=class{constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Kr=class{constructor(e,t,n){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return hn(this,e)}},Xr=class{constructor(e){this.decoders=e}or(e){return hn(this,e)}decode(e){let t=e[0],n=this.decoders[t];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`)}},hn=(r,e)=>new Xr({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}}),Wr=class{constructor(e,t,n,o){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=o,this.encoder=new Yr(e,t,n),this.decoder=new Kr(e,t,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},ze=({name:r,prefix:e,encode:t,decode:n})=>new Wr(r,e,t,n),be=({prefix:r,name:e,alphabet:t})=>{let{encode:n,decode:o}=cn(t,e);return ze({prefix:r,name:e,encode:n,decode:i=>Y(o(i))})},oi=(r,e,t,n)=>{let o={};for(let p=0;p<e.length;++p)o[e[p]]=p;let i=r.length;for(;r[i-1]==="=";)--i;let c=new Uint8Array(i*t/8|0),u=0,I=0,w=0;for(let p=0;p<i;++p){let a=o[r[p]];if(a===void 0)throw new SyntaxError(`Non-${n} character`);I=I<<t|a,u+=t,u>=8&&(u-=8,c[w++]=255&I>>u)}if(u>=t||255&I<<8-u)throw new SyntaxError("Unexpected end of data");return c},ii=(r,e,t)=>{let n=e[e.length-1]==="=",o=(1<<t)-1,i="",c=0,u=0;for(let I=0;I<r.length;++I)for(u=u<<8|r[I],c+=8;c>t;)c-=t,i+=e[o&u>>c];if(c&&(i+=e[o&u<<t-c]),n)for(;i.length*t&7;)i+="=";return i},O=({name:r,prefix:e,bitsPerChar:t,alphabet:n})=>ze({prefix:e,name:r,encode(o){return ii(o,n,t)},decode(o){return oi(o,n,t,r)}});var B=be({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),si=be({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Jr={};z(Jr,{base32:()=>Z,base32hex:()=>li,base32hexpad:()=>hi,base32hexpadupper:()=>pi,base32hexupper:()=>ui,base32pad:()=>ai,base32padupper:()=>di,base32upper:()=>ci,base32z:()=>gi});var Z=O({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),ci=O({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),ai=O({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),di=O({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),li=O({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),ui=O({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),hi=O({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),pi=O({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),gi=O({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var fr={};z(fr,{base64:()=>Zr,base64pad:()=>mi,base64url:()=>yi,base64urlpad:()=>wi});var Zr=O({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),mi=O({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),yi=O({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),wi=O({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});K.default.formatters.b=r=>r==null?"undefined":B.baseEncode(r);K.default.formatters.t=r=>r==null?"undefined":Z.baseEncode(r);K.default.formatters.m=r=>r==null?"undefined":Zr.baseEncode(r);K.default.formatters.p=r=>r==null?"undefined":r.toString();K.default.formatters.c=r=>r==null?"undefined":r.toString();K.default.formatters.k=r=>r==null?"undefined":r.toString();function Ei(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function wr(r){let e=Ei(`${r}:trace`);return K.default.enabled(`${r}:trace`)&&K.default.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=(0,K.default)(`${r}:trace`)),Object.assign((0,K.default)(r),{error:(0,K.default)(`${r}:error`),trace:e})}var Ii=mn,pn=128,vi=127,xi=~vi,Ci=Math.pow(2,31);function mn(r,e,t){e=e||[],t=t||0;for(var n=t;r>=Ci;)e[t++]=r&255|pn,r/=128;for(;r&xi;)e[t++]=r&255|pn,r>>>=7;return e[t]=r|0,mn.bytes=t-n+1,e}var bi=et,Si=128,gn=127;function et(r,n){var t=0,n=n||0,o=0,i=n,c,u=r.length;do{if(i>=u)throw et.bytes=0,new RangeError("Could not decode varint");c=r[i++],t+=o<28?(c&gn)<<o:(c&gn)*Math.pow(2,o),o+=7}while(c>=Si);return et.bytes=i-n,t}var Ui=Math.pow(2,7),Ai=Math.pow(2,14),Oi=Math.pow(2,21),Ti=Math.pow(2,28),Li=Math.pow(2,35),Bi=Math.pow(2,42),Pi=Math.pow(2,49),Ni=Math.pow(2,56),Ri=Math.pow(2,63),Di=function(r){return r<Ui?1:r<Ai?2:r<Oi?3:r<Ti?4:r<Li?5:r<Bi?6:r<Pi?7:r<Ni?8:r<Ri?9:10},Fi={encode:Ii,decode:bi,encodingLength:Di},_i=Fi,Xe=_i;var We=(r,e=0)=>[Xe.decode(r,e),Xe.decode.bytes],$e=(r,e,t=0)=>(Xe.encode(r,e,t),e),Ve=r=>Xe.encodingLength(r);var Se=(r,e)=>{let t=e.byteLength,n=Ve(r),o=n+Ve(t),i=new Uint8Array(o+t);return $e(r,i,0),$e(t,i,n),i.set(e,o),new je(r,t,e,i)},Pe=r=>{let e=Y(r),[t,n]=We(e),[o,i]=We(e.subarray(n)),c=e.subarray(n+i);if(c.byteLength!==o)throw new Error("Incorrect length");return new je(t,o,c,e)},yn=(r,e)=>{if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&an(r.bytes,t.bytes)}},je=class{constructor(e,t,n,o){this.code=e,this.size=t,this.digest=n,this.bytes=o}};var wn=(r,e)=>{let{bytes:t,version:n}=r;switch(n){case 0:return ki(t,rt(r),e||B.encoder);default:return qi(t,rt(r),e||Z.encoder)}};var En=new WeakMap,rt=r=>{let e=En.get(r);if(e==null){let t=new Map;return En.set(r,t),t}return e},C=class{constructor(e,t,n,o){this.code=t,this.version=e,this.multihash=n,this.bytes=o,this["/"]=o}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:t}=this;if(e!==Qe)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==zi)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return C.createV0(t)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:t}=this.multihash,n=Se(e,t);return C.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 C.equals(this,e)}static equals(e,t){let n=t;return n&&e.code===n.code&&e.version===n.version&&yn(e.multihash,n.multihash)}toString(e){return wn(this,e)}toJSON(){return{"/":wn(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 t=e;if(t instanceof C)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:o,multihash:i,bytes:c}=t;return new C(n,o,i,c||In(n,o,i.bytes))}else if(t[$i]===!0){let{version:n,multihash:o,code:i}=t,c=Pe(o);return C.create(n,i,c)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==Qe)throw new Error(`Version 0 CID must use dag-pb (code: ${Qe}) block encoding`);return new C(e,t,n,n.bytes)}case 1:{let o=In(e,t,n.bytes);return new C(e,t,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return C.create(0,Qe,e)}static createV1(e,t){return C.create(1,e,t)}static decode(e){let[t,n]=C.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=C.inspectBytes(e),n=t.size-t.multihashSize,o=Y(e.subarray(n,n+t.multihashSize));if(o.byteLength!==t.multihashSize)throw new Error("Incorrect length");let i=o.subarray(t.multihashSize-t.digestSize),c=new je(t.multihashCode,t.digestSize,i,o);return[t.version===0?C.createV0(c):C.createV1(t.codec,c),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[a,d]=We(e.subarray(t));return t+=d,a},o=n(),i=Qe;if(o===18?(o=0,t=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let c=t,u=n(),I=n(),w=t+I,p=w-c;return{version:o,codec:i,multihashCode:u,digestSize:I,multihashSize:p,size:w}}static parse(e,t){let[n,o]=Mi(e,t),i=C.decode(o);if(i.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return rt(i).set(n,e),i}},Mi=(r,e)=>{switch(r[0]){case"Q":{let t=e||B;return[B.prefix,t.decode(`${B.prefix}${r}`)]}case B.prefix:{let t=e||B;return[B.prefix,t.decode(r)]}case Z.prefix:{let t=e||Z;return[Z.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}},ki=(r,e,t)=>{let{prefix:n}=t;if(n!==B.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let o=e.get(n);if(o==null){let i=t.encode(r).slice(1);return e.set(n,i),i}else return o},qi=(r,e,t)=>{let{prefix:n}=t,o=e.get(n);if(o==null){let i=t.encode(r);return e.set(n,i),i}else return o},Qe=112,zi=18,In=(r,e,t)=>{let n=Ve(r),o=n+Ve(e),i=new Uint8Array(o+t.byteLength);return $e(r,i,0),$e(e,i,n),i.set(t,o),i},$i=Symbol.for("@ipld/js-cid/CID");var tt={};z(tt,{identity:()=>Vi});var Vi=ze({prefix:"\0",name:"identity",encode:r=>ln(r),decode:r=>dn(r)});var nt={};z(nt,{base2:()=>ji});var ji=O({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ot={};z(ot,{base8:()=>Gi});var Gi=O({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var it={};z(it,{base10:()=>Hi});var Hi=be({prefix:"9",name:"base10",alphabet:"0123456789"});var st={};z(st,{base16:()=>Yi,base16upper:()=>Ki});var Yi=O({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Ki=O({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var ct={};z(ct,{base36:()=>Xi,base36upper:()=>Wi});var Xi=be({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Wi=be({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var at={};z(at,{base256emoji:()=>es});var vn=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}"),Qi=vn.reduce((r,e,t)=>(r[t]=e,r),[]),Ji=vn.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function Zi(r){return r.reduce((e,t)=>(e+=Qi[t],e),"")}function fi(r){let e=[];for(let t of r){let n=Ji[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var es=ze({prefix:"\u{1F680}",name:"base256emoji",encode:Zi,decode:fi});var ht={};z(ht,{sha256:()=>Ir,sha512:()=>rs});var ut=De(ce("crypto"),1);var lt=({name:r,code:e,encode:t})=>new dt(r,e,t),dt=class{constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?Se(this.code,t):t.then(n=>Se(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Ir=lt({name:"sha2-256",code:18,encode:r=>Y(ut.default.createHash("sha256").update(r).digest())}),rs=lt({name:"sha2-512",code:19,encode:r=>Y(ut.default.createHash("sha512").update(r).digest())});var pt={};z(pt,{identity:()=>vr});var Cn=0,ts="identity",bn=Y,ns=r=>Se(Cn,bn(r)),vr={code:Cn,name:ts,encode:bn,digest:ns};var Yc=new TextEncoder,Kc=new TextDecoder;var Ue={...tt,...nt,...ot,...it,...st,...Jr,...ct,...Qr,...fr,...at},Zc={...ht,...pt};function Je(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}var Ze=class extends Error{constructor(e,t,n){super(e),this.code=t,this.name=n?.name??"CodeError",this.props=n??{}}};var Sn=Symbol.for("@libp2p/peer-id");var ss=Symbol.for("nodejs.util.inspect.custom"),Un=Object.values(Ue).map(r=>r.decoder).reduce((r,e)=>r.or(e),Ue.identity.decoder),An=114,On=36,Tn=37,fe=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[Sn](){return!0}toString(){return this.string==null&&(this.string=B.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return C.createV1(An,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Je(this.multihash.bytes,e);if(typeof e=="string")return gt(e).equals(this);if(e?.multihash?.bytes!=null)return Je(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[ss](){return`PeerId(${this.toString()})`}},er=class extends fe{constructor(e){super({...e,type:"RSA"}),this.type="RSA",this.publicKey=e.publicKey}},rr=class extends fe{constructor(e){super({...e,type:"Ed25519"}),this.type="Ed25519",this.publicKey=e.multihash.digest}},tr=class extends fe{constructor(e){super({...e,type:"secp256k1"}),this.type="secp256k1",this.publicKey=e.multihash.digest}};function gt(r,e){if(e=e??Un,r.charAt(0)==="1"||r.charAt(0)==="Q"){let t=Pe(B.decode(`z${r}`));return r.startsWith("12D")?new rr({multihash:t}):r.startsWith("16U")?new tr({multihash:t}):new er({multihash:t})}return cs(Un.decode(r))}function cs(r){try{let e=Pe(r);if(e.code===vr.code){if(e.digest.length===On)return new rr({multihash:e});if(e.digest.length===Tn)return new tr({multihash:e})}if(e.code===Ir.code)return new er({multihash:e})}catch{return as(C.decode(r))}throw new Error("Supplied PeerID CID is invalid")}function as(r){if(r==null||r.multihash==null||r.version==null||r.version===1&&r.code!==An)throw new Error("Supplied PeerID CID is invalid");let e=r.multihash;if(e.code===Ir.code)return new er({multihash:r.multihash});if(e.code===vr.code){if(e.digest.length===On)return new rr({multihash:r.multihash});if(e.digest.length===Tn)return new tr({multihash:r.multihash})}throw new Error("Supplied PeerID CID is invalid")}var Ae=ce("node:net");function xr(r){return!!(0,Ae.isIP)(r)}function Ge(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function Cr(r=0){return globalThis.Buffer?.allocUnsafe!=null?Ge(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}function Bn(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Ln=Bn("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),mt=Bn("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=Cr(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),ds={utf8:Ln,"utf-8":Ln,hex:Ue.base16,latin1:mt,ascii:mt,binary:mt,...Ue},br=ds;function k(r,e="utf8"){let t=br[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r.buffer,r.byteOffset,r.byteLength).toString("utf8"):t.encoder.encode(r).substring(1)}var Pn=Ae.isIPv4,ls=Ae.isIPv6,yt=function(r){let e=0;if(r=r.toString().trim(),Pn(r)){let t=new Uint8Array(e+4);return r.split(/\./g).forEach(n=>{t[e++]=parseInt(n,10)&255}),t}if(ls(r)){let t=r.split(":",8),n;for(n=0;n<t.length;n++){let i=Pn(t[n]),c;i&&(c=yt(t[n]),t[n]=k(c.slice(0,2),"base16")),c!=null&&++n<8&&t.splice(n,0,k(c.slice(2,4),"base16"))}if(t[0]==="")for(;t.length<8;)t.unshift("0");else if(t[t.length-1]==="")for(;t.length<8;)t.push("0");else if(t.length<8){for(n=0;n<t.length&&t[n]!=="";n++);let i=[n,1];for(n=9-t.length;n>0;n--)i.push("0");t.splice.apply(t,i)}let o=new Uint8Array(e+16);for(n=0;n<t.length;n++){let i=parseInt(t[n],16);o[e++]=i>>8&255,o[e++]=i&255}return o}throw new Error("invalid ip address")},Nn=function(r,e=0,t){e=~~e,t=t??r.length-e;let n=new DataView(r.buffer);if(t===4){let o=[];for(let i=0;i<t;i++)o.push(r[e+i]);return o.join(".")}if(t===16){let o=[];for(let i=0;i<t;i+=2)o.push(n.getUint16(e+i).toString(16));return o.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var nr={},wt={},hs=[[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"]];hs.forEach(r=>{let e=ps(...r);wt[e.code]=e,nr[e.name]=e});function ps(r,e,t,n,o){return{code:r,size:e,name:t,resolvable:!!n,path:!!o}}function S(r){if(typeof r=="number"){if(wt[r]!=null)return wt[r];throw new Error(`no protocol with code: ${r}`)}else if(typeof r=="string"){if(nr[r]!=null)return nr[r];throw new Error(`no protocol with name: ${r}`)}throw new Error(`invalid protocol id type: ${typeof r}`)}var se=De(Sr(),1);function vt(r,e="utf8"){let t=br[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Ge(globalThis.Buffer.from(r,"utf-8")):t.decoder.decode(`${t.prefix}${r}`)}function Ie(r,e){e==null&&(e=r.reduce((o,i)=>o+i.length,0));let t=Cr(e),n=0;for(let o of r)t.set(o,n),n+=o.length;return Ge(t)}var Ur=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let t=this.index,n=e();return n===void 0&&(this.index=t),n}parseWith(e){let t=e();if(this.index===this.input.length)return t}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let t=this.readChar();if(t===e)return t})}readSeparator(e,t,n){return this.readAtomically(()=>{if(!(t>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,t,n,o){return this.readAtomically(()=>{let i=0,c=0,u=this.peekChar();if(u===void 0)return;let I=u==="0",w=2**(8*o)-1;for(;;){let p=this.readAtomically(()=>{let a=this.readChar();if(a===void 0)return;let d=Number.parseInt(a,e);if(!Number.isNaN(d))return d});if(p===void 0)break;if(i*=e,i+=p,i>w||(c+=1,t!==void 0&&c>t))return}if(c!==0)return!n&&I&&c>1?void 0:i})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let t=0;t<e.length;t++){let n=this.readSeparator(".",t,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[t]=n}return e})}readIPv6Addr(){let e=t=>{for(let n=0;n<t.length/2;n++){let o=n*2;if(n<t.length-3){let c=this.readSeparator(":",n,()=>this.readIPv4Addr());if(c!==void 0)return t[o]=c[0],t[o+1]=c[1],t[o+2]=c[2],t[o+3]=c[3],[o+4,!0]}let i=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(i===void 0)return[o,!1];t[o]=i>>8,t[o+1]=i&255}return[t.length,!1]};return this.readAtomically(()=>{let t=new Uint8Array(16),[n,o]=e(t);if(n===16)return t;if(o||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let i=new Uint8Array(14),c=16-(n+2),[u]=e(i.subarray(0,c));return t.set(i.subarray(0,u),16-u),t})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Ma=new Ur;var Ha=parseInt("0xFFFF",16),Ya=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);var Ud=S("ip4"),Ad=S("ip6"),Od=S("ipcidr");function Xn(r,e){switch(S(r).code){case 4:case 41:return Rs(e);case 42:return Yn(e);case 6:case 273:case 33:case 132:return Qn(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Yn(e);case 421:return Ms(e);case 444:return Kn(e);case 445:return Kn(e);case 466:return _s(e);default:return k(e,"base16")}}function Wn(r,e){switch(S(r).code){case 4:return Gn(e);case 41:return Gn(e);case 42:return Hn(e);case 6:case 273:case 33:case 132:return Ct(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Hn(e);case 421:return Ds(e);case 444:return ks(e);case 445:return qs(e);case 466:return Fs(e);default:return vt(e,"base16")}}var xt=Object.values(Ue).map(r=>r.decoder),Ns=function(){let r=xt[0].or(xt[1]);return xt.slice(2).forEach(e=>r=r.or(e)),r}();function Gn(r){if(!xr(r))throw new Error("invalid ip address");return yt(r)}function Rs(r){let e=Nn(r,0,r.length);if(e==null)throw new Error("ipBuff is required");if(!xr(e))throw new Error("invalid ip address");return e}function Ct(r){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,r),new Uint8Array(e)}function Qn(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function Hn(r){let e=vt(r),t=Uint8Array.from(se.default.encode(e.length));return Ie([t,e],t.length+e.length)}function Yn(r){let e=se.default.decode(r);if(r=r.slice(se.default.decode.bytes),r.length!==e)throw new Error("inconsistent lengths");return k(r)}function Ds(r){let e;r[0]==="Q"||r[0]==="1"?e=Pe(B.decode(`z${r}`)).bytes:e=C.parse(r).multihash.bytes;let t=Uint8Array.from(se.default.encode(e.length));return Ie([t,e],t.length+e.length)}function Fs(r){let e=Ns.decode(r),t=Uint8Array.from(se.default.encode(e.length));return Ie([t,e],t.length+e.length)}function _s(r){let e=se.default.decode(r),t=r.slice(se.default.decode.bytes);if(t.length!==e)throw new Error("inconsistent lengths");return"u"+k(t,"base64url")}function Ms(r){let e=se.default.decode(r),t=r.slice(se.default.decode.bytes);if(t.length!==e)throw new Error("inconsistent lengths");return k(t,"base58btc")}function ks(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let t=Z.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=Ct(n);return Ie([t,o],t.length+o.length)}function qs(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let t=Z.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=Ct(n);return Ie([t,o],t.length+o.length)}function Kn(r){let e=r.slice(0,r.length-2),t=r.slice(r.length-2),n=k(e,"base32"),o=Qn(t);return`${n}:${o}`}var He=De(Sr(),1);function zs(r){let e=[],t=r.split("/").slice(1);if(t.length===1&&t[0]==="")return[];for(let n=0;n<t.length;n++){let o=t[n],i=S(o);if(i.size===0){e.push([o]);continue}if(n++,n>=t.length)throw Zn("invalid address: "+r);if(i.path===!0){e.push([o,Ot(t.slice(n).join("/"))]);break}e.push([o,t[n]])}return e}function $s(r){let e=[];return r.map(t=>{let n=Tr(t);return e.push(n.name),t.length>1&&t[1]!=null&&e.push(t[1]),null}),Ot(e.join("/"))}function Vs(r){return r.map(e=>{Array.isArray(e)||(e=[e]);let t=Tr(e);return e.length>1?[t.code,Wn(t.code,e[1])]:[t.code]})}function bt(r){return r.map(e=>{let t=Tr(e);return e[1]!=null?[t.code,Xn(t.code,e[1])]:[t.code]})}function St(r){return Or(Ie(r.map(e=>{let t=Tr(e),n=Uint8Array.from(He.default.encode(t.code));return e.length>1&&e[1]!=null&&(n=Ie([n,e[1]])),n})))}function Ut(r,e){return r.size>0?r.size/8:r.size===0?0:He.default.decode(e)+(He.default.decode.bytes??0)}function Ar(r){let e=[],t=0;for(;t<r.length;){let n=He.default.decode(r,t),o=He.default.decode.bytes??0,i=S(n),c=Ut(i,r.slice(t+o));if(c===0){e.push([n]),t+=o;continue}let u=r.slice(t+o,t+o+c);if(t+=c+o,t>r.length)throw Zn("Invalid address Uint8Array: "+k(r,"base16"));e.push([n,u])}return e}function At(r){let e=Ar(r),t=bt(e);return $s(t)}function js(r){r=Ot(r);let e=zs(r),t=Vs(e);return St(t)}function Jn(r){return js(r)}function Or(r){let e=Gs(r);if(e!=null)throw e;return Uint8Array.from(r)}function Gs(r){try{Ar(r)}catch(e){return e}}function Ot(r){return"/"+r.trim().split("/").filter(e=>e).join("/")}function Zn(r){return new Error("Error parsing address: "+r)}function Tr(r){return S(r[0])}var Lt=De(Sr(),1);var ve=function(r,e,t,n){if(t==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!n:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?n:t==="a"?n.call(r):n?n.value:e.get(r)},Ye=function(r,e,t,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"?r!==e||!o:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?o.call(r,t):o?o.value=t:e.set(r,t),t},or,ir,sr,Oe,fn,Ys=Symbol.for("nodejs.util.inspect.custom"),Ks=[S("dns").code,S("dns4").code,S("dns6").code,S("dnsaddr").code],Xs=new Map,eo=Symbol.for("@multiformats/js-multiaddr/multiaddr");function Ws(r){return!!r?.[eo]}var xe=class{constructor(e){if(or.set(this,void 0),ir.set(this,void 0),sr.set(this,void 0),Oe.set(this,void 0),this[fn]=!0,e==null&&(e=""),e instanceof Uint8Array)this.bytes=Or(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);this.bytes=Jn(e)}else if(Ws(e))this.bytes=Or(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr")}toString(){return ve(this,or,"f")==null&&Ye(this,or,At(this.bytes),"f"),ve(this,or,"f")}toJSON(){return this.toString()}toOptions(){let e,t,n,o,i="",c=S("tcp"),u=S("udp"),I=S("ip4"),w=S("ip6"),p=S("dns6"),a=S("ip6zone");for(let[l,s]of this.stringTuples())l===a.code&&(i=`%${s??""}`),Ks.includes(l)&&(t=c.name,o=443,n=`${s??""}${i}`,e=l===p.code?6:4),(l===c.code||l===u.code)&&(t=S(l).name,o=parseInt(s??"")),(l===I.code||l===w.code)&&(t=S(l).name,n=`${s??""}${i}`,e=l===w.code?6:4);if(e==null||t==null||n==null||o==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:t,port:o}}protos(){return this.protoCodes().map(e=>Object.assign({},S(e)))}protoCodes(){let e=[],t=this.bytes,n=0;for(;n<t.length;){let o=Lt.default.decode(t,n),i=Lt.default.decode.bytes??0,c=S(o),u=Ut(c,t.slice(n+i));n+=u+i,e.push(o)}return e}protoNames(){return this.protos().map(e=>e.name)}tuples(){return ve(this,ir,"f")==null&&Ye(this,ir,Ar(this.bytes),"f"),ve(this,ir,"f")}stringTuples(){return ve(this,sr,"f")==null&&Ye(this,sr,bt(this.tuples()),"f"),ve(this,sr,"f")}encapsulate(e){return e=new xe(e),new xe(this.toString()+e.toString())}decapsulate(e){let t=e.toString(),n=this.toString(),o=n.lastIndexOf(t);if(o<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new xe(n.slice(0,o))}decapsulateCode(e){let t=this.tuples();for(let n=t.length-1;n>=0;n--)if(t[n][0]===e)return new xe(St(t.slice(0,n)));return this}getPeerId(){try{let t=this.stringTuples().filter(n=>n[0]===nr.ipfs.code).pop();if(t?.[1]!=null){let n=t[1];return n[0]==="Q"||n[0]==="1"?k(B.decode(`z${n}`),"base58btc"):k(C.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){if(ve(this,Oe,"f")===void 0)try{Ye(this,Oe,this.stringTuples().filter(e=>S(e[0]).path===!0)[0][1],"f"),ve(this,Oe,"f")==null&&Ye(this,Oe,null,"f")}catch{Ye(this,Oe,null,"f")}return ve(this,Oe,"f")}equals(e){return Je(this.bytes,e.bytes)}async resolve(e){let t=this.protos().find(i=>i.resolvable);if(t==null)return[this];let n=Xs.get(t.name);if(n==null)throw new Ze(`no available resolver for ${t.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(i=>new xe(i))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let t=(e??this).protos();return!(t.length!==2||t[0].code!==4&&t[0].code!==41||t[1].code!==6&&t[1].code!==273)}[(or=new WeakMap,ir=new WeakMap,sr=new WeakMap,Oe=new WeakMap,fn=eo,Ys)](){return`Multiaddr(${At(this.bytes)})`}};function Tt(r){return new xe(r)}var cr=wr("libp2p:mdns:query");function ro(r,e,t){let n=()=>{cr("query",e),r.query({questions:[{name:e,type:"PTR"}]})};return n(),setInterval(n,t)}function to(r,e,t){if(r.answers==null)return;let n,o=[];if(r.answers.forEach(i=>{switch(i.type){case"PTR":n=i;break;case"TXT":o.push(i);break;default:break}}),!(n==null||n?.name!==t||o.length===0||n.data.startsWith(e)))try{let i=o.flatMap(u=>u.data).filter(u=>u.toString().startsWith("dnsaddr=")).map(u=>Tt(u.toString().substring(8))),c=i[0].getPeerId();if(c==null)throw new Error("Multiaddr doesn't contain PeerId");return cr("peer found %p",c),{id:gt(c),multiaddrs:i,protocols:[]}}catch(i){cr.error("failed to parse mdns response",i)}}function no(r,e,t,n,o,i){if(!i){cr("not responding to mDNS query as broadcast mode is false");return}if(n.length!==0&&r.questions[0]!=null&&r.questions[0].name===o){let c=[];c.push({name:o,type:"PTR",class:"IN",ttl:120,data:t+"."+o}),n.forEach(u=>{u.getPeerId()!=null&&c.push({name:t+"."+o,type:"TXT",class:"IN",ttl:120,data:"dnsaddr="+u.toString()})}),cr("responding to query"),e.respond(c)}}var oo=Symbol.for("@libp2p/peer-discovery");function io(r){let e="",t="abcdefghijklmnopqrstuvwxyz0123456789";for(let n=0;n<r;n++)e+=t.charAt(Math.floor(Math.random()*t.length));return e}var Lr=wr("libp2p:mdns"),Bt=class extends ur{constructor(e,t={}){if(super(),this.broadcast=t.broadcast!==!1,this.interval=t.interval??1e3*10,this.serviceTag=t.serviceTag??"_p2p._udp.local",this.ip=t.ip??"224.0.0.251",this.peerName=t.peerName??io(63),this.peerName.length>=64)throw new Error("Peer name should be less than 64 chars long");this.port=t.port??5353,this.components=e,this._queryInterval=null,this._onPeer=this._onPeer.bind(this),this._onMdnsQuery=this._onMdnsQuery.bind(this),this._onMdnsResponse=this._onMdnsResponse.bind(this)}get[oo](){return!0}get[Symbol.toStringTag](){return"@libp2p/mdns"}isStarted(){return!!this.mdns}async start(){this.mdns==null&&(this.mdns=(0,so.default)({port:this.port,ip:this.ip}),this.mdns.on("query",this._onMdnsQuery),this.mdns.on("response",this._onMdnsResponse),this._queryInterval=ro(this.mdns,this.serviceTag,this.interval))}_onMdnsQuery(e){this.mdns!=null&&(Lr.trace("received incoming mDNS query"),no(e,this.mdns,this.peerName,this.components.addressManager.getAddresses(),this.serviceTag,this.broadcast))}_onMdnsResponse(e){Lr.trace("received mDNS query response");try{let t=to(e,this.peerName,this.serviceTag);t!=null&&(Lr("discovered peer in mDNS query response %p",t.id),this.dispatchEvent(new hr("peer",{detail:t})))}catch(t){Lr.error("Error processing peer response",t)}}_onPeer(e){this.mdns!=null&&this.dispatchEvent(new hr("peer",{detail:e.detail}))}async stop(){this.mdns!=null&&(this.mdns.removeListener("query",this._onMdnsQuery),this.mdns.removeListener("response",this._onMdnsResponse),this._queryInterval!=null&&(clearInterval(this._queryInterval),this._queryInterval=null),await new Promise(e=>{this.mdns!=null?this.mdns.destroy(e):e()}),this.mdns=void 0)}};function Js(r={}){return e=>new Bt(e,r)}return po(Zs);})();
4
+ `+i),r.push(o+"m+"+sr.exports.humanize(this.diff)+"\x1B[0m")}else r[0]=bo()+e+" "+r[0]}function bo(){return R.inspectOpts.hideDate?"":new Date().toISOString()+" "}function So(...r){return process.stderr.write(ir.format(...r)+`
5
+ `)}function Uo(r){r?process.env.DEBUG=r:delete process.env.DEBUG}function Ao(){return process.env.DEBUG}function Oo(r){r.inspectOpts={};let e=Object.keys(R.inspectOpts);for(let n=0;n<e.length;n++)r.inspectOpts[e[n]]=R.inspectOpts[e[n]]}sr.exports=br()(R);var{formatters:Dn}=sr.exports;Dn.o=function(r){return this.inspectOpts.colors=this.useColors,ir.inspect(r,this.inspectOpts).split(`
6
+ `).map(e=>e.trim()).join(" ")};Dn.O=function(r){return this.inspectOpts.colors=this.useColors,ir.inspect(r,this.inspectOpts)}});var _n=L((Js,Ur)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?Ur.exports=Ln():Ur.exports=Fn()});var jn=L(Dr=>{"use strict";Dr.toString=function(r){switch(r){case 1:return"A";case 10:return"NULL";case 28:return"AAAA";case 18:return"AFSDB";case 42:return"APL";case 257:return"CAA";case 60:return"CDNSKEY";case 59:return"CDS";case 37:return"CERT";case 5:return"CNAME";case 49:return"DHCID";case 32769:return"DLV";case 39:return"DNAME";case 48:return"DNSKEY";case 43:return"DS";case 55:return"HIP";case 13:return"HINFO";case 45:return"IPSECKEY";case 25:return"KEY";case 36:return"KX";case 29:return"LOC";case 15:return"MX";case 35:return"NAPTR";case 2:return"NS";case 47:return"NSEC";case 50:return"NSEC3";case 51:return"NSEC3PARAM";case 12:return"PTR";case 46:return"RRSIG";case 17:return"RP";case 24:return"SIG";case 6:return"SOA";case 99:return"SPF";case 33:return"SRV";case 44:return"SSHFP";case 32768:return"TA";case 249:return"TKEY";case 52:return"TLSA";case 250:return"TSIG";case 16:return"TXT";case 252:return"AXFR";case 251:return"IXFR";case 41:return"OPT";case 255:return"ANY"}return"UNKNOWN_"+r};Dr.toType=function(r){switch(r.toUpperCase()){case"A":return 1;case"NULL":return 10;case"AAAA":return 28;case"AFSDB":return 18;case"APL":return 42;case"CAA":return 257;case"CDNSKEY":return 60;case"CDS":return 59;case"CERT":return 37;case"CNAME":return 5;case"DHCID":return 49;case"DLV":return 32769;case"DNAME":return 39;case"DNSKEY":return 48;case"DS":return 43;case"HIP":return 55;case"HINFO":return 13;case"IPSECKEY":return 45;case"KEY":return 25;case"KX":return 36;case"LOC":return 29;case"MX":return 15;case"NAPTR":return 35;case"NS":return 2;case"NSEC":return 47;case"NSEC3":return 50;case"NSEC3PARAM":return 51;case"PTR":return 12;case"RRSIG":return 46;case"RP":return 17;case"SIG":return 24;case"SOA":return 6;case"SPF":return 99;case"SRV":return 33;case"SSHFP":return 44;case"TA":return 32768;case"TKEY":return 249;case"TLSA":return 52;case"TSIG":return 250;case"TXT":return 16;case"AXFR":return 252;case"IXFR":return 251;case"OPT":return 41;case"ANY":return 255;case"*":return 255}return r.toUpperCase().startsWith("UNKNOWN_")?parseInt(r.slice(8)):0}});var Kn=L(Fr=>{"use strict";Fr.toString=function(r){switch(r){case 0:return"NOERROR";case 1:return"FORMERR";case 2:return"SERVFAIL";case 3:return"NXDOMAIN";case 4:return"NOTIMP";case 5:return"REFUSED";case 6:return"YXDOMAIN";case 7:return"YXRRSET";case 8:return"NXRRSET";case 9:return"NOTAUTH";case 10:return"NOTZONE";case 11:return"RCODE_11";case 12:return"RCODE_12";case 13:return"RCODE_13";case 14:return"RCODE_14";case 15:return"RCODE_15"}return"RCODE_"+r};Fr.toRcode=function(r){switch(r.toUpperCase()){case"NOERROR":return 0;case"FORMERR":return 1;case"SERVFAIL":return 2;case"NXDOMAIN":return 3;case"NOTIMP":return 4;case"REFUSED":return 5;case"YXDOMAIN":return 6;case"YXRRSET":return 7;case"NXRRSET":return 8;case"NOTAUTH":return 9;case"NOTZONE":return 10;case"RCODE_11":return 11;case"RCODE_12":return 12;case"RCODE_13":return 13;case"RCODE_14":return 14;case"RCODE_15":return 15}return 0}});var Hn=L(_r=>{"use strict";_r.toString=function(r){switch(r){case 0:return"QUERY";case 1:return"IQUERY";case 2:return"STATUS";case 3:return"OPCODE_3";case 4:return"NOTIFY";case 5:return"UPDATE";case 6:return"OPCODE_6";case 7:return"OPCODE_7";case 8:return"OPCODE_8";case 9:return"OPCODE_9";case 10:return"OPCODE_10";case 11:return"OPCODE_11";case 12:return"OPCODE_12";case 13:return"OPCODE_13";case 14:return"OPCODE_14";case 15:return"OPCODE_15"}return"OPCODE_"+r};_r.toOpcode=function(r){switch(r.toUpperCase()){case"QUERY":return 0;case"IQUERY":return 1;case"STATUS":return 2;case"OPCODE_3":return 3;case"NOTIFY":return 4;case"UPDATE":return 5;case"OPCODE_6":return 6;case"OPCODE_7":return 7;case"OPCODE_8":return 8;case"OPCODE_9":return 9;case"OPCODE_10":return 10;case"OPCODE_11":return 11;case"OPCODE_12":return 12;case"OPCODE_13":return 13;case"OPCODE_14":return 14;case"OPCODE_15":return 15}return 0}});var Gn=L(kr=>{"use strict";kr.toString=function(r){switch(r){case 1:return"IN";case 2:return"CS";case 3:return"CH";case 4:return"HS";case 255:return"ANY"}return"UNKNOWN_"+r};kr.toClass=function(r){switch(r.toUpperCase()){case"IN":return 1;case"CS":return 2;case"CH":return 3;case"HS":return 4;case"ANY":return 255}return 0}});var Yn=L(Mr=>{"use strict";Mr.toString=function(r){switch(r){case 1:return"LLQ";case 2:return"UL";case 3:return"NSID";case 5:return"DAU";case 6:return"DHU";case 7:return"N3U";case 8:return"CLIENT_SUBNET";case 9:return"EXPIRE";case 10:return"COOKIE";case 11:return"TCP_KEEPALIVE";case 12:return"PADDING";case 13:return"CHAIN";case 14:return"KEY_TAG";case 26946:return"DEVICEID"}return r<0?null:`OPTION_${r}`};Mr.toCode=function(r){if(typeof r=="number")return r;if(!r)return-1;switch(r.toUpperCase()){case"OPTION_0":return 0;case"LLQ":return 1;case"UL":return 2;case"NSID":return 3;case"OPTION_4":return 4;case"DAU":return 5;case"DHU":return 6;case"N3U":return 7;case"CLIENT_SUBNET":return 8;case"EXPIRE":return 9;case"COOKIE":return 10;case"TCP_KEEPALIVE":return 11;case"PADDING":return 12;case"CHAIN":return 13;case"KEY_TAG":return 14;case"DEVICEID":return 26946;case"OPTION_65535":return 65535}let e=r.match(/_(\d+)$/);return e?parseInt(e[1],10):-1}});var Wn=L((Qn,qr)=>{var Xn=function(r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.decode=a,r.encode=p,r.familyOf=w,r.name=void 0,r.sizeOf=I,r.v6=r.v4=void 0;let e=/^(\d{1,3}\.){3,3}\d{1,3}$/,n=4,t=/^(::)?(((\d{1,3}\.){3}(\d{1,3}){1})?([0-9a-f]){0,4}:{0,2}){1,8}(::)?$/i,o=16,i={name:"v4",size:n,isFormat:d=>e.test(d),encode(d,l,s){s=~~s,l=l||new Uint8Array(s+n);let g=d.length,E=0;for(let v=0;v<g;){let b=d.charCodeAt(v++);b===46?(l[s++]=E,E=0):E=E*10+(b-48)}return l[s]=E,l},decode(d,l){return l=~~l,`${d[l++]}.${d[l++]}.${d[l++]}.${d[l]}`}};r.v4=i;let c={name:"v6",size:o,isFormat:d=>d.length>0&&t.test(d),encode(d,l,s){s=~~s;let g=s+o,E=-1,v=0,b=0,N=!0,U=!1;l=l||new Uint8Array(s+o);for(let T=0;T<d.length;T++){let A=d.charCodeAt(T);A===58?(N?E!==-1?(s<g&&(l[s]=0),s<g-1&&(l[s+1]=0),s+=2):s<g&&(E=s):(U===!0?(s<g&&(l[s]=b),s++):(s<g&&(l[s]=v>>8),s<g-1&&(l[s+1]=v&255),s+=2),v=0,b=0),N=!0,U=!1):A===46?(s<g&&(l[s]=b),s++,b=0,v=0,N=!1,U=!0):(N=!1,A>=97?A-=87:A>=65?A-=55:(A-=48,b=b*10+A),v=(v<<4)+A)}if(N===!1)U===!0?(s<g&&(l[s]=b),s++):(s<g&&(l[s]=v>>8),s<g-1&&(l[s+1]=v&255),s+=2);else if(E===0)s<g&&(l[s]=0),s<g-1&&(l[s+1]=0),s+=2;else if(E!==-1){s+=2;for(let T=Math.min(s-1,g-1);T>=E+2;T--)l[T]=l[T-2];l[E]=0,l[E+1]=0,E=s}if(E!==s&&E!==-1)for(s>g-2&&(s=g-2);g>E;)l[--g]=s<g&&s>E?l[--s]:0;else for(;s<g;)l[s++]=0;return l},decode(d,l){l=~~l;let s="";for(let g=0;g<o;g+=2)g!==0&&(s+=":"),s+=(d[l+g]<<8|d[l+g+1]).toString(16);return s.replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}};r.v6=c;let u="ip";r.name=u;function I(d){if(i.isFormat(d))return i.size;if(c.isFormat(d))return c.size;throw Error(`Invalid ip address: ${d}`)}function w(d){return I(d)===i.size?1:2}function p(d,l,s){s=~~s;let g=I(d);return typeof l=="function"&&(l=l(s+g)),g===i.size?i.encode(d,l,s):c.encode(d,l,s)}function a(d,l,s){if(l=~~l,s=s||d.length-l,s===i.size)return i.decode(d,l,s);if(s===c.size)return c.decode(d,l,s);throw Error(`Invalid buffer size needs to be ${i.size} for v4 or ${c.size} for v6.`)}return"default"in r?r.default:r}({});typeof define=="function"&&define.amd?define([],function(){return Xn}):typeof qr=="object"&&typeof Qn=="object"&&(qr.exports=Xn)});var fn=L(m=>{"use strict";var y=ce("buffer").Buffer,we=jn(),Go=Kn(),Yo=Hn(),dr=Gn(),zr=Yn(),Ae=Wn(),Xo=0,Jn=32768,$r=32768,Qo=~$r,Zn=32768,Wo=~Zn,h=m.name={};h.encode=function(r,e,n){e||(e=y.alloc(h.encodingLength(r))),n||(n=0);let t=n,o=r.replace(/^\.|\.$/gm,"");if(o.length){let i=o.split(".");for(let c=0;c<i.length;c++){let u=e.write(i[c],n+1);e[n]=u,n+=u+1}}return e[n++]=0,h.encode.bytes=n-t,e};h.encode.bytes=0;h.decode=function(r,e){e||(e=0);let n=[],t=e,o=0,i=0,c=!1;for(;;){if(e>=r.length)throw new Error("Cannot decode name (buffer overflow)");let u=r[e++];if(i+=c?0:1,u===0)break;if(u&192)if((u&192)===192){if(e+1>r.length)throw new Error("Cannot decode name (buffer overflow)");let I=r.readUInt16BE(e-1)-49152;if(I>=t)throw new Error("Cannot decode name (bad pointer)");e=I,t=I,i+=c?0:1,c=!0}else throw new Error("Cannot decode name (bad label)");else{if(e+u>r.length)throw new Error("Cannot decode name (buffer overflow)");if(o+=u+1,o>254)throw new Error("Cannot decode name (name too long)");n.push(r.toString("utf-8",e,e+u)),e+=u,i+=c?0:u}}return h.decode.bytes=i,n.length===0?".":n.join(".")};h.decode.bytes=0;h.encodingLength=function(r){return r==="."||r===".."?1:y.byteLength(r.replace(/^\.|\.$/gm,""))+2};var x={};x.encode=function(r,e,n){e||(e=y.alloc(x.encodingLength(r))),n||(n=0);let t=e.write(r,n+1);return e[n]=t,x.encode.bytes=t+1,e};x.encode.bytes=0;x.decode=function(r,e){e||(e=0);let n=r[e],t=r.toString("utf-8",e+1,e+1+n);return x.decode.bytes=n+1,t};x.decode.bytes=0;x.encodingLength=function(r){return y.byteLength(r)+1};var Z={};Z.encode=function(r,e,n){e||(e=Z.encodingLength(r)),n||(n=0);let t=(r.flags||0)&32767,o=r.type==="response"?Jn:Xo;return e.writeUInt16BE(r.id||0,n),e.writeUInt16BE(t|o,n+2),e.writeUInt16BE(r.questions.length,n+4),e.writeUInt16BE(r.answers.length,n+6),e.writeUInt16BE(r.authorities.length,n+8),e.writeUInt16BE(r.additionals.length,n+10),e};Z.encode.bytes=12;Z.decode=function(r,e){if(e||(e=0),r.length<12)throw new Error("Header must be 12 bytes");let n=r.readUInt16BE(e+2);return{id:r.readUInt16BE(e),type:n&Jn?"response":"query",flags:n&32767,flag_qr:(n>>15&1)===1,opcode:Yo.toString(n>>11&15),flag_aa:(n>>10&1)===1,flag_tc:(n>>9&1)===1,flag_rd:(n>>8&1)===1,flag_ra:(n>>7&1)===1,flag_z:(n>>6&1)===1,flag_ad:(n>>5&1)===1,flag_cd:(n>>4&1)===1,rcode:Go.toString(n&15),questions:new Array(r.readUInt16BE(e+4)),answers:new Array(r.readUInt16BE(e+6)),authorities:new Array(r.readUInt16BE(e+8)),additionals:new Array(r.readUInt16BE(e+10))}};Z.decode.bytes=12;Z.encodingLength=function(){return 12};var ae=m.unknown={};ae.encode=function(r,e,n){return e||(e=y.alloc(ae.encodingLength(r))),n||(n=0),e.writeUInt16BE(r.length,n),r.copy(e,n+2),ae.encode.bytes=r.length+2,e};ae.encode.bytes=0;ae.decode=function(r,e){e||(e=0);let n=r.readUInt16BE(e),t=r.slice(e+2,e+2+n);return ae.decode.bytes=n+2,t};ae.decode.bytes=0;ae.encodingLength=function(r){return r.length+2};var de=m.ns={};de.encode=function(r,e,n){return e||(e=y.alloc(de.encodingLength(r))),n||(n=0),h.encode(r,e,n+2),e.writeUInt16BE(h.encode.bytes,n),de.encode.bytes=h.encode.bytes+2,e};de.encode.bytes=0;de.decode=function(r,e){e||(e=0);let n=r.readUInt16BE(e),t=h.decode(r,e+2);return de.decode.bytes=n+2,t};de.decode.bytes=0;de.encodingLength=function(r){return h.encodingLength(r)+2};var le=m.soa={};le.encode=function(r,e,n){e||(e=y.alloc(le.encodingLength(r))),n||(n=0);let t=n;return n+=2,h.encode(r.mname,e,n),n+=h.encode.bytes,h.encode(r.rname,e,n),n+=h.encode.bytes,e.writeUInt32BE(r.serial||0,n),n+=4,e.writeUInt32BE(r.refresh||0,n),n+=4,e.writeUInt32BE(r.retry||0,n),n+=4,e.writeUInt32BE(r.expire||0,n),n+=4,e.writeUInt32BE(r.minimum||0,n),n+=4,e.writeUInt16BE(n-t-2,t),le.encode.bytes=n-t,e};le.encode.bytes=0;le.decode=function(r,e){e||(e=0);let n=e,t={};return e+=2,t.mname=h.decode(r,e),e+=h.decode.bytes,t.rname=h.decode(r,e),e+=h.decode.bytes,t.serial=r.readUInt32BE(e),e+=4,t.refresh=r.readUInt32BE(e),e+=4,t.retry=r.readUInt32BE(e),e+=4,t.expire=r.readUInt32BE(e),e+=4,t.minimum=r.readUInt32BE(e),e+=4,le.decode.bytes=e-n,t};le.decode.bytes=0;le.encodingLength=function(r){return 22+h.encodingLength(r.mname)+h.encodingLength(r.rname)};var ue=m.txt={};ue.encode=function(r,e,n){Array.isArray(r)||(r=[r]);for(let o=0;o<r.length;o++)if(typeof r[o]=="string"&&(r[o]=y.from(r[o])),!y.isBuffer(r[o]))throw new Error("Must be a Buffer");e||(e=y.alloc(ue.encodingLength(r))),n||(n=0);let t=n;return n+=2,r.forEach(function(o){e[n++]=o.length,o.copy(e,n,0,o.length),n+=o.length}),e.writeUInt16BE(n-t-2,t),ue.encode.bytes=n-t,e};ue.encode.bytes=0;ue.decode=function(r,e){e||(e=0);let n=e,t=r.readUInt16BE(e);e+=2;let o=[];for(;t>0;){let i=r[e++];if(--t,t<i)throw new Error("Buffer overflow");o.push(r.slice(e,e+i)),e+=i,t-=i}return ue.decode.bytes=e-n,o};ue.decode.bytes=0;ue.encodingLength=function(r){Array.isArray(r)||(r=[r]);let e=2;return r.forEach(function(n){typeof n=="string"?e+=y.byteLength(n)+1:e+=n.length+1}),e};var he=m.null={};he.encode=function(r,e,n){e||(e=y.alloc(he.encodingLength(r))),n||(n=0),typeof r=="string"&&(r=y.from(r)),r||(r=y.alloc(0));let t=n;n+=2;let o=r.length;return r.copy(e,n,0,o),n+=o,e.writeUInt16BE(n-t-2,t),he.encode.bytes=n-t,e};he.encode.bytes=0;he.decode=function(r,e){e||(e=0);let n=e,t=r.readUInt16BE(e);e+=2;let o=r.slice(e,e+t);return e+=t,he.decode.bytes=e-n,o};he.decode.bytes=0;he.encodingLength=function(r){return r?(y.isBuffer(r)?r.length:y.byteLength(r))+2:2};var pe=m.hinfo={};pe.encode=function(r,e,n){e||(e=y.alloc(pe.encodingLength(r))),n||(n=0);let t=n;return n+=2,x.encode(r.cpu,e,n),n+=x.encode.bytes,x.encode(r.os,e,n),n+=x.encode.bytes,e.writeUInt16BE(n-t-2,t),pe.encode.bytes=n-t,e};pe.encode.bytes=0;pe.decode=function(r,e){e||(e=0);let n=e,t={};return e+=2,t.cpu=x.decode(r,e),e+=x.decode.bytes,t.os=x.decode(r,e),e+=x.decode.bytes,pe.decode.bytes=e-n,t};pe.decode.bytes=0;pe.encodingLength=function(r){return x.encodingLength(r.cpu)+x.encodingLength(r.os)+2};var W=m.ptr={},Jo=m.cname=W,Zo=m.dname=W;W.encode=function(r,e,n){return e||(e=y.alloc(W.encodingLength(r))),n||(n=0),h.encode(r,e,n+2),e.writeUInt16BE(h.encode.bytes,n),W.encode.bytes=h.encode.bytes+2,e};W.encode.bytes=0;W.decode=function(r,e){e||(e=0);let n=h.decode(r,e+2);return W.decode.bytes=h.decode.bytes+2,n};W.decode.bytes=0;W.encodingLength=function(r){return h.encodingLength(r)+2};var ge=m.srv={};ge.encode=function(r,e,n){e||(e=y.alloc(ge.encodingLength(r))),n||(n=0),e.writeUInt16BE(r.priority||0,n+2),e.writeUInt16BE(r.weight||0,n+4),e.writeUInt16BE(r.port||0,n+6),h.encode(r.target,e,n+8);let t=h.encode.bytes+6;return e.writeUInt16BE(t,n),ge.encode.bytes=t+2,e};ge.encode.bytes=0;ge.decode=function(r,e){e||(e=0);let n=r.readUInt16BE(e),t={};return t.priority=r.readUInt16BE(e+2),t.weight=r.readUInt16BE(e+4),t.port=r.readUInt16BE(e+6),t.target=h.decode(r,e+8),ge.decode.bytes=n+2,t};ge.decode.bytes=0;ge.encodingLength=function(r){return 8+h.encodingLength(r.target)};var j=m.caa={};j.ISSUER_CRITICAL=128;j.encode=function(r,e,n){let t=j.encodingLength(r);return e||(e=y.alloc(j.encodingLength(r))),n||(n=0),r.issuerCritical&&(r.flags=j.ISSUER_CRITICAL),e.writeUInt16BE(t-2,n),n+=2,e.writeUInt8(r.flags||0,n),n+=1,x.encode(r.tag,e,n),n+=x.encode.bytes,e.write(r.value,n),n+=y.byteLength(r.value),j.encode.bytes=t,e};j.encode.bytes=0;j.decode=function(r,e){e||(e=0);let n=r.readUInt16BE(e);e+=2;let t=e,o={};return o.flags=r.readUInt8(e),e+=1,o.tag=x.decode(r,e),e+=x.decode.bytes,o.value=r.toString("utf-8",e,t+n),o.issuerCritical=!!(o.flags&j.ISSUER_CRITICAL),j.decode.bytes=n+2,o};j.decode.bytes=0;j.encodingLength=function(r){return x.encodingLength(r.tag)+x.encodingLength(r.value)+2};var ve=m.mx={};ve.encode=function(r,e,n){e||(e=y.alloc(ve.encodingLength(r))),n||(n=0);let t=n;return n+=2,e.writeUInt16BE(r.preference||0,n),n+=2,h.encode(r.exchange,e,n),n+=h.encode.bytes,e.writeUInt16BE(n-t-2,t),ve.encode.bytes=n-t,e};ve.encode.bytes=0;ve.decode=function(r,e){e||(e=0);let n=e,t={};return e+=2,t.preference=r.readUInt16BE(e),e+=2,t.exchange=h.decode(r,e),e+=h.decode.bytes,ve.decode.bytes=e-n,t};ve.encodingLength=function(r){return 4+h.encodingLength(r.exchange)};var me=m.a={};me.encode=function(r,e,n){return e||(e=y.alloc(me.encodingLength(r))),n||(n=0),e.writeUInt16BE(4,n),n+=2,Ae.v4.encode(r,e,n),me.encode.bytes=6,e};me.encode.bytes=0;me.decode=function(r,e){e||(e=0),e+=2;let n=Ae.v4.decode(r,e);return me.decode.bytes=6,n};me.decode.bytes=0;me.encodingLength=function(){return 6};var ye=m.aaaa={};ye.encode=function(r,e,n){return e||(e=y.alloc(ye.encodingLength(r))),n||(n=0),e.writeUInt16BE(16,n),n+=2,Ae.v6.encode(r,e,n),ye.encode.bytes=18,e};ye.encode.bytes=0;ye.decode=function(r,e){e||(e=0),e+=2;let n=Ae.v6.decode(r,e);return ye.decode.bytes=18,n};ye.decode.bytes=0;ye.encodingLength=function(){return 18};var k=m.option={};k.encode=function(r,e,n){e||(e=y.alloc(k.encodingLength(r))),n||(n=0);let t=n,o=zr.toCode(r.code);if(e.writeUInt16BE(o,n),n+=2,r.data)e.writeUInt16BE(r.data.length,n),n+=2,r.data.copy(e,n),n+=r.data.length;else switch(o){case 8:let i=r.sourcePrefixLength||0,c=r.family||Ae.familyOf(r.ip),u=Ae.encode(r.ip,y.alloc),I=Math.ceil(i/8);e.writeUInt16BE(I+4,n),n+=2,e.writeUInt16BE(c,n),n+=2,e.writeUInt8(i,n++),e.writeUInt8(r.scopePrefixLength||0,n++),u.copy(e,n,0,I),n+=I;break;case 11:r.timeout?(e.writeUInt16BE(2,n),n+=2,e.writeUInt16BE(r.timeout,n),n+=2):(e.writeUInt16BE(0,n),n+=2);break;case 12:let w=r.length||0;e.writeUInt16BE(w,n),n+=2,e.fill(0,n,n+w),n+=w;break;case 14:let p=r.tags.length*2;e.writeUInt16BE(p,n),n+=2;for(let a of r.tags)e.writeUInt16BE(a,n),n+=2;break;default:throw new Error(`Unknown roption code: ${r.code}`)}return k.encode.bytes=n-t,e};k.encode.bytes=0;k.decode=function(r,e){e||(e=0);let n={};n.code=r.readUInt16BE(e),n.type=zr.toString(n.code),e+=2;let t=r.readUInt16BE(e);switch(e+=2,n.data=r.slice(e,e+t),n.code){case 8:n.family=r.readUInt16BE(e),e+=2,n.sourcePrefixLength=r.readUInt8(e++),n.scopePrefixLength=r.readUInt8(e++);let o=y.alloc(n.family===1?4:16);r.copy(o,0,e,e+t-4),n.ip=Ae.decode(o);break;case 11:t>0&&(n.timeout=r.readUInt16BE(e),e+=2);break;case 14:n.tags=[];for(let i=0;i<t;i+=2)n.tags.push(r.readUInt16BE(e)),e+=2}return k.decode.bytes=t+4,n};k.decode.bytes=0;k.encodingLength=function(r){if(r.data)return r.data.length+4;switch(zr.toCode(r.code)){case 8:let n=r.sourcePrefixLength||0;return Math.ceil(n/8)+8;case 11:return typeof r.timeout=="number"?6:4;case 12:return r.length+4;case 14:return 4+r.tags.length*2}throw new Error(`Unknown roption code: ${r.code}`)};var H=m.opt={};H.encode=function(r,e,n){e||(e=y.alloc(H.encodingLength(r))),n||(n=0);let t=n,o=_e(r,k);return e.writeUInt16BE(o,n),n=Ve(r,k,e,n+2),H.encode.bytes=n-t,e};H.encode.bytes=0;H.decode=function(r,e){e||(e=0);let n=e,t=[],o=r.readUInt16BE(e);e+=2;let i=0;for(;o>0;)t[i++]=k.decode(r,e),e+=k.decode.bytes,o-=k.decode.bytes;return H.decode.bytes=e-n,t};H.decode.bytes=0;H.encodingLength=function(r){return 2+_e(r||[],k)};var _=m.dnskey={};_.PROTOCOL_DNSSEC=3;_.ZONE_KEY=128;_.SECURE_ENTRYPOINT=32768;_.encode=function(r,e,n){e||(e=y.alloc(_.encodingLength(r))),n||(n=0);let t=n,o=r.key;if(!y.isBuffer(o))throw new Error("Key must be a Buffer");return n+=2,e.writeUInt16BE(r.flags,n),n+=2,e.writeUInt8(_.PROTOCOL_DNSSEC,n),n+=1,e.writeUInt8(r.algorithm,n),n+=1,o.copy(e,n,0,o.length),n+=o.length,_.encode.bytes=n-t,e.writeUInt16BE(_.encode.bytes-2,t),e};_.encode.bytes=0;_.decode=function(r,e){e||(e=0);let n=e;var t={},o=r.readUInt16BE(e);if(e+=2,t.flags=r.readUInt16BE(e),e+=2,r.readUInt8(e)!==_.PROTOCOL_DNSSEC)throw new Error("Protocol must be 3");return e+=1,t.algorithm=r.readUInt8(e),e+=1,t.key=r.slice(e,n+o+2),e+=t.key.length,_.decode.bytes=e-n,t};_.decode.bytes=0;_.encodingLength=function(r){return 6+y.byteLength(r.key)};var f=m.rrsig={};f.encode=function(r,e,n){e||(e=y.alloc(f.encodingLength(r))),n||(n=0);let t=n,o=r.signature;if(!y.isBuffer(o))throw new Error("Signature must be a Buffer");return n+=2,e.writeUInt16BE(we.toType(r.typeCovered),n),n+=2,e.writeUInt8(r.algorithm,n),n+=1,e.writeUInt8(r.labels,n),n+=1,e.writeUInt32BE(r.originalTTL,n),n+=4,e.writeUInt32BE(r.expiration,n),n+=4,e.writeUInt32BE(r.inception,n),n+=4,e.writeUInt16BE(r.keyTag,n),n+=2,h.encode(r.signersName,e,n),n+=h.encode.bytes,o.copy(e,n,0,o.length),n+=o.length,f.encode.bytes=n-t,e.writeUInt16BE(f.encode.bytes-2,t),e};f.encode.bytes=0;f.decode=function(r,e){e||(e=0);let n=e;var t={},o=r.readUInt16BE(e);return e+=2,t.typeCovered=we.toString(r.readUInt16BE(e)),e+=2,t.algorithm=r.readUInt8(e),e+=1,t.labels=r.readUInt8(e),e+=1,t.originalTTL=r.readUInt32BE(e),e+=4,t.expiration=r.readUInt32BE(e),e+=4,t.inception=r.readUInt32BE(e),e+=4,t.keyTag=r.readUInt16BE(e),e+=2,t.signersName=h.decode(r,e),e+=h.decode.bytes,t.signature=r.slice(e,n+o+2),e+=t.signature.length,f.decode.bytes=e-n,t};f.decode.bytes=0;f.encodingLength=function(r){return 20+h.encodingLength(r.signersName)+y.byteLength(r.signature)};var ee=m.rp={};ee.encode=function(r,e,n){e||(e=y.alloc(ee.encodingLength(r))),n||(n=0);let t=n;return n+=2,h.encode(r.mbox||".",e,n),n+=h.encode.bytes,h.encode(r.txt||".",e,n),n+=h.encode.bytes,ee.encode.bytes=n-t,e.writeUInt16BE(ee.encode.bytes-2,t),e};ee.encode.bytes=0;ee.decode=function(r,e){e||(e=0);let n=e,t={};return e+=2,t.mbox=h.decode(r,e)||".",e+=h.decode.bytes,t.txt=h.decode(r,e)||".",e+=h.decode.bytes,ee.decode.bytes=e-n,t};ee.decode.bytes=0;ee.encodingLength=function(r){return 2+h.encodingLength(r.mbox||".")+h.encodingLength(r.txt||".")};var P={};P.encode=function(r,e,n){e||(e=y.alloc(P.encodingLength(r))),n||(n=0);let t=n;for(var o=[],i=0;i<r.length;i++){var c=we.toType(r[i]);o[c>>8]===void 0&&(o[c>>8]=[]),o[c>>8][c>>3&31]|=1<<7-(c&7)}for(i=0;i<o.length;i++)if(o[i]!==void 0){var u=y.from(o[i]);e.writeUInt8(i,n),n+=1,e.writeUInt8(u.length,n),n+=1,u.copy(e,n),n+=u.length}return P.encode.bytes=n-t,e};P.encode.bytes=0;P.decode=function(r,e,n){e||(e=0);let t=e;for(var o=[];e-t<n;){var i=r.readUInt8(e);e+=1;var c=r.readUInt8(e);e+=1;for(var u=0;u<c;u++)for(var I=r.readUInt8(e+u),w=0;w<8;w++)if(I&1<<7-w){var p=we.toString(i<<8|u<<3|w);o.push(p)}e+=c}return P.decode.bytes=e-t,o};P.decode.bytes=0;P.encodingLength=function(r){for(var e=[],n=0;n<r.length;n++){var t=we.toType(r[n]);e[t>>8]=Math.max(e[t>>8]||0,t&255)}var o=0;for(n=0;n<e.length;n++)e[n]!==void 0&&(o+=2+Math.ceil((e[n]+1)/8));return o};var re=m.nsec={};re.encode=function(r,e,n){e||(e=y.alloc(re.encodingLength(r))),n||(n=0);let t=n;return n+=2,h.encode(r.nextDomain,e,n),n+=h.encode.bytes,P.encode(r.rrtypes,e,n),n+=P.encode.bytes,re.encode.bytes=n-t,e.writeUInt16BE(re.encode.bytes-2,t),e};re.encode.bytes=0;re.decode=function(r,e){e||(e=0);let n=e;var t={},o=r.readUInt16BE(e);return e+=2,t.nextDomain=h.decode(r,e),e+=h.decode.bytes,t.rrtypes=P.decode(r,e,o-(e-n)),e+=P.decode.bytes,re.decode.bytes=e-n,t};re.decode.bytes=0;re.encodingLength=function(r){return 2+h.encodingLength(r.nextDomain)+P.encodingLength(r.rrtypes)};var ne=m.nsec3={};ne.encode=function(r,e,n){e||(e=y.alloc(ne.encodingLength(r))),n||(n=0);let t=n,o=r.salt;if(!y.isBuffer(o))throw new Error("salt must be a Buffer");let i=r.nextDomain;if(!y.isBuffer(i))throw new Error("nextDomain must be a Buffer");return n+=2,e.writeUInt8(r.algorithm,n),n+=1,e.writeUInt8(r.flags,n),n+=1,e.writeUInt16BE(r.iterations,n),n+=2,e.writeUInt8(o.length,n),n+=1,o.copy(e,n,0,o.length),n+=o.length,e.writeUInt8(i.length,n),n+=1,i.copy(e,n,0,i.length),n+=i.length,P.encode(r.rrtypes,e,n),n+=P.encode.bytes,ne.encode.bytes=n-t,e.writeUInt16BE(ne.encode.bytes-2,t),e};ne.encode.bytes=0;ne.decode=function(r,e){e||(e=0);let n=e;var t={},o=r.readUInt16BE(e);e+=2,t.algorithm=r.readUInt8(e),e+=1,t.flags=r.readUInt8(e),e+=1,t.iterations=r.readUInt16BE(e),e+=2;let i=r.readUInt8(e);e+=1,t.salt=r.slice(e,e+i),e+=i;let c=r.readUInt8(e);return e+=1,t.nextDomain=r.slice(e,e+c),e+=c,t.rrtypes=P.decode(r,e,o-(e-n)),e+=P.decode.bytes,ne.decode.bytes=e-n,t};ne.decode.bytes=0;ne.encodingLength=function(r){return 8+r.salt.length+r.nextDomain.length+P.encodingLength(r.rrtypes)};var te=m.ds={};te.encode=function(r,e,n){e||(e=y.alloc(te.encodingLength(r))),n||(n=0);let t=n,o=r.digest;if(!y.isBuffer(o))throw new Error("Digest must be a Buffer");return n+=2,e.writeUInt16BE(r.keyTag,n),n+=2,e.writeUInt8(r.algorithm,n),n+=1,e.writeUInt8(r.digestType,n),n+=1,o.copy(e,n,0,o.length),n+=o.length,te.encode.bytes=n-t,e.writeUInt16BE(te.encode.bytes-2,t),e};te.encode.bytes=0;te.decode=function(r,e){e||(e=0);let n=e;var t={},o=r.readUInt16BE(e);return e+=2,t.keyTag=r.readUInt16BE(e),e+=2,t.algorithm=r.readUInt8(e),e+=1,t.digestType=r.readUInt8(e),e+=1,t.digest=r.slice(e,n+o+2),e+=t.digest.length,te.decode.bytes=e-n,t};te.decode.bytes=0;te.encodingLength=function(r){return 6+y.byteLength(r.digest)};var K=m.sshfp={};K.getFingerprintLengthForHashType=function(e){switch(e){case 1:return 20;case 2:return 32}};K.encode=function(e,n,t){n||(n=y.alloc(K.encodingLength(e))),t||(t=0);let o=t;t+=2,n[t]=e.algorithm,t+=1,n[t]=e.hash,t+=1;let i=y.from(e.fingerprint.toUpperCase(),"hex");if(i.length!==K.getFingerprintLengthForHashType(e.hash))throw new Error("Invalid fingerprint length");return i.copy(n,t),t+=i.byteLength,K.encode.bytes=t-o,n.writeUInt16BE(K.encode.bytes-2,o),n};K.encode.bytes=0;K.decode=function(e,n){n||(n=0);let t=n,o={};n+=2,o.algorithm=e[n],n+=1,o.hash=e[n],n+=1;let i=K.getFingerprintLengthForHashType(o.hash);return o.fingerprint=e.slice(n,n+i).toString("hex").toUpperCase(),n+=i,K.decode.bytes=n-t,o};K.decode.bytes=0;K.encodingLength=function(r){return 4+y.from(r.fingerprint,"hex").byteLength};var oe=m.naptr={};oe.encode=function(r,e,n){e||(e=y.alloc(oe.encodingLength(r))),n||(n=0);let t=n;return n+=2,e.writeUInt16BE(r.order||0,n),n+=2,e.writeUInt16BE(r.preference||0,n),n+=2,x.encode(r.flags,e,n),n+=x.encode.bytes,x.encode(r.services,e,n),n+=x.encode.bytes,x.encode(r.regexp,e,n),n+=x.encode.bytes,h.encode(r.replacement,e,n),n+=h.encode.bytes,oe.encode.bytes=n-t,e.writeUInt16BE(oe.encode.bytes-2,t),e};oe.encode.bytes=0;oe.decode=function(r,e){e||(e=0);let n=e,t={};return e+=2,t.order=r.readUInt16BE(e),e+=2,t.preference=r.readUInt16BE(e),e+=2,t.flags=x.decode(r,e),e+=x.decode.bytes,t.services=x.decode(r,e),e+=x.decode.bytes,t.regexp=x.decode(r,e),e+=x.decode.bytes,t.replacement=h.decode(r,e),e+=h.decode.bytes,oe.decode.bytes=e-n,t};oe.decode.bytes=0;oe.encodingLength=function(r){return x.encodingLength(r.flags)+x.encodingLength(r.services)+x.encodingLength(r.regexp)+h.encodingLength(r.replacement)+6};var ie=m.tlsa={};ie.encode=function(r,e,n){e||(e=y.alloc(ie.encodingLength(r))),n||(n=0);let t=n,o=r.certificate;if(!y.isBuffer(o))throw new Error("Certificate must be a Buffer");return n+=2,e.writeUInt8(r.usage,n),n+=1,e.writeUInt8(r.selector,n),n+=1,e.writeUInt8(r.matchingType,n),n+=1,o.copy(e,n,0,o.length),n+=o.length,ie.encode.bytes=n-t,e.writeUInt16BE(ie.encode.bytes-2,t),e};ie.encode.bytes=0;ie.decode=function(r,e){e||(e=0);let n=e,t={},o=r.readUInt16BE(e);return e+=2,t.usage=r.readUInt8(e),e+=1,t.selector=r.readUInt8(e),e+=1,t.matchingType=r.readUInt8(e),e+=1,t.certificate=r.slice(e,n+o+2),e+=t.certificate.length,ie.decode.bytes=e-n,t};ie.decode.bytes=0;ie.encodingLength=function(r){return 5+y.byteLength(r.certificate)};var Vr=m.record=function(r){switch(r.toUpperCase()){case"A":return me;case"PTR":return W;case"CNAME":return Jo;case"DNAME":return Zo;case"TXT":return ue;case"NULL":return he;case"AAAA":return ye;case"SRV":return ge;case"HINFO":return pe;case"CAA":return j;case"NS":return de;case"SOA":return le;case"MX":return ve;case"OPT":return H;case"DNSKEY":return _;case"RRSIG":return f;case"RP":return ee;case"NSEC":return re;case"NSEC3":return ne;case"SSHFP":return K;case"DS":return te;case"NAPTR":return oe;case"TLSA":return ie}return ae},D=m.answer={};D.encode=function(r,e,n){e||(e=y.alloc(D.encodingLength(r))),n||(n=0);let t=n;if(h.encode(r.name,e,n),n+=h.encode.bytes,e.writeUInt16BE(we.toType(r.type),n),r.type.toUpperCase()==="OPT"){if(r.name!==".")throw new Error("OPT name must be root.");e.writeUInt16BE(r.udpPayloadSize||4096,n+2),e.writeUInt8(r.extendedRcode||0,n+4),e.writeUInt8(r.ednsVersion||0,n+5),e.writeUInt16BE(r.flags||0,n+6),n+=8,H.encode(r.options||[],e,n),n+=H.encode.bytes}else{let o=dr.toClass(r.class===void 0?"IN":r.class);r.flush&&(o|=$r),e.writeUInt16BE(o,n+2),e.writeUInt32BE(r.ttl||0,n+4),n+=8;let i=Vr(r.type);i.encode(r.data,e,n),n+=i.encode.bytes}return D.encode.bytes=n-t,e};D.encode.bytes=0;D.decode=function(r,e){e||(e=0);let n={},t=e;if(n.name=h.decode(r,e),e+=h.decode.bytes,n.type=we.toString(r.readUInt16BE(e)),n.type==="OPT")n.udpPayloadSize=r.readUInt16BE(e+2),n.extendedRcode=r.readUInt8(e+4),n.ednsVersion=r.readUInt8(e+5),n.flags=r.readUInt16BE(e+6),n.flag_do=(n.flags>>15&1)===1,n.options=H.decode(r,e+8),e+=8+H.decode.bytes;else{let o=r.readUInt16BE(e+2);n.ttl=r.readUInt32BE(e+4),n.class=dr.toString(o&Qo),n.flush=!!(o&$r);let i=Vr(n.type);n.data=i.decode(r,e+8),e+=8+i.decode.bytes}return D.decode.bytes=e-t,n};D.decode.bytes=0;D.encodingLength=function(r){let e=r.data!==null&&r.data!==void 0?r.data:r.options;return h.encodingLength(r.name)+8+Vr(r.type).encodingLength(e)};var J=m.question={};J.encode=function(r,e,n){e||(e=y.alloc(J.encodingLength(r))),n||(n=0);let t=n;return h.encode(r.name,e,n),n+=h.encode.bytes,e.writeUInt16BE(we.toType(r.type),n),n+=2,e.writeUInt16BE(dr.toClass(r.class===void 0?"IN":r.class),n),n+=2,J.encode.bytes=n-t,r};J.encode.bytes=0;J.decode=function(r,e){e||(e=0);let n=e,t={};return t.name=h.decode(r,e),e+=h.decode.bytes,t.type=we.toString(r.readUInt16BE(e)),e+=2,t.class=dr.toString(r.readUInt16BE(e)),e+=2,!!(t.class&Zn)&&(t.class&=Wo),J.decode.bytes=e-n,t};J.decode.bytes=0;J.encodingLength=function(r){return h.encodingLength(r.name)+4};m.AUTHORITATIVE_ANSWER=1024;m.TRUNCATED_RESPONSE=512;m.RECURSION_DESIRED=256;m.RECURSION_AVAILABLE=128;m.AUTHENTIC_DATA=32;m.CHECKING_DISABLED=16;m.DNSSEC_OK=32768;m.encode=function(r,e,n){let t=!e;t&&(e=y.alloc(m.encodingLength(r))),n||(n=0);let o=n;return r.questions||(r.questions=[]),r.answers||(r.answers=[]),r.authorities||(r.authorities=[]),r.additionals||(r.additionals=[]),Z.encode(r,e,n),n+=Z.encode.bytes,n=Ve(r.questions,J,e,n),n=Ve(r.answers,D,e,n),n=Ve(r.authorities,D,e,n),n=Ve(r.additionals,D,e,n),m.encode.bytes=n-o,t&&m.encode.bytes!==e.length?e.slice(0,m.encode.bytes):e};m.encode.bytes=0;m.decode=function(r,e){e||(e=0);let n=e,t=Z.decode(r,e);return e+=Z.decode.bytes,e=ar(t.questions,J,r,e),e=ar(t.answers,D,r,e),e=ar(t.authorities,D,r,e),e=ar(t.additionals,D,r,e),m.decode.bytes=e-n,t};m.decode.bytes=0;m.encodingLength=function(r){return Z.encodingLength(r)+_e(r.questions||[],J)+_e(r.answers||[],D)+_e(r.authorities||[],D)+_e(r.additionals||[],D)};m.streamEncode=function(r){let e=m.encode(r),n=y.alloc(2);n.writeUInt16BE(e.byteLength);let t=y.concat([n,e]);return m.streamEncode.bytes=t.byteLength,t};m.streamEncode.bytes=0;m.streamDecode=function(r){let e=r.readUInt16BE(0);if(r.byteLength<e+2)return null;let n=m.decode(r.slice(2));return m.streamDecode.bytes=m.decode.bytes,n};m.streamDecode.bytes=0;function _e(r,e){let n=0;for(let t=0;t<r.length;t++)n+=e.encodingLength(r[t]);return n}function Ve(r,e,n,t){for(let o=0;o<r.length;o++)e.encode(r[o],n,t),t+=e.encode.bytes;return t}function ar(r,e,n,t){for(let o=0;o<r.length;o++)r[o]=e.decode(n,t),t+=e.decode.bytes;return t}});var nt=L((yc,rt)=>{"use strict";var et=oi;process.nextTick(ti,42);rt.exports=fo;function fo(r){var e=t;return n;function n(o){e(o||ri)}function t(o){var i=[o];e=c,r(u);function c(I){i.push(I)}function u(I){var w=arguments;for(e=ei(I)?t:p;i.length;)p(i.shift());function p(a){et(ni,a,w)}}}}function ei(r){return Object.prototype.toString.call(r)==="[object Error]"}function ri(){}function ni(r,e){r.apply(null,e)}function ti(r){r===42&&(et=process.nextTick)}function oi(r,e,n){process.nextTick(function(){r(e,n)})}});var it=L((wc,ot)=>{var jr=fn(),ii=ce("dgram"),si=nt(),ci=ce("events"),Hr=ce("os"),Kr=function(){};ot.exports=function(r){r||(r={});var e=new ci.EventEmitter,n=typeof r.port=="number"?r.port:5353,t=r.type||"udp4",o=r.ip||r.host||(t==="udp4"?"224.0.0.251":null),i={address:o,port:n},c={},u=!1,I=null;if(t==="udp6"&&(!o||!r.interface))throw new Error("For IPv6 multicast you must specify `ip` and `interface`");var w=r.socket||ii.createSocket({type:t,reuseAddr:r.reuseAddr!==!1,toString:function(){return t}});w.on("error",function(a){a.code==="EACCES"||a.code==="EADDRINUSE"?e.emit("error",a):e.emit("warning",a)}),w.on("message",function(a,d){try{a=jr.decode(a)}catch(l){e.emit("warning",l);return}e.emit("packet",a,d),a.type==="query"&&e.emit("query",a,d),a.type==="response"&&e.emit("response",a,d)}),w.on("listening",function(){n||(n=i.port=w.address().port),r.multicast!==!1&&(e.update(),I=setInterval(e.update,5e3),w.setMulticastTTL(r.ttl||255),w.setMulticastLoopback(r.loopback!==!1))});var p=si(function(a){if(!n||r.bind===!1)return a(null);w.once("error",a),w.bind(n,r.bind||r.interface,function(){w.removeListener("error",a),a(null)})});return p(function(a){if(a)return e.emit("error",a);e.emit("ready")}),e.send=function(a,d,l){if(typeof d=="function")return e.send(a,null,d);l||(l=Kr),d?!d.host&&!d.address&&(d.address=i.address):d=i,p(s);function s(g){if(u)return l();if(g)return l(g);var E=jr.encode(a);w.send(E,0,E.length,d.port,d.address||d.host,l)}},e.response=e.respond=function(a,d,l){Array.isArray(a)&&(a={answers:a}),a.type="response",a.flags=(a.flags||0)|jr.AUTHORITATIVE_ANSWER,e.send(a,d,l)},e.query=function(a,d,l,s){if(typeof d=="function")return e.query(a,null,null,d);if(typeof d=="object"&&d&&d.port)return e.query(a,null,d,l);if(typeof l=="function")return e.query(a,d,null,l);s||(s=Kr),typeof a=="string"&&(a=[{name:a,type:d||"ANY"}]),Array.isArray(a)&&(a={type:"query",questions:a}),a.type="query",e.send(a,l,s)},e.destroy=function(a){if(a||(a=Kr),u)return process.nextTick(a);u=!0,clearInterval(I);for(var d in c)try{w.dropMembership(o,d)}catch{}c={},w.close(a)},e.update=function(){for(var a=r.interface?[].concat(r.interface):di(),d=!1,l=0;l<a.length;l++){var s=a[l];if(!c[s])try{w.addMembership(o,s),c[s]=!0,d=!0}catch(g){e.emit("warning",g)}}if(d){if(w.setMulticastInterface)try{w.setMulticastInterface(r.interface||ai())}catch(g){e.emit("warning",g)}e.emit("networkInterface")}},e};function ai(){for(var r=Hr.networkInterfaces(),e=Object.keys(r),n=0;n<e.length;n++)for(var t=r[e[n]],o=0;o<t.length;o++){var i=t[o];if(tt(i.family)&&!i.internal)return Hr.platform()==="darwin"&&e[n]==="en0"?i.address:"0.0.0.0"}return"127.0.0.1"}function di(){for(var r=Hr.networkInterfaces(),e=Object.keys(r),n=[],t=0;t<e.length;t++)for(var o=r[e[t]],i=0;i<o.length;i++){var c=o[i];if(tt(c.family)){n.push(c.address);break}}return n}function tt(r){return r===4||r==="IPv4"}});var At=L((ga,Ut)=>{Ut.exports=dn;var St=128,rs=127,ns=~rs,ts=Math.pow(2,31);function dn(r,e,n){if(Number.MAX_SAFE_INTEGER&&r>Number.MAX_SAFE_INTEGER)throw dn.bytes=0,new RangeError("Could not encode varint");e=e||[],n=n||0;for(var t=n;r>=ts;)e[n++]=r&255|St,r/=128;for(;r&ns;)e[n++]=r&255|St,r>>>=7;return e[n]=r|0,dn.bytes=n-t+1,e}});var Lt=L((ma,Tt)=>{Tt.exports=ln;var os=128,Ot=127;function ln(r,t){var n=0,t=t||0,o=0,i=t,c,u=r.length;do{if(i>=u||o>49)throw ln.bytes=0,new RangeError("Could not decode varint");c=r[i++],n+=o<28?(c&Ot)<<o:(c&Ot)*Math.pow(2,o),o+=7}while(c>=os);return ln.bytes=i-t,n}});var Nt=L((ya,Bt)=>{var is=Math.pow(2,7),ss=Math.pow(2,14),cs=Math.pow(2,21),as=Math.pow(2,28),ds=Math.pow(2,35),ls=Math.pow(2,42),us=Math.pow(2,49),hs=Math.pow(2,56),ps=Math.pow(2,63);Bt.exports=function(r){return r<is?1:r<ss?2:r<cs?3:r<as?4:r<ds?5:r<ls?6:r<us?7:r<hs?8:r<ps?9:10}});var mr=L((wa,Pt)=>{Pt.exports={encode:At(),decode:Lt(),encodingLength:Nt()}});var js={};z(js,{mdns:()=>Vs});var Un=Symbol.for("@libp2p/peer-discovery");var rr=class extends EventTarget{#e=new Map;listenerCount(e){let n=this.#e.get(e);return n==null?0:n.length}addEventListener(e,n,t){super.addEventListener(e,n,t);let o=this.#e.get(e);o==null&&(o=[],this.#e.set(e,o)),o.push({callback:n,once:(t!==!0&&t!==!1&&t?.once)??!1})}removeEventListener(e,n,t){super.removeEventListener(e.toString(),n??null,t);let o=this.#e.get(e);o!=null&&(o=o.filter(({callback:i})=>i!==n),this.#e.set(e,o))}dispatchEvent(e){let n=super.dispatchEvent(e),t=this.#e.get(e.type);return t==null||(t=t.filter(({once:o})=>!o),this.#e.set(e.type,t)),n}safeDispatchEvent(e,n){return this.dispatchEvent(new nr(e,n))}},Cr=class extends Event{detail;constructor(e,n){super(e,n),this.detail=n?.detail}},nr=globalThis.CustomEvent??Cr;var V=Be(_n(),1);var Br={};z(Br,{base32:()=>Q,base32hex:()=>_o,base32hexpad:()=>Mo,base32hexpadupper:()=>qo,base32hexupper:()=>ko,base32pad:()=>Do,base32padupper:()=>Fo,base32upper:()=>Ro,base32z:()=>zo});function To(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var n=new Uint8Array(256),t=0;t<n.length;t++)n[t]=255;for(var o=0;o<r.length;o++){var i=r.charAt(o),c=i.charCodeAt(0);if(n[c]!==255)throw new TypeError(i+" is ambiguous");n[c]=o}var u=r.length,I=r.charAt(0),w=Math.log(u)/Math.log(256),p=Math.log(256)/Math.log(u);function a(s){if(s instanceof Uint8Array||(ArrayBuffer.isView(s)?s=new Uint8Array(s.buffer,s.byteOffset,s.byteLength):Array.isArray(s)&&(s=Uint8Array.from(s))),!(s instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(s.length===0)return"";for(var g=0,E=0,v=0,b=s.length;v!==b&&s[v]===0;)v++,g++;for(var N=(b-v)*p+1>>>0,U=new Uint8Array(N);v!==b;){for(var T=s[v],A=0,q=N-1;(T!==0||A<E)&&q!==-1;q--,A++)T+=256*U[q]>>>0,U[q]=T%u>>>0,T=T/u>>>0;if(T!==0)throw new Error("Non-zero carry");E=A,v++}for(var G=N-E;G!==N&&U[G]===0;)G++;for(var Le=I.repeat(g);G<N;++G)Le+=r.charAt(U[G]);return Le}function d(s){if(typeof s!="string")throw new TypeError("Expected String");if(s.length===0)return new Uint8Array;var g=0;if(s[g]!==" "){for(var E=0,v=0;s[g]===I;)E++,g++;for(var b=(s.length-g)*w+1>>>0,N=new Uint8Array(b);s[g];){var U=n[s.charCodeAt(g)];if(U===255)return;for(var T=0,A=b-1;(U!==0||T<v)&&A!==-1;A--,T++)U+=u*N[A]>>>0,N[A]=U%256>>>0,U=U/256>>>0;if(U!==0)throw new Error("Non-zero carry");v=T,g++}if(s[g]!==" "){for(var q=b-v;q!==b&&N[q]===0;)q++;for(var G=new Uint8Array(E+(b-q)),Le=E;q!==b;)G[Le++]=N[q++];return G}}}function l(s){var g=d(s);if(g)return g;throw new Error(`Non-${e} character`)}return{encode:a,decodeUnsafe:d,decode:l}}var Lo=To,Bo=Lo,kn=Bo;var fs=new Uint8Array(0);var Mn=(r,e)=>{if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let n=0;n<r.byteLength;n++)if(r[n]!==e[n])return!1;return!0},Y=r=>{if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")};var qn=r=>new TextEncoder().encode(r),zn=r=>new TextDecoder().decode(r);var Ar=class{constructor(e,n,t){this.name=e,this.prefix=n,this.baseEncode=t}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Or=class{constructor(e,n,t){if(this.name=e,this.prefix=n,n.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=n.codePointAt(0),this.baseDecode=t}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 Vn(this,e)}},Tr=class{constructor(e){this.decoders=e}or(e){return Vn(this,e)}decode(e){let n=e[0],t=this.decoders[n];if(t)return t.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},Vn=(r,e)=>new Tr({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}}),Lr=class{constructor(e,n,t,o){this.name=e,this.prefix=n,this.baseEncode=t,this.baseDecode=o,this.encoder=new Ar(e,n,t),this.decoder=new Or(e,n,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},Fe=({name:r,prefix:e,encode:n,decode:t})=>new Lr(r,e,n,t),xe=({prefix:r,name:e,alphabet:n})=>{let{encode:t,decode:o}=kn(n,e);return Fe({prefix:r,name:e,encode:t,decode:i=>Y(o(i))})},No=(r,e,n,t)=>{let o={};for(let p=0;p<e.length;++p)o[e[p]]=p;let i=r.length;for(;r[i-1]==="=";)--i;let c=new Uint8Array(i*n/8|0),u=0,I=0,w=0;for(let p=0;p<i;++p){let a=o[r[p]];if(a===void 0)throw new SyntaxError(`Non-${t} character`);I=I<<n|a,u+=n,u>=8&&(u-=8,c[w++]=255&I>>u)}if(u>=n||255&I<<8-u)throw new SyntaxError("Unexpected end of data");return c},Po=(r,e,n)=>{let t=e[e.length-1]==="=",o=(1<<n)-1,i="",c=0,u=0;for(let I=0;I<r.length;++I)for(u=u<<8|r[I],c+=8;c>n;)c-=n,i+=e[o&u>>c];if(c&&(i+=e[o&u<<n-c]),t)for(;i.length*n&7;)i+="=";return i},O=({name:r,prefix:e,bitsPerChar:n,alphabet:t})=>Fe({prefix:e,name:r,encode(o){return Po(o,t,n)},decode(o){return No(o,t,n,r)}});var Q=O({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Ro=O({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Do=O({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Fo=O({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),_o=O({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),ko=O({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Mo=O({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),qo=O({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),zo=O({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Nr={};z(Nr,{base58btc:()=>B,base58flickr:()=>$o});var B=xe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),$o=xe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Rr={};z(Rr,{base64:()=>Pr,base64pad:()=>Vo,base64url:()=>jo,base64urlpad:()=>Ko});var Pr=O({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Vo=O({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),jo=O({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Ko=O({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});V.default.formatters.b=r=>r==null?"undefined":B.baseEncode(r);V.default.formatters.t=r=>r==null?"undefined":Q.baseEncode(r);V.default.formatters.m=r=>r==null?"undefined":Pr.baseEncode(r);V.default.formatters.p=r=>r==null?"undefined":r.toString();V.default.formatters.c=r=>r==null?"undefined":r.toString();V.default.formatters.k=r=>r==null?"undefined":r.toString();V.default.formatters.a=r=>r==null?"undefined":r.toString();function Ho(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function cr(r){let e=Ho(`${r}:trace`);return V.default.enabled(`${r}:trace`)&&V.default.names.map(n=>n.toString()).find(n=>n.includes(":trace"))!=null&&(e=(0,V.default)(`${r}:trace`)),Object.assign((0,V.default)(r),{error:(0,V.default)(`${r}:error`),trace:e})}var Jt=Be(it(),1);var st=Symbol.for("@libp2p/peer-id");var je=class extends Error{code;props;constructor(e,n,t){super(e),this.code=n,this.name=t?.name??"CodeError",this.props=t??{}}};var Gr={};z(Gr,{identity:()=>li});var li=Fe({prefix:"\0",name:"identity",encode:r=>zn(r),decode:r=>qn(r)});var Yr={};z(Yr,{base2:()=>ui});var ui=O({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Xr={};z(Xr,{base8:()=>hi});var hi=O({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Qr={};z(Qr,{base10:()=>pi});var pi=xe({prefix:"9",name:"base10",alphabet:"0123456789"});var Wr={};z(Wr,{base16:()=>gi,base16upper:()=>mi});var gi=O({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),mi=O({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Jr={};z(Jr,{base36:()=>yi,base36upper:()=>wi});var yi=xe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),wi=xe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Zr={};z(Zr,{base256emoji:()=>Ci});var ct=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}"),Ei=ct.reduce((r,e,n)=>(r[n]=e,r),[]),Ii=ct.reduce((r,e,n)=>(r[e.codePointAt(0)]=n,r),[]);function xi(r){return r.reduce((e,n)=>(e+=Ei[n],e),"")}function vi(r){let e=[];for(let n of r){let t=Ii[n.codePointAt(0)];if(t===void 0)throw new Error(`Non-base256emoji character: ${n}`);e.push(t)}return new Uint8Array(e)}var Ci=Fe({prefix:"\u{1F680}",name:"base256emoji",encode:xi,decode:vi});var tn={};z(tn,{sha256:()=>ur,sha512:()=>$i});var nn=Be(ce("crypto"),1);var bi=lt,at=128,Si=127,Ui=~Si,Ai=Math.pow(2,31);function lt(r,e,n){e=e||[],n=n||0;for(var t=n;r>=Ai;)e[n++]=r&255|at,r/=128;for(;r&Ui;)e[n++]=r&255|at,r>>>=7;return e[n]=r|0,lt.bytes=n-t+1,e}var Oi=fr,Ti=128,dt=127;function fr(r,t){var n=0,t=t||0,o=0,i=t,c,u=r.length;do{if(i>=u)throw fr.bytes=0,new RangeError("Could not decode varint");c=r[i++],n+=o<28?(c&dt)<<o:(c&dt)*Math.pow(2,o),o+=7}while(c>=Ti);return fr.bytes=i-t,n}var Li=Math.pow(2,7),Bi=Math.pow(2,14),Ni=Math.pow(2,21),Pi=Math.pow(2,28),Ri=Math.pow(2,35),Di=Math.pow(2,42),Fi=Math.pow(2,49),_i=Math.pow(2,56),ki=Math.pow(2,63),Mi=function(r){return r<Li?1:r<Bi?2:r<Ni?3:r<Pi?4:r<Ri?5:r<Di?6:r<Fi?7:r<_i?8:r<ki?9:10},qi={encode:bi,decode:Oi,encodingLength:Mi},zi=qi,Ke=zi;var He=(r,e=0)=>[Ke.decode(r,e),Ke.decode.bytes],ke=(r,e,n=0)=>(Ke.encode(r,e,n),e),Me=r=>Ke.encodingLength(r);var Ce=(r,e)=>{let n=e.byteLength,t=Me(r),o=t+Me(n),i=new Uint8Array(o+n);return ke(r,i,0),ke(n,i,t),i.set(e,o),new qe(r,n,e,i)},Oe=r=>{let e=Y(r),[n,t]=He(e),[o,i]=He(e.subarray(t)),c=e.subarray(t+i);if(c.byteLength!==o)throw new Error("Incorrect length");return new qe(n,o,c,e)},ut=(r,e)=>{if(r===e)return!0;{let n=e;return r.code===n.code&&r.size===n.size&&n.bytes instanceof Uint8Array&&Mn(r.bytes,n.bytes)}},qe=class{constructor(e,n,t,o){this.code=e,this.size=n,this.digest=t,this.bytes=o}};var rn=({name:r,code:e,encode:n})=>new en(r,e,n),en=class{constructor(e,n,t){this.name=e,this.code=n,this.encode=t}digest(e){if(e instanceof Uint8Array){let n=this.encode(e);return n instanceof Uint8Array?Ce(this.code,n):n.then(t=>Ce(this.code,t))}else throw Error("Unknown type, must be binary type")}};var ur=rn({name:"sha2-256",code:18,encode:r=>Y(nn.default.createHash("sha256").update(r).digest())}),$i=rn({name:"sha2-512",code:19,encode:r=>Y(nn.default.createHash("sha512").update(r).digest())});var on={};z(on,{identity:()=>hr});var pt=0,Vi="identity",gt=Y,ji=r=>Ce(pt,gt(r)),hr={code:pt,name:Vi,encode:gt,digest:ji};var kc=new TextEncoder,Mc=new TextDecoder;var mt=(r,e)=>{let{bytes:n,version:t}=r;switch(t){case 0:return Yi(n,sn(r),e||B.encoder);default:return Xi(n,sn(r),e||Q.encoder)}};var yt=new WeakMap,sn=r=>{let e=yt.get(r);if(e==null){let n=new Map;return yt.set(r,n),n}return e},C=class{constructor(e,n,t,o){this.code=n,this.version=e,this.multihash=t,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:n}=this;if(e!==Ge)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(n.code!==Qi)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return C.createV0(n)}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:n}=this.multihash,t=Ce(e,n);return C.createV1(this.code,t)}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 C.equals(this,e)}static equals(e,n){let t=n;return t&&e.code===t.code&&e.version===t.version&&ut(e.multihash,t.multihash)}toString(e){return mt(this,e)}toJSON(){return{"/":mt(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 n=e;if(n instanceof C)return n;if(n["/"]!=null&&n["/"]===n.bytes||n.asCID===n){let{version:t,code:o,multihash:i,bytes:c}=n;return new C(t,o,i,c||wt(t,o,i.bytes))}else if(n[Wi]===!0){let{version:t,multihash:o,code:i}=n,c=Oe(o);return C.create(t,i,c)}else return null}static create(e,n,t){if(typeof n!="number")throw new Error("String codecs are no longer supported");if(!(t.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(n!==Ge)throw new Error(`Version 0 CID must use dag-pb (code: ${Ge}) block encoding`);return new C(e,n,t,t.bytes)}case 1:{let o=wt(e,n,t.bytes);return new C(e,n,t,o)}default:throw new Error("Invalid version")}}static createV0(e){return C.create(0,Ge,e)}static createV1(e,n){return C.create(1,e,n)}static decode(e){let[n,t]=C.decodeFirst(e);if(t.length)throw new Error("Incorrect length");return n}static decodeFirst(e){let n=C.inspectBytes(e),t=n.size-n.multihashSize,o=Y(e.subarray(t,t+n.multihashSize));if(o.byteLength!==n.multihashSize)throw new Error("Incorrect length");let i=o.subarray(n.multihashSize-n.digestSize),c=new qe(n.multihashCode,n.digestSize,i,o);return[n.version===0?C.createV0(c):C.createV1(n.codec,c),e.subarray(n.size)]}static inspectBytes(e){let n=0,t=()=>{let[a,d]=He(e.subarray(n));return n+=d,a},o=t(),i=Ge;if(o===18?(o=0,n=0):i=t(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let c=n,u=t(),I=t(),w=n+I,p=w-c;return{version:o,codec:i,multihashCode:u,digestSize:I,multihashSize:p,size:w}}static parse(e,n){let[t,o]=Gi(e,n),i=C.decode(o);if(i.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return sn(i).set(t,e),i}},Gi=(r,e)=>{switch(r[0]){case"Q":{let n=e||B;return[B.prefix,n.decode(`${B.prefix}${r}`)]}case B.prefix:{let n=e||B;return[B.prefix,n.decode(r)]}case Q.prefix:{let n=e||Q;return[Q.prefix,n.decode(r)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}},Yi=(r,e,n)=>{let{prefix:t}=n;if(t!==B.prefix)throw Error(`Cannot string encode V0 in ${n.name} encoding`);let o=e.get(t);if(o==null){let i=n.encode(r).slice(1);return e.set(t,i),i}else return o},Xi=(r,e,n)=>{let{prefix:t}=n,o=e.get(t);if(o==null){let i=n.encode(r);return e.set(t,i),i}else return o},Ge=112,Qi=18,wt=(r,e,n)=>{let t=Me(r),o=t+Me(e),i=new Uint8Array(o+n.byteLength);return ke(r,i,0),ke(e,i,t),i.set(n,o),i},Wi=Symbol.for("@ipld/js-cid/CID");var be={...Gr,...Yr,...Xr,...Qr,...Wr,...Br,...Jr,...Nr,...Rr,...Zr},Xc={...tn,...on};function Ye(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let n=0;n<r.byteLength;n++)if(r[n]!==e[n])return!1;return!0}var Ji=Symbol.for("nodejs.util.inspect.custom"),Et=Object.values(be).map(r=>r.decoder).reduce((r,e)=>r.or(e),be.identity.decoder),It=114,xt=36,vt=37,Xe=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()})`}[st]=!0;toString(){return this.string==null&&(this.string=B.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return C.createV1(It,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Ye(this.multihash.bytes,e);if(typeof e=="string")return cn(e).equals(this);if(e?.multihash?.bytes!=null)return Ye(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[Ji](){return`PeerId(${this.toString()})`}},Qe=class extends Xe{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},We=class extends Xe{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},Je=class extends Xe{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function cn(r,e){if(e=e??Et,r.charAt(0)==="1"||r.charAt(0)==="Q"){let n=Oe(B.decode(`z${r}`));return r.startsWith("12D")?new We({multihash:n}):r.startsWith("16U")?new Je({multihash:n}):new Qe({multihash:n})}return Zi(Et.decode(r))}function Zi(r){try{let e=Oe(r);if(e.code===hr.code){if(e.digest.length===xt)return new We({multihash:e});if(e.digest.length===vt)return new Je({multihash:e})}if(e.code===ur.code)return new Qe({multihash:e})}catch{return fi(C.decode(r))}throw new Error("Supplied PeerID CID is invalid")}function fi(r){if(r==null||r.multihash==null||r.version==null||r.version===1&&r.code!==It)throw new Error("Supplied PeerID CID is invalid");let e=r.multihash;if(e.code===ur.code)return new Qe({multihash:r.multihash});if(e.code===hr.code){if(e.digest.length===xt)return new We({multihash:r.multihash});if(e.digest.length===vt)return new Je({multihash:r.multihash})}throw new Error("Supplied PeerID CID is invalid")}function ze(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function pr(r=0){return globalThis.Buffer?.allocUnsafe!=null?ze(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}function bt(r,e,n,t){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:n},decoder:{decode:t}}}var Ct=bt("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),an=bt("ascii","a",r=>{let e="a";for(let n=0;n<r.length;n++)e+=String.fromCharCode(r[n]);return e},r=>{r=r.substring(1);let e=pr(r.length);for(let n=0;n<r.length;n++)e[n]=r.charCodeAt(n);return e}),es={utf8:Ct,"utf-8":Ct,hex:be.base16,latin1:an,ascii:an,binary:an,...be},gr=es;function M(r,e="utf8"){let n=gr[e];if(n==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r.buffer,r.byteOffset,r.byteLength).toString("utf8"):n.encoder.encode(r).substring(1)}var Cn=Be(mr(),1);function Ee(r,e){e==null&&(e=r.reduce((o,i)=>o+i.length,0));let n=pr(e),t=0;for(let o of r)n.set(o,t),t+=o.length;return ze(n)}var $e=Be(mr(),1);var yr=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let n=this.index,t=e();return t===void 0&&(this.index=n),t}parseWith(e){let n=e();if(this.index===this.input.length)return n}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 n=this.readChar();if(n===e)return n})}readSeparator(e,n,t){return this.readAtomically(()=>{if(!(n>0&&this.readGivenChar(e)===void 0))return t()})}readNumber(e,n,t,o){return this.readAtomically(()=>{let i=0,c=0,u=this.peekChar();if(u===void 0)return;let I=u==="0",w=2**(8*o)-1;for(;;){let p=this.readAtomically(()=>{let a=this.readChar();if(a===void 0)return;let d=Number.parseInt(a,e);if(!Number.isNaN(d))return d});if(p===void 0)break;if(i*=e,i+=p,i>w||(c+=1,n!==void 0&&c>n))return}if(c!==0)return!t&&I&&c>1?void 0:i})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let n=0;n<e.length;n++){let t=this.readSeparator(".",n,()=>this.readNumber(10,3,!1,1));if(t===void 0)return;e[n]=t}return e})}readIPv6Addr(){let e=n=>{for(let t=0;t<n.length/2;t++){let o=t*2;if(t<n.length-3){let c=this.readSeparator(":",t,()=>this.readIPv4Addr());if(c!==void 0)return n[o]=c[0],n[o+1]=c[1],n[o+2]=c[2],n[o+3]=c[3],[o+4,!0]}let i=this.readSeparator(":",t,()=>this.readNumber(16,4,!0,2));if(i===void 0)return[o,!1];n[o]=i>>8,n[o+1]=i&255}return[n.length,!1]};return this.readAtomically(()=>{let n=new Uint8Array(16),[t,o]=e(n);if(t===16)return n;if(o||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let i=new Uint8Array(14),c=16-(t+2),[u]=e(i.subarray(0,c));return n.set(i.subarray(0,u),16-u),n})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var ba=new yr;var Na=parseInt("0xFFFF",16),Pa=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function un(r,e="utf8"){let n=gr[e];if(n==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ze(globalThis.Buffer.from(r,"utf-8")):n.decoder.decode(`${n.prefix}${r}`)}var se=Be(mr(),1);var Se=ce("node:net");function wr(r){return!!(0,Se.isIP)(r)}var Ft=Se.isIPv4,Is=Se.isIPv6,hn=function(r){let e=0;if(r=r.toString().trim(),Ft(r)){let n=new Uint8Array(e+4);return r.split(/\./g).forEach(t=>{n[e++]=parseInt(t,10)&255}),n}if(Is(r)){let n=r.split(":",8),t;for(t=0;t<n.length;t++){let i=Ft(n[t]),c;i&&(c=hn(n[t]),n[t]=M(c.slice(0,2),"base16")),c!=null&&++t<8&&n.splice(t,0,M(c.slice(2,4),"base16"))}if(n[0]==="")for(;n.length<8;)n.unshift("0");else if(n[n.length-1]==="")for(;n.length<8;)n.push("0");else if(n.length<8){for(t=0;t<n.length&&n[t]!=="";t++);let i=[t,1];for(t=9-n.length;t>0;t--)i.push("0");n.splice.apply(n,i)}let o=new Uint8Array(e+16);for(t=0;t<n.length;t++){let i=parseInt(n[t],16);o[e++]=i>>8&255,o[e++]=i&255}return o}throw new Error("invalid ip address")},_t=function(r,e=0,n){e=~~e,n=n??r.length-e;let t=new DataView(r.buffer);if(n===4){let o=[];for(let i=0;i<n;i++)o.push(r[e+i]);return o.join(".")}if(n===16){let o=[];for(let i=0;i<n;i+=2)o.push(t.getUint16(e+i).toString(16));return o.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Ze={},pn={},vs=[[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"]];vs.forEach(r=>{let e=Cs(...r);pn[e.code]=e,Ze[e.name]=e});function Cs(r,e,n,t,o){return{code:r,size:e,name:n,resolvable:!!t,path:!!o}}function S(r){if(typeof r=="number"){if(pn[r]!=null)return pn[r];throw new Error(`no protocol with code: ${r}`)}else if(typeof r=="string"){if(Ze[r]!=null)return Ze[r];throw new Error(`no protocol with name: ${r}`)}throw new Error(`invalid protocol id type: ${typeof r}`)}var Id=S("ip4"),xd=S("ip6"),vd=S("ipcidr");function $t(r,e){switch(S(r).code){case 4:case 41:return Ss(e);case 42:return qt(e);case 6:case 273:case 33:case 132:return jt(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return qt(e);case 421:return Ts(e);case 444:return zt(e);case 445:return zt(e);case 466:return Os(e);default:return M(e,"base16")}}function Vt(r,e){switch(S(r).code){case 4:return kt(e);case 41:return kt(e);case 42:return Mt(e);case 6:case 273:case 33:case 132:return mn(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Mt(e);case 421:return Us(e);case 444:return Ls(e);case 445:return Bs(e);case 466:return As(e);default:return un(e,"base16")}}var gn=Object.values(be).map(r=>r.decoder),bs=function(){let r=gn[0].or(gn[1]);return gn.slice(2).forEach(e=>r=r.or(e)),r}();function kt(r){if(!wr(r))throw new Error("invalid ip address");return hn(r)}function Ss(r){let e=_t(r,0,r.length);if(e==null)throw new Error("ipBuff is required");if(!wr(e))throw new Error("invalid ip address");return e}function mn(r){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,r),new Uint8Array(e)}function jt(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function Mt(r){let e=un(r),n=Uint8Array.from(se.default.encode(e.length));return Ee([n,e],n.length+e.length)}function qt(r){let e=se.default.decode(r);if(r=r.slice(se.default.decode.bytes),r.length!==e)throw new Error("inconsistent lengths");return M(r)}function Us(r){let e;r[0]==="Q"||r[0]==="1"?e=Oe(B.decode(`z${r}`)).bytes:e=C.parse(r).multihash.bytes;let n=Uint8Array.from(se.default.encode(e.length));return Ee([n,e],n.length+e.length)}function As(r){let e=bs.decode(r),n=Uint8Array.from(se.default.encode(e.length));return Ee([n,e],n.length+e.length)}function Os(r){let e=se.default.decode(r),n=r.slice(se.default.decode.bytes);if(n.length!==e)throw new Error("inconsistent lengths");return"u"+M(n,"base64url")}function Ts(r){let e=se.default.decode(r),n=r.slice(se.default.decode.bytes);if(n.length!==e)throw new Error("inconsistent lengths");return M(n,"base58btc")}function Ls(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let n=Q.decode("b"+e[0]),t=parseInt(e[1],10);if(t<1||t>65536)throw new Error("Port number is not in range(1, 65536)");let o=mn(t);return Ee([n,o],n.length+o.length)}function Bs(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let n=Q.decode(`b${e[0]}`),t=parseInt(e[1],10);if(t<1||t>65536)throw new Error("Port number is not in range(1, 65536)");let o=mn(t);return Ee([n,o],n.length+o.length)}function zt(r){let e=r.slice(0,r.length-2),n=r.slice(r.length-2),t=M(e,"base32"),o=jt(n);return`${t}:${o}`}function Ns(r){let e=[],n=r.split("/").slice(1);if(n.length===1&&n[0]==="")return[];for(let t=0;t<n.length;t++){let o=n[t],i=S(o);if(i.size===0){e.push([o]);continue}if(t++,t>=n.length)throw Ht("invalid address: "+r);if(i.path===!0){e.push([o,xn(n.slice(t).join("/"))]);break}e.push([o,n[t]])}return e}function Ps(r){let e=[];return r.map(n=>{let t=xr(n);return e.push(t.name),n.length>1&&n[1]!=null&&e.push(n[1]),null}),xn(e.join("/"))}function Rs(r){return r.map(e=>{Array.isArray(e)||(e=[e]);let n=xr(e);return e.length>1?[n.code,Vt(n.code,e[1])]:[n.code]})}function yn(r){return r.map(e=>{let n=xr(e);return e[1]!=null?[n.code,$t(n.code,e[1])]:[n.code]})}function wn(r){return Ir(Ee(r.map(e=>{let n=xr(e),t=Uint8Array.from($e.default.encode(n.code));return e.length>1&&e[1]!=null&&(t=Ee([t,e[1]])),t})))}function En(r,e){return r.size>0?r.size/8:r.size===0?0:$e.default.decode(e)+($e.default.decode.bytes??0)}function Er(r){let e=[],n=0;for(;n<r.length;){let t=$e.default.decode(r,n),o=$e.default.decode.bytes??0,i=S(t),c=En(i,r.slice(n+o));if(c===0){e.push([t]),n+=o;continue}let u=r.slice(n+o,n+o+c);if(n+=c+o,n>r.length)throw Ht("Invalid address Uint8Array: "+M(r,"base16"));e.push([t,u])}return e}function In(r){let e=Er(r),n=yn(e);return Ps(n)}function Ds(r){r=xn(r);let e=Ns(r),n=Rs(e);return wn(n)}function Kt(r){return Ds(r)}function Ir(r){let e=Fs(r);if(e!=null)throw e;return Uint8Array.from(r)}function Fs(r){try{Er(r)}catch(e){return e}}function xn(r){return"/"+r.trim().split("/").filter(e=>e).join("/")}function Ht(r){return new Error("Error parsing address: "+r)}function xr(r){return S(r[0])}var ks=Symbol.for("nodejs.util.inspect.custom"),Ms=[S("dns").code,S("dns4").code,S("dns6").code,S("dnsaddr").code],qs=new Map,Gt=Symbol.for("@multiformats/js-multiaddr/multiaddr");function zs(r){return!!r?.[Gt]}var Ie=class{bytes;#e;#n;#t;#r;[Gt]=!0;constructor(e){if(e==null&&(e=""),e instanceof Uint8Array)this.bytes=Ir(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);this.bytes=Kt(e)}else if(zs(e))this.bytes=Ir(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr")}toString(){return this.#e==null&&(this.#e=In(this.bytes)),this.#e}toJSON(){return this.toString()}toOptions(){let e,n,t,o,i="",c=S("tcp"),u=S("udp"),I=S("ip4"),w=S("ip6"),p=S("dns6"),a=S("ip6zone");for(let[l,s]of this.stringTuples())l===a.code&&(i=`%${s??""}`),Ms.includes(l)&&(n=c.name,o=443,t=`${s??""}${i}`,e=l===p.code?6:4),(l===c.code||l===u.code)&&(n=S(l).name,o=parseInt(s??"")),(l===I.code||l===w.code)&&(n=S(l).name,t=`${s??""}${i}`,e=l===w.code?6:4);if(e==null||n==null||t==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:t,transport:n,port:o}}protos(){return this.protoCodes().map(e=>Object.assign({},S(e)))}protoCodes(){let e=[],n=this.bytes,t=0;for(;t<n.length;){let o=Cn.default.decode(n,t),i=Cn.default.decode.bytes??0,c=S(o),u=En(c,n.slice(t+i));t+=u+i,e.push(o)}return e}protoNames(){return this.protos().map(e=>e.name)}tuples(){return this.#n==null&&(this.#n=Er(this.bytes)),this.#n}stringTuples(){return this.#t==null&&(this.#t=yn(this.tuples())),this.#t}encapsulate(e){return e=new Ie(e),new Ie(this.toString()+e.toString())}decapsulate(e){let n=e.toString(),t=this.toString(),o=t.lastIndexOf(n);if(o<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new Ie(t.slice(0,o))}decapsulateCode(e){let n=this.tuples();for(let t=n.length-1;t>=0;t--)if(n[t][0]===e)return new Ie(wn(n.slice(0,t)));return this}getPeerId(){try{let n=this.stringTuples().filter(t=>t[0]===Ze.ipfs.code).pop();if(n?.[1]!=null){let t=n[1];return t[0]==="Q"||t[0]==="1"?M(B.decode(`z${t}`),"base58btc"):M(C.parse(t).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){if(this.#r===void 0)try{this.#r=this.stringTuples().filter(e=>S(e[0]).path===!0)[0][1],this.#r==null&&(this.#r=null)}catch{this.#r=null}return this.#r}equals(e){return Ye(this.bytes,e.bytes)}async resolve(e){let n=this.protos().find(i=>i.resolvable);if(n==null)return[this];let t=qs.get(n.name);if(t==null)throw new je(`no available resolver for ${n.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await t(this,e)).map(i=>new Ie(i))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let n=(e??this).protos();return!(n.length!==2||n[0].code!==4&&n[0].code!==41||n[1].code!==6&&n[1].code!==273)}[ks](){return`Multiaddr(${In(this.bytes)})`}};function vn(r){return new Ie(r)}var fe=cr("libp2p:mdns:query");function Yt(r,e,n){let t=()=>{fe("query",e),r.query({questions:[{name:e,type:"PTR"}]})};return t(),setInterval(t,n)}function Xt(r,e,n){if(r.answers==null)return;let t,o=[];if(r.answers.forEach(i=>{switch(i.type){case"PTR":t=i;break;case"TXT":o.push(i);break;default:break}}),!(t==null||t?.name!==n||o.length===0||t.data.startsWith(e)))try{let i=o.flatMap(u=>u.data).filter(u=>u.toString().startsWith("dnsaddr=")).map(u=>vn(u.toString().substring(8))),c=i[0].getPeerId();if(c==null)throw new Error("Multiaddr doesn't contain PeerId");return fe("peer found %p",c),{id:cn(c),multiaddrs:i,protocols:[]}}catch(i){fe.error("failed to parse mdns response",i)}}function Qt(r,e,n,t,o,i){if(!i){fe("not responding to mDNS query as broadcast mode is false");return}if(t.length!==0&&r.questions[0]!=null&&r.questions[0].name===o){let c=[];c.push({name:o,type:"PTR",class:"IN",ttl:120,data:n+"."+o}),t.forEach(u=>{u.getPeerId()!=null&&c.push({name:n+"."+o,type:"TXT",class:"IN",ttl:120,data:"dnsaddr="+u.toString()})}),fe("responding to query"),e.respond(c)}}function Wt(r){let e="",n="abcdefghijklmnopqrstuvwxyz0123456789";for(let t=0;t<r;t++)e+=n.charAt(Math.floor(Math.random()*n.length));return e}var vr=cr("libp2p:mdns"),bn=class extends rr{mdns;broadcast;interval;serviceTag;peerName;port;ip;_queryInterval;components;constructor(e,n={}){if(super(),this.broadcast=n.broadcast!==!1,this.interval=n.interval??1e3*10,this.serviceTag=n.serviceTag??"_p2p._udp.local",this.ip=n.ip??"224.0.0.251",this.peerName=n.peerName??Wt(63),this.peerName.length>=64)throw new Error("Peer name should be less than 64 chars long");this.port=n.port??5353,this.components=e,this._queryInterval=null,this._onPeer=this._onPeer.bind(this),this._onMdnsQuery=this._onMdnsQuery.bind(this),this._onMdnsResponse=this._onMdnsResponse.bind(this)}[Un]=this;[Symbol.toStringTag]="@libp2p/mdns";isStarted(){return!!this.mdns}async start(){this.mdns==null&&(this.mdns=(0,Jt.default)({port:this.port,ip:this.ip}),this.mdns.on("query",this._onMdnsQuery),this.mdns.on("response",this._onMdnsResponse),this._queryInterval=Yt(this.mdns,this.serviceTag,this.interval))}_onMdnsQuery(e){this.mdns!=null&&(vr.trace("received incoming mDNS query"),Qt(e,this.mdns,this.peerName,this.components.addressManager.getAddresses(),this.serviceTag,this.broadcast))}_onMdnsResponse(e){vr.trace("received mDNS query response");try{let n=Xt(e,this.peerName,this.serviceTag);n!=null&&(vr("discovered peer in mDNS query response %p",n.id),this.dispatchEvent(new nr("peer",{detail:n})))}catch(n){vr.error("Error processing peer response",n)}}_onPeer(e){this.mdns!=null&&this.dispatchEvent(new nr("peer",{detail:e.detail}))}async stop(){this.mdns!=null&&(this.mdns.removeListener("query",this._onMdnsQuery),this.mdns.removeListener("response",this._onMdnsResponse),this._queryInterval!=null&&(clearInterval(this._queryInterval),this._queryInterval=null),await new Promise(e=>{this.mdns!=null?this.mdns.destroy(e):e()}),this.mdns=void 0)}};function Vs(r={}){return e=>new bn(e,r)}return to(js);})();
7
7
  return Libp2PMdns}));
@@ -1,5 +1,5 @@
1
- import type { PeerDiscovery } from '@libp2p/interface-peer-discovery';
2
1
  import type { AddressManager } from '@libp2p/interface-address-manager';
2
+ import type { PeerDiscovery } from '@libp2p/interface-peer-discovery';
3
3
  export interface MulticastDNSInit {
4
4
  broadcast?: boolean;
5
5
  interval?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAuB,MAAM,kCAAkC,CAAA;AAI1F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AAIvE,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,cAAc,CAAA;CAC/B;AAwID,wBAAgB,IAAI,CAAE,IAAI,GAAE,gBAAqB,GAAG,CAAC,UAAU,EAAE,sBAAsB,KAAK,aAAa,CAExG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AACvE,OAAO,KAAK,EAAE,aAAa,EAAuB,MAAM,kCAAkC,CAAA;AAK1F,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,cAAc,CAAA;CAC/B;AAoID,wBAAgB,IAAI,CAAE,IAAI,GAAE,gBAAqB,GAAG,CAAC,UAAU,EAAE,sBAAsB,KAAK,aAAa,CAExG"}
package/dist/src/index.js CHANGED
@@ -1,11 +1,20 @@
1
- import multicastDNS from 'multicast-dns';
1
+ import { peerDiscovery } from '@libp2p/interface-peer-discovery';
2
2
  import { CustomEvent, EventEmitter } from '@libp2p/interfaces/events';
3
3
  import { logger } from '@libp2p/logger';
4
+ import multicastDNS from 'multicast-dns';
4
5
  import * as query from './query.js';
5
- import { symbol } from '@libp2p/interface-peer-discovery';
6
6
  import { stringGen } from './utils.js';
7
7
  const log = logger('libp2p:mdns');
8
8
  class MulticastDNS extends EventEmitter {
9
+ mdns;
10
+ broadcast;
11
+ interval;
12
+ serviceTag;
13
+ peerName;
14
+ port;
15
+ ip;
16
+ _queryInterval;
17
+ components;
9
18
  constructor(components, init = {}) {
10
19
  super();
11
20
  this.broadcast = init.broadcast !== false;
@@ -24,12 +33,8 @@ class MulticastDNS extends EventEmitter {
24
33
  this._onMdnsQuery = this._onMdnsQuery.bind(this);
25
34
  this._onMdnsResponse = this._onMdnsResponse.bind(this);
26
35
  }
27
- get [symbol]() {
28
- return true;
29
- }
30
- get [Symbol.toStringTag]() {
31
- return '@libp2p/mdns';
32
- }
36
+ [peerDiscovery] = this;
37
+ [Symbol.toStringTag] = '@libp2p/mdns';
33
38
  isStarted() {
34
39
  return Boolean(this.mdns);
35
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /// <reference types="node" />
2
+ import { type Multiaddr } from '@multiformats/multiaddr';
2
3
  import type { PeerInfo } from '@libp2p/interface-peer-info';
3
- import { Multiaddr } from '@multiformats/multiaddr';
4
4
  import type { MulticastDNS, QueryPacket, ResponsePacket } from 'multicast-dns';
5
5
  export declare function queryLAN(mdns: MulticastDNS, serviceTag: string, interval: number): NodeJS.Timer;
6
6
  export declare function gotResponse(rsp: ResponsePacket, localPeerName: string, serviceTag: string): PeerInfo | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AAG3D,OAAO,EAAa,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAE9D,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAI9E,wBAAgB,QAAQ,CAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,KAAK,CAehG;AAED,wBAAgB,WAAW,CAAE,GAAG,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CA6CjH;AAED,wBAAgB,QAAQ,CAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI,CAqCvJ"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":";AAEA,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAI9E,wBAAgB,QAAQ,CAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,KAAK,CAehG;AAED,wBAAgB,WAAW,CAAE,GAAG,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CA6CjH;AAED,wBAAgB,QAAQ,CAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI,CAqCvJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,23 +1,19 @@
1
1
  {
2
2
  "name": "@libp2p/mdns",
3
- "version": "7.0.4",
3
+ "version": "8.0.0-3dfc236e",
4
4
  "description": "Node.js libp2p mDNS discovery implementation for peer discovery",
5
5
  "license": "Apache-2.0 OR MIT",
6
- "homepage": "https://github.com/libp2p/js-libp2p-mdns#readme",
6
+ "homepage": "https://github.com/libp2p/js-libp2p/tree/master/packages/peer-discovery-mdns#readme",
7
7
  "repository": {
8
8
  "type": "git",
9
- "url": "git+https://github.com/libp2p/js-libp2p-mdns.git"
9
+ "url": "git+https://github.com/libp2p/js-libp2p.git"
10
10
  },
11
11
  "bugs": {
12
- "url": "https://github.com/libp2p/js-libp2p-mdns/issues"
12
+ "url": "https://github.com/libp2p/js-libp2p/issues"
13
13
  },
14
14
  "keywords": [
15
15
  "IPFS"
16
16
  ],
17
- "engines": {
18
- "node": ">=16.0.0",
19
- "npm": ">=7.0.0"
20
- },
21
17
  "type": "module",
22
18
  "types": "./dist/src/index.d.ts",
23
19
  "files": [
@@ -38,91 +34,6 @@
38
34
  "sourceType": "module"
39
35
  }
40
36
  },
41
- "release": {
42
- "branches": [
43
- "master"
44
- ],
45
- "plugins": [
46
- [
47
- "@semantic-release/commit-analyzer",
48
- {
49
- "preset": "conventionalcommits",
50
- "releaseRules": [
51
- {
52
- "breaking": true,
53
- "release": "major"
54
- },
55
- {
56
- "revert": true,
57
- "release": "patch"
58
- },
59
- {
60
- "type": "feat",
61
- "release": "minor"
62
- },
63
- {
64
- "type": "fix",
65
- "release": "patch"
66
- },
67
- {
68
- "type": "docs",
69
- "release": "patch"
70
- },
71
- {
72
- "type": "test",
73
- "release": "patch"
74
- },
75
- {
76
- "type": "deps",
77
- "release": "patch"
78
- },
79
- {
80
- "scope": "no-release",
81
- "release": false
82
- }
83
- ]
84
- }
85
- ],
86
- [
87
- "@semantic-release/release-notes-generator",
88
- {
89
- "preset": "conventionalcommits",
90
- "presetConfig": {
91
- "types": [
92
- {
93
- "type": "feat",
94
- "section": "Features"
95
- },
96
- {
97
- "type": "fix",
98
- "section": "Bug Fixes"
99
- },
100
- {
101
- "type": "chore",
102
- "section": "Trivial Changes"
103
- },
104
- {
105
- "type": "docs",
106
- "section": "Documentation"
107
- },
108
- {
109
- "type": "deps",
110
- "section": "Dependencies"
111
- },
112
- {
113
- "type": "test",
114
- "section": "Tests"
115
- }
116
- ]
117
- }
118
- }
119
- ],
120
- "@semantic-release/changelog",
121
- "@semantic-release/npm",
122
- "@semantic-release/github",
123
- "@semantic-release/git"
124
- ]
125
- },
126
37
  "scripts": {
127
38
  "clean": "aegir clean",
128
39
  "lint": "aegir lint",
@@ -130,28 +41,29 @@
130
41
  "build": "aegir build",
131
42
  "test": "aegir test -t node",
132
43
  "test:node": "aegir test -t node --cov",
133
- "test:electron-main": "aegir test -t electron-main",
134
- "release": "aegir release",
135
- "docs": "aegir docs"
44
+ "test:electron-main": "aegir test -t electron-main"
136
45
  },
137
46
  "dependencies": {
138
- "@libp2p/interface-peer-discovery": "^1.0.5",
139
- "@libp2p/interface-peer-info": "^1.0.8",
140
- "@libp2p/interfaces": "^3.3.1",
141
- "@libp2p/logger": "^2.0.5",
142
- "@libp2p/peer-id": "^2.0.1",
143
- "@multiformats/multiaddr": "^12.0.0",
47
+ "@libp2p/interface-peer-discovery": "2.0.0-3dfc236e",
48
+ "@libp2p/interface-peer-info": "1.0.10-3dfc236e",
49
+ "@libp2p/interfaces": "3.3.2-3dfc236e",
50
+ "@libp2p/logger": "2.1.1-3dfc236e",
51
+ "@libp2p/peer-id": "2.0.3-3dfc236e",
52
+ "@multiformats/multiaddr": "^12.1.3",
144
53
  "@types/multicast-dns": "^7.2.1",
145
- "multicast-dns": "^7.2.5",
146
- "dns-packet": "^5.4.0"
54
+ "dns-packet": "^5.4.0",
55
+ "multicast-dns": "^7.2.5"
147
56
  },
148
57
  "devDependencies": {
149
- "@libp2p/interface-address-manager": "^3.0.0",
150
- "@libp2p/interface-peer-discovery-compliance-tests": "^2.0.1",
151
- "@libp2p/interface-peer-id": "^2.0.1",
152
- "@libp2p/peer-id-factory": "^2.0.0",
153
- "aegir": "^38.1.2",
58
+ "@libp2p/interface-address-manager": "3.0.1-3dfc236e",
59
+ "@libp2p/interface-peer-discovery-compliance-tests": "2.0.8-3dfc236e",
60
+ "@libp2p/interface-peer-id": "2.0.2-3dfc236e",
61
+ "@libp2p/peer-id-factory": "2.0.3-3dfc236e",
62
+ "aegir": "^39.0.10",
154
63
  "p-wait-for": "^5.0.0",
155
64
  "ts-sinon": "^2.0.2"
65
+ },
66
+ "typedoc": {
67
+ "entryPoint": "./src/index.ts"
156
68
  }
157
69
  }
package/src/index.ts CHANGED
@@ -1,12 +1,12 @@
1
- import multicastDNS from 'multicast-dns'
1
+ import { peerDiscovery } from '@libp2p/interface-peer-discovery'
2
2
  import { CustomEvent, EventEmitter } from '@libp2p/interfaces/events'
3
3
  import { logger } from '@libp2p/logger'
4
+ import multicastDNS from 'multicast-dns'
4
5
  import * as query from './query.js'
5
- import type { PeerDiscovery, PeerDiscoveryEvents } from '@libp2p/interface-peer-discovery'
6
- import type { PeerInfo } from '@libp2p/interface-peer-info'
7
- import { symbol } from '@libp2p/interface-peer-discovery'
8
6
  import { stringGen } from './utils.js'
9
7
  import type { AddressManager } from '@libp2p/interface-address-manager'
8
+ import type { PeerDiscovery, PeerDiscoveryEvents } from '@libp2p/interface-peer-discovery'
9
+ import type { PeerInfo } from '@libp2p/interface-peer-info'
10
10
 
11
11
  const log = logger('libp2p:mdns')
12
12
 
@@ -55,13 +55,9 @@ class MulticastDNS extends EventEmitter<PeerDiscoveryEvents> implements PeerDisc
55
55
  this._onMdnsResponse = this._onMdnsResponse.bind(this)
56
56
  }
57
57
 
58
- get [symbol] (): true {
59
- return true
60
- }
58
+ readonly [peerDiscovery] = this
61
59
 
62
- get [Symbol.toStringTag] (): '@libp2p/mdns' {
63
- return '@libp2p/mdns'
64
- }
60
+ readonly [Symbol.toStringTag] = '@libp2p/mdns'
65
61
 
66
62
  isStarted (): boolean {
67
63
  return Boolean(this.mdns)
package/src/query.ts CHANGED
@@ -1,7 +1,7 @@
1
- import type { PeerInfo } from '@libp2p/interface-peer-info'
2
1
  import { logger } from '@libp2p/logger'
3
2
  import { peerIdFromString } from '@libp2p/peer-id'
4
- import { multiaddr, Multiaddr } from '@multiformats/multiaddr'
3
+ import { multiaddr, type Multiaddr } from '@multiformats/multiaddr'
4
+ import type { PeerInfo } from '@libp2p/interface-peer-info'
5
5
  import type { Answer, StringAnswer, TxtAnswer } from 'dns-packet'
6
6
  import type { MulticastDNS, QueryPacket, ResponsePacket } from 'multicast-dns'
7
7
 
@@ -1,5 +0,0 @@
1
- {
2
- "MulticastDNSComponents": "https://libp2p.github.io/js-libp2p-mdns/interfaces/MulticastDNSComponents.html",
3
- "MulticastDNSInit": "https://libp2p.github.io/js-libp2p-mdns/interfaces/MulticastDNSInit.html",
4
- "mdns": "https://libp2p.github.io/js-libp2p-mdns/functions/mdns.html"
5
- }