@libp2p/daemon-server 4.1.3 → 4.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.min.js +4 -4
- package/package.json +2 -2
package/dist/index.min.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.Libp2PDaemonServer = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
|
2
|
-
"use strict";var Libp2PDaemonServer=(()=>{var Pu=Object.create;var xr=Object.defineProperty;var Mu=Object.getOwnPropertyDescriptor;var Fu=Object.getOwnPropertyNames;var Uu=Object.getPrototypeOf,Gu=Object.prototype.hasOwnProperty;var $t=(r=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(r,{get:(t,e)=>(typeof require<"u"?require:t)[e]}):r)(function(r){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+r+'" is not supported')});var B=(r,t)=>()=>(t||r((t={exports:{}}).exports,t),t.exports),dt=(r,t)=>{for(var e in t)xr(r,e,{get:t[e],enumerable:!0})},lo=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Fu(t))!Gu.call(r,i)&&i!==e&&xr(r,i,{get:()=>t[i],enumerable:!(n=Mu(t,i))||n.enumerable});return r};var M=(r,t,e)=>(e=r!=null?Pu(Uu(r)):{},lo(t||!r||!r.__esModule?xr(e,"default",{value:r,enumerable:!0}):e,r)),$u=r=>lo(xr({},"__esModule",{value:!0}),r);var Oo=B((ad,No)=>{No.exports=Qn;var Lo=128,Yl=127,Jl=~Yl,Ql=Math.pow(2,31);function Qn(r,t,e){if(Number.MAX_SAFE_INTEGER&&r>Number.MAX_SAFE_INTEGER)throw Qn.bytes=0,new RangeError("Could not encode varint");t=t||[],e=e||0;for(var n=e;r>=Ql;)t[e++]=r&255|Lo,r/=128;for(;r&Jl;)t[e++]=r&255|Lo,r>>>=7;return t[e]=r|0,Qn.bytes=e-n+1,t}});var Fo=B((ud,Mo)=>{Mo.exports=ti;var tf=128,Po=127;function ti(r,n){var e=0,n=n||0,i=0,o=n,a,l=r.length;do{if(o>=l||i>49)throw ti.bytes=0,new RangeError("Could not decode varint");a=r[o++],e+=i<28?(a&Po)<<i:(a&Po)*Math.pow(2,i),i+=7}while(a>=tf);return ti.bytes=o-n,e}});var Go=B((ld,Uo)=>{var ef=Math.pow(2,7),rf=Math.pow(2,14),nf=Math.pow(2,21),of=Math.pow(2,28),sf=Math.pow(2,35),cf=Math.pow(2,42),af=Math.pow(2,49),uf=Math.pow(2,56),lf=Math.pow(2,63);Uo.exports=function(r){return r<ef?1:r<rf?2:r<nf?3:r<of?4:r<sf?5:r<cf?6:r<af?7:r<uf?8:r<lf?9:10}});var _r=B((fd,$o)=>{$o.exports={encode:Oo(),decode:Fo(),encodingLength:Go()}});var ai=B((gm,ts)=>{"use strict";function Qo(r,t){for(let e in t)Object.defineProperty(r,e,{value:t[e],enumerable:!0,configurable:!0});return r}function Bf(r,t,e){if(!r||typeof r=="string")throw new TypeError("Please pass an Error to err-code");e||(e={}),typeof t=="object"&&(e=t,t=""),t&&(e.code=t);try{return Qo(r,e)}catch{e.message=r.message,e.stack=r.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(r)),Qo(new i,e)}}ts.exports=Bf});var ds=B((Om,ps)=>{var Me=1e3,Fe=Me*60,Ue=Fe*60,ge=Ue*24,zf=ge*7,Vf=ge*365.25;ps.exports=function(r,t){t=t||{};var e=typeof r;if(e==="string"&&r.length>0)return Hf(r);if(e==="number"&&isFinite(r))return t.long?qf(r):Wf(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function Hf(r){if(r=String(r),!(r.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(t){var e=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return e*Vf;case"weeks":case"week":case"w":return e*zf;case"days":case"day":case"d":return e*ge;case"hours":case"hour":case"hrs":case"hr":case"h":return e*Ue;case"minutes":case"minute":case"mins":case"min":case"m":return e*Fe;case"seconds":case"second":case"secs":case"sec":case"s":return e*Me;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return e;default:return}}}}function Wf(r){var t=Math.abs(r);return t>=ge?Math.round(r/ge)+"d":t>=Ue?Math.round(r/Ue)+"h":t>=Fe?Math.round(r/Fe)+"m":t>=Me?Math.round(r/Me)+"s":r+"ms"}function qf(r){var t=Math.abs(r);return t>=ge?Or(r,t,ge,"day"):t>=Ue?Or(r,t,Ue,"hour"):t>=Fe?Or(r,t,Fe,"minute"):t>=Me?Or(r,t,Me,"second"):r+" ms"}function Or(r,t,e,n){var i=t>=e*1.5;return Math.round(r/e)+" "+n+(i?"s":"")}});var pi=B((Pm,ms)=>{function Zf(r){e.debug=e,e.default=e,e.coerce=f,e.disable=o,e.enable=i,e.enabled=a,e.humanize=ds(),e.destroy=d,Object.keys(r).forEach(h=>{e[h]=r[h]}),e.names=[],e.skips=[],e.formatters={};function t(h){let g=0;for(let w=0;w<h.length;w++)g=(g<<5)-g+h.charCodeAt(w),g|=0;return e.colors[Math.abs(g)%e.colors.length]}e.selectColor=t;function e(h){let g,w=null,S,b;function T(...k){if(!T.enabled)return;let C=T,_=Number(new Date),G=_-(g||_);C.diff=G,C.prev=g,C.curr=_,g=_,k[0]=e.coerce(k[0]),typeof k[0]!="string"&&k.unshift("%O");let W=0;k[0]=k[0].replace(/%([a-zA-Z%])/g,(ct,ot)=>{if(ct==="%%")return"%";W++;let at=e.formatters[ot];if(typeof at=="function"){let Ct=k[W];ct=at.call(C,Ct),k.splice(W,1),W--}return ct}),e.formatArgs.call(C,k),(C.log||e.log).apply(C,k)}return T.namespace=h,T.useColors=e.useColors(),T.color=e.selectColor(h),T.extend=n,T.destroy=e.destroy,Object.defineProperty(T,"enabled",{enumerable:!0,configurable:!1,get:()=>w!==null?w:(S!==e.namespaces&&(S=e.namespaces,b=e.enabled(h)),b),set:k=>{w=k}}),typeof e.init=="function"&&e.init(T),T}function n(h,g){let w=e(this.namespace+(typeof g>"u"?":":g)+h);return w.log=this.log,w}function i(h){e.save(h),e.namespaces=h,e.names=[],e.skips=[];let g,w=(typeof h=="string"?h:"").split(/[\s,]+/),S=w.length;for(g=0;g<S;g++)w[g]&&(h=w[g].replace(/\*/g,".*?"),h[0]==="-"?e.skips.push(new RegExp("^"+h.slice(1)+"$")):e.names.push(new RegExp("^"+h+"$")))}function o(){let h=[...e.names.map(l),...e.skips.map(l).map(g=>"-"+g)].join(",");return e.enable(""),h}function a(h){if(h[h.length-1]==="*")return!0;let g,w;for(g=0,w=e.skips.length;g<w;g++)if(e.skips[g].test(h))return!1;for(g=0,w=e.names.length;g<w;g++)if(e.names[g].test(h))return!0;return!1}function l(h){return h.toString().substring(2,h.toString().length-2).replace(/\.\*\?$/,"*")}function f(h){return h instanceof Error?h.stack||h.message:h}function d(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return e.enable(e.load()),e}ms.exports=Zf});var gs=B((gt,Pr)=>{gt.formatArgs=Kf;gt.save=jf;gt.load=Yf;gt.useColors=Xf;gt.storage=Jf();gt.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`."))}})();gt.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 Xf(){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 Kf(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+Pr.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;r.splice(1,0,t,"color: inherit");let e=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(e++,i==="%c"&&(n=e))}),r.splice(n,0,t)}gt.log=console.debug||console.log||(()=>{});function jf(r){try{r?gt.storage.setItem("debug",r):gt.storage.removeItem("debug")}catch{}}function Yf(){let r;try{r=gt.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function Jf(){try{return localStorage}catch{}}Pr.exports=pi()(gt);var{formatters:Qf}=Pr.exports;Qf.j=function(r){try{return JSON.stringify(r)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var bs=B((Mm,ys)=>{"use strict";ys.exports=(r,t)=>{t=t||process.argv;let e=r.startsWith("-")?"":r.length===1?"-":"--",n=t.indexOf(e+r),i=t.indexOf("--");return n!==-1&&(i===-1?!0:n<i)}});var Es=B((Fm,ws)=>{"use strict";var th=$t("os"),Lt=bs(),tt=process.env,Ge;Lt("no-color")||Lt("no-colors")||Lt("color=false")?Ge=!1:(Lt("color")||Lt("colors")||Lt("color=true")||Lt("color=always"))&&(Ge=!0);"FORCE_COLOR"in tt&&(Ge=tt.FORCE_COLOR.length===0||parseInt(tt.FORCE_COLOR,10)!==0);function eh(r){return r===0?!1:{level:r,hasBasic:!0,has256:r>=2,has16m:r>=3}}function rh(r){if(Ge===!1)return 0;if(Lt("color=16m")||Lt("color=full")||Lt("color=truecolor"))return 3;if(Lt("color=256"))return 2;if(r&&!r.isTTY&&Ge!==!0)return 0;let t=Ge?1:0;if(process.platform==="win32"){let e=th.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if("CI"in tt)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(e=>e in tt)||tt.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in tt)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(tt.TEAMCITY_VERSION)?1:0;if(tt.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in tt){let e=parseInt((tt.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(tt.TERM_PROGRAM){case"iTerm.app":return e>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(tt.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(tt.TERM)||"COLORTERM"in tt?1:(tt.TERM==="dumb",t)}function di(r){let t=rh(r);return eh(t)}ws.exports={supportsColor:di,stdout:di(process.stdout),stderr:di(process.stderr)}});var xs=B((J,Fr)=>{var nh=$t("tty"),Mr=$t("util");J.init=lh;J.log=ch;J.formatArgs=oh;J.save=ah;J.load=uh;J.useColors=ih;J.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`.");J.colors=[6,2,3,4,5,1];try{let r=Es();r&&(r.stderr||r).level>=2&&(J.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{}J.inspectOpts=Object.keys(process.env).filter(r=>/^debug_/i.test(r)).reduce((r,t)=>{let e=t.substring(6).toLowerCase().replace(/_([a-z])/g,(i,o)=>o.toUpperCase()),n=process.env[t];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[e]=n,r},{});function ih(){return"colors"in J.inspectOpts?!!J.inspectOpts.colors:nh.isatty(process.stderr.fd)}function oh(r){let{namespace:t,useColors:e}=this;if(e){let n=this.color,i="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${i};1m${t} \x1B[0m`;r[0]=o+r[0].split(`
|
|
2
|
+
"use strict";var Libp2PDaemonServer=(()=>{var Ou=Object.create;var xr=Object.defineProperty;var Pu=Object.getOwnPropertyDescriptor;var Mu=Object.getOwnPropertyNames;var Fu=Object.getPrototypeOf,Uu=Object.prototype.hasOwnProperty;var $t=(r=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(r,{get:(t,e)=>(typeof require<"u"?require:t)[e]}):r)(function(r){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+r+'" is not supported')});var B=(r,t)=>()=>(t||r((t={exports:{}}).exports,t),t.exports),mt=(r,t)=>{for(var e in t)xr(r,e,{get:t[e],enumerable:!0})},uo=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Mu(t))!Uu.call(r,i)&&i!==e&&xr(r,i,{get:()=>t[i],enumerable:!(n=Pu(t,i))||n.enumerable});return r};var M=(r,t,e)=>(e=r!=null?Ou(Fu(r)):{},uo(t||!r||!r.__esModule?xr(e,"default",{value:r,enumerable:!0}):e,r)),Gu=r=>uo(xr({},"__esModule",{value:!0}),r);var No=B((cd,Lo)=>{Lo.exports=Qn;var Ro=128,jl=127,Yl=~jl,Jl=Math.pow(2,31);function Qn(r,t,e){if(Number.MAX_SAFE_INTEGER&&r>Number.MAX_SAFE_INTEGER)throw Qn.bytes=0,new RangeError("Could not encode varint");t=t||[],e=e||0;for(var n=e;r>=Jl;)t[e++]=r&255|Ro,r/=128;for(;r&Yl;)t[e++]=r&255|Ro,r>>>=7;return t[e]=r|0,Qn.bytes=e-n+1,t}});var Mo=B((ad,Po)=>{Po.exports=ti;var Ql=128,Oo=127;function ti(r,n){var e=0,n=n||0,i=0,o=n,a,l=r.length;do{if(o>=l||i>49)throw ti.bytes=0,new RangeError("Could not decode varint");a=r[o++],e+=i<28?(a&Oo)<<i:(a&Oo)*Math.pow(2,i),i+=7}while(a>=Ql);return ti.bytes=o-n,e}});var Uo=B((ud,Fo)=>{var tf=Math.pow(2,7),ef=Math.pow(2,14),rf=Math.pow(2,21),nf=Math.pow(2,28),of=Math.pow(2,35),sf=Math.pow(2,42),cf=Math.pow(2,49),af=Math.pow(2,56),uf=Math.pow(2,63);Fo.exports=function(r){return r<tf?1:r<ef?2:r<rf?3:r<nf?4:r<of?5:r<sf?6:r<cf?7:r<af?8:r<uf?9:10}});var _r=B((ld,Go)=>{Go.exports={encode:No(),decode:Mo(),encodingLength:Uo()}});var ls=B((Om,us)=>{var Me=1e3,Fe=Me*60,Ue=Fe*60,ge=Ue*24,Gf=ge*7,$f=ge*365.25;us.exports=function(r,t){t=t||{};var e=typeof r;if(e==="string"&&r.length>0)return zf(r);if(e==="number"&&isFinite(r))return t.long?Hf(r):Vf(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function zf(r){if(r=String(r),!(r.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(t){var e=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return e*$f;case"weeks":case"week":case"w":return e*Gf;case"days":case"day":case"d":return e*ge;case"hours":case"hour":case"hrs":case"hr":case"h":return e*Ue;case"minutes":case"minute":case"mins":case"min":case"m":return e*Fe;case"seconds":case"second":case"secs":case"sec":case"s":return e*Me;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return e;default:return}}}}function Vf(r){var t=Math.abs(r);return t>=ge?Math.round(r/ge)+"d":t>=Ue?Math.round(r/Ue)+"h":t>=Fe?Math.round(r/Fe)+"m":t>=Me?Math.round(r/Me)+"s":r+"ms"}function Hf(r){var t=Math.abs(r);return t>=ge?Or(r,t,ge,"day"):t>=Ue?Or(r,t,Ue,"hour"):t>=Fe?Or(r,t,Fe,"minute"):t>=Me?Or(r,t,Me,"second"):r+" ms"}function Or(r,t,e,n){var i=t>=e*1.5;return Math.round(r/e)+" "+n+(i?"s":"")}});var hi=B((Pm,fs)=>{function Wf(r){e.debug=e,e.default=e,e.coerce=f,e.disable=o,e.enable=i,e.enabled=a,e.humanize=ls(),e.destroy=d,Object.keys(r).forEach(h=>{e[h]=r[h]}),e.names=[],e.skips=[],e.formatters={};function t(h){let g=0;for(let w=0;w<h.length;w++)g=(g<<5)-g+h.charCodeAt(w),g|=0;return e.colors[Math.abs(g)%e.colors.length]}e.selectColor=t;function e(h){let g,w=null,S,b;function T(...k){if(!T.enabled)return;let C=T,_=Number(new Date),G=_-(g||_);C.diff=G,C.prev=g,C.curr=_,g=_,k[0]=e.coerce(k[0]),typeof k[0]!="string"&&k.unshift("%O");let W=0;k[0]=k[0].replace(/%([a-zA-Z%])/g,(at,ot)=>{if(at==="%%")return"%";W++;let ut=e.formatters[ot];if(typeof ut=="function"){let Ct=k[W];at=ut.call(C,Ct),k.splice(W,1),W--}return at}),e.formatArgs.call(C,k),(C.log||e.log).apply(C,k)}return T.namespace=h,T.useColors=e.useColors(),T.color=e.selectColor(h),T.extend=n,T.destroy=e.destroy,Object.defineProperty(T,"enabled",{enumerable:!0,configurable:!1,get:()=>w!==null?w:(S!==e.namespaces&&(S=e.namespaces,b=e.enabled(h)),b),set:k=>{w=k}}),typeof e.init=="function"&&e.init(T),T}function n(h,g){let w=e(this.namespace+(typeof g>"u"?":":g)+h);return w.log=this.log,w}function i(h){e.save(h),e.namespaces=h,e.names=[],e.skips=[];let g,w=(typeof h=="string"?h:"").split(/[\s,]+/),S=w.length;for(g=0;g<S;g++)w[g]&&(h=w[g].replace(/\*/g,".*?"),h[0]==="-"?e.skips.push(new RegExp("^"+h.slice(1)+"$")):e.names.push(new RegExp("^"+h+"$")))}function o(){let h=[...e.names.map(l),...e.skips.map(l).map(g=>"-"+g)].join(",");return e.enable(""),h}function a(h){if(h[h.length-1]==="*")return!0;let g,w;for(g=0,w=e.skips.length;g<w;g++)if(e.skips[g].test(h))return!1;for(g=0,w=e.names.length;g<w;g++)if(e.names[g].test(h))return!0;return!1}function l(h){return h.toString().substring(2,h.toString().length-2).replace(/\.\*\?$/,"*")}function f(h){return h instanceof Error?h.stack||h.message:h}function d(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return e.enable(e.load()),e}fs.exports=Wf});var hs=B((yt,Pr)=>{yt.formatArgs=Zf;yt.save=Xf;yt.load=Kf;yt.useColors=qf;yt.storage=jf();yt.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`."))}})();yt.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 qf(){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 Zf(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+Pr.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;r.splice(1,0,t,"color: inherit");let e=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(e++,i==="%c"&&(n=e))}),r.splice(n,0,t)}yt.log=console.debug||console.log||(()=>{});function Xf(r){try{r?yt.storage.setItem("debug",r):yt.storage.removeItem("debug")}catch{}}function Kf(){let r;try{r=yt.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function jf(){try{return localStorage}catch{}}Pr.exports=hi()(yt);var{formatters:Yf}=Pr.exports;Yf.j=function(r){try{return JSON.stringify(r)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var ds=B((Mm,ps)=>{"use strict";ps.exports=(r,t)=>{t=t||process.argv;let e=r.startsWith("-")?"":r.length===1?"-":"--",n=t.indexOf(e+r),i=t.indexOf("--");return n!==-1&&(i===-1?!0:n<i)}});var gs=B((Fm,ms)=>{"use strict";var Jf=$t("os"),Lt=ds(),tt=process.env,Ge;Lt("no-color")||Lt("no-colors")||Lt("color=false")?Ge=!1:(Lt("color")||Lt("colors")||Lt("color=true")||Lt("color=always"))&&(Ge=!0);"FORCE_COLOR"in tt&&(Ge=tt.FORCE_COLOR.length===0||parseInt(tt.FORCE_COLOR,10)!==0);function Qf(r){return r===0?!1:{level:r,hasBasic:!0,has256:r>=2,has16m:r>=3}}function th(r){if(Ge===!1)return 0;if(Lt("color=16m")||Lt("color=full")||Lt("color=truecolor"))return 3;if(Lt("color=256"))return 2;if(r&&!r.isTTY&&Ge!==!0)return 0;let t=Ge?1:0;if(process.platform==="win32"){let e=Jf.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if("CI"in tt)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(e=>e in tt)||tt.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in tt)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(tt.TEAMCITY_VERSION)?1:0;if(tt.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in tt){let e=parseInt((tt.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(tt.TERM_PROGRAM){case"iTerm.app":return e>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(tt.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(tt.TERM)||"COLORTERM"in tt?1:(tt.TERM==="dumb",t)}function pi(r){let t=th(r);return Qf(t)}ms.exports={supportsColor:pi,stdout:pi(process.stdout),stderr:pi(process.stderr)}});var bs=B((J,Fr)=>{var eh=$t("tty"),Mr=$t("util");J.init=ah;J.log=oh;J.formatArgs=nh;J.save=sh;J.load=ch;J.useColors=rh;J.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`.");J.colors=[6,2,3,4,5,1];try{let r=gs();r&&(r.stderr||r).level>=2&&(J.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{}J.inspectOpts=Object.keys(process.env).filter(r=>/^debug_/i.test(r)).reduce((r,t)=>{let e=t.substring(6).toLowerCase().replace(/_([a-z])/g,(i,o)=>o.toUpperCase()),n=process.env[t];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[e]=n,r},{});function rh(){return"colors"in J.inspectOpts?!!J.inspectOpts.colors:eh.isatty(process.stderr.fd)}function nh(r){let{namespace:t,useColors:e}=this;if(e){let n=this.color,i="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${i};1m${t} \x1B[0m`;r[0]=o+r[0].split(`
|
|
3
3
|
`).join(`
|
|
4
|
-
`+o),r.push(i+"m+"+Fr.exports.humanize(this.diff)+"\x1B[0m")}else r[0]=
|
|
5
|
-
`)}function
|
|
6
|
-
`).map(t=>t.trim()).join(" ")};vs.O=function(r){return this.inspectOpts.colors=this.useColors,Mr.inspect(r,this.inspectOpts)}});var Ss=B((Um,mi)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?mi.exports=gs():mi.exports=xs()});var Ur=B((Hm,Ts)=>{Ts.exports=r=>{if(r[Symbol.asyncIterator])return r;if(r.getReader)return async function*(){let t=r.getReader();try{for(;;){let{done:e,value:n}=await t.read();if(e)return;yield n}}finally{t.releaseLock()}}();throw new Error("unknown stream")}});var Is=B((Wm,As)=>{As.exports=function(t){if(t){if(typeof t[Symbol.iterator]=="function")return t[Symbol.iterator]();if(typeof t[Symbol.asyncIterator]=="function")return t[Symbol.asyncIterator]();if(typeof t.next=="function")return t}throw new Error("argument is not an iterator or iterable")}});var gi=B((qm,Cs)=>{var hh=Is();Cs.exports=r=>async t=>{t=hh(t);let e=C=>{typeof C.return=="function"&&C.return()},n=null,i=null,o=C=>{n=C,i&&i(C),e(t)},a=null,l=!1,f=()=>{l=!0,a&&a()},d=null,h=!1,g=()=>{h=!0,d&&d()},w=null,S=()=>{w&&w()},b=()=>new Promise((C,_)=>{a=w=C,i=_,r.once("drain",S)}),T=()=>(e(t),new Promise((C,_)=>{if(l||h||n)return C();d=a=C,i=_})),k=()=>{r.removeListener("error",o),r.removeListener("close",f),r.removeListener("finish",g),r.removeListener("drain",S)};r.once("error",o),r.once("close",f),r.once("finish",g);try{for await(let C of t){if(!r.writable||r.destroyed||n)break;r.write(C)===!1&&await b()}}catch(C){n||r.destroy(),n=C}try{if(r.writable&&r.end(),await T(),n)throw n}finally{k()}}});var yi=B((Zm,_s)=>{var ph=gi(),dh=Ur();_s.exports=r=>({sink:ph(r),source:dh(r)})});var Bs=B((Xm,ks)=>{var mh=yi();ks.exports=r=>async function*(t){let e=mh(r),n;if(e.sink(t).catch(i=>{n=i}),yield*e.source,n)throw n}});var Ds=B((Km,$e)=>{$e.exports=Ur();$e.exports.source=Ur();$e.exports.sink=gi();$e.exports.transform=Bs();$e.exports.duplex=yi()});var wi=B((zr,Ns)=>{(function(){var r,t=0xdeadbeefcafe,e=(t&16777215)==15715070;function n(s,c,u){s!=null&&(typeof s=="number"?this.fromNumber(s,c,u):c==null&&typeof s!="string"?this.fromString(s,256):this.fromString(s,c))}function i(){return new n(null)}function o(s,c,u,p,m,y){for(;--y>=0;){var E=c*this[s++]+u[p]+m;m=Math.floor(E/67108864),u[p++]=E&67108863}return m}function a(s,c,u,p,m,y){for(var E=c&32767,v=c>>15;--y>=0;){var N=this[s]&32767,j=this[s++]>>15,Et=v*N+j*E;N=E*N+((Et&32767)<<15)+u[p]+(m&1073741823),m=(N>>>30)+(Et>>>15)+v*j+(m>>>30),u[p++]=N&1073741823}return m}function l(s,c,u,p,m,y){for(var E=c&16383,v=c>>14;--y>=0;){var N=this[s]&16383,j=this[s++]>>14,Et=v*N+j*E;N=E*N+((Et&16383)<<14)+u[p]+m,m=(N>>28)+(Et>>14)+v*j,u[p++]=N&268435455}return m}var f=typeof navigator<"u";f&&e&&navigator.appName=="Microsoft Internet Explorer"?(n.prototype.am=a,r=30):f&&e&&navigator.appName!="Netscape"?(n.prototype.am=o,r=26):(n.prototype.am=l,r=28),n.prototype.DB=r,n.prototype.DM=(1<<r)-1,n.prototype.DV=1<<r;var d=52;n.prototype.FV=Math.pow(2,d),n.prototype.F1=d-r,n.prototype.F2=2*r-d;var h="0123456789abcdefghijklmnopqrstuvwxyz",g=new Array,w,S;for(w="0".charCodeAt(0),S=0;S<=9;++S)g[w++]=S;for(w="a".charCodeAt(0),S=10;S<36;++S)g[w++]=S;for(w="A".charCodeAt(0),S=10;S<36;++S)g[w++]=S;function b(s){return h.charAt(s)}function T(s,c){var u=g[s.charCodeAt(c)];return u??-1}function k(s){for(var c=this.t-1;c>=0;--c)s[c]=this[c];s.t=this.t,s.s=this.s}function C(s){this.t=1,this.s=s<0?-1:0,s>0?this[0]=s:s<-1?this[0]=s+this.DV:this.t=0}function _(s){var c=i();return c.fromInt(s),c}function G(s,c){var u;if(c==16)u=4;else if(c==8)u=3;else if(c==256)u=8;else if(c==2)u=1;else if(c==32)u=5;else if(c==4)u=2;else{this.fromRadix(s,c);return}this.t=0,this.s=0;for(var p=s.length,m=!1,y=0;--p>=0;){var E=u==8?s[p]&255:T(s,p);if(E<0){s.charAt(p)=="-"&&(m=!0);continue}m=!1,y==0?this[this.t++]=E:y+u>this.DB?(this[this.t-1]|=(E&(1<<this.DB-y)-1)<<y,this[this.t++]=E>>this.DB-y):this[this.t-1]|=E<<y,y+=u,y>=this.DB&&(y-=this.DB)}u==8&&s[0]&128&&(this.s=-1,y>0&&(this[this.t-1]|=(1<<this.DB-y)-1<<y)),this.clamp(),m&&n.ZERO.subTo(this,this)}function W(){for(var s=this.s&this.DM;this.t>0&&this[this.t-1]==s;)--this.t}function ft(s){if(this.s<0)return"-"+this.negate().toString(s);var c;if(s==16)c=4;else if(s==8)c=3;else if(s==2)c=1;else if(s==32)c=5;else if(s==4)c=2;else return this.toRadix(s);var u=(1<<c)-1,p,m=!1,y="",E=this.t,v=this.DB-E*this.DB%c;if(E-- >0)for(v<this.DB&&(p=this[E]>>v)>0&&(m=!0,y=b(p));E>=0;)v<c?(p=(this[E]&(1<<v)-1)<<c-v,p|=this[--E]>>(v+=this.DB-c)):(p=this[E]>>(v-=c)&u,v<=0&&(v+=this.DB,--E)),p>0&&(m=!0),m&&(y+=b(p));return m?y:"0"}function ct(){var s=i();return n.ZERO.subTo(this,s),s}function ot(){return this.s<0?this.negate():this}function at(s){var c=this.s-s.s;if(c!=0)return c;var u=this.t;if(c=u-s.t,c!=0)return this.s<0?-c:c;for(;--u>=0;)if((c=this[u]-s[u])!=0)return c;return 0}function Ct(s){var c=1,u;return(u=s>>>16)!=0&&(s=u,c+=16),(u=s>>8)!=0&&(s=u,c+=8),(u=s>>4)!=0&&(s=u,c+=4),(u=s>>2)!=0&&(s=u,c+=2),(u=s>>1)!=0&&(s=u,c+=1),c}function ra(){return this.t<=0?0:this.DB*(this.t-1)+Ct(this[this.t-1]^this.s&this.DM)}function na(s,c){var u;for(u=this.t-1;u>=0;--u)c[u+s]=this[u];for(u=s-1;u>=0;--u)c[u]=0;c.t=this.t+s,c.s=this.s}function ia(s,c){for(var u=s;u<this.t;++u)c[u-s]=this[u];c.t=Math.max(this.t-s,0),c.s=this.s}function oa(s,c){var u=s%this.DB,p=this.DB-u,m=(1<<p)-1,y=Math.floor(s/this.DB),E=this.s<<u&this.DM,v;for(v=this.t-1;v>=0;--v)c[v+y+1]=this[v]>>p|E,E=(this[v]&m)<<u;for(v=y-1;v>=0;--v)c[v]=0;c[y]=E,c.t=this.t+y+1,c.s=this.s,c.clamp()}function sa(s,c){c.s=this.s;var u=Math.floor(s/this.DB);if(u>=this.t){c.t=0;return}var p=s%this.DB,m=this.DB-p,y=(1<<p)-1;c[0]=this[u]>>p;for(var E=u+1;E<this.t;++E)c[E-u-1]|=(this[E]&y)<<m,c[E-u]=this[E]>>p;p>0&&(c[this.t-u-1]|=(this.s&y)<<m),c.t=this.t-u,c.clamp()}function ca(s,c){for(var u=0,p=0,m=Math.min(s.t,this.t);u<m;)p+=this[u]-s[u],c[u++]=p&this.DM,p>>=this.DB;if(s.t<this.t){for(p-=s.s;u<this.t;)p+=this[u],c[u++]=p&this.DM,p>>=this.DB;p+=this.s}else{for(p+=this.s;u<s.t;)p-=s[u],c[u++]=p&this.DM,p>>=this.DB;p-=s.s}c.s=p<0?-1:0,p<-1?c[u++]=this.DV+p:p>0&&(c[u++]=p),c.t=u,c.clamp()}function aa(s,c){var u=this.abs(),p=s.abs(),m=u.t;for(c.t=m+p.t;--m>=0;)c[m]=0;for(m=0;m<p.t;++m)c[m+u.t]=u.am(0,p[m],c,m,0,u.t);c.s=0,c.clamp(),this.s!=s.s&&n.ZERO.subTo(c,c)}function ua(s){for(var c=this.abs(),u=s.t=2*c.t;--u>=0;)s[u]=0;for(u=0;u<c.t-1;++u){var p=c.am(u,c[u],s,2*u,0,1);(s[u+c.t]+=c.am(u+1,2*c[u],s,2*u+1,p,c.t-u-1))>=c.DV&&(s[u+c.t]-=c.DV,s[u+c.t+1]=1)}s.t>0&&(s[s.t-1]+=c.am(u,c[u],s,2*u,0,1)),s.s=0,s.clamp()}function la(s,c,u){var p=s.abs();if(!(p.t<=0)){var m=this.abs();if(m.t<p.t){c?.fromInt(0),u!=null&&this.copyTo(u);return}u==null&&(u=i());var y=i(),E=this.s,v=s.s,N=this.DB-Ct(p[p.t-1]);N>0?(p.lShiftTo(N,y),m.lShiftTo(N,u)):(p.copyTo(y),m.copyTo(u));var j=y.t,Et=y[j-1];if(Et!=0){var pt=Et*(1<<this.F1)+(j>1?y[j-2]>>this.F2:0),Gt=this.FV/pt,Er=(1<<this.F1)/pt,kt=1<<this.F2,Bt=u.t,vr=Bt-j,Yt=c??i();for(y.dlShiftTo(vr,Yt),u.compareTo(Yt)>=0&&(u[u.t++]=1,u.subTo(Yt,u)),n.ONE.dlShiftTo(j,Yt),Yt.subTo(y,y);y.t<j;)y[y.t++]=0;for(;--vr>=0;){var Cn=u[--Bt]==Et?this.DM:Math.floor(u[Bt]*Gt+(u[Bt-1]+kt)*Er);if((u[Bt]+=y.am(0,Cn,u,vr,0,j))<Cn)for(y.dlShiftTo(vr,Yt),u.subTo(Yt,u);u[Bt]<--Cn;)u.subTo(Yt,u)}c!=null&&(u.drShiftTo(j,c),E!=v&&n.ZERO.subTo(c,c)),u.t=j,u.clamp(),N>0&&u.rShiftTo(N,u),E<0&&n.ZERO.subTo(u,u)}}}function fa(s){var c=i();return this.abs().divRemTo(s,null,c),this.s<0&&c.compareTo(n.ZERO)>0&&s.subTo(c,c),c}function ae(s){this.m=s}function ha(s){return s.s<0||s.compareTo(this.m)>=0?s.mod(this.m):s}function pa(s){return s}function da(s){s.divRemTo(this.m,null,s)}function ma(s,c,u){s.multiplyTo(c,u),this.reduce(u)}function ga(s,c){s.squareTo(c),this.reduce(c)}ae.prototype.convert=ha,ae.prototype.revert=pa,ae.prototype.reduce=da,ae.prototype.mulTo=ma,ae.prototype.sqrTo=ga;function ya(){if(this.t<1)return 0;var s=this[0];if(!(s&1))return 0;var c=s&3;return c=c*(2-(s&15)*c)&15,c=c*(2-(s&255)*c)&255,c=c*(2-((s&65535)*c&65535))&65535,c=c*(2-s*c%this.DV)%this.DV,c>0?this.DV-c:-c}function ue(s){this.m=s,this.mp=s.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<s.DB-15)-1,this.mt2=2*s.t}function ba(s){var c=i();return s.abs().dlShiftTo(this.m.t,c),c.divRemTo(this.m,null,c),s.s<0&&c.compareTo(n.ZERO)>0&&this.m.subTo(c,c),c}function wa(s){var c=i();return s.copyTo(c),this.reduce(c),c}function Ea(s){for(;s.t<=this.mt2;)s[s.t++]=0;for(var c=0;c<this.m.t;++c){var u=s[c]&32767,p=u*this.mpl+((u*this.mph+(s[c]>>15)*this.mpl&this.um)<<15)&s.DM;for(u=c+this.m.t,s[u]+=this.m.am(0,p,s,c,0,this.m.t);s[u]>=s.DV;)s[u]-=s.DV,s[++u]++}s.clamp(),s.drShiftTo(this.m.t,s),s.compareTo(this.m)>=0&&s.subTo(this.m,s)}function va(s,c){s.squareTo(c),this.reduce(c)}function xa(s,c,u){s.multiplyTo(c,u),this.reduce(u)}ue.prototype.convert=ba,ue.prototype.revert=wa,ue.prototype.reduce=Ea,ue.prototype.mulTo=xa,ue.prototype.sqrTo=va;function Sa(){return(this.t>0?this[0]&1:this.s)==0}function Ta(s,c){if(s>4294967295||s<1)return n.ONE;var u=i(),p=i(),m=c.convert(this),y=Ct(s)-1;for(m.copyTo(u);--y>=0;)if(c.sqrTo(u,p),(s&1<<y)>0)c.mulTo(p,m,u);else{var E=u;u=p,p=E}return c.revert(u)}function Aa(s,c){var u;return s<256||c.isEven()?u=new ae(c):u=new ue(c),this.exp(s,u)}n.prototype.copyTo=k,n.prototype.fromInt=C,n.prototype.fromString=G,n.prototype.clamp=W,n.prototype.dlShiftTo=na,n.prototype.drShiftTo=ia,n.prototype.lShiftTo=oa,n.prototype.rShiftTo=sa,n.prototype.subTo=ca,n.prototype.multiplyTo=aa,n.prototype.squareTo=ua,n.prototype.divRemTo=la,n.prototype.invDigit=ya,n.prototype.isEven=Sa,n.prototype.exp=Ta,n.prototype.toString=ft,n.prototype.negate=ct,n.prototype.abs=ot,n.prototype.compareTo=at,n.prototype.bitLength=ra,n.prototype.mod=fa,n.prototype.modPowInt=Aa,n.ZERO=_(0),n.ONE=_(1);function Ia(){var s=i();return this.copyTo(s),s}function Ca(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<<this.DB|this[0]}function _a(){return this.t==0?this.s:this[0]<<24>>24}function ka(){return this.t==0?this.s:this[0]<<16>>16}function Ba(s){return Math.floor(Math.LN2*this.DB/Math.log(s))}function Da(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function Ra(s){if(s==null&&(s=10),this.signum()==0||s<2||s>36)return"0";var c=this.chunkSize(s),u=Math.pow(s,c),p=_(u),m=i(),y=i(),E="";for(this.divRemTo(p,m,y);m.signum()>0;)E=(u+y.intValue()).toString(s).substr(1)+E,m.divRemTo(p,m,y);return y.intValue().toString(s)+E}function La(s,c){this.fromInt(0),c==null&&(c=10);for(var u=this.chunkSize(c),p=Math.pow(c,u),m=!1,y=0,E=0,v=0;v<s.length;++v){var N=T(s,v);if(N<0){s.charAt(v)=="-"&&this.signum()==0&&(m=!0);continue}E=c*E+N,++y>=u&&(this.dMultiply(p),this.dAddOffset(E,0),y=0,E=0)}y>0&&(this.dMultiply(Math.pow(c,y)),this.dAddOffset(E,0)),m&&n.ZERO.subTo(this,this)}function Na(s,c,u){if(typeof c=="number")if(s<2)this.fromInt(1);else for(this.fromNumber(s,u),this.testBit(s-1)||this.bitwiseTo(n.ONE.shiftLeft(s-1),Sn,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(c);)this.dAddOffset(2,0),this.bitLength()>s&&this.subTo(n.ONE.shiftLeft(s-1),this);else{var p=new Array,m=s&7;p.length=(s>>3)+1,c.nextBytes(p),m>0?p[0]&=(1<<m)-1:p[0]=0,this.fromString(p,256)}}function Oa(){var s=this.t,c=new Array;c[0]=this.s;var u=this.DB-s*this.DB%8,p,m=0;if(s-- >0)for(u<this.DB&&(p=this[s]>>u)!=(this.s&this.DM)>>u&&(c[m++]=p|this.s<<this.DB-u);s>=0;)u<8?(p=(this[s]&(1<<u)-1)<<8-u,p|=this[--s]>>(u+=this.DB-8)):(p=this[s]>>(u-=8)&255,u<=0&&(u+=this.DB,--s)),p&128&&(p|=-256),m==0&&(this.s&128)!=(p&128)&&++m,(m>0||p!=this.s)&&(c[m++]=p);return c}function Pa(s){return this.compareTo(s)==0}function Ma(s){return this.compareTo(s)<0?this:s}function Fa(s){return this.compareTo(s)>0?this:s}function Ua(s,c,u){var p,m,y=Math.min(s.t,this.t);for(p=0;p<y;++p)u[p]=c(this[p],s[p]);if(s.t<this.t){for(m=s.s&this.DM,p=y;p<this.t;++p)u[p]=c(this[p],m);u.t=this.t}else{for(m=this.s&this.DM,p=y;p<s.t;++p)u[p]=c(m,s[p]);u.t=s.t}u.s=c(this.s,s.s),u.clamp()}function Ga(s,c){return s&c}function $a(s){var c=i();return this.bitwiseTo(s,Ga,c),c}function Sn(s,c){return s|c}function za(s){var c=i();return this.bitwiseTo(s,Sn,c),c}function io(s,c){return s^c}function Va(s){var c=i();return this.bitwiseTo(s,io,c),c}function oo(s,c){return s&~c}function Ha(s){var c=i();return this.bitwiseTo(s,oo,c),c}function Wa(){for(var s=i(),c=0;c<this.t;++c)s[c]=this.DM&~this[c];return s.t=this.t,s.s=~this.s,s}function qa(s){var c=i();return s<0?this.rShiftTo(-s,c):this.lShiftTo(s,c),c}function Za(s){var c=i();return s<0?this.lShiftTo(-s,c):this.rShiftTo(s,c),c}function Xa(s){if(s==0)return-1;var c=0;return s&65535||(s>>=16,c+=16),s&255||(s>>=8,c+=8),s&15||(s>>=4,c+=4),s&3||(s>>=2,c+=2),s&1||++c,c}function Ka(){for(var s=0;s<this.t;++s)if(this[s]!=0)return s*this.DB+Xa(this[s]);return this.s<0?this.t*this.DB:-1}function ja(s){for(var c=0;s!=0;)s&=s-1,++c;return c}function Ya(){for(var s=0,c=this.s&this.DM,u=0;u<this.t;++u)s+=ja(this[u]^c);return s}function Ja(s){var c=Math.floor(s/this.DB);return c>=this.t?this.s!=0:(this[c]&1<<s%this.DB)!=0}function Qa(s,c){var u=n.ONE.shiftLeft(s);return this.bitwiseTo(u,c,u),u}function tu(s){return this.changeBit(s,Sn)}function eu(s){return this.changeBit(s,oo)}function ru(s){return this.changeBit(s,io)}function nu(s,c){for(var u=0,p=0,m=Math.min(s.t,this.t);u<m;)p+=this[u]+s[u],c[u++]=p&this.DM,p>>=this.DB;if(s.t<this.t){for(p+=s.s;u<this.t;)p+=this[u],c[u++]=p&this.DM,p>>=this.DB;p+=this.s}else{for(p+=this.s;u<s.t;)p+=s[u],c[u++]=p&this.DM,p>>=this.DB;p+=s.s}c.s=p<0?-1:0,p>0?c[u++]=p:p<-1&&(c[u++]=this.DV+p),c.t=u,c.clamp()}function iu(s){var c=i();return this.addTo(s,c),c}function ou(s){var c=i();return this.subTo(s,c),c}function su(s){var c=i();return this.multiplyTo(s,c),c}function cu(){var s=i();return this.squareTo(s),s}function au(s){var c=i();return this.divRemTo(s,c,null),c}function uu(s){var c=i();return this.divRemTo(s,null,c),c}function lu(s){var c=i(),u=i();return this.divRemTo(s,c,u),new Array(c,u)}function fu(s){this[this.t]=this.am(0,s-1,this,0,0,this.t),++this.t,this.clamp()}function hu(s,c){if(s!=0){for(;this.t<=c;)this[this.t++]=0;for(this[c]+=s;this[c]>=this.DV;)this[c]-=this.DV,++c>=this.t&&(this[this.t++]=0),++this[c]}}function Qe(){}function so(s){return s}function pu(s,c,u){s.multiplyTo(c,u)}function du(s,c){s.squareTo(c)}Qe.prototype.convert=so,Qe.prototype.revert=so,Qe.prototype.mulTo=pu,Qe.prototype.sqrTo=du;function mu(s){return this.exp(s,new Qe)}function gu(s,c,u){var p=Math.min(this.t+s.t,c);for(u.s=0,u.t=p;p>0;)u[--p]=0;var m;for(m=u.t-this.t;p<m;++p)u[p+this.t]=this.am(0,s[p],u,p,0,this.t);for(m=Math.min(s.t,c);p<m;++p)this.am(0,s[p],u,p,0,c-p);u.clamp()}function yu(s,c,u){--c;var p=u.t=this.t+s.t-c;for(u.s=0;--p>=0;)u[p]=0;for(p=Math.max(c-this.t,0);p<s.t;++p)u[this.t+p-c]=this.am(c-p,s[p],u,0,0,this.t+p-c);u.clamp(),u.drShiftTo(1,u)}function le(s){this.r2=i(),this.q3=i(),n.ONE.dlShiftTo(2*s.t,this.r2),this.mu=this.r2.divide(s),this.m=s}function bu(s){if(s.s<0||s.t>2*this.m.t)return s.mod(this.m);if(s.compareTo(this.m)<0)return s;var c=i();return s.copyTo(c),this.reduce(c),c}function wu(s){return s}function Eu(s){for(s.drShiftTo(this.m.t-1,this.r2),s.t>this.m.t+1&&(s.t=this.m.t+1,s.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);s.compareTo(this.r2)<0;)s.dAddOffset(1,this.m.t+1);for(s.subTo(this.r2,s);s.compareTo(this.m)>=0;)s.subTo(this.m,s)}function vu(s,c){s.squareTo(c),this.reduce(c)}function xu(s,c,u){s.multiplyTo(c,u),this.reduce(u)}le.prototype.convert=bu,le.prototype.revert=wu,le.prototype.reduce=Eu,le.prototype.mulTo=xu,le.prototype.sqrTo=vu;function Su(s,c){var u=s.bitLength(),p,m=_(1),y;if(u<=0)return m;u<18?p=1:u<48?p=3:u<144?p=4:u<768?p=5:p=6,u<8?y=new ae(c):c.isEven()?y=new le(c):y=new ue(c);var E=new Array,v=3,N=p-1,j=(1<<p)-1;if(E[1]=y.convert(this),p>1){var Et=i();for(y.sqrTo(E[1],Et);v<=j;)E[v]=i(),y.mulTo(Et,E[v-2],E[v]),v+=2}var pt=s.t-1,Gt,Er=!0,kt=i(),Bt;for(u=Ct(s[pt])-1;pt>=0;){for(u>=N?Gt=s[pt]>>u-N&j:(Gt=(s[pt]&(1<<u+1)-1)<<N-u,pt>0&&(Gt|=s[pt-1]>>this.DB+u-N)),v=p;!(Gt&1);)Gt>>=1,--v;if((u-=v)<0&&(u+=this.DB,--pt),Er)E[Gt].copyTo(m),Er=!1;else{for(;v>1;)y.sqrTo(m,kt),y.sqrTo(kt,m),v-=2;v>0?y.sqrTo(m,kt):(Bt=m,m=kt,kt=Bt),y.mulTo(kt,E[Gt],m)}for(;pt>=0&&!(s[pt]&1<<u);)y.sqrTo(m,kt),Bt=m,m=kt,kt=Bt,--u<0&&(u=this.DB-1,--pt)}return y.revert(m)}function Tu(s){var c=this.s<0?this.negate():this.clone(),u=s.s<0?s.negate():s.clone();if(c.compareTo(u)<0){var p=c;c=u,u=p}var m=c.getLowestSetBit(),y=u.getLowestSetBit();if(y<0)return c;for(m<y&&(y=m),y>0&&(c.rShiftTo(y,c),u.rShiftTo(y,u));c.signum()>0;)(m=c.getLowestSetBit())>0&&c.rShiftTo(m,c),(m=u.getLowestSetBit())>0&&u.rShiftTo(m,u),c.compareTo(u)>=0?(c.subTo(u,c),c.rShiftTo(1,c)):(u.subTo(c,u),u.rShiftTo(1,u));return y>0&&u.lShiftTo(y,u),u}function Au(s){if(s<=0)return 0;var c=this.DV%s,u=this.s<0?s-1:0;if(this.t>0)if(c==0)u=this[0]%s;else for(var p=this.t-1;p>=0;--p)u=(c*u+this[p])%s;return u}function Iu(s){var c=s.isEven();if(this.isEven()&&c||s.signum()==0)return n.ZERO;for(var u=s.clone(),p=this.clone(),m=_(1),y=_(0),E=_(0),v=_(1);u.signum()!=0;){for(;u.isEven();)u.rShiftTo(1,u),c?((!m.isEven()||!y.isEven())&&(m.addTo(this,m),y.subTo(s,y)),m.rShiftTo(1,m)):y.isEven()||y.subTo(s,y),y.rShiftTo(1,y);for(;p.isEven();)p.rShiftTo(1,p),c?((!E.isEven()||!v.isEven())&&(E.addTo(this,E),v.subTo(s,v)),E.rShiftTo(1,E)):v.isEven()||v.subTo(s,v),v.rShiftTo(1,v);u.compareTo(p)>=0?(u.subTo(p,u),c&&m.subTo(E,m),y.subTo(v,y)):(p.subTo(u,p),c&&E.subTo(m,E),v.subTo(y,v))}if(p.compareTo(n.ONE)!=0)return n.ZERO;if(v.compareTo(s)>=0)return v.subtract(s);if(v.signum()<0)v.addTo(s,v);else return v;return v.signum()<0?v.add(s):v}var st=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],Cu=(1<<26)/st[st.length-1];function _u(s){var c,u=this.abs();if(u.t==1&&u[0]<=st[st.length-1]){for(c=0;c<st.length;++c)if(u[0]==st[c])return!0;return!1}if(u.isEven())return!1;for(c=1;c<st.length;){for(var p=st[c],m=c+1;m<st.length&&p<Cu;)p*=st[m++];for(p=u.modInt(p);c<m;)if(p%st[c++]==0)return!1}return u.millerRabin(s)}function ku(s){var c=this.subtract(n.ONE),u=c.getLowestSetBit();if(u<=0)return!1;var p=c.shiftRight(u);s=s+1>>1,s>st.length&&(s=st.length);for(var m=i(),y=0;y<s;++y){m.fromInt(st[Math.floor(Math.random()*st.length)]);var E=m.modPow(p,this);if(E.compareTo(n.ONE)!=0&&E.compareTo(c)!=0){for(var v=1;v++<u&&E.compareTo(c)!=0;)if(E=E.modPowInt(2,this),E.compareTo(n.ONE)==0)return!1;if(E.compareTo(c)!=0)return!1}}return!0}n.prototype.chunkSize=Ba,n.prototype.toRadix=Ra,n.prototype.fromRadix=La,n.prototype.fromNumber=Na,n.prototype.bitwiseTo=Ua,n.prototype.changeBit=Qa,n.prototype.addTo=nu,n.prototype.dMultiply=fu,n.prototype.dAddOffset=hu,n.prototype.multiplyLowerTo=gu,n.prototype.multiplyUpperTo=yu,n.prototype.modInt=Au,n.prototype.millerRabin=ku,n.prototype.clone=Ia,n.prototype.intValue=Ca,n.prototype.byteValue=_a,n.prototype.shortValue=ka,n.prototype.signum=Da,n.prototype.toByteArray=Oa,n.prototype.equals=Pa,n.prototype.min=Ma,n.prototype.max=Fa,n.prototype.and=$a,n.prototype.or=za,n.prototype.xor=Va,n.prototype.andNot=Ha,n.prototype.not=Wa,n.prototype.shiftLeft=qa,n.prototype.shiftRight=Za,n.prototype.getLowestSetBit=Ka,n.prototype.bitCount=Ya,n.prototype.testBit=Ja,n.prototype.setBit=tu,n.prototype.clearBit=eu,n.prototype.flipBit=ru,n.prototype.add=iu,n.prototype.subtract=ou,n.prototype.multiply=su,n.prototype.divide=au,n.prototype.remainder=uu,n.prototype.divideAndRemainder=lu,n.prototype.modPow=Su,n.prototype.modInverse=Iu,n.prototype.pow=mu,n.prototype.gcd=Tu,n.prototype.isProbablePrime=_u,n.prototype.square=cu,n.prototype.Barrett=le;var wr,ht,K;function Bu(s){ht[K++]^=s&255,ht[K++]^=s>>8&255,ht[K++]^=s>>16&255,ht[K++]^=s>>24&255,K>=In&&(K-=In)}function co(){Bu(new Date().getTime())}if(ht==null){ht=new Array,K=0;var _t;if(typeof window<"u"&&window.crypto){if(window.crypto.getRandomValues){var ao=new Uint8Array(32);for(window.crypto.getRandomValues(ao),_t=0;_t<32;++_t)ht[K++]=ao[_t]}else if(navigator.appName=="Netscape"&&navigator.appVersion<"5"){var uo=window.crypto.random(32);for(_t=0;_t<uo.length;++_t)ht[K++]=uo.charCodeAt(_t)&255}}for(;K<In;)_t=Math.floor(65536*Math.random()),ht[K++]=_t>>>8,ht[K++]=_t&255;K=0,co()}function Du(){if(wr==null){for(co(),wr=Ou(),wr.init(ht),K=0;K<ht.length;++K)ht[K]=0;K=0}return wr.next()}function Ru(s){var c;for(c=0;c<s.length;++c)s[c]=Du()}function Tn(){}Tn.prototype.nextBytes=Ru;function An(){this.i=0,this.j=0,this.S=new Array}function Lu(s){var c,u,p;for(c=0;c<256;++c)this.S[c]=c;for(u=0,c=0;c<256;++c)u=u+this.S[c]+s[c%s.length]&255,p=this.S[c],this.S[c]=this.S[u],this.S[u]=p;this.i=0,this.j=0}function Nu(){var s;return this.i=this.i+1&255,this.j=this.j+this.S[this.i]&255,s=this.S[this.i],this.S[this.i]=this.S[this.j],this.S[this.j]=s,this.S[s+this.S[this.i]&255]}An.prototype.init=Lu,An.prototype.next=Nu;function Ou(){return new An}var In=256;typeof zr<"u"?zr=Ns.exports={default:n,BigInteger:n,SecureRandom:Tn}:this.jsbn={BigInteger:n,SecureRandom:Tn}}).call(zr)});var lr=B(Vr=>{(function(){"use strict";var r={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function t(a){return n(o(a),arguments)}function e(a,l){return t.apply(null,[a].concat(l||[]))}function n(a,l){var f=1,d=a.length,h,g="",w,S,b,T,k,C,_,G;for(w=0;w<d;w++)if(typeof a[w]=="string")g+=a[w];else if(typeof a[w]=="object"){if(b=a[w],b.keys)for(h=l[f],S=0;S<b.keys.length;S++){if(h==null)throw new Error(t('[sprintf] Cannot access property "%s" of undefined value "%s"',b.keys[S],b.keys[S-1]));h=h[b.keys[S]]}else b.param_no?h=l[b.param_no]:h=l[f++];if(r.not_type.test(b.type)&&r.not_primitive.test(b.type)&&h instanceof Function&&(h=h()),r.numeric_arg.test(b.type)&&typeof h!="number"&&isNaN(h))throw new TypeError(t("[sprintf] expecting number but found %T",h));switch(r.number.test(b.type)&&(_=h>=0),b.type){case"b":h=parseInt(h,10).toString(2);break;case"c":h=String.fromCharCode(parseInt(h,10));break;case"d":case"i":h=parseInt(h,10);break;case"j":h=JSON.stringify(h,null,b.width?parseInt(b.width):0);break;case"e":h=b.precision?parseFloat(h).toExponential(b.precision):parseFloat(h).toExponential();break;case"f":h=b.precision?parseFloat(h).toFixed(b.precision):parseFloat(h);break;case"g":h=b.precision?String(Number(h.toPrecision(b.precision))):parseFloat(h);break;case"o":h=(parseInt(h,10)>>>0).toString(8);break;case"s":h=String(h),h=b.precision?h.substring(0,b.precision):h;break;case"t":h=String(!!h),h=b.precision?h.substring(0,b.precision):h;break;case"T":h=Object.prototype.toString.call(h).slice(8,-1).toLowerCase(),h=b.precision?h.substring(0,b.precision):h;break;case"u":h=parseInt(h,10)>>>0;break;case"v":h=h.valueOf(),h=b.precision?h.substring(0,b.precision):h;break;case"x":h=(parseInt(h,10)>>>0).toString(16);break;case"X":h=(parseInt(h,10)>>>0).toString(16).toUpperCase();break}r.json.test(b.type)?g+=h:(r.number.test(b.type)&&(!_||b.sign)?(G=_?"+":"-",h=h.toString().replace(r.sign,"")):G="",k=b.pad_char?b.pad_char==="0"?"0":b.pad_char.charAt(1):" ",C=b.width-(G+h).length,T=b.width&&C>0?k.repeat(C):"",g+=b.align?G+h+T:k==="0"?G+T+h:T+G+h)}return g}var i=Object.create(null);function o(a){if(i[a])return i[a];for(var l=a,f,d=[],h=0;l;){if((f=r.text.exec(l))!==null)d.push(f[0]);else if((f=r.modulo.exec(l))!==null)d.push("%");else if((f=r.placeholder.exec(l))!==null){if(f[2]){h|=1;var g=[],w=f[2],S=[];if((S=r.key.exec(w))!==null)for(g.push(S[1]);(w=w.substring(S[0].length))!=="";)if((S=r.key_access.exec(w))!==null)g.push(S[1]);else if((S=r.index_access.exec(w))!==null)g.push(S[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");f[2]=g}else h|=2;if(h===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");d.push({placeholder:f[0],param_no:f[1],keys:f[2],sign:f[3],pad_char:f[4],align:f[5],width:f[6],precision:f[7],type:f[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");l=l.substring(f[0].length)}return i[a]=d}typeof Vr<"u"&&(Vr.sprintf=t,Vr.vsprintf=e),typeof window<"u"&&(window.sprintf=t,window.vsprintf=e,typeof define=="function"&&define.amd&&define(function(){return{sprintf:t,vsprintf:e}}))})()});var ac=B((Cg,cc)=>{"use strict";cc.exports=Zh;function Zh(r,t){for(var e=new Array(arguments.length-1),n=0,i=2,o=!0;i<arguments.length;)e[n++]=arguments[i++];return new Promise(function(l,f){e[n]=function(h){if(o)if(o=!1,h)f(h);else{for(var g=new Array(arguments.length-1),w=0;w<g.length;)g[w++]=arguments[w];l.apply(null,g)}};try{r.apply(t||null,e)}catch(d){o&&(o=!1,f(d))}})}});var hc=B(fc=>{"use strict";var nn=fc;nn.length=function(t){var e=t.length;if(!e)return 0;for(var n=0;--e%4>1&&t.charAt(e)==="=";)++n;return Math.ceil(t.length*3)/4-n};var je=new Array(64),lc=new Array(123);for(Ot=0;Ot<64;)lc[je[Ot]=Ot<26?Ot+65:Ot<52?Ot+71:Ot<62?Ot-4:Ot-59|43]=Ot++;var Ot;nn.encode=function(t,e,n){for(var i=null,o=[],a=0,l=0,f;e<n;){var d=t[e++];switch(l){case 0:o[a++]=je[d>>2],f=(d&3)<<4,l=1;break;case 1:o[a++]=je[f|d>>4],f=(d&15)<<2,l=2;break;case 2:o[a++]=je[f|d>>6],o[a++]=je[d&63],l=0;break}a>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,o)),a=0)}return l&&(o[a++]=je[f],o[a++]=61,l===1&&(o[a++]=61)),i?(a&&i.push(String.fromCharCode.apply(String,o.slice(0,a))),i.join("")):String.fromCharCode.apply(String,o.slice(0,a))};var uc="invalid encoding";nn.decode=function(t,e,n){for(var i=n,o=0,a,l=0;l<t.length;){var f=t.charCodeAt(l++);if(f===61&&o>1)break;if((f=lc[f])===void 0)throw Error(uc);switch(o){case 0:a=f,o=1;break;case 1:e[n++]=a<<2|(f&48)>>4,a=f,o=2;break;case 2:e[n++]=(a&15)<<4|(f&60)>>2,a=f,o=3;break;case 3:e[n++]=(a&3)<<6|f,o=0;break}}if(o===1)throw Error(uc);return n-i};nn.test=function(t){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(t)}});var dc=B((kg,pc)=>{"use strict";pc.exports=on;function on(){this._listeners={}}on.prototype.on=function(t,e,n){return(this._listeners[t]||(this._listeners[t]=[])).push({fn:e,ctx:n||this}),this};on.prototype.off=function(t,e){if(t===void 0)this._listeners={};else if(e===void 0)this._listeners[t]=[];else for(var n=this._listeners[t],i=0;i<n.length;)n[i].fn===e?n.splice(i,1):++i;return this};on.prototype.emit=function(t){var e=this._listeners[t];if(e){for(var n=[],i=1;i<arguments.length;)n.push(arguments[i++]);for(i=0;i<e.length;)e[i].fn.apply(e[i++].ctx,n)}return this}});var vc=B((Bg,Ec)=>{"use strict";Ec.exports=mc(mc);function mc(r){return typeof Float32Array<"u"?function(){var t=new Float32Array([-0]),e=new Uint8Array(t.buffer),n=e[3]===128;function i(f,d,h){t[0]=f,d[h]=e[0],d[h+1]=e[1],d[h+2]=e[2],d[h+3]=e[3]}function o(f,d,h){t[0]=f,d[h]=e[3],d[h+1]=e[2],d[h+2]=e[1],d[h+3]=e[0]}r.writeFloatLE=n?i:o,r.writeFloatBE=n?o:i;function a(f,d){return e[0]=f[d],e[1]=f[d+1],e[2]=f[d+2],e[3]=f[d+3],t[0]}function l(f,d){return e[3]=f[d],e[2]=f[d+1],e[1]=f[d+2],e[0]=f[d+3],t[0]}r.readFloatLE=n?a:l,r.readFloatBE=n?l:a}():function(){function t(n,i,o,a){var l=i<0?1:0;if(l&&(i=-i),i===0)n(1/i>0?0:2147483648,o,a);else if(isNaN(i))n(2143289344,o,a);else if(i>34028234663852886e22)n((l<<31|2139095040)>>>0,o,a);else if(i<11754943508222875e-54)n((l<<31|Math.round(i/1401298464324817e-60))>>>0,o,a);else{var f=Math.floor(Math.log(i)/Math.LN2),d=Math.round(i*Math.pow(2,-f)*8388608)&8388607;n((l<<31|f+127<<23|d)>>>0,o,a)}}r.writeFloatLE=t.bind(null,gc),r.writeFloatBE=t.bind(null,yc);function e(n,i,o){var a=n(i,o),l=(a>>31)*2+1,f=a>>>23&255,d=a&8388607;return f===255?d?NaN:l*(1/0):f===0?l*1401298464324817e-60*d:l*Math.pow(2,f-150)*(d+8388608)}r.readFloatLE=e.bind(null,bc),r.readFloatBE=e.bind(null,wc)}(),typeof Float64Array<"u"?function(){var t=new Float64Array([-0]),e=new Uint8Array(t.buffer),n=e[7]===128;function i(f,d,h){t[0]=f,d[h]=e[0],d[h+1]=e[1],d[h+2]=e[2],d[h+3]=e[3],d[h+4]=e[4],d[h+5]=e[5],d[h+6]=e[6],d[h+7]=e[7]}function o(f,d,h){t[0]=f,d[h]=e[7],d[h+1]=e[6],d[h+2]=e[5],d[h+3]=e[4],d[h+4]=e[3],d[h+5]=e[2],d[h+6]=e[1],d[h+7]=e[0]}r.writeDoubleLE=n?i:o,r.writeDoubleBE=n?o:i;function a(f,d){return e[0]=f[d],e[1]=f[d+1],e[2]=f[d+2],e[3]=f[d+3],e[4]=f[d+4],e[5]=f[d+5],e[6]=f[d+6],e[7]=f[d+7],t[0]}function l(f,d){return e[7]=f[d],e[6]=f[d+1],e[5]=f[d+2],e[4]=f[d+3],e[3]=f[d+4],e[2]=f[d+5],e[1]=f[d+6],e[0]=f[d+7],t[0]}r.readDoubleLE=n?a:l,r.readDoubleBE=n?l:a}():function(){function t(n,i,o,a,l,f){var d=a<0?1:0;if(d&&(a=-a),a===0)n(0,l,f+i),n(1/a>0?0:2147483648,l,f+o);else if(isNaN(a))n(0,l,f+i),n(2146959360,l,f+o);else if(a>17976931348623157e292)n(0,l,f+i),n((d<<31|2146435072)>>>0,l,f+o);else{var h;if(a<22250738585072014e-324)h=a/5e-324,n(h>>>0,l,f+i),n((d<<31|h/4294967296)>>>0,l,f+o);else{var g=Math.floor(Math.log(a)/Math.LN2);g===1024&&(g=1023),h=a*Math.pow(2,-g),n(h*4503599627370496>>>0,l,f+i),n((d<<31|g+1023<<20|h*1048576&1048575)>>>0,l,f+o)}}}r.writeDoubleLE=t.bind(null,gc,0,4),r.writeDoubleBE=t.bind(null,yc,4,0);function e(n,i,o,a,l){var f=n(a,l+i),d=n(a,l+o),h=(d>>31)*2+1,g=d>>>20&2047,w=4294967296*(d&1048575)+f;return g===2047?w?NaN:h*(1/0):g===0?h*5e-324*w:h*Math.pow(2,g-1075)*(w+4503599627370496)}r.readDoubleLE=e.bind(null,bc,0,4),r.readDoubleBE=e.bind(null,wc,4,0)}(),r}function gc(r,t,e){t[e]=r&255,t[e+1]=r>>>8&255,t[e+2]=r>>>16&255,t[e+3]=r>>>24}function yc(r,t,e){t[e]=r>>>24,t[e+1]=r>>>16&255,t[e+2]=r>>>8&255,t[e+3]=r&255}function bc(r,t){return(r[t]|r[t+1]<<8|r[t+2]<<16|r[t+3]<<24)>>>0}function wc(r,t){return(r[t]<<24|r[t+1]<<16|r[t+2]<<8|r[t+3])>>>0}});var xc=B((exports,module)=>{"use strict";module.exports=inquire;function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(r){}return null}});var Tc=B(Sc=>{"use strict";var $i=Sc;$i.length=function(t){for(var e=0,n=0,i=0;i<t.length;++i)n=t.charCodeAt(i),n<128?e+=1:n<2048?e+=2:(n&64512)===55296&&(t.charCodeAt(i+1)&64512)===56320?(++i,e+=4):e+=3;return e};$i.read=function(t,e,n){var i=n-e;if(i<1)return"";for(var o=null,a=[],l=0,f;e<n;)f=t[e++],f<128?a[l++]=f:f>191&&f<224?a[l++]=(f&31)<<6|t[e++]&63:f>239&&f<365?(f=((f&7)<<18|(t[e++]&63)<<12|(t[e++]&63)<<6|t[e++]&63)-65536,a[l++]=55296+(f>>10),a[l++]=56320+(f&1023)):a[l++]=(f&15)<<12|(t[e++]&63)<<6|t[e++]&63,l>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,a)),l=0);return o?(l&&o.push(String.fromCharCode.apply(String,a.slice(0,l))),o.join("")):String.fromCharCode.apply(String,a.slice(0,l))};$i.write=function(t,e,n){for(var i=n,o,a,l=0;l<t.length;++l)o=t.charCodeAt(l),o<128?e[n++]=o:o<2048?(e[n++]=o>>6|192,e[n++]=o&63|128):(o&64512)===55296&&((a=t.charCodeAt(l+1))&64512)===56320?(o=65536+((o&1023)<<10)+(a&1023),++l,e[n++]=o>>18|240,e[n++]=o>>12&63|128,e[n++]=o>>6&63|128,e[n++]=o&63|128):(e[n++]=o>>12|224,e[n++]=o>>6&63|128,e[n++]=o&63|128);return n-i}});var Ic=B((Rg,Ac)=>{"use strict";Ac.exports=Xh;function Xh(r,t,e){var n=e||8192,i=n>>>1,o=null,a=n;return function(f){if(f<1||f>i)return r(f);a+f>n&&(o=r(n),a=0);var d=t.call(o,a,a+=f);return a&7&&(a=(a|7)+1),d}}});var _c=B((Lg,Cc)=>{"use strict";Cc.exports=Y;var hr=Te();function Y(r,t){this.lo=r>>>0,this.hi=t>>>0}var Se=Y.zero=new Y(0,0);Se.toNumber=function(){return 0};Se.zzEncode=Se.zzDecode=function(){return this};Se.length=function(){return 1};var Kh=Y.zeroHash="\0\0\0\0\0\0\0\0";Y.fromNumber=function(t){if(t===0)return Se;var e=t<0;e&&(t=-t);var n=t>>>0,i=(t-n)/4294967296>>>0;return e&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new Y(n,i)};Y.from=function(t){if(typeof t=="number")return Y.fromNumber(t);if(hr.isString(t))if(hr.Long)t=hr.Long.fromString(t);else return Y.fromNumber(parseInt(t,10));return t.low||t.high?new Y(t.low>>>0,t.high>>>0):Se};Y.prototype.toNumber=function(t){if(!t&&this.hi>>>31){var e=~this.lo+1>>>0,n=~this.hi>>>0;return e||(n=n+1>>>0),-(e+n*4294967296)}return this.lo+this.hi*4294967296};Y.prototype.toLong=function(t){return hr.Long?new hr.Long(this.lo|0,this.hi|0,!!t):{low:this.lo|0,high:this.hi|0,unsigned:!!t}};var oe=String.prototype.charCodeAt;Y.fromHash=function(t){return t===Kh?Se:new Y((oe.call(t,0)|oe.call(t,1)<<8|oe.call(t,2)<<16|oe.call(t,3)<<24)>>>0,(oe.call(t,4)|oe.call(t,5)<<8|oe.call(t,6)<<16|oe.call(t,7)<<24)>>>0)};Y.prototype.toHash=function(){return String.fromCharCode(this.lo&255,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,this.hi&255,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)};Y.prototype.zzEncode=function(){var t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this};Y.prototype.zzDecode=function(){var t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this};Y.prototype.length=function(){var t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?e===0?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:n<128?9:10}});var Te=B(zi=>{"use strict";var A=zi;A.asPromise=ac();A.base64=hc();A.EventEmitter=dc();A.float=vc();A.inquire=xc();A.utf8=Tc();A.pool=Ic();A.LongBits=_c();A.isNode=!!(typeof globalThis<"u"&&globalThis&&globalThis.process&&globalThis.process.versions&&globalThis.process.versions.node);A.global=A.isNode&&globalThis||typeof window<"u"&&window||typeof self<"u"&&self||zi;A.emptyArray=Object.freeze?Object.freeze([]):[];A.emptyObject=Object.freeze?Object.freeze({}):{};A.isInteger=Number.isInteger||function(t){return typeof t=="number"&&isFinite(t)&&Math.floor(t)===t};A.isString=function(t){return typeof t=="string"||t instanceof String};A.isObject=function(t){return t&&typeof t=="object"};A.isset=A.isSet=function(t,e){var n=t[e];return n!=null&&t.hasOwnProperty(e)?typeof n!="object"||(Array.isArray(n)?n.length:Object.keys(n).length)>0:!1};A.Buffer=function(){try{var r=A.inquire("buffer").Buffer;return r.prototype.utf8Write?r:null}catch{return null}}();A._Buffer_from=null;A._Buffer_allocUnsafe=null;A.newBuffer=function(t){return typeof t=="number"?A.Buffer?A._Buffer_allocUnsafe(t):new A.Array(t):A.Buffer?A._Buffer_from(t):typeof Uint8Array>"u"?t:new Uint8Array(t)};A.Array=typeof Uint8Array<"u"?Uint8Array:Array;A.Long=A.global.dcodeIO&&A.global.dcodeIO.Long||A.global.Long||A.inquire("long");A.key2Re=/^true|false|0|1$/;A.key32Re=/^-?(?:0|[1-9][0-9]*)$/;A.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;A.longToHash=function(t){return t?A.LongBits.from(t).toHash():A.LongBits.zeroHash};A.longFromHash=function(t,e){var n=A.LongBits.fromHash(t);return A.Long?A.Long.fromBits(n.lo,n.hi,e):n.toNumber(!!e)};function kc(r,t,e){for(var n=Object.keys(t),i=0;i<n.length;++i)(r[n[i]]===void 0||!e)&&(r[n[i]]=t[n[i]]);return r}A.merge=kc;A.lcFirst=function(t){return t.charAt(0).toLowerCase()+t.substring(1)};function Bc(r){function t(e,n){if(!(this instanceof t))return new t(e,n);Object.defineProperty(this,"message",{get:function(){return e}}),Error.captureStackTrace?Error.captureStackTrace(this,t):Object.defineProperty(this,"stack",{value:new Error().stack||""}),n&&kc(this,n)}return t.prototype=Object.create(Error.prototype,{constructor:{value:t,writable:!0,enumerable:!1,configurable:!0},name:{get:function(){return r},set:void 0,enumerable:!1,configurable:!0},toString:{value:function(){return this.name+": "+this.message},writable:!0,enumerable:!1,configurable:!0}}),t}A.newError=Bc;A.ProtocolError=Bc("ProtocolError");A.oneOfGetter=function(t){for(var e={},n=0;n<t.length;++n)e[t[n]]=1;return function(){for(var i=Object.keys(this),o=i.length-1;o>-1;--o)if(e[i[o]]===1&&this[i[o]]!==void 0&&this[i[o]]!==null)return i[o]}};A.oneOfSetter=function(t){return function(e){for(var n=0;n<t.length;++n)t[n]!==e&&delete this[t[n]]}};A.toJSONOptions={longs:String,enums:String,bytes:String,json:!0};A._configure=function(){var r=A.Buffer;if(!r){A._Buffer_from=A._Buffer_allocUnsafe=null;return}A._Buffer_from=r.from!==Uint8Array.from&&r.from||function(e,n){return new r(e,n)},A._Buffer_allocUnsafe=r.allocUnsafe||function(e){return new r(e)}}});var Wi=B((Og,Oc)=>{"use strict";Oc.exports=$;var Ft=Te(),Hi,Lc=Ft.LongBits,jh=Ft.utf8;function Pt(r,t){return RangeError("index out of range: "+r.pos+" + "+(t||1)+" > "+r.len)}function $(r){this.buf=r,this.pos=0,this.len=r.length}var Dc=typeof Uint8Array<"u"?function(t){if(t instanceof Uint8Array||Array.isArray(t))return new $(t);throw Error("illegal buffer")}:function(t){if(Array.isArray(t))return new $(t);throw Error("illegal buffer")},Nc=function(){return Ft.Buffer?function(e){return($.create=function(i){return Ft.Buffer.isBuffer(i)?new Hi(i):Dc(i)})(e)}:Dc};$.create=Nc();$.prototype._slice=Ft.Array.prototype.subarray||Ft.Array.prototype.slice;$.prototype.uint32=function(){var t=4294967295;return function(){if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,Pt(this,10);return t}}();$.prototype.int32=function(){return this.uint32()|0};$.prototype.sint32=function(){var t=this.uint32();return t>>>1^-(t&1)|0};function Vi(){var r=new Lc(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(r.lo=(r.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return r;if(r.lo=(r.lo|(this.buf[this.pos]&127)<<28)>>>0,r.hi=(r.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return r;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw Pt(this);if(r.lo=(r.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return r}return r.lo=(r.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,r}if(this.len-this.pos>4){for(;t<5;++t)if(r.hi=(r.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return r}else for(;t<5;++t){if(this.pos>=this.len)throw Pt(this);if(r.hi=(r.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return r}throw Error("invalid varint encoding")}$.prototype.bool=function(){return this.uint32()!==0};function sn(r,t){return(r[t-4]|r[t-3]<<8|r[t-2]<<16|r[t-1]<<24)>>>0}$.prototype.fixed32=function(){if(this.pos+4>this.len)throw Pt(this,4);return sn(this.buf,this.pos+=4)};$.prototype.sfixed32=function(){if(this.pos+4>this.len)throw Pt(this,4);return sn(this.buf,this.pos+=4)|0};function Rc(){if(this.pos+8>this.len)throw Pt(this,8);return new Lc(sn(this.buf,this.pos+=4),sn(this.buf,this.pos+=4))}$.prototype.float=function(){if(this.pos+4>this.len)throw Pt(this,4);var t=Ft.float.readFloatLE(this.buf,this.pos);return this.pos+=4,t};$.prototype.double=function(){if(this.pos+8>this.len)throw Pt(this,4);var t=Ft.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,t};$.prototype.bytes=function(){var t=this.uint32(),e=this.pos,n=this.pos+t;if(n>this.len)throw Pt(this,t);return this.pos+=t,Array.isArray(this.buf)?this.buf.slice(e,n):e===n?new this.buf.constructor(0):this._slice.call(this.buf,e,n)};$.prototype.string=function(){var t=this.bytes();return jh.read(t,0,t.length)};$.prototype.skip=function(t){if(typeof t=="number"){if(this.pos+t>this.len)throw Pt(this,t);this.pos+=t}else do if(this.pos>=this.len)throw Pt(this);while(this.buf[this.pos++]&128);return this};$.prototype.skipType=function(r){switch(r){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(r=this.uint32()&7)!==4;)this.skipType(r);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+r+" at offset "+this.pos)}return this};$._configure=function(r){Hi=r,$.create=Nc(),Hi._configure();var t=Ft.Long?"toLong":"toNumber";Ft.merge($.prototype,{int64:function(){return Vi.call(this)[t](!1)},uint64:function(){return Vi.call(this)[t](!0)},sint64:function(){return Vi.call(this).zzDecode()[t](!1)},fixed64:function(){return Rc.call(this)[t](!0)},sfixed64:function(){return Rc.call(this)[t](!1)}})}});var Uc=B((Pg,Fc)=>{"use strict";Fc.exports=Ae;var Mc=Wi();(Ae.prototype=Object.create(Mc.prototype)).constructor=Ae;var Pc=Te();function Ae(r){Mc.call(this,r)}Ae._configure=function(){Pc.Buffer&&(Ae.prototype._slice=Pc.Buffer.prototype.slice)};Ae.prototype.string=function(){var t=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+t,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+t,this.len))};Ae._configure()});var Ji=B((Mg,Vc)=>{"use strict";Vc.exports=D;var Tt=Te(),qi,cn=Tt.LongBits,Gc=Tt.base64,$c=Tt.utf8;function pr(r,t,e){this.fn=r,this.len=t,this.next=void 0,this.val=e}function Xi(){}function Yh(r){this.head=r.head,this.tail=r.tail,this.len=r.len,this.next=r.states}function D(){this.len=0,this.head=new pr(Xi,0,0),this.tail=this.head,this.states=null}var zc=function(){return Tt.Buffer?function(){return(D.create=function(){return new qi})()}:function(){return new D}};D.create=zc();D.alloc=function(t){return new Tt.Array(t)};Tt.Array!==Array&&(D.alloc=Tt.pool(D.alloc,Tt.Array.prototype.subarray));D.prototype._push=function(t,e,n){return this.tail=this.tail.next=new pr(t,e,n),this.len+=e,this};function Ki(r,t,e){t[e]=r&255}function Jh(r,t,e){for(;r>127;)t[e++]=r&127|128,r>>>=7;t[e]=r}function ji(r,t){this.len=r,this.next=void 0,this.val=t}ji.prototype=Object.create(pr.prototype);ji.prototype.fn=Jh;D.prototype.uint32=function(t){return this.len+=(this.tail=this.tail.next=new ji((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this};D.prototype.int32=function(t){return t<0?this._push(Yi,10,cn.fromNumber(t)):this.uint32(t)};D.prototype.sint32=function(t){return this.uint32((t<<1^t>>31)>>>0)};function Yi(r,t,e){for(;r.hi;)t[e++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)t[e++]=r.lo&127|128,r.lo=r.lo>>>7;t[e++]=r.lo}D.prototype.uint64=function(t){var e=cn.from(t);return this._push(Yi,e.length(),e)};D.prototype.int64=D.prototype.uint64;D.prototype.sint64=function(t){var e=cn.from(t).zzEncode();return this._push(Yi,e.length(),e)};D.prototype.bool=function(t){return this._push(Ki,1,t?1:0)};function Zi(r,t,e){t[e]=r&255,t[e+1]=r>>>8&255,t[e+2]=r>>>16&255,t[e+3]=r>>>24}D.prototype.fixed32=function(t){return this._push(Zi,4,t>>>0)};D.prototype.sfixed32=D.prototype.fixed32;D.prototype.fixed64=function(t){var e=cn.from(t);return this._push(Zi,4,e.lo)._push(Zi,4,e.hi)};D.prototype.sfixed64=D.prototype.fixed64;D.prototype.float=function(t){return this._push(Tt.float.writeFloatLE,4,t)};D.prototype.double=function(t){return this._push(Tt.float.writeDoubleLE,8,t)};var Qh=Tt.Array.prototype.set?function(t,e,n){e.set(t,n)}:function(t,e,n){for(var i=0;i<t.length;++i)e[n+i]=t[i]};D.prototype.bytes=function(t){var e=t.length>>>0;if(!e)return this._push(Ki,1,0);if(Tt.isString(t)){var n=D.alloc(e=Gc.length(t));Gc.decode(t,n,0),t=n}return this.uint32(e)._push(Qh,e,t)};D.prototype.string=function(t){var e=$c.length(t);return e?this.uint32(e)._push($c.write,e,t):this._push(Ki,1,0)};D.prototype.fork=function(){return this.states=new Yh(this),this.head=this.tail=new pr(Xi,0,0),this.len=0,this};D.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new pr(Xi,0,0),this.len=0),this};D.prototype.ldelim=function(){var t=this.head,e=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=t.next,this.tail=e,this.len+=n),this};D.prototype.finish=function(){for(var t=this.head.next,e=this.constructor.alloc(this.len),n=0;t;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e};D._configure=function(r){qi=r,D.create=zc(),qi._configure()}});var qc=B((Fg,Wc)=>{"use strict";Wc.exports=Ut;var Hc=Ji();(Ut.prototype=Object.create(Hc.prototype)).constructor=Ut;var se=Te();function Ut(){Hc.call(this)}Ut._configure=function(){Ut.alloc=se._Buffer_allocUnsafe,Ut.writeBytesBuffer=se.Buffer&&se.Buffer.prototype instanceof Uint8Array&&se.Buffer.prototype.set.name==="set"?function(t,e,n){e.set(t,n)}:function(t,e,n){if(t.copy)t.copy(e,n,0,t.length);else for(var i=0;i<t.length;)e[n++]=t[i++]}};Ut.prototype.bytes=function(t){se.isString(t)&&(t=se._Buffer_from(t,"base64"));var e=t.length>>>0;return this.uint32(e),e&&this._push(Ut.writeBytesBuffer,e,t),this};function tp(r,t,e){r.length<40?se.utf8.write(r,t,e):t.utf8Write?t.utf8Write(r,e):t.write(r,e)}Ut.prototype.string=function(t){var e=se.Buffer.byteLength(t);return this.uint32(e),e&&this._push(tp,e,t),this};Ut._configure()});var fp={};dt(fp,{Server:()=>xn,createServer:()=>lp});var js=M($t("net"),1);var Jt=$t("node:net");function Sr(r){return!!(0,Jt.isIP)(r)}var Rn={};dt(Rn,{identity:()=>Zu});function zu(r,t){if(r.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),n=0;n<e.length;n++)e[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),a=o.charCodeAt(0);if(e[a]!==255)throw new TypeError(o+" is ambiguous");e[a]=i}var l=r.length,f=r.charAt(0),d=Math.log(l)/Math.log(256),h=Math.log(256)/Math.log(l);function g(b){if(b instanceof Uint8Array||(ArrayBuffer.isView(b)?b=new Uint8Array(b.buffer,b.byteOffset,b.byteLength):Array.isArray(b)&&(b=Uint8Array.from(b))),!(b instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(b.length===0)return"";for(var T=0,k=0,C=0,_=b.length;C!==_&&b[C]===0;)C++,T++;for(var G=(_-C)*h+1>>>0,W=new Uint8Array(G);C!==_;){for(var ft=b[C],ct=0,ot=G-1;(ft!==0||ct<k)&&ot!==-1;ot--,ct++)ft+=256*W[ot]>>>0,W[ot]=ft%l>>>0,ft=ft/l>>>0;if(ft!==0)throw new Error("Non-zero carry");k=ct,C++}for(var at=G-k;at!==G&&W[at]===0;)at++;for(var Ct=f.repeat(T);at<G;++at)Ct+=r.charAt(W[at]);return Ct}function w(b){if(typeof b!="string")throw new TypeError("Expected String");if(b.length===0)return new Uint8Array;var T=0;if(b[T]!==" "){for(var k=0,C=0;b[T]===f;)k++,T++;for(var _=(b.length-T)*d+1>>>0,G=new Uint8Array(_);b[T];){var W=e[b.charCodeAt(T)];if(W===255)return;for(var ft=0,ct=_-1;(W!==0||ft<C)&&ct!==-1;ct--,ft++)W+=l*G[ct]>>>0,G[ct]=W%256>>>0,W=W/256>>>0;if(W!==0)throw new Error("Non-zero carry");C=ft,T++}if(b[T]!==" "){for(var ot=_-C;ot!==_&&G[ot]===0;)ot++;for(var at=new Uint8Array(k+(_-ot)),Ct=k;ot!==_;)at[Ct++]=G[ot++];return at}}}function S(b){var T=w(b);if(T)return T;throw new Error(`Non-${t} character`)}return{encode:g,decodeUnsafe:w,decode:S}}var Vu=zu,Hu=Vu,fo=Hu;var mp=new Uint8Array(0);var ho=(r,t)=>{if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0},vt=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 po=r=>new TextEncoder().encode(r),mo=r=>new TextDecoder().decode(r);var _n=class{constructor(t,e,n){this.name=t,this.prefix=e,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},kn=class{constructor(t,e,n){if(this.name=t,this.prefix=e,e.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=e.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return yo(this,t)}},Bn=class{constructor(t){this.decoders=t}or(t){return yo(this,t)}decode(t){let e=t[0],n=this.decoders[e];if(n)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},yo=(r,t)=>new Bn({...r.decoders||{[r.prefix]:r},...t.decoders||{[t.prefix]:t}}),Dn=class{constructor(t,e,n,i){this.name=t,this.prefix=e,this.baseEncode=n,this.baseDecode=i,this.encoder=new _n(t,e,n),this.decoder=new kn(t,e,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},ke=({name:r,prefix:t,encode:e,decode:n})=>new Dn(r,t,e,n),Qt=({prefix:r,name:t,alphabet:e})=>{let{encode:n,decode:i}=fo(e,t);return ke({prefix:r,name:t,encode:n,decode:o=>vt(i(o))})},Wu=(r,t,e,n)=>{let i={};for(let h=0;h<t.length;++h)i[t[h]]=h;let o=r.length;for(;r[o-1]==="=";)--o;let a=new Uint8Array(o*e/8|0),l=0,f=0,d=0;for(let h=0;h<o;++h){let g=i[r[h]];if(g===void 0)throw new SyntaxError(`Non-${n} character`);f=f<<e|g,l+=e,l>=8&&(l-=8,a[d++]=255&f>>l)}if(l>=e||255&f<<8-l)throw new SyntaxError("Unexpected end of data");return a},qu=(r,t,e)=>{let n=t[t.length-1]==="=",i=(1<<e)-1,o="",a=0,l=0;for(let f=0;f<r.length;++f)for(l=l<<8|r[f],a+=8;a>e;)a-=e,o+=t[i&l>>a];if(a&&(o+=t[i&l<<e-a]),n)for(;o.length*e&7;)o+="=";return o},F=({name:r,prefix:t,bitsPerChar:e,alphabet:n})=>ke({prefix:t,name:r,encode(i){return qu(i,n,e)},decode(i){return Wu(i,n,e,r)}});var Zu=ke({prefix:"\0",name:"identity",encode:r=>mo(r),decode:r=>po(r)});var Ln={};dt(Ln,{base2:()=>Xu});var Xu=F({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Nn={};dt(Nn,{base8:()=>Ku});var Ku=F({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var On={};dt(On,{base10:()=>ju});var ju=Qt({prefix:"9",name:"base10",alphabet:"0123456789"});var Pn={};dt(Pn,{base16:()=>Yu,base16upper:()=>Ju});var Yu=F({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Ju=F({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Mn={};dt(Mn,{base32:()=>Dt,base32hex:()=>rl,base32hexpad:()=>il,base32hexpadupper:()=>ol,base32hexupper:()=>nl,base32pad:()=>tl,base32padupper:()=>el,base32upper:()=>Qu,base32z:()=>sl});var Dt=F({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Qu=F({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),tl=F({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),el=F({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),rl=F({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),nl=F({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),il=F({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),ol=F({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),sl=F({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Fn={};dt(Fn,{base36:()=>cl,base36upper:()=>al});var cl=Qt({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),al=Qt({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Un={};dt(Un,{base58btc:()=>q,base58flickr:()=>ul});var q=Qt({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),ul=Qt({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var $n={};dt($n,{base64:()=>Gn,base64pad:()=>ll,base64url:()=>fl,base64urlpad:()=>hl});var Gn=F({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),ll=F({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),fl=F({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),hl=F({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var zn={};dt(zn,{base256emoji:()=>yl});var bo=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}"),pl=bo.reduce((r,t,e)=>(r[e]=t,r),[]),dl=bo.reduce((r,t,e)=>(r[t.codePointAt(0)]=e,r),[]);function ml(r){return r.reduce((t,e)=>(t+=pl[e],t),"")}function gl(r){let t=[];for(let e of r){let n=dl[e.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${e}`);t.push(n)}return new Uint8Array(t)}var yl=ke({prefix:"\u{1F680}",name:"base256emoji",encode:ml,decode:gl});var Zn={};dt(Zn,{sha256:()=>Ar,sha512:()=>Pl});var qn=M($t("crypto"),1);var bl=vo,wo=128,wl=127,El=~wl,vl=Math.pow(2,31);function vo(r,t,e){t=t||[],e=e||0;for(var n=e;r>=vl;)t[e++]=r&255|wo,r/=128;for(;r&El;)t[e++]=r&255|wo,r>>>=7;return t[e]=r|0,vo.bytes=e-n+1,t}var xl=Vn,Sl=128,Eo=127;function Vn(r,n){var e=0,n=n||0,i=0,o=n,a,l=r.length;do{if(o>=l)throw Vn.bytes=0,new RangeError("Could not decode varint");a=r[o++],e+=i<28?(a&Eo)<<i:(a&Eo)*Math.pow(2,i),i+=7}while(a>=Sl);return Vn.bytes=o-n,e}var Tl=Math.pow(2,7),Al=Math.pow(2,14),Il=Math.pow(2,21),Cl=Math.pow(2,28),_l=Math.pow(2,35),kl=Math.pow(2,42),Bl=Math.pow(2,49),Dl=Math.pow(2,56),Rl=Math.pow(2,63),Ll=function(r){return r<Tl?1:r<Al?2:r<Il?3:r<Cl?4:r<_l?5:r<kl?6:r<Bl?7:r<Dl?8:r<Rl?9:10},Nl={encode:bl,decode:xl,encodingLength:Ll},Ol=Nl,tr=Ol;var er=(r,t=0)=>[tr.decode(r,t),tr.decode.bytes],Be=(r,t,e=0)=>(tr.encode(r,t,e),t),De=r=>tr.encodingLength(r);var te=(r,t)=>{let e=t.byteLength,n=De(r),i=n+De(e),o=new Uint8Array(i+e);return Be(r,o,0),Be(e,o,n),o.set(t,i),new Re(r,e,t,o)},fe=r=>{let t=vt(r),[e,n]=er(t),[i,o]=er(t.subarray(n)),a=t.subarray(n+o);if(a.byteLength!==i)throw new Error("Incorrect length");return new Re(e,i,a,t)},xo=(r,t)=>{if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&ho(r.bytes,e.bytes)}},Re=class{constructor(t,e,n,i){this.code=t,this.size=e,this.digest=n,this.bytes=i}};var Wn=({name:r,code:t,encode:e})=>new Hn(r,t,e),Hn=class{constructor(t,e,n){this.name=t,this.code=e,this.encode=n}digest(t){if(t instanceof Uint8Array){let e=this.encode(t);return e instanceof Uint8Array?te(this.code,e):e.then(n=>te(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Ar=Wn({name:"sha2-256",code:18,encode:r=>vt(qn.default.createHash("sha256").update(r).digest())}),Pl=Wn({name:"sha2-512",code:19,encode:r=>vt(qn.default.createHash("sha512").update(r).digest())});var Xn={};dt(Xn,{identity:()=>Ir});var To=0,Ml="identity",Ao=vt,Fl=r=>te(To,Ao(r)),Ir={code:To,name:Ml,encode:Ao,digest:Fl};var Mp=new TextEncoder,Fp=new TextDecoder;var Io=(r,t)=>{let{bytes:e,version:n}=r;switch(n){case 0:return zl(e,Kn(r),t||q.encoder);default:return Vl(e,Kn(r),t||Dt.encoder)}};var Co=new WeakMap,Kn=r=>{let t=Co.get(r);if(t==null){let e=new Map;return Co.set(r,e),e}return t},R=class{constructor(t,e,n,i){this.code=e,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:e}=this;if(t!==rr)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==Hl)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return R.createV0(e)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:e}=this.multihash,n=te(t,e);return R.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return R.equals(this,t)}static equals(t,e){let n=e;return n&&t.code===n.code&&t.version===n.version&&xo(t.multihash,n.multihash)}toString(t){return Io(this,t)}toJSON(){return{"/":Io(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let e=t;if(e instanceof R)return e;if(e["/"]!=null&&e["/"]===e.bytes||e.asCID===e){let{version:n,code:i,multihash:o,bytes:a}=e;return new R(n,i,o,a||_o(n,i,o.bytes))}else if(e[Wl]===!0){let{version:n,multihash:i,code:o}=e,a=fe(i);return R.create(n,o,a)}else return null}static create(t,e,n){if(typeof e!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(e!==rr)throw new Error(`Version 0 CID must use dag-pb (code: ${rr}) block encoding`);return new R(t,e,n,n.bytes)}case 1:{let i=_o(t,e,n.bytes);return new R(t,e,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return R.create(0,rr,t)}static createV1(t,e){return R.create(1,t,e)}static decode(t){let[e,n]=R.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return e}static decodeFirst(t){let e=R.inspectBytes(t),n=e.size-e.multihashSize,i=vt(t.subarray(n,n+e.multihashSize));if(i.byteLength!==e.multihashSize)throw new Error("Incorrect length");let o=i.subarray(e.multihashSize-e.digestSize),a=new Re(e.multihashCode,e.digestSize,o,i);return[e.version===0?R.createV0(a):R.createV1(e.codec,a),t.subarray(e.size)]}static inspectBytes(t){let e=0,n=()=>{let[g,w]=er(t.subarray(e));return e+=w,g},i=n(),o=rr;if(i===18?(i=0,e=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let a=e,l=n(),f=n(),d=e+f,h=d-a;return{version:i,codec:o,multihashCode:l,digestSize:f,multihashSize:h,size:d}}static parse(t,e){let[n,i]=$l(t,e),o=R.decode(i);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Kn(o).set(n,t),o}},$l=(r,t)=>{switch(r[0]){case"Q":{let e=t||q;return[q.prefix,e.decode(`${q.prefix}${r}`)]}case q.prefix:{let e=t||q;return[q.prefix,e.decode(r)]}case Dt.prefix:{let e=t||Dt;return[Dt.prefix,e.decode(r)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],t.decode(r)]}}},zl=(r,t,e)=>{let{prefix:n}=e;if(n!==q.prefix)throw Error(`Cannot string encode V0 in ${e.name} encoding`);let i=t.get(n);if(i==null){let o=e.encode(r).slice(1);return t.set(n,o),o}else return i},Vl=(r,t,e)=>{let{prefix:n}=e,i=t.get(n);if(i==null){let o=e.encode(r);return t.set(n,o),o}else return i},rr=112,Hl=18,_o=(r,t,e)=>{let n=De(r),i=n+De(t),o=new Uint8Array(i+e.byteLength);return Be(r,o,0),Be(t,o,n),o.set(e,i),o},Wl=Symbol.for("@ipld/js-cid/CID");var ee={...Rn,...Ln,...Nn,...On,...Pn,...Mn,...Fn,...Un,...$n,...zn},Xp={...Zn,...Xn};function pe(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function zt(r=0){return globalThis.Buffer?.alloc!=null?pe(globalThis.Buffer.alloc(r)):new Uint8Array(r)}function Rt(r=0){return globalThis.Buffer?.allocUnsafe!=null?pe(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}function Bo(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var ko=Bo("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),jn=Bo("ascii","a",r=>{let t="a";for(let e=0;e<r.length;e++)t+=String.fromCharCode(r[e]);return t},r=>{r=r.substring(1);let t=Rt(r.length);for(let e=0;e<r.length;e++)t[e]=r.charCodeAt(e);return t}),ql={utf8:ko,"utf-8":ko,hex:ee.base16,latin1:jn,ascii:jn,binary:jn,...ee},Cr=ql;function ut(r,t="utf8"){let e=Cr[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r.buffer,r.byteOffset,r.byteLength).toString("utf8"):e.encoder.encode(r).substring(1)}var Do=Jt.isIPv4,Zl=Jt.isIPv6,Yn=function(r){let t=0;if(r=r.toString().trim(),Do(r)){let e=new Uint8Array(t+4);return r.split(/\./g).forEach(n=>{e[t++]=parseInt(n,10)&255}),e}if(Zl(r)){let e=r.split(":",8),n;for(n=0;n<e.length;n++){let o=Do(e[n]),a;o&&(a=Yn(e[n]),e[n]=ut(a.slice(0,2),"base16")),a!=null&&++n<8&&e.splice(n,0,ut(a.slice(2,4),"base16"))}if(e[0]==="")for(;e.length<8;)e.unshift("0");else if(e[e.length-1]==="")for(;e.length<8;)e.push("0");else if(e.length<8){for(n=0;n<e.length&&e[n]!=="";n++);let o=[n,1];for(n=9-e.length;n>0;n--)o.push("0");e.splice.apply(e,o)}let i=new Uint8Array(t+16);for(n=0;n<e.length;n++){let o=parseInt(e[n],16);i[t++]=o>>8&255,i[t++]=o&255}return i}throw new Error("invalid ip address")},Ro=function(r,t=0,e){t=~~t,e=e??r.length-t;let n=new DataView(r.buffer);if(e===4){let i=[];for(let o=0;o<e;o++)i.push(r[t+o]);return i.join(".")}if(e===16){let i=[];for(let o=0;o<e;o+=2)i.push(n.getUint16(t+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var nr={},Jn={},Kl=[[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"]];Kl.forEach(r=>{let t=jl(...r);Jn[t.code]=t,nr[t.name]=t});function jl(r,t,e,n,i){return{code:r,size:t,name:e,resolvable:!!n,path:!!i}}function L(r){if(typeof r=="number"){if(Jn[r]!=null)return Jn[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 Mt=M(_r(),1);function ir(r,t="utf8"){let e=Cr[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?pe(globalThis.Buffer.from(r,"utf-8")):e.decoder.decode(`${e.prefix}${r}`)}function xt(r,t){t==null&&(t=r.reduce((i,o)=>i+o.length,0));let e=Rt(t),n=0;for(let i of r)e.set(i,n),n+=i.length;return pe(e)}var kr=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let e=this.index,n=t();return n===void 0&&(this.index=e),n}parseWith(t){let e=t();if(this.index===this.input.length)return e}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let e=this.readChar();if(e===t)return e})}readSeparator(t,e,n){return this.readAtomically(()=>{if(!(e>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,e,n,i){return this.readAtomically(()=>{let o=0,a=0,l=this.peekChar();if(l===void 0)return;let f=l==="0",d=2**(8*i)-1;for(;;){let h=this.readAtomically(()=>{let g=this.readChar();if(g===void 0)return;let w=Number.parseInt(g,t);if(!Number.isNaN(w))return w});if(h===void 0)break;if(o*=t,o+=h,o>d||(a+=1,e!==void 0&&a>e))return}if(a!==0)return!n&&f&&a>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let e=0;e<t.length;e++){let n=this.readSeparator(".",e,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[e]=n}return t})}readIPv6Addr(){let t=e=>{for(let n=0;n<e.length/2;n++){let i=n*2;if(n<e.length-3){let a=this.readSeparator(":",n,()=>this.readIPv4Addr());if(a!==void 0)return e[i]=a[0],e[i+1]=a[1],e[i+2]=a[2],e[i+3]=a[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];e[i]=o>>8,e[i+1]=o&255}return[e.length,!1]};return this.readAtomically(()=>{let e=new Uint8Array(16),[n,i]=t(e);if(n===16)return e;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),a=16-(n+2),[l]=t(o.subarray(0,a));return e.set(o.subarray(0,l),16-l),e})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Ed=new kr;var _d=parseInt("0xFFFF",16),kd=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);var am=L("ip4"),um=L("ip6"),lm=L("ipcidr");function Xo(r,t){switch(L(r).code){case 4:case 41:return yf(t);case 42:return qo(t);case 6:case 273:case 33:case 132:return jo(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return qo(t);case 421:return vf(t);case 444:return Zo(t);case 445:return Zo(t);case 466:return Ef(t);default:return ut(t,"base16")}}function Ko(r,t){switch(L(r).code){case 4:return Ho(t);case 41:return Ho(t);case 42:return Wo(t);case 6:case 273:case 33:case 132:return ri(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Wo(t);case 421:return bf(t);case 444:return xf(t);case 445:return Sf(t);case 466:return wf(t);default:return ir(t,"base16")}}var ei=Object.values(ee).map(r=>r.decoder),gf=function(){let r=ei[0].or(ei[1]);return ei.slice(2).forEach(t=>r=r.or(t)),r}();function Ho(r){if(!Sr(r))throw new Error("invalid ip address");return Yn(r)}function yf(r){let t=Ro(r,0,r.length);if(t==null)throw new Error("ipBuff is required");if(!Sr(t))throw new Error("invalid ip address");return t}function ri(r){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,r),new Uint8Array(t)}function jo(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function Wo(r){let t=ir(r),e=Uint8Array.from(Mt.default.encode(t.length));return xt([e,t],e.length+t.length)}function qo(r){let t=Mt.default.decode(r);if(r=r.slice(Mt.default.decode.bytes),r.length!==t)throw new Error("inconsistent lengths");return ut(r)}function bf(r){let t;r[0]==="Q"||r[0]==="1"?t=fe(q.decode(`z${r}`)).bytes:t=R.parse(r).multihash.bytes;let e=Uint8Array.from(Mt.default.encode(t.length));return xt([e,t],e.length+t.length)}function wf(r){let t=gf.decode(r),e=Uint8Array.from(Mt.default.encode(t.length));return xt([e,t],e.length+t.length)}function Ef(r){let t=Mt.default.decode(r),e=r.slice(Mt.default.decode.bytes);if(e.length!==t)throw new Error("inconsistent lengths");return"u"+ut(e,"base64url")}function vf(r){let t=Mt.default.decode(r),e=r.slice(Mt.default.decode.bytes);if(e.length!==t)throw new Error("inconsistent lengths");return ut(e,"base58btc")}function xf(r){let t=r.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let e=Dt.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=ri(n);return xt([e,i],e.length+i.length)}function Sf(r){let t=r.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let e=Dt.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=ri(n);return xt([e,i],e.length+i.length)}function Zo(r){let t=r.slice(0,r.length-2),e=r.slice(r.length-2),n=ut(t,"base32"),i=jo(e);return`${n}:${i}`}var Le=M(_r(),1);function Tf(r){let t=[],e=r.split("/").slice(1);if(e.length===1&&e[0]==="")return[];for(let n=0;n<e.length;n++){let i=e[n],o=L(i);if(o.size===0){t.push([i]);continue}if(n++,n>=e.length)throw Jo("invalid address: "+r);if(o.path===!0){t.push([i,ci(e.slice(n).join("/"))]);break}t.push([i,e[n]])}return t}function Af(r){let t=[];return r.map(e=>{let n=Rr(e);return t.push(n.name),e.length>1&&e[1]!=null&&t.push(e[1]),null}),ci(t.join("/"))}function If(r){return r.map(t=>{Array.isArray(t)||(t=[t]);let e=Rr(t);return t.length>1?[e.code,Ko(e.code,t[1])]:[e.code]})}function ni(r){return r.map(t=>{let e=Rr(t);return t[1]!=null?[e.code,Xo(e.code,t[1])]:[e.code]})}function ii(r){return Dr(xt(r.map(t=>{let e=Rr(t),n=Uint8Array.from(Le.default.encode(e.code));return t.length>1&&t[1]!=null&&(n=xt([n,t[1]])),n})))}function oi(r,t){return r.size>0?r.size/8:r.size===0?0:Le.default.decode(t)+(Le.default.decode.bytes??0)}function Br(r){let t=[],e=0;for(;e<r.length;){let n=Le.default.decode(r,e),i=Le.default.decode.bytes??0,o=L(n),a=oi(o,r.slice(e+i));if(a===0){t.push([n]),e+=i;continue}let l=r.slice(e+i,e+i+a);if(e+=a+i,e>r.length)throw Jo("Invalid address Uint8Array: "+ut(r,"base16"));t.push([n,l])}return t}function si(r){let t=Br(r),e=ni(t);return Af(e)}function Cf(r){r=ci(r);let t=Tf(r),e=If(t);return ii(e)}function Yo(r){return Cf(r)}function Dr(r){let t=_f(r);if(t!=null)throw t;return Uint8Array.from(r)}function _f(r){try{Br(r)}catch(t){return t}}function ci(r){return"/"+r.trim().split("/").filter(t=>t).join("/")}function Jo(r){return new Error("Error parsing address: "+r)}function Rr(r){return L(r[0])}var li=M(_r(),1);var rs=M(ai(),1);function de(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}var Ne=function(r,t,e,n){if(e==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?r!==t||!n:!t.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?n:e==="a"?n.call(r):n?n.value:t.get(r)},ui=function(r,t,e,n,i){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?r!==t||!i:!t.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?i.call(r,e):i?i.value=e:t.set(r,e),e},or,sr,cr,es,Df=Symbol.for("nodejs.util.inspect.custom"),Rf=[L("dns").code,L("dns4").code,L("dns6").code,L("dnsaddr").code],Lf=new Map,ns=Symbol.for("@multiformats/js-multiaddr/multiaddr");function Nf(r){return!!r?.[ns]}var Vt=class{constructor(t){if(or.set(this,void 0),sr.set(this,void 0),cr.set(this,void 0),this[es]=!0,t==null&&(t=""),t instanceof Uint8Array)this.bytes=Dr(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);this.bytes=Yo(t)}else if(Nf(t))this.bytes=Dr(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr")}toString(){return Ne(this,or,"f")==null&&ui(this,or,si(this.bytes),"f"),Ne(this,or,"f")}toJSON(){return this.toString()}toOptions(){let t,e,n,i,o="",a=L("tcp"),l=L("udp"),f=L("ip4"),d=L("ip6"),h=L("dns6"),g=L("ip6zone");for(let[S,b]of this.stringTuples())S===g.code&&(o=`%${b??""}`),Rf.includes(S)&&(e=a.name,i=443,n=`${b??""}${o}`,t=S===h.code?6:4),(S===a.code||S===l.code)&&(e=L(S).name,i=parseInt(b??"")),(S===f.code||S===d.code)&&(e=L(S).name,n=`${b??""}${o}`,t=S===d.code?6:4);if(t==null||e==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:e,port:i}}protos(){return this.protoCodes().map(t=>Object.assign({},L(t)))}protoCodes(){let t=[],e=this.bytes,n=0;for(;n<e.length;){let i=li.default.decode(e,n),o=li.default.decode.bytes??0,a=L(i),l=oi(a,e.slice(n+o));n+=l+o,t.push(i)}return t}protoNames(){return this.protos().map(t=>t.name)}tuples(){return Ne(this,sr,"f")==null&&ui(this,sr,Br(this.bytes),"f"),Ne(this,sr,"f")}stringTuples(){return Ne(this,cr,"f")==null&&ui(this,cr,ni(this.tuples()),"f"),Ne(this,cr,"f")}encapsulate(t){return t=new Vt(t),new Vt(this.toString()+t.toString())}decapsulate(t){let e=t.toString(),n=this.toString(),i=n.lastIndexOf(e);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new Vt(n.slice(0,i))}decapsulateCode(t){let e=this.tuples();for(let n=e.length-1;n>=0;n--)if(e[n][0]===t)return new Vt(ii(e.slice(0,n)));return this}getPeerId(){try{let e=this.stringTuples().filter(n=>n[0]===nr.ipfs.code).pop();if(e?.[1]!=null){let n=e[1];return n[0]==="Q"||n[0]==="1"?ut(q.decode(`z${n}`),"base58btc"):ut(R.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){let t=null;try{t=this.stringTuples().filter(e=>L(e[0]).path===!0)[0][1],t==null&&(t=null)}catch{t=null}return t}equals(t){return de(this.bytes,t.bytes)}async resolve(t){let e=this.protos().find(o=>o.resolvable);if(e==null)return[this];let n=Lf.get(e.name);if(n==null)throw(0,rs.default)(new Error(`no available resolver for ${e.name}`),"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new Vt(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let e=(t??this).protos();return!(e.length!==2||e[0].code!==4&&e[0].code!==41||e[1].code!==6&&e[1].code!==273)}[(or=new WeakMap,sr=new WeakMap,cr=new WeakMap,es=ns,Df)](){return`Multiaddr(${si(this.bytes)})`}};function mt(r){return new Vt(r)}var Of=x("dns4"),Pf=x("dns6"),Mf=x("dnsaddr"),me=Z(x("dns"),Mf,Of,Pf),Lr=Z(x("ip4"),x("ip6")),ne=Z(I(Lr,x("tcp")),I(me,x("tcp"))),Nr=I(Lr,x("udp")),Ff=I(Nr,x("utp")),Uf=I(Nr,x("quic")),Gf=I(Nr,x("quic-v1")),ar=Z(I(ne,x("ws")),I(me,x("ws"))),ur=Z(I(ne,x("wss")),I(me,x("wss")),I(ne,x("tls"),x("ws")),I(me,x("tls"),x("ws"))),fi=Z(I(ne,x("http")),I(Lr,x("http")),I(me,x("http"))),hi=Z(I(ne,x("https")),I(Lr,x("https")),I(me,x("https"))),is=I(Nr,x("webrtc-direct"),x("certhash")),cs=Z(I(is,x("p2p")),is),os=I(Gf,x("webtransport"),x("certhash"),x("certhash")),as=Z(I(os,x("p2p")),os),us=Z(I(ar,x("p2p-webrtc-star"),x("p2p")),I(ur,x("p2p-webrtc-star"),x("p2p")),I(ar,x("p2p-webrtc-star")),I(ur,x("p2p-webrtc-star"))),Dm=Z(I(ar,x("p2p-websocket-star"),x("p2p")),I(ur,x("p2p-websocket-star"),x("p2p")),I(ar,x("p2p-websocket-star")),I(ur,x("p2p-websocket-star"))),ls=Z(I(fi,x("p2p-webrtc-direct"),x("p2p")),I(hi,x("p2p-webrtc-direct"),x("p2p")),I(fi,x("p2p-webrtc-direct")),I(hi,x("p2p-webrtc-direct"))),Pe=Z(ar,ur,fi,hi,us,ls,ne,Ff,Uf,me,cs,as),Rm=Z(I(Pe,x("p2p-stardust"),x("p2p")),I(Pe,x("p2p-stardust"))),re=Z(I(Pe,x("p2p")),us,ls,cs,as,x("p2p")),ss=Z(I(re,x("p2p-circuit"),re),I(re,x("p2p-circuit")),I(x("p2p-circuit"),re),I(Pe,x("p2p-circuit")),I(x("p2p-circuit"),Pe),x("p2p-circuit")),fs=()=>Z(I(ss,fs),ss),Oe=fs(),Lm=Z(I(Oe,re,Oe),I(re,Oe),I(Oe,re),Oe,re);var Nm=Z(I(Oe,x("webrtc")),I(Pe,x("webrtc")),x("webrtc"));function hs(r){function t(e){let n;try{n=mt(e)}catch{return!1}let i=r(n.protoNames());return i===null?!1:i===!0||i===!1?i:i.length===0}return t}function I(...r){function t(e){if(e.length<r.length)return null;let n=e;return r.some(i=>(n=typeof i=="function"?i().partialMatch(e):i.partialMatch(e),Array.isArray(n)&&(e=n),n===null)),n}return{toString:function(){return"{ "+r.join(" ")+" }"},input:r,matches:hs(t),partialMatch:t}}function Z(...r){function t(n){let i=null;return r.some(o=>{let a=typeof o=="function"?o().partialMatch(n):o.partialMatch(n);return a!=null?(i=a,!0):!1}),i}return{toString:function(){return"{ "+r.join(" ")+" }"},input:r,matches:hs(t),partialMatch:t}}function x(r){let t=r;function e(i){let o;try{o=mt(i)}catch{return!1}let a=o.protoNames();return a.length===1&&a[0]===t}function n(i){return i.length===0?null:i[0]===t?i.slice(1):null}return{toString:function(){return t},matches:e,partialMatch:n}}var St=M(Ss(),1);St.default.formatters.b=r=>r==null?"undefined":q.baseEncode(r);St.default.formatters.t=r=>r==null?"undefined":Dt.baseEncode(r);St.default.formatters.m=r=>r==null?"undefined":Gn.baseEncode(r);St.default.formatters.p=r=>r==null?"undefined":r.toString();St.default.formatters.c=r=>r==null?"undefined":r.toString();St.default.formatters.k=r=>r==null?"undefined":r.toString();function fh(r){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=r,t.destroy=()=>!0,t.extend=()=>t,t}function et(r){let t=fh(`${r}:trace`);return St.default.enabled(`${r}:trace`)&&St.default.names.map(e=>e.toString()).find(e=>e.includes(":trace"))!=null&&(t=(0,St.default)(`${r}:trace`)),Object.assign((0,St.default)(r),{error:(0,St.default)(`${r}:error`),trace:t})}var qs=M(Ds(),1);var Ht=class extends Error{constructor(t="The operation was aborted"){super(t),this.code=Ht.code,this.type=Ht.type}static get code(){return"ABORT_ERR"}static get type(){return"aborted"}},yt=class extends Error{constructor(t,e,n){super(t),this.code=e,this.name=n?.name??"CodeError",this.props=n??{}}};function Gr(r){return this.subnetMask<r.subnetMask?!1:this.mask(r.subnetMask)===r.mask()}function $r(r){return function(){return this.addressMinusSuffix!==this.correctForm()?!1:this.subnetMask===r&&!this.parsedSubnet?!0:this.parsedSubnet===String(this.subnetMask)}}var ze=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g,bi=/\/\d{1,2}$/;var rt=class extends Error{constructor(t,e){super(t),this.name="AddressError",e!==null&&(this.parseMessage=e)}};var Ve=M(wi(),1),ye=M(lr(),1),O=class{constructor(t){this.groups=4,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=$r(32),this.isInSubnet=Gr,this.address=t;let e=bi.exec(t);if(e){if(this.parsedSubnet=e[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>32)throw new rt("Invalid subnet mask.");t=t.replace(bi,"")}this.addressMinusSuffix=t,this.parsedAddress=this.parse(t)}static isValid(t){try{return new O(t),!0}catch{return!1}}parse(t){let e=t.split(".");if(!t.match(ze))throw new rt("Invalid IPv4 address.");return e}correctForm(){return this.parsedAddress.map(t=>parseInt(t,10)).join(".")}static fromHex(t){let e=t.replace(/:/g,"").padStart(8,"0"),n=[],i;for(i=0;i<8;i+=2){let o=e.slice(i,i+2);n.push(parseInt(o,16))}return new O(n.join("."))}static fromInteger(t){return O.fromHex(t.toString(16))}static fromArpa(t){let n=t.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join(".");return new O(n)}toHex(){return this.parsedAddress.map(t=>(0,ye.sprintf)("%02x",parseInt(t,10))).join(":")}toArray(){return this.parsedAddress.map(t=>parseInt(t,10))}toGroup6(){let t=[],e;for(e=0;e<4;e+=2){let n=(0,ye.sprintf)("%02x%02x",parseInt(this.parsedAddress[e],10),parseInt(this.parsedAddress[e+1],10));t.push((0,ye.sprintf)("%x",parseInt(n,16)))}return t.join(":")}bigInteger(){return new Ve.BigInteger(this.parsedAddress.map(t=>(0,ye.sprintf)("%02x",parseInt(t,10))).join(""),16)}_startAddress(){return new Ve.BigInteger(this.mask()+"0".repeat(32-this.subnetMask),2)}startAddress(){return O.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new Ve.BigInteger("1");return O.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new Ve.BigInteger(this.mask()+"1".repeat(32-this.subnetMask),2)}endAddress(){return O.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new Ve.BigInteger("1");return O.fromBigInteger(this._endAddress().subtract(t))}static fromBigInteger(t){return O.fromInteger(parseInt(t.toString(),10))}mask(t){return t===void 0&&(t=this.subnetMask),this.getBitsBase2(0,t)}getBitsBase2(t,e){return this.binaryZeroPad().slice(t,e)}reverseForm(t){t||(t={});let e=this.correctForm().split(".").reverse().join(".");return t.omitSuffix?e:(0,ye.sprintf)("%s.in-addr.arpa.",e)}isMulticast(){return this.isInSubnet(new O("224.0.0.0/4"))}binaryZeroPad(){return this.bigInteger().toString(2).padStart(32,"0")}groupForV6(){let t=this.parsedAddress;return this.address.replace(ze,(0,ye.sprintf)('<span class="hover-group group-v4 group-6">%s</span>.<span class="hover-group group-v4 group-7">%s</span>',t.slice(0,2).join("."),t.slice(2,4).join(".")))}};var Ps={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"},Ei={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"},vi=/([^0-9a-f:/%])/gi,xi=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi,Si=/\/\d{1,3}(?=%|$)/,Ti=/%.*$/,Ms=new RegExp(/^\[{0,1}([0-9a-f:]+)\]{0,1}/),Fs=new RegExp(/\[([0-9a-f:]+)\]:([0-9]{1,5})/);var Gs=M(lr(),1);function gh(r){return r.replace(/^(0+)/,'<span class="zero">$1</span>')}function Hr(r,t=0){return r.split(":").map((n,i)=>/group-v4/.test(n)?n:(0,Gs.sprintf)('<span class="hover-group group-%d">%s</span>',i+t,gh(n)))}var we=M(lr(),1);function Ii(r){return(0,we.sprintf)("(%s)",r.join("|"))}function Ai(r){return r.length<4?(0,we.sprintf)("0{0,%d}%s",4-r.length,r):r}var Ci="[^A-Fa-f0-9:]";function Wr(r){let t=[];r.forEach((n,i)=>{parseInt(n,16)===0&&t.push(i)});let e=t.map(n=>r.map((i,o)=>{if(o===n){let a=o===0||o===8-1?":":"";return Ii([Ai(i),a])}return Ai(i)}).join(":"));return e.push(r.map(Ai).join(":")),Ii(e)}function _i(r,t,e){let n=t?"":":",i=e?"":":",o=[];!t&&!e&&o.push("::"),t&&e&&o.push(""),(e&&!t||!e&&t)&&o.push(":"),o.push((0,we.sprintf)("%s(:0{1,4}){1,%d}",n,r-1)),o.push((0,we.sprintf)("(0{1,4}:){1,%d}%s",r-1,i)),o.push((0,we.sprintf)("(0{1,4}:){%d}0{1,4}",r-1));for(let a=1;a<r-1;a++)for(let l=1;l<r-a;l++)o.push((0,we.sprintf)("(0{1,4}:){%d}:(0{1,4}:){%d}0{1,4}",l,r-l-a-1));return Ii(o)}var nt=M(wi(),1),it=M(lr(),1);function qr(r){if(!r)throw new Error("Assertion failed.")}function yh(r){let t=/(\d+)(\d{3})/;for(;t.test(r);)r=r.replace(t,"$1,$2");return r}function bh(r){return r=r.replace(/^(0{1,})([1-9]+)$/,'<span class="parse-error">$1</span>$2'),r=r.replace(/^(0{1,})(0)$/,'<span class="parse-error">$1</span>$2'),r}function wh(r,t){let e=[],n=[],i;for(i=0;i<r.length;i++)i<t[0]?e.push(r[i]):i>t[1]&&n.push(r[i]);return e.concat(["compact"]).concat(n)}function zs(r){return(0,it.sprintf)("%04x",parseInt(r,16))}function Vs(r){return r&255}var U=class{constructor(t,e){this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=Gr,this.isCorrect=$r(128),e===void 0?this.groups=8:this.groups=e,this.address=t;let n=Si.exec(t);if(n){if(this.parsedSubnet=n[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>128)throw new rt("Invalid subnet mask.");t=t.replace(Si,"")}else if(/\//.test(t))throw new rt("Invalid subnet mask.");let i=Ti.exec(t);i&&(this.zone=i[0],t=t.replace(Ti,"")),this.addressMinusSuffix=t,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid(t){try{return new U(t),!0}catch{return!1}}static fromBigInteger(t){let e=t.toString(16).padStart(32,"0"),n=[],i;for(i=0;i<8;i++)n.push(e.slice(i*4,(i+1)*4));return new U(n.join(":"))}static fromURL(t){let e,n=null,i;if(t.indexOf("[")!==-1&&t.indexOf("]:")!==-1){if(i=Fs.exec(t),i===null)return{error:"failed to parse address with port",address:null,port:null};e=i[1],n=i[2]}else if(t.indexOf("/")!==-1){if(t=t.replace(/^[a-z0-9]+:\/\//,""),i=Ms.exec(t),i===null)return{error:"failed to parse address from URL",address:null,port:null};e=i[1]}else e=t;return n?(n=parseInt(n,10),(n<0||n>65536)&&(n=null)):n=null,{address:new U(e),port:n}}static fromAddress4(t){let e=new O(t),n=128-(32-e.subnetMask);return new U(`::ffff:${e.correctForm()}/${n}`)}static fromArpa(t){let e=t.replace(/(\.ip6\.arpa)?\.$/,""),n=7;if(e.length!==63)throw new rt("Invalid 'ip6.arpa' form.");let i=e.split(".").reverse();for(let o=n;o>0;o--){let a=o*4;i.splice(a,0,":")}return e=i.join(""),new U(e)}microsoftTranscription(){return(0,it.sprintf)("%s.ipv6-literal.net",this.correctForm().replace(/:/g,"-"))}mask(t=this.subnetMask){return this.getBitsBase2(0,t)}possibleSubnets(t=128){let e=128-this.subnetMask,n=Math.abs(t-128),i=e-n;return i<0?"0":yh(new nt.BigInteger("2",10).pow(i).toString(10))}_startAddress(){return new nt.BigInteger(this.mask()+"0".repeat(128-this.subnetMask),2)}startAddress(){return U.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new nt.BigInteger("1");return U.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new nt.BigInteger(this.mask()+"1".repeat(128-this.subnetMask),2)}endAddress(){return U.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new nt.BigInteger("1");return U.fromBigInteger(this._endAddress().subtract(t))}getScope(){let t=Ps[this.getBits(12,16).intValue()];return this.getType()==="Global unicast"&&t!=="Link local"&&(t="Global"),t||"Unknown"}getType(){for(let t of Object.keys(Ei))if(this.isInSubnet(new U(t)))return Ei[t];return"Global unicast"}getBits(t,e){return new nt.BigInteger(this.getBitsBase2(t,e),2)}getBitsBase2(t,e){return this.binaryZeroPad().slice(t,e)}getBitsBase16(t,e){let n=e-t;if(n%4!==0)throw new Error("Length of bits to retrieve must be divisible by four");return this.getBits(t,e).toString(16).padStart(n/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,128)}reverseForm(t){t||(t={});let e=Math.floor(this.subnetMask/4),n=this.canonicalForm().replace(/:/g,"").split("").slice(0,e).reverse().join(".");return e>0?t.omitSuffix?n:(0,it.sprintf)("%s.ip6.arpa.",n):t.omitSuffix?"":"ip6.arpa."}correctForm(){let t,e=[],n=0,i=[];for(t=0;t<this.parsedAddress.length;t++){let l=parseInt(this.parsedAddress[t],16);l===0&&n++,l!==0&&n>0&&(n>1&&i.push([t-n,t-1]),n=0)}n>1&&i.push([this.parsedAddress.length-n,this.parsedAddress.length-1]);let o=i.map(l=>l[1]-l[0]+1);if(i.length>0){let l=o.indexOf(Math.max(...o));e=wh(this.parsedAddress,i[l])}else e=this.parsedAddress;for(t=0;t<e.length;t++)e[t]!=="compact"&&(e[t]=parseInt(e[t],16).toString(16));let a=e.join(":");return a=a.replace(/^compact$/,"::"),a=a.replace(/^compact|compact$/,":"),a=a.replace(/compact/,""),a}binaryZeroPad(){return this.bigInteger().toString(2).padStart(128,"0")}parse4in6(t){let e=t.split(":"),i=e.slice(-1)[0].match(ze);if(i){this.parsedAddress4=i[0],this.address4=new O(this.parsedAddress4);for(let o=0;o<this.address4.groups;o++)if(/^0[0-9]+/.test(this.address4.parsedAddress[o]))throw new rt("IPv4 addresses can't have leading zeroes.",t.replace(ze,this.address4.parsedAddress.map(bh).join(".")));this.v4=!0,e[e.length-1]=this.address4.toGroup6(),t=e.join(":")}return t}parse(t){t=this.parse4in6(t);let e=t.match(vi);if(e)throw new rt((0,it.sprintf)("Bad character%s detected in address: %s",e.length>1?"s":"",e.join("")),t.replace(vi,'<span class="parse-error">$1</span>'));let n=t.match(xi);if(n)throw new rt((0,it.sprintf)("Address failed regex: %s",n.join("")),t.replace(xi,'<span class="parse-error">$1</span>'));let i=[],o=t.split("::");if(o.length===2){let a=o[0].split(":"),l=o[1].split(":");a.length===1&&a[0]===""&&(a=[]),l.length===1&&l[0]===""&&(l=[]);let f=this.groups-(a.length+l.length);if(!f)throw new rt("Error parsing groups");this.elidedGroups=f,this.elisionBegin=a.length,this.elisionEnd=a.length+this.elidedGroups,i=i.concat(a);for(let d=0;d<f;d++)i.push("0");i=i.concat(l)}else if(o.length===1)i=t.split(":"),this.elidedGroups=0;else throw new rt("Too many :: groups found");if(i=i.map(a=>(0,it.sprintf)("%x",parseInt(a,16))),i.length!==this.groups)throw new rt("Incorrect number of groups found");return i}canonicalForm(){return this.parsedAddress.map(zs).join(":")}decimal(){return this.parsedAddress.map(t=>(0,it.sprintf)("%05d",parseInt(t,16))).join(":")}bigInteger(){return new nt.BigInteger(this.parsedAddress.map(zs).join(""),16)}to4(){let t=this.binaryZeroPad().split("");return O.fromHex(new nt.BigInteger(t.slice(96,128).join(""),2).toString(16))}to4in6(){let t=this.to4(),n=new U(this.parsedAddress.slice(0,6).join(":"),6).correctForm(),i="";return/:$/.test(n)||(i=":"),n+i+t.address}inspectTeredo(){let t=this.getBitsBase16(0,32),e=this.getBits(80,96).xor(new nt.BigInteger("ffff",16)).toString(),n=O.fromHex(this.getBitsBase16(32,64)),i=O.fromHex(this.getBits(96,128).xor(new nt.BigInteger("ffffffff",16)).toString(16)),o=this.getBits(64,80),a=this.getBitsBase2(64,80),l=o.testBit(15),f=o.testBit(14),d=o.testBit(8),h=o.testBit(9),g=new nt.BigInteger(a.slice(2,6)+a.slice(8,16),2).toString(10);return{prefix:(0,it.sprintf)("%s:%s",t.slice(0,4),t.slice(4,8)),server4:n.address,client4:i.address,flags:a,coneNat:l,microsoft:{reserved:f,universalLocal:h,groupIndividual:d,nonce:g},udpPort:e}}inspect6to4(){let t=this.getBitsBase16(0,16),e=O.fromHex(this.getBitsBase16(16,48));return{prefix:(0,it.sprintf)("%s",t.slice(0,4)),gateway:e.address}}to6to4(){if(!this.is4())return null;let t=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new U(t)}toByteArray(){let t=this.bigInteger().toByteArray();return t.length===17&&t[0]===0?t.slice(1):t}toUnsignedByteArray(){return this.toByteArray().map(Vs)}static fromByteArray(t){return this.fromUnsignedByteArray(t.map(Vs))}static fromUnsignedByteArray(t){let e=new nt.BigInteger("256",10),n=new nt.BigInteger("0",10),i=new nt.BigInteger("1",10);for(let o=t.length-1;o>=0;o--)n=n.add(i.multiply(new nt.BigInteger(t[o].toString(10),10))),i=i.multiply(e);return U.fromBigInteger(n)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){return this.getBitsBase2(0,64)==="1111111010000000000000000000000000000000000000000000000000000000"}isMulticast(){return this.getType()==="Multicast"}is4(){return this.v4}isTeredo(){return this.isInSubnet(new U("2001::/32"))}is6to4(){return this.isInSubnet(new U("2002::/16"))}isLoopback(){return this.getType()==="Loopback"}href(t){return t===void 0?t="":t=(0,it.sprintf)(":%s",t),(0,it.sprintf)("http://[%s]%s/",this.correctForm(),t)}link(t){t||(t={}),t.className===void 0&&(t.className=""),t.prefix===void 0&&(t.prefix="/#address="),t.v4===void 0&&(t.v4=!1);let e=this.correctForm;return t.v4&&(e=this.to4in6),t.className?(0,it.sprintf)('<a href="%1$s%2$s" class="%3$s">%2$s</a>',t.prefix,e.call(this),t.className):(0,it.sprintf)('<a href="%1$s%2$s">%2$s</a>',t.prefix,e.call(this))}group(){if(this.elidedGroups===0)return Hr(this.address).join(":");qr(typeof this.elidedGroups=="number"),qr(typeof this.elisionBegin=="number");let t=[],[e,n]=this.address.split("::");e.length?t.push(...Hr(e)):t.push("");let i=["hover-group"];for(let o=this.elisionBegin;o<this.elisionBegin+this.elidedGroups;o++)i.push((0,it.sprintf)("group-%d",o));return t.push((0,it.sprintf)('<span class="%s"></span>',i.join(" "))),n.length?t.push(...Hr(n,this.elisionEnd)):t.push(""),this.is4()&&(qr(this.address4 instanceof O),t.pop(),t.push(this.address4.groupForV6())),t.join(":")}regularExpressionString(t=!1){let e=[],n=new U(this.correctForm());if(n.elidedGroups===0)e.push(Wr(n.parsedAddress));else if(n.elidedGroups===8)e.push(_i(8));else{let i=n.address.split("::");i[0].length&&e.push(Wr(i[0].split(":"))),qr(typeof n.elidedGroups=="number"),e.push(_i(n.elidedGroups,i[0].length!==0,i[1].length!==0)),i[1].length&&e.push(Wr(i[1].split(":"))),e=[e.join(":")]}return t||(e=["(?=^|",Ci,"|[^\\w\\:])(",...e,")(?=[^\\w\\:]|",Ci,"|$)"]),e.join("")}regularExpression(t=!1){return new RegExp(this.regularExpressionString(t),"i")}};var Eh=et("libp2p:ip-port-to-multiaddr"),ki={ERR_INVALID_IP_PARAMETER:"ERR_INVALID_IP_PARAMETER",ERR_INVALID_PORT_PARAMETER:"ERR_INVALID_PORT_PARAMETER",ERR_INVALID_IP:"ERR_INVALID_IP"};function Hs(r,t){if(typeof r!="string")throw new yt(`invalid ip provided: ${r}`,ki.ERR_INVALID_IP_PARAMETER);if(typeof t=="string"&&(t=parseInt(t)),isNaN(t))throw new yt(`invalid port provided: ${t}`,ki.ERR_INVALID_PORT_PARAMETER);try{return new O(r),mt(`/ip4/${r}/tcp/${t}`)}catch{}try{let e=new U(r);return e.is4()?mt(`/ip4/${e.to4().correctForm()}/tcp/${t}`):mt(`/ip6/${r}/tcp/${t}`)}catch{let n=`invalid ip:port for creating a multiaddr: ${r}:${t}`;throw Eh.error(n),new yt(n,ki.ERR_INVALID_IP)}}var Bi=M($t("os"),1),Ws=M($t("path"),1),vh={ip4:"IPv4",ip6:"IPv6"};function We(r){let t=r.getPath();return t!=null?Bi.default.platform()==="win32"?{path:Ws.default.join("\\\\.\\pipe\\",t)}:{path:t}:r.toOptions()}function Di(r,t,e){let n=i=>mt(`/${r}/${i}/tcp/${e}`);return(xh(t)?Th(vh[r]):[t]).map(n)}function xh(r){return["0.0.0.0","::"].includes(r)}var Sh=Bi.default.networkInterfaces();function Th(r){let t=[];for(let[,e]of Object.entries(Sh))if(e!=null)for(let n of e)n.family===r&&t.push(n.address);return t}var Nt=et("libp2p:tcp:socket"),Zr=(r,t)=>{let e=t.metrics,n=t.metricPrefix??"",i=t.socketInactivityTimeout??3e5,o=t.socketCloseTimeout??2e3;t.listeningAddr?.getPath()!=null&&(t.remoteAddr=t.listeningAddr),t.remoteAddr?.getPath()!=null&&(t.localAddr=t.remoteAddr);let a;if(t.remoteAddr!=null)a=t.remoteAddr;else{if(r.remoteAddress==null||r.remotePort==null)throw new yt("Could not determine remote address or port","ERR_NO_REMOTE_ADDRESS");a=Hs(r.remoteAddress,r.remotePort)}let l=We(a),f=l.path??`${l.host??""}:${l.port??""}`,{sink:d,source:h}=qs.default.duplex(r);r.setTimeout(i,()=>{Nt("%s socket read timeout",f),e?.increment({[`${n}timeout`]:!0});let w;r.readable&&(w=new yt("Socket read timeout","ERR_SOCKET_READ_TIMEOUT")),r.destroy(w)}),r.once("close",()=>{Nt("%s socket close",f),e?.increment({[`${n}close`]:!0}),g.timeline.close==null&&(g.timeline.close=Date.now())}),r.once("end",()=>{Nt("%s socket end",f),e?.increment({[`${n}end`]:!0})});let g={async sink(w){try{await d(w)}catch(S){S.type!=="aborted"&&Nt(S)}r.end()},source:h,remoteAddr:a,timeline:{open:Date.now()},async close(){if(r.destroyed){Nt("%s socket was already destroyed when trying to close",f);return}Nt("%s closing socket",f),await new Promise((w,S)=>{let b=Date.now(),T=setTimeout(()=>{r.destroyed?(Nt("%s is already destroyed",f),w()):(Nt("%s socket close timeout after %dms, destroying it manually",f,Date.now()-b),r.destroy(new yt("Socket close timeout","ERR_SOCKET_CLOSE_TIMEOUT")))},o).unref();r.once("close",()=>{Nt("%s socket closed",f),clearTimeout(T),w()}),r.once("error",k=>{Nt("%s socket error",f,k),g.timeline.close==null&&(g.timeline.close=Date.now()),r.destroyed&&clearTimeout(T),S(k)}),r.setTimeout(o),r.end(),r.writableLength>0?r.once("drain",()=>{Nt("%s socket drained",f),r.destroy()}):r.destroy()})}};return g};var Zs=M($t("net"),1);var Ee=function(r,t,e,n){if(e==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?r!==t||!n:!t.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?n:e==="a"?n.call(r):n?n.value:t.get(r)},qt,Xr=class extends EventTarget{constructor(){super(...arguments),qt.set(this,new Map)}listenerCount(t){let e=Ee(this,qt,"f").get(t);return e==null?0:e.length}addEventListener(t,e,n){super.addEventListener(t,e,n);let i=Ee(this,qt,"f").get(t);i==null&&(i=[],Ee(this,qt,"f").set(t,i)),i.push({callback:e,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(t,e,n){super.removeEventListener(t.toString(),e??null,n);let i=Ee(this,qt,"f").get(t);i!=null&&(i=i.filter(({callback:o})=>o!==e),Ee(this,qt,"f").set(t,i))}dispatchEvent(t){let e=super.dispatchEvent(t),n=Ee(this,qt,"f").get(t.type);return n==null||(n=n.filter(({once:i})=>!i),Ee(this,qt,"f").set(t.type,n)),e}safeDispatchEvent(t,e){return this.dispatchEvent(new qe(t,e))}};qt=new WeakMap;var Ri=class extends Event{constructor(t,e){super(t,e),this.detail=e?.detail}},qe=globalThis.CustomEvent??Ri;var bt=et("libp2p:tcp:listener");async function Li(r){try{await r.close()}catch(t){bt.error("an error occurred closing the connection",t)}}var Ch=1,_h=0,Kr=class extends Xr{constructor(t){if(super(),this.context=t,this.connections=new Set,this.status={started:!1},t.keepAlive=t.keepAlive??!0,this.addr="unknown",this.server=Zs.default.createServer(t,this.onSocket.bind(this)),t.maxConnections!==void 0&&(this.server.maxConnections=t.maxConnections),t.closeServerOnMaxConnections!=null&&t.closeServerOnMaxConnections.closeAbove<t.closeServerOnMaxConnections.listenBelow)throw Error("closeAbove must be >= listenBelow");this.server.on("listening",()=>{if(t.metrics!=null){let e=this.server.address();e==null?this.addr="unknown":typeof e=="string"?this.addr=e:this.addr=`${e.address}:${e.port}`,t.metrics?.registerMetricGroup("libp2p_tcp_inbound_connections_total",{label:"address",help:"Current active connections in TCP listener",calculate:()=>({[this.addr]:this.connections.size})}),this.metrics={status:t.metrics.registerMetricGroup("libp2p_tcp_listener_status_info",{label:"address",help:"Current status of the TCP listener socket"}),errors:t.metrics.registerMetricGroup("libp2p_tcp_listener_errors_total",{label:"address",help:"Total count of TCP listener errors by type"}),events:t.metrics.registerMetricGroup("libp2p_tcp_listener_events_total",{label:"address",help:"Total count of TCP listener events by type"})},this.metrics?.status.update({[this.addr]:Ch})}this.dispatchEvent(new qe("listening"))}).on("error",e=>{this.metrics?.errors.increment({[`${this.addr} listen_error`]:!0}),this.dispatchEvent(new qe("error",{detail:e}))}).on("close",()=>{this.metrics?.status.update({[this.addr]:_h}),this.dispatchEvent(new qe("close"))})}onSocket(t){t.on("error",n=>{bt("socket error",n),this.metrics?.events.increment({[`${this.addr} error`]:!0})});let e;try{e=Zr(t,{listeningAddr:this.status.started?this.status.listeningAddr:void 0,socketInactivityTimeout:this.context.socketInactivityTimeout,socketCloseTimeout:this.context.socketCloseTimeout,metrics:this.metrics?.events,metricPrefix:`${this.addr} `})}catch(n){bt.error("inbound connection failed",n),this.metrics?.errors.increment({[`${this.addr} inbound_to_connection`]:!0});return}bt("new inbound connection %s",e.remoteAddr);try{this.context.upgrader.upgradeInbound(e).then(n=>{bt("inbound connection upgraded %s",e.remoteAddr),this.connections.add(e),t.once("close",()=>{this.connections.delete(e),this.context.closeServerOnMaxConnections!=null&&this.connections.size<this.context.closeServerOnMaxConnections.listenBelow&&this.netListen().catch(i=>{bt.error("error attempting to listen server once connection count under limit",i),this.context.closeServerOnMaxConnections?.onListenError?.(i)})}),this.context.handler!=null&&this.context.handler(n),this.context.closeServerOnMaxConnections!=null&&this.connections.size>=this.context.closeServerOnMaxConnections.closeAbove&&this.netClose(),this.dispatchEvent(new qe("connection",{detail:n}))}).catch(async n=>{bt.error("inbound connection failed",n),this.metrics?.errors.increment({[`${this.addr} inbound_upgrade`]:!0}),await Li(e)}).catch(n=>{bt.error("closing inbound connection failed",n)})}catch(n){bt.error("inbound connection failed",n),Li(e).catch(i=>{bt.error("closing inbound connection failed",i),this.metrics?.errors.increment({[`${this.addr} inbound_closing_failed`]:!0})})}}getAddrs(){if(!this.status.started)return[];let t=[],e=this.server.address(),{listeningAddr:n,peerId:i}=this.status;if(e==null)return[];if(typeof e=="string")t=[n];else try{n.toString().startsWith("/ip4")?t=t.concat(Di("ip4",e.address,e.port)):e.family==="IPv6"&&(t=t.concat(Di("ip6",e.address,e.port)))}catch(o){bt.error("could not turn %s:%s into multiaddr",e.address,e.port,o)}return t.map(o=>i!=null?o.encapsulate(`/p2p/${i}`):o)}async listen(t){if(this.status.started)throw Error("server is already listening");let e=t.getPeerId(),n=e==null?t.decapsulateCode(421):t;this.status={started:!0,listeningAddr:n,peerId:e,netConfig:We(n)},await this.netListen()}async close(){await Promise.all(Array.from(this.connections.values()).map(async t=>{await Li(t)})),this.netClose()}async netListen(){if(!this.status.started||this.server.listening)return;let t=this.status.netConfig;await new Promise((e,n)=>{this.server.once("error",n),this.server.listen(t,e)}),bt("Listening on %s",this.server.address())}netClose(){!this.status.started||!this.server.listening||(bt("Closing server on %s",this.server.address()),this.server.close())}};var Ks=Symbol.for("@libp2p/transport");var Xs;(function(r){r[r.FATAL_ALL=0]="FATAL_ALL",r[r.NO_FATAL=1]="NO_FATAL"})(Xs||(Xs={}));var Zt=et("libp2p:tcp"),Oi=class{constructor(t,e={}){this.opts=e,this.components=t,t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_tcp_dialer_events_total",{label:"event",help:"Total count of TCP dialer events by type"})})}get[Ks](){return!0}get[Symbol.toStringTag](){return"@libp2p/tcp"}async dial(t,e){e.keepAlive=e.keepAlive??!0;let n=await this._connect(t,e);n.on("error",l=>{Zt("socket error",l)});let i=Zr(n,{remoteAddr:t,socketInactivityTimeout:this.opts.outboundSocketInactivityTimeout,socketCloseTimeout:this.opts.socketCloseTimeout,metrics:this.metrics?.dialerEvents}),o=()=>{i.close().catch(l=>{Zt.error("Error closing maConn after abort",l)})};e.signal?.addEventListener("abort",o,{once:!0}),Zt("new outbound connection %s",i.remoteAddr);let a=await e.upgrader.upgradeOutbound(i);if(Zt("outbound connection %s upgraded",i.remoteAddr),e.signal?.removeEventListener("abort",o),e.signal?.aborted===!0)throw a.close().catch(l=>{Zt.error("Error closing conn after abort",l)}),new Ht;return a}async _connect(t,e){if(e.signal?.aborted===!0)throw new Ht;return await new Promise((n,i)=>{let o=Date.now(),a=We(t),l=a.path??`${a.host??""}:${a.port}`;Zt("dialing %j",a);let f=js.default.connect(a),d=b=>{b.message=`connection error ${l}: ${b.message}`,this.metrics?.dialerEvents.increment({error:!0}),S(b)},h=()=>{Zt("connection timeout %s",l),this.metrics?.dialerEvents.increment({timeout:!0});let b=new yt(`connection timeout after ${Date.now()-o}ms`,"ERR_CONNECT_TIMEOUT");f.emit("error",b)},g=()=>{Zt("connection opened %j",a),this.metrics?.dialerEvents.increment({connect:!0}),S()},w=()=>{Zt("connection aborted %j",a),this.metrics?.dialerEvents.increment({abort:!0}),f.destroy(),S(new Ht)},S=b=>{if(f.removeListener("error",d),f.removeListener("timeout",h),f.removeListener("connect",g),e.signal!=null&&e.signal.removeEventListener("abort",w),b!=null){i(b);return}n(f)};f.on("error",d),f.on("timeout",h),f.on("connect",g),e.signal!=null&&e.signal.addEventListener("abort",w)})}createListener(t){return new Kr({...t,maxConnections:this.opts.maxConnections,closeServerOnMaxConnections:this.opts.closeServerOnMaxConnections,socketInactivityTimeout:this.opts.inboundSocketInactivityTimeout,socketCloseTimeout:this.opts.socketCloseTimeout,metrics:this.components.metrics})}filter(t){return t=Array.isArray(t)?t:[t],t.filter(e=>e.protoCodes().includes(290)?!1:e.protoCodes().includes(400)?!0:ne.matches(e.decapsulateCode(421)))}};function Ys(r={}){return(t={})=>new Oi(t,r)}var Qs=Symbol.for("@achingbrain/uint8arraylist");function Js(r,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let e=0;for(let n of r){let i=e+n.byteLength;if(t<i)return{buf:n,index:t-e};e=i}throw new RangeError("index is out of bounds")}function jr(r){return!!r?.[Qs]}var lt=class{constructor(...t){Object.defineProperty(this,Qs,{value:!0}),this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let e=0;for(let n of t)if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.push(n);else if(jr(n))e+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}prepend(...t){this.prependAll(t)}prependAll(t){let e=0;for(let n of t.reverse())if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.unshift(n);else if(jr(n))e+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}get(t){let e=Js(this.bufs,t);return e.buf[e.index]}set(t,e){let n=Js(this.bufs,t);n.buf[n.index]=e}write(t,e=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(e+n,t[n]);else if(jr(t))for(let n=0;n<t.length;n++)this.set(e+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,e){let{bufs:n,length:i}=this._subList(t,e);return xt(n,i)}subarray(t,e){let{bufs:n,length:i}=this._subList(t,e);return n.length===1?n[0]:xt(n,i)}sublist(t,e){let{bufs:n,length:i}=this._subList(t,e),o=new lt;return o.length=i,o.bufs=n,o}_subList(t,e){if(t=t??0,e=e??this.length,t<0&&(t=this.length+t),e<0&&(e=this.length+e),t<0||e>this.length)throw new RangeError("index is out of bounds");if(t===e)return{bufs:[],length:0};if(t===0&&e===this.length)return{bufs:[...this.bufs],length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let a=this.bufs[o],l=i,f=l+a.byteLength;if(i=f,t>=f)continue;let d=t>=l&&t<f,h=e>l&&e<=f;if(d&&h){if(t===l&&e===f){n.push(a);break}let g=t-l;n.push(a.subarray(g,g+(e-t)));break}if(d){if(t===0){n.push(a);continue}n.push(a.subarray(t-l));continue}if(h){if(e===f){n.push(a);break}n.push(a.subarray(0,e-l));break}n.push(a)}return{bufs:n,length:e-t}}indexOf(t,e=0){if(!jr(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(e=Number(e??0),isNaN(e)&&(e=0),e<0&&(e=this.length+e),e<0&&(e=0),t.length===0)return e>this.length?this.length:e;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,a=new Int32Array(o);for(let g=0;g<o;g++)a[g]=-1;for(let g=0;g<i;g++)a[n[g]]=g;let l=a,f=this.byteLength-n.byteLength,d=n.byteLength-1,h;for(let g=e;g<=f;g+=h){h=0;for(let w=d;w>=0;w--){let S=this.get(g+w);if(n[w]!==S){h=Math.max(1,w-l[S]);break}}if(h===0)return g}return-1}getInt8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getInt8(0)}setInt8(t,e){let n=Rt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,e),this.write(n,t)}getInt16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,e)}setInt16(t,e,n){let i=zt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,e,n),this.write(i,t)}getInt32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,e)}setInt32(t,e,n){let i=zt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,e,n),this.write(i,t)}getBigInt64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,e)}setBigInt64(t,e,n){let i=zt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,e,n),this.write(i,t)}getUint8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getUint8(0)}setUint8(t,e){let n=Rt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,e),this.write(n,t)}getUint16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,e)}setUint16(t,e,n){let i=zt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,e,n),this.write(i,t)}getUint32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,e)}setUint32(t,e,n){let i=zt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,e,n),this.write(i,t)}getBigUint64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,e)}setBigUint64(t,e,n){let i=zt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,e,n),this.write(i,t)}getFloat32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,e)}setFloat32(t,e,n){let i=zt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,e,n),this.write(i,t)}getFloat64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,e)}setFloat64(t,e,n){let i=zt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,e,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof lt)||t.bufs.length!==this.bufs.length)return!1;for(let e=0;e<this.bufs.length;e++)if(!de(this.bufs[e],t.bufs[e]))return!1;return!0}static fromUint8Arrays(t,e){let n=new lt;return n.bufs=t,e==null&&(e=t.reduce((i,o)=>i+o.byteLength,0)),n.length=e,n}};function Yr(r){return r instanceof Uint8Array?{get(t){return r[t]},set(t,e){r[t]=e}}:{get(t){return r.get(t)},set(t,e){r.set(t,e)}}}var tc=4294967296,wt=class{constructor(t=0,e=0){this.hi=t,this.lo=e}toBigInt(t){if(t===!0)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(BigInt(e)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toNumber(t){return Number(this.toBigInt(t))}zzDecode(){let t=-(this.lo&1),e=((this.lo>>>1|this.hi<<31)^t)>>>0,n=(this.hi>>>1^t)>>>0;return new wt(n,e)}zzEncode(){let t=this.hi>>31,e=((this.hi<<1|this.lo>>>31)^t)>>>0,n=(this.lo<<1^t)>>>0;return new wt(e,n)}toBytes(t,e=0){let n=Yr(t);for(;this.hi>0;)n.set(e++,this.lo&127|128),this.lo=(this.lo>>>7|this.hi<<25)>>>0,this.hi>>>=7;for(;this.lo>127;)n.set(e++,this.lo&127|128),this.lo=this.lo>>>7;n.set(e++,this.lo)}static fromBigInt(t){if(t===0n)return new wt;let e=t<0;e&&(t=-t);let n=Number(t>>32n)|0,i=Number(t-(BigInt(n)<<32n))|0;return e&&(n=~n>>>0,i=~i>>>0,++i>tc&&(i=0,++n>tc&&(n=0))),new wt(n,i)}static fromNumber(t){if(t===0)return new wt;let e=t<0;e&&(t=-t);let n=t>>>0,i=(t-n)/4294967296>>>0;return e&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new wt(i,n)}static fromBytes(t,e=0){let n=Yr(t),i=new wt,o=0;if(t.length-e>4){for(;o<4;++o)if(i.lo=(i.lo|(n.get(e)&127)<<o*7)>>>0,n.get(e++)<128)return i;if(i.lo=(i.lo|(n.get(e)&127)<<28)>>>0,i.hi=(i.hi|(n.get(e)&127)>>4)>>>0,n.get(e++)<128)return i;o=0}else for(;o<4;++o){if(e>=t.length)throw RangeError(`index out of range: ${e} > ${t.length}`);if(i.lo=(i.lo|(n.get(e)&127)<<o*7)>>>0,n.get(e++)<128)return i}if(t.length-e>4){for(;o<5;++o)if(i.hi=(i.hi|(n.get(e)&127)<<o*7+3)>>>0,n.get(e++)<128)return i}else if(e<t.byteLength)for(;o<5;++o){if(e>=t.length)throw RangeError(`index out of range: ${e} > ${t.length}`);if(i.hi=(i.hi|(n.get(e)&127)<<o*7+3)>>>0,n.get(e++)<128)return i}throw RangeError("invalid varint encoding")}};var Dh=Math.pow(2,7),Rh=Math.pow(2,14),Lh=Math.pow(2,21),Nh=Math.pow(2,28),Oh=Math.pow(2,35),Ph=Math.pow(2,42),Mh=Math.pow(2,49),Fh=Math.pow(2,56),Uh=Math.pow(2,63),ve={encodingLength(r){return r<Dh?1:r<Rh?2:r<Lh?3:r<Nh?4:r<Oh?5:r<Ph?6:r<Mh?7:r<Fh?8:r<Uh?9:10},encode(r,t,e=0){if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return t==null&&(t=Rt(ve.encodingLength(r))),wt.fromNumber(r).toBytes(t,e),t},decode(r,t=0){return wt.fromBytes(r,t).toNumber(!0)}};function Jr(r){return r[Symbol.asyncIterator]!=null}var Qr=r=>{let t=ve.encodingLength(r),e=Rt(t);return ve.encode(r,e),Qr.bytes=t,e};Qr.bytes=0;function Ze(r,t){t=t??{};let e=t.lengthEncoder??Qr;function*n(i){let o=e(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return Jr(r)?async function*(){for await(let i of r)yield*n(i)}():function*(){for(let i of r)yield*n(i)}()}Ze.single=(r,t)=>{t=t??{};let e=t.lengthEncoder??Qr;return new lt(e(r.byteLength),r)};var Xe=M(ai(),1);var Gh=8,$h=1024*1024*4,xe;(function(r){r[r.LENGTH=0]="LENGTH",r[r.DATA=1]="DATA"})(xe||(xe={}));var Pi=r=>{let t=ve.decode(r);return Pi.bytes=ve.encodingLength(t),t};Pi.bytes=0;function fr(r,t){let e=new lt,n=xe.LENGTH,i=-1,o=t?.lengthDecoder??Pi,a=t?.maxLengthLength??Gh,l=t?.maxDataLength??$h;function*f(){for(;e.byteLength>0;){if(n===xe.LENGTH)try{if(i=o(e),i<0)throw(0,Xe.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>l)throw(0,Xe.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let d=o.bytes;e.consume(d),t?.onLength!=null&&t.onLength(i),n=xe.DATA}catch(d){if(d instanceof RangeError){if(e.byteLength>a)throw(0,Xe.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw d}if(n===xe.DATA){if(e.byteLength<i)break;let d=e.sublist(0,i);e.consume(i),t?.onData!=null&&t.onData(d),yield d,n=xe.LENGTH}}}return Jr(r)?async function*(){for await(let d of r)e.append(d),yield*f();if(e.byteLength>0)throw(0,Xe.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let d of r)e.append(d),yield*f();if(e.byteLength>0)throw(0,Xe.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}fr.fromReader=(r,t)=>{let e=1,n=async function*(){for(;;)try{let{done:o,value:a}=await r.next(e);if(o===!0)return;a!=null&&(yield a)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{e=1}}();return fr(n,{...t??{},onLength:o=>{e=o}})};var tn=class{constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},Ke=class{constructor(t={}){this.hwm=t.splitLimit??16,this.head=new tn(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let e=this.head;this.head=e.next=new tn(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let e=this.tail.next;this.tail.next=null,this.tail=e,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};function ie(r={}){return zh(e=>{let n=e.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function zh(r,t){t=t??{};let e=t.onEnd,n=new Ke,i,o,a,l=async()=>n.isEmpty()?a?{done:!0}:await new Promise((T,k)=>{o=C=>{o=null,n.push(C);try{T(r(n))}catch(_){k(_)}return i}}):r(n),f=T=>o!=null?o(T):(n.push(T),i),d=T=>(n=new Ke,o!=null?o({error:T}):(n.push({error:T}),i)),h=T=>{if(a)return i;if(t?.objectMode!==!0&&T?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:T})},g=T=>a?i:(a=!0,T!=null?d(T):f({done:!0})),w=()=>(n=new Ke,g(),{done:!0}),S=T=>(g(T),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:l,return:w,throw:S,push:h,end:g,get readableLength(){return n.size}},e==null)return i;let b=i;return i={[Symbol.asyncIterator](){return this},next(){return b.next()},throw(T){return b.throw(T),e!=null&&(e(T),e=void 0),{done:!0}},return(){return b.return(),e!=null&&(e(),e=void 0),{done:!0}},push:h,end(T){return b.end(T),e!=null&&(e(T),e=void 0),i},get readableLength(){return b.readableLength}},i}function Vh(r){return r[Symbol.asyncIterator]!=null}function Hh(...r){let t=[];for(let e of r)Vh(e)||t.push(e);return t.length===r.length?function*(){for(let e of t)yield*e}():async function*(){let e=ie({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(r.map(async n=>{for await(let i of n)e.push(i)})),e.end()}catch(n){e.end(n)}}),yield*e}()}var rc=Hh;var Wh=(...r)=>{let t;for(;r.length>0;)t=r.shift()(t);return t},nc=r=>r?.[Symbol.asyncIterator]!=null,ic=r=>r?.[Symbol.iterator]!=null,Mi=r=>r==null?!1:r.sink!=null&&r.source!=null,qh=r=>t=>{let e=r.sink(t);if(e?.then!=null){let n=ie({objectMode:!0});e.then(()=>{n.end()},a=>{n.end(a)});let i,o=r.source;if(nc(o))i=async function*(){yield*o,n.end()};else if(ic(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return rc(n,i())}return r.source};function en(r,...t){if(r==null)throw new Error("Empty pipeline");if(Mi(r)){let n=r;r=()=>n.source}else if(ic(r)||nc(r)){let n=r;r=()=>n}let e=[r,...t];if(e.length>1&&Mi(e[e.length-1])&&(e[e.length-1]=e[e.length-1].sink),e.length>2)for(let n=1;n<e.length-1;n++)Mi(e[n])&&(e[n]=qh(e[n]));return Wh(...e)}function oc(r){let t=async function*(){let e=yield,n=new lt;for await(let i of r){if(e==null){n.append(i),e=yield n,n=new lt;continue}for(n.append(i);n.length>=e;){let o=n.sublist(0,e);if(n.consume(e),e=yield o,e==null){n.length>0&&(e=yield n,n=new lt);break}}}if(e!=null)throw Object.assign(new Error(`stream ended before ${e} bytes became available`),{code:"ERR_UNDER_READ",buffer:n})}();return t.next(),t}function Fi(){let r={};return r.promise=new Promise((t,e)=>{r.resolve=t,r.reject=e}),r}function sc(r){let t=ie(),e=oc(r.source),n=Fi(),i,o=r.sink(async function*(){yield*t,yield*await n.promise}());return o.catch(l=>{i=l}),{reader:e,writer:t,stream:{sink:async l=>i!=null?await Promise.reject(i):(n.resolve(l),await o),source:e},rest:()=>t.end(),write:t.push,read:async()=>{let l=await e.next();if(l.value!=null)return l.value}}}var Ui=et("libp2p:daemon-protocol:stream-handler"),rn=class{constructor(t){let{stream:e,maxLength:n}=t;this.stream=e,this.shake=sc(this.stream),this.decoder=fr.fromReader(this.shake.reader,{maxDataLength:n??4096})}async read(){let t=await this.decoder.next();if(t.value!=null)return t.value.subarray();Ui("read received no value, closing stream"),await this.close()}write(t){Ui("write message"),this.shake.write(Ze.single(t).subarray())}rest(){return this.shake.rest(),this.shake.stream}async close(){Ui("closing the stream"),await this.rest().sink([])}};var Gi={upgradeInbound:async r=>r,upgradeOutbound:async r=>r};var Qi=M(Wi(),1),Zc=M(Uc(),1),Xc=M(Te(),1),to=M(Ji(),1),Kc=M(qc(),1);function ep(){Xc.default._configure(),Qi.default._configure(Zc.default),to.default._configure(Kc.default)}ep();var jc=["uint64","int64","sint64","fixed64","sfixed64"];function rp(r){for(let t of jc){if(r[t]==null)continue;let e=r[t];r[t]=function(){return BigInt(e.call(this).toString())}}return r}function eo(r){return rp(new Qi.default(r))}function np(r){for(let t of jc){if(r[t]==null)continue;let e=r[t];r[t]=function(n){return e.call(this,n.toString())}}return r}function ro(){return np(to.default.create())}function z(r,t){let e=eo(r instanceof Uint8Array?r:r.subarray());return t.decode(e)}function V(r,t){let e=ro();return t.encode(r,e,{lengthDelimited:!1}),e.finish()}var Ye;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(Ye||(Ye={}));function an(r,t,e,n){return{name:r,type:t,encode:e,decode:n}}function Xt(r){function t(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let e=function(o,a){let l=t(o);a.int32(l)},n=function(o){let a=o.int32();return t(a)};return an("enum",Ye.VARINT,e,n)}function H(r,t){return an("message",Ye.LENGTH_DELIMITED,r,t)}var At;(function(r){let t;(function(i){i.IDENTIFY="IDENTIFY",i.CONNECT="CONNECT",i.STREAM_OPEN="STREAM_OPEN",i.STREAM_HANDLER="STREAM_HANDLER",i.DHT="DHT",i.LIST_PEERS="LIST_PEERS",i.CONNMANAGER="CONNMANAGER",i.DISCONNECT="DISCONNECT",i.PUBSUB="PUBSUB",i.PEERSTORE="PEERSTORE"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.IDENTIFY=0]="IDENTIFY",i[i.CONNECT=1]="CONNECT",i[i.STREAM_OPEN=2]="STREAM_OPEN",i[i.STREAM_HANDLER=3]="STREAM_HANDLER",i[i.DHT=4]="DHT",i[i.LIST_PEERS=5]="LIST_PEERS",i[i.CONNMANAGER=6]="CONNMANAGER",i[i.DISCONNECT=7]="DISCONNECT",i[i.PUBSUB=8]="PUBSUB",i[i.PEERSTORE=9]="PEERSTORE"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.connect!=null&&(o.uint32(18),ln.codec().encode(i.connect,o)),i.streamOpen!=null&&(o.uint32(26),fn.codec().encode(i.streamOpen,o)),i.streamHandler!=null&&(o.uint32(34),hn.codec().encode(i.streamHandler,o)),i.dht!=null&&(o.uint32(42),It.codec().encode(i.dht,o)),i.connManager!=null&&(o.uint32(50),dn.codec().encode(i.connManager,o)),i.disconnect!=null&&(o.uint32(58),mn.codec().encode(i.disconnect,o)),i.pubsub!=null&&(o.uint32(66),Kt.codec().encode(i.pubsub,o)),i.peerStore!=null&&(o.uint32(74),Ce.codec().encode(i.peerStore,o)),a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.connect=ln.codec().decode(i,i.uint32());break;case 3:a.streamOpen=fn.codec().decode(i,i.uint32());break;case 4:a.streamHandler=hn.codec().decode(i,i.uint32());break;case 5:a.dht=It.codec().decode(i,i.uint32());break;case 6:a.connManager=dn.codec().decode(i,i.uint32());break;case 7:a.disconnect=mn.codec().decode(i,i.uint32());break;case 8:a.pubsub=Kt.codec().decode(i,i.uint32());break;case 9:a.peerStore=Ce.codec().decode(i,i.uint32());break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(At||(At={}));var Ie;(function(r){let t;(function(i){i.OK="OK",i.ERROR="ERROR"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.OK=0]="OK",i[i.ERROR=1]="ERROR"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{if(a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.error!=null&&(o.uint32(18),pn.codec().encode(i.error,o)),i.streamInfo!=null&&(o.uint32(26),Je.codec().encode(i.streamInfo,o)),i.identify!=null&&(o.uint32(34),un.codec().encode(i.identify,o)),i.dht!=null&&(o.uint32(42),Q.codec().encode(i.dht,o)),i.peers!=null)for(let l of i.peers)o.uint32(50),ce.codec().encode(l,o);i.pubsub!=null&&(o.uint32(58),gn.codec().encode(i.pubsub,o)),i.peerStore!=null&&(o.uint32(66),yn.codec().encode(i.peerStore,o)),a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={peers:[]},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.error=pn.codec().decode(i,i.uint32());break;case 3:a.streamInfo=Je.codec().decode(i,i.uint32());break;case 4:a.identify=un.codec().decode(i,i.uint32());break;case 5:a.dht=Q.codec().decode(i,i.uint32());break;case 6:a.peers.push(ce.codec().decode(i,i.uint32()));break;case 7:a.pubsub=gn.codec().decode(i,i.uint32());break;case 8:a.peerStore=yn.codec().decode(i,i.uint32());break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(Ie||(Ie={}));var un;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.id!=null&&e.id.byteLength>0&&(n.uint32(10),n.bytes(e.id)),e.addrs!=null)for(let o of e.addrs)n.uint32(18),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={id:new Uint8Array(0),addrs:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.id=e.bytes();break;case 2:i.addrs.push(e.bytes());break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(un||(un={}));var ln;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.peer!=null&&e.peer.byteLength>0&&(n.uint32(10),n.bytes(e.peer)),e.addrs!=null)for(let o of e.addrs)n.uint32(18),n.bytes(o);e.timeout!=null&&(n.uint32(24),n.int64(e.timeout)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={peer:new Uint8Array(0),addrs:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.peer=e.bytes();break;case 2:i.addrs.push(e.bytes());break;case 3:i.timeout=e.int64();break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(ln||(ln={}));var fn;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.peer!=null&&e.peer.byteLength>0&&(n.uint32(10),n.bytes(e.peer)),e.proto!=null)for(let o of e.proto)n.uint32(18),n.string(o);e.timeout!=null&&(n.uint32(24),n.int64(e.timeout)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={peer:new Uint8Array(0),proto:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.peer=e.bytes();break;case 2:i.proto.push(e.string());break;case 3:i.timeout=e.int64();break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(fn||(fn={}));var hn;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.addr!=null&&e.addr.byteLength>0&&(n.uint32(10),n.bytes(e.addr)),e.proto!=null)for(let o of e.proto)n.uint32(18),n.string(o);i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={addr:new Uint8Array(0),proto:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.addr=e.bytes();break;case 2:i.proto.push(e.string());break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(hn||(hn={}));var pn;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),e.msg!=null&&e.msg!==""&&(n.uint32(10),n.string(e.msg)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={msg:""},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.msg=e.string();break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(pn||(pn={}));var Je;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),e.peer!=null&&e.peer.byteLength>0&&(n.uint32(10),n.bytes(e.peer)),e.addr!=null&&e.addr.byteLength>0&&(n.uint32(18),n.bytes(e.addr)),e.proto!=null&&e.proto!==""&&(n.uint32(26),n.string(e.proto)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={peer:new Uint8Array(0),addr:new Uint8Array(0),proto:""},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.peer=e.bytes();break;case 2:i.addr=e.bytes();break;case 3:i.proto=e.string();break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(Je||(Je={}));var It;(function(r){let t;(function(i){i.FIND_PEER="FIND_PEER",i.FIND_PEERS_CONNECTED_TO_PEER="FIND_PEERS_CONNECTED_TO_PEER",i.FIND_PROVIDERS="FIND_PROVIDERS",i.GET_CLOSEST_PEERS="GET_CLOSEST_PEERS",i.GET_PUBLIC_KEY="GET_PUBLIC_KEY",i.GET_VALUE="GET_VALUE",i.SEARCH_VALUE="SEARCH_VALUE",i.PUT_VALUE="PUT_VALUE",i.PROVIDE="PROVIDE"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.FIND_PEER=0]="FIND_PEER",i[i.FIND_PEERS_CONNECTED_TO_PEER=1]="FIND_PEERS_CONNECTED_TO_PEER",i[i.FIND_PROVIDERS=2]="FIND_PROVIDERS",i[i.GET_CLOSEST_PEERS=3]="GET_CLOSEST_PEERS",i[i.GET_PUBLIC_KEY=4]="GET_PUBLIC_KEY",i[i.GET_VALUE=5]="GET_VALUE",i[i.SEARCH_VALUE=6]="SEARCH_VALUE",i[i.PUT_VALUE=7]="PUT_VALUE",i[i.PROVIDE=8]="PROVIDE"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.peer!=null&&(o.uint32(18),o.bytes(i.peer)),i.cid!=null&&(o.uint32(26),o.bytes(i.cid)),i.key!=null&&(o.uint32(34),o.bytes(i.key)),i.value!=null&&(o.uint32(42),o.bytes(i.value)),i.count!=null&&(o.uint32(48),o.int32(i.count)),i.timeout!=null&&(o.uint32(56),o.int64(i.timeout)),a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.peer=i.bytes();break;case 3:a.cid=i.bytes();break;case 4:a.key=i.bytes();break;case 5:a.value=i.bytes();break;case 6:a.count=i.int32();break;case 7:a.timeout=i.int64();break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(It||(It={}));var Q;(function(r){let t;(function(i){i.BEGIN="BEGIN",i.VALUE="VALUE",i.END="END"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.BEGIN=0]="BEGIN",i[i.VALUE=1]="VALUE",i[i.END=2]="END"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.peer!=null&&(o.uint32(18),ce.codec().encode(i.peer,o)),i.value!=null&&(o.uint32(26),o.bytes(i.value)),a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.peer=ce.codec().decode(i,i.uint32());break;case 3:a.value=i.bytes();break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(Q||(Q={}));var ce;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.id!=null&&e.id.byteLength>0&&(n.uint32(10),n.bytes(e.id)),e.addrs!=null)for(let o of e.addrs)n.uint32(18),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={id:new Uint8Array(0),addrs:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.id=e.bytes();break;case 2:i.addrs.push(e.bytes());break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(ce||(ce={}));var dn;(function(r){let t;(function(i){i.TAG_PEER="TAG_PEER",i.UNTAG_PEER="UNTAG_PEER",i.TRIM="TRIM"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.TAG_PEER=0]="TAG_PEER",i[i.UNTAG_PEER=1]="UNTAG_PEER",i[i.TRIM=2]="TRIM"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.peer!=null&&(o.uint32(18),o.bytes(i.peer)),i.tag!=null&&(o.uint32(26),o.string(i.tag)),i.weight!=null&&(o.uint32(32),o.int64(i.weight)),a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.peer=i.bytes();break;case 3:a.tag=i.string();break;case 4:a.weight=i.int64();break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(dn||(dn={}));var mn;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),e.peer!=null&&e.peer.byteLength>0&&(n.uint32(10),n.bytes(e.peer)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={peer:new Uint8Array(0)},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.peer=e.bytes();break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(mn||(mn={}));var Kt;(function(r){let t;(function(i){i.GET_TOPICS="GET_TOPICS",i.LIST_PEERS="LIST_PEERS",i.PUBLISH="PUBLISH",i.SUBSCRIBE="SUBSCRIBE"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.GET_TOPICS=0]="GET_TOPICS",i[i.LIST_PEERS=1]="LIST_PEERS",i[i.PUBLISH=2]="PUBLISH",i[i.SUBSCRIBE=3]="SUBSCRIBE"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.topic!=null&&(o.uint32(18),o.string(i.topic)),i.data!=null&&(o.uint32(26),o.bytes(i.data)),a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.topic=i.string();break;case 3:a.data=i.bytes();break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(Kt||(Kt={}));var dr;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.from!=null&&(n.uint32(10),n.bytes(e.from)),e.data!=null&&(n.uint32(18),n.bytes(e.data)),e.seqno!=null&&(n.uint32(26),n.bytes(e.seqno)),e.topicIDs!=null)for(let o of e.topicIDs)n.uint32(34),n.string(o);e.signature!=null&&(n.uint32(42),n.bytes(e.signature)),e.key!=null&&(n.uint32(50),n.bytes(e.key)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={topicIDs:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.from=e.bytes();break;case 2:i.data=e.bytes();break;case 3:i.seqno=e.bytes();break;case 4:i.topicIDs.push(e.string());break;case 5:i.signature=e.bytes();break;case 6:i.key=e.bytes();break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(dr||(dr={}));var gn;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.topics!=null)for(let o of e.topics)n.uint32(10),n.string(o);if(e.peerIDs!=null)for(let o of e.peerIDs)n.uint32(18),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={topics:[],peerIDs:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.topics.push(e.string());break;case 2:i.peerIDs.push(e.bytes());break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(gn||(gn={}));var Ce;(function(r){let t;(function(i){i.UNSPECIFIED="UNSPECIFIED",i.GET_PROTOCOLS="GET_PROTOCOLS",i.GET_PEER_INFO="GET_PEER_INFO"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.UNSPECIFIED=0]="UNSPECIFIED",i[i.GET_PROTOCOLS=1]="GET_PROTOCOLS",i[i.GET_PEER_INFO=2]="GET_PEER_INFO"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{if(a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.id!=null&&(o.uint32(18),o.bytes(i.id)),i.protos!=null)for(let l of i.protos)o.uint32(26),o.string(l);a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={protos:[]},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.id=i.bytes();break;case 3:a.protos.push(i.string());break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(Ce||(Ce={}));var yn;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.peer!=null&&(n.uint32(10),ce.codec().encode(e.peer,n)),e.protos!=null)for(let o of e.protos)n.uint32(18),n.string(o);i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={protos:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.peer=ce.codec().decode(e,e.uint32());break;case 2:i.protos.push(e.string());break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(yn||(yn={}));function X(r){return Ie.encode({type:Ie.Type.OK,peers:[],...r}).subarray()}function P(r){return Ie.encode({type:Ie.Type.ERROR,error:{msg:r.message},peers:[]}).subarray()}function ip(r){return r[Symbol.asyncIterator]!=null}function op(r){if(ip(r))return(async()=>{for await(let t of r);})();for(let t of r);}var no=op;var bn=et("libp2p:daemon-server:dht"),wn=class{constructor(t){let{dht:e}=t;this.dht=e}async*provide(t){try{await no(this.dht.provide(t)),yield X()}catch(e){bn.error(e),yield P(e)}}async*getClosestPeers(t){yield X({dht:{type:Q.Type.BEGIN}});for await(let e of this.dht.getClosestPeers(t))e.name==="PEER_RESPONSE"&&(yield*e.closer.map(n=>Q.encode({type:Q.Type.VALUE,value:n.id.toBytes()})));yield Q.encode({type:Q.Type.END})}async*getPublicKey(t){yield P(new Error("FIX ME: not implemented"))}async*getValue(t){try{for await(let e of this.dht.get(t))e.name==="VALUE"&&(yield X({dht:{type:Q.Type.VALUE,value:e.value}}))}catch(e){bn.error(e),yield P(e)}}async*putValue(t,e){try{await no(this.dht.put(t,e)),yield X()}catch(n){bn.error(n),yield P(n)}}async*findPeer(t){try{for await(let e of this.dht.findPeer(t))e.name==="FINAL_PEER"&&(yield X({dht:{type:Q.Type.VALUE,peer:{id:e.peer.id.toBytes(),addrs:e.peer.multiaddrs.map(n=>n.bytes)}}}));throw new Error("Peer not found")}catch(e){bn.error(e),yield P(e)}}async*findProviders(t,e){yield X({dht:{type:Q.Type.BEGIN}});try{let n=e,i=0;for await(let o of this.dht.findProviders(t))if(o.name==="PEER_RESPONSE"){for(let a of o.providers)i++,yield Q.encode({type:Q.Type.VALUE,peer:{id:a.id.toBytes(),addrs:(a.multiaddrs??[]).map(l=>l.bytes)}});if(n===i)break}}catch(n){yield P(n)}yield Q.encode({type:Q.Type.END})}};var Yc=Symbol.for("@libp2p/peer-id");var sp=Symbol.for("nodejs.util.inspect.custom"),Jc=Object.values(ee).map(r=>r.decoder).reduce((r,t)=>r.or(t),ee.identity.decoder),Qc=114,ta=36,ea=37,mr=class{constructor(t){this.type=t.type,this.multihash=t.multihash,this.privateKey=t.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}get[Yc](){return!0}toString(){return this.string==null&&(this.string=q.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return R.createV1(Qc,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return de(this.multihash.bytes,t);if(typeof t=="string")return cp(t).equals(this);if(t?.multihash?.bytes!=null)return de(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[sp](){return`PeerId(${this.toString()})`}},gr=class extends mr{constructor(t){super({...t,type:"RSA"}),this.type="RSA",this.publicKey=t.publicKey}},yr=class extends mr{constructor(t){super({...t,type:"Ed25519"}),this.type="Ed25519",this.publicKey=t.multihash.digest}},br=class extends mr{constructor(t){super({...t,type:"secp256k1"}),this.type="secp256k1",this.publicKey=t.multihash.digest}};function cp(r,t){if(t=t??Jc,r.charAt(0)==="1"||r.charAt(0)==="Q"){let e=fe(q.decode(`z${r}`));return r.startsWith("12D")?new yr({multihash:e}):r.startsWith("16U")?new br({multihash:e}):new gr({multihash:e})}return _e(Jc.decode(r))}function _e(r){try{let t=fe(r);if(t.code===Ir.code){if(t.digest.length===ta)return new yr({multihash:t});if(t.digest.length===ea)return new br({multihash:t})}if(t.code===Ar.code)return new gr({multihash:t})}catch{return ap(R.decode(r))}throw new Error("Supplied PeerID CID is invalid")}function ap(r){if(r==null||r.multihash==null||r.version==null||r.version===1&&r.code!==Qc)throw new Error("Supplied PeerID CID is invalid");let t=r.multihash;if(t.code===Ar.code)return new gr({multihash:r.multihash});if(t.code===Ir.code){if(t.digest.length===ta)return new yr({multihash:r.multihash});if(t.digest.length===ea)return new br({multihash:r.multihash})}throw new Error("Supplied PeerID CID is invalid")}var En=et("libp2p:daemon-server:pubsub"),vn=class{constructor(t){let{pubsub:e}=t;this.pubsub=e}async*getTopics(){try{yield X({pubsub:{topics:this.pubsub.getTopics(),peerIDs:[]}})}catch(t){En.error(t),yield P(t)}}async*subscribe(t){try{let e=ie();this.pubsub.subscribe(t),this.pubsub.addEventListener("message",n=>{let i=n.detail;i.topic===t&&(i.type==="signed"?e.push(dr.encode({from:i.from.toBytes(),data:i.data,seqno:i.sequenceNumber==null?void 0:ir(i.sequenceNumber.toString(16).padStart(16,"0"),"base16"),topicIDs:[i.topic],signature:i.signature,key:i.key}).subarray()):e.push(dr.encode({data:i.data,topicIDs:[i.topic]}).subarray()))}),yield X(),yield*e}catch(e){En.error(e),yield P(e)}}async*publish(t,e){try{await this.pubsub.publish(t,e),yield X()}catch(n){En.error(n),yield P(n)}}async*listPeers(t){try{yield X({pubsub:{topics:[t],peerIDs:this.pubsub.getSubscribers(t).map(e=>e.toBytes())}})}catch(e){En.error(e),yield P(e)}}};var up=1<<22,jt=et("libp2p:daemon-server"),xn=class{constructor(t){let{multiaddr:e,libp2pNode:n}=t;this.multiaddr=e,this.libp2p=n,this.tcp=Ys()(),this.listener=this.tcp.createListener({handler:this.handleConnection.bind(this),upgrader:Gi}),this._onExit=this._onExit.bind(this),n.dht!=null&&(this.dhtOperations=new wn({dht:n.dht})),n.pubsub!=null&&(this.pubsubOperations=new vn({pubsub:n.pubsub}))}async connect(t){if(t.connect==null||t.connect.addrs==null)throw new Error("Invalid request");let e=t.connect.peer,n=t.connect.addrs.map(o=>mt(o)),i=_e(e);return await this.libp2p.peerStore.addressBook.set(i,n),await this.libp2p.dial(i)}async openStream(t){if(t.streamOpen==null||t.streamOpen.proto==null)throw new Error("Invalid request");let{peer:e,proto:n}=t.streamOpen,i=_e(e),o=await this.libp2p.dial(i),a=await o.newStream(n);return{streamInfo:{peer:i.toBytes(),addr:o.remoteAddr.bytes,proto:a.stat.protocol??""},connection:a}}async registerStreamHandler(t){if(t.streamHandler==null||t.streamHandler.proto==null)throw new Error("Invalid request");let e=t.streamHandler.proto,n=mt(t.streamHandler.addr),i;await this.libp2p.handle(e,({connection:o,stream:a})=>{Promise.resolve().then(async()=>{i=await this.tcp.dial(n,{upgrader:Gi});let l=Je.encode({peer:o.remotePeer.toBytes(),addr:o.remoteAddr.bytes,proto:a.stat.protocol??""}),f=Ze.single(l);await en(async function*(){yield f,yield*a.source}(),async function*(d){for await(let h of d)yield*h},i,a.sink)}).catch(async l=>{jt.error(l),i!=null&&await i.close(l)}).finally(()=>{i?.close().catch(l=>{jt.error(l)})})})}_listen(){process.on("SIGTERM",this._onExit),process.on("SIGINT",this._onExit),process.on("SIGHUP",this._onExit)}_onExit(){this.stop({exit:!0}).catch(t=>{jt.error(t)})}async start(){this._listen(),await this.libp2p.start(),await this.listener.listen(this.multiaddr)}getMultiaddr(){let t=this.listener.getAddrs();if(t.length>0)return t[0];throw new Error("Not started")}async stop(t={exit:!1}){await this.libp2p.stop(),await this.listener.close(),t.exit&&jt("server closed, exiting"),process.removeListener("SIGTERM",this._onExit),process.removeListener("SIGINT",this._onExit),process.removeListener("SIGHUP",this._onExit)}async*handlePeerStoreRequest(t){try{switch(t.type){case Ce.Type.GET_PROTOCOLS:if(t.id==null)throw new Error("Invalid request");let e=_e(t.id),i=(await this.libp2p.peerStore.get(e)).protocols;yield X({peerStore:{protos:i}});return;case Ce.Type.GET_PEER_INFO:throw new Error("ERR_NOT_IMPLEMENTED");default:throw new Error("ERR_INVALID_REQUEST_TYPE")}}catch(e){jt.error(e),yield P(e)}}async*handlePubsubRequest(t){try{if(this.libp2p.pubsub==null||this.pubsubOperations==null)throw new Error("PubSub not configured");switch(t.type){case Kt.Type.GET_TOPICS:yield*this.pubsubOperations.getTopics();return;case Kt.Type.SUBSCRIBE:if(t.topic==null)throw new Error("Invalid request");yield*this.pubsubOperations.subscribe(t.topic);return;case Kt.Type.PUBLISH:if(t.topic==null||t.data==null)throw new Error("Invalid request");yield*this.pubsubOperations.publish(t.topic,t.data);return;case Kt.Type.LIST_PEERS:if(t.topic==null)throw new Error("Invalid request");yield*this.pubsubOperations.listPeers(t.topic);return;default:throw new Error("ERR_INVALID_REQUEST_TYPE")}}catch(e){jt.error(e),yield P(e)}}async*handleDHTRequest(t){try{if(this.libp2p.dht==null||this.dhtOperations==null)throw new Error("DHT not configured");switch(t.type){case It.Type.FIND_PEER:if(t.peer==null)throw new Error("Invalid request");yield*this.dhtOperations.findPeer(_e(t.peer));return;case It.Type.FIND_PROVIDERS:if(t.cid==null)throw new Error("Invalid request");yield*this.dhtOperations.findProviders(R.decode(t.cid),t.count??20);return;case It.Type.PROVIDE:if(t.cid==null)throw new Error("Invalid request");yield*this.dhtOperations.provide(R.decode(t.cid));return;case It.Type.GET_CLOSEST_PEERS:if(t.key==null)throw new Error("Invalid request");yield*this.dhtOperations.getClosestPeers(t.key);return;case It.Type.GET_PUBLIC_KEY:if(t.peer==null)throw new Error("Invalid request");yield*this.dhtOperations.getPublicKey(_e(t.peer));return;case It.Type.GET_VALUE:if(t.key==null)throw new Error("Invalid request");yield*this.dhtOperations.getValue(t.key);return;case It.Type.PUT_VALUE:if(t.key==null||t.value==null)throw new Error("Invalid request");yield*this.dhtOperations.putValue(t.key,t.value);return;default:throw new Error("ERR_INVALID_REQUEST_TYPE")}}catch(e){jt.error(e),yield P(e)}}handleConnection(t){let e=this,n=new rn({stream:t,maxLength:up});en(n.decoder,i=>async function*(){let o;for await(let a of i)try{switch(o=At.decode(a),o.type){case At.Type.CONNECT:{try{await e.connect(o)}catch(l){yield P(l);break}yield X();break}case At.Type.IDENTIFY:{yield X({identify:{id:e.libp2p.peerId.toBytes(),addrs:e.libp2p.getMultiaddrs().map(l=>l.decapsulateCode(L("p2p").code)).map(l=>l.bytes)}});break}case At.Type.LIST_PEERS:{let l=[],f=new Set;for(let d of e.libp2p.getConnections()){let h=d.remotePeer.toString();f.has(h)||(f.add(h),l.push({id:d.remotePeer.toBytes(),addrs:[d.remoteAddr.bytes]}))}yield X({peers:l});break}case At.Type.STREAM_OPEN:{let l;try{l=await e.openStream(o)}catch(d){yield P(d);break}yield X({streamInfo:l.streamInfo});let f=n.rest();await en(f,l.connection,async function*(d){for await(let h of d)yield*h},f);return}case At.Type.STREAM_HANDLER:{try{await e.registerStreamHandler(o)}catch(l){yield P(l);break}yield X();break}case At.Type.PEERSTORE:{if(o.peerStore==null){yield P(new Error("ERR_INVALID_REQUEST"));break}yield*e.handlePeerStoreRequest(o.peerStore);break}case At.Type.PUBSUB:{if(o.pubsub==null){yield P(new Error("ERR_INVALID_REQUEST"));break}yield*e.handlePubsubRequest(o.pubsub);break}case At.Type.DHT:{if(o.dht==null){yield P(new Error("ERR_INVALID_REQUEST"));break}yield*e.handleDHTRequest(o.dht);break}default:yield P(new Error("ERR_INVALID_REQUEST_TYPE"));break}}catch(l){jt.error(l),yield P(l);continue}}(),async function(i){for await(let o of i)n.write(o)}).catch(i=>{jt(i)})}},lp=(r,t)=>new xn({multiaddr:r,libp2pNode:t});return $u(fp);})();
|
|
4
|
+
`+o),r.push(i+"m+"+Fr.exports.humanize(this.diff)+"\x1B[0m")}else r[0]=ih()+t+" "+r[0]}function ih(){return J.inspectOpts.hideDate?"":new Date().toISOString()+" "}function oh(...r){return process.stderr.write(Mr.format(...r)+`
|
|
5
|
+
`)}function sh(r){r?process.env.DEBUG=r:delete process.env.DEBUG}function ch(){return process.env.DEBUG}function ah(r){r.inspectOpts={};let t=Object.keys(J.inspectOpts);for(let e=0;e<t.length;e++)r.inspectOpts[t[e]]=J.inspectOpts[t[e]]}Fr.exports=hi()(J);var{formatters:ys}=Fr.exports;ys.o=function(r){return this.inspectOpts.colors=this.useColors,Mr.inspect(r,this.inspectOpts).split(`
|
|
6
|
+
`).map(t=>t.trim()).join(" ")};ys.O=function(r){return this.inspectOpts.colors=this.useColors,Mr.inspect(r,this.inspectOpts)}});var ws=B((Um,di)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?di.exports=hs():di.exports=bs()});var Ur=B((Hm,Es)=>{Es.exports=r=>{if(r[Symbol.asyncIterator])return r;if(r.getReader)return async function*(){let t=r.getReader();try{for(;;){let{done:e,value:n}=await t.read();if(e)return;yield n}}finally{t.releaseLock()}}();throw new Error("unknown stream")}});var xs=B((Wm,vs)=>{vs.exports=function(t){if(t){if(typeof t[Symbol.iterator]=="function")return t[Symbol.iterator]();if(typeof t[Symbol.asyncIterator]=="function")return t[Symbol.asyncIterator]();if(typeof t.next=="function")return t}throw new Error("argument is not an iterator or iterable")}});var mi=B((qm,Ss)=>{var lh=xs();Ss.exports=r=>async t=>{t=lh(t);let e=C=>{typeof C.return=="function"&&C.return()},n=null,i=null,o=C=>{n=C,i&&i(C),e(t)},a=null,l=!1,f=()=>{l=!0,a&&a()},d=null,h=!1,g=()=>{h=!0,d&&d()},w=null,S=()=>{w&&w()},b=()=>new Promise((C,_)=>{a=w=C,i=_,r.once("drain",S)}),T=()=>(e(t),new Promise((C,_)=>{if(l||h||n)return C();d=a=C,i=_})),k=()=>{r.removeListener("error",o),r.removeListener("close",f),r.removeListener("finish",g),r.removeListener("drain",S)};r.once("error",o),r.once("close",f),r.once("finish",g);try{for await(let C of t){if(!r.writable||r.destroyed||n)break;r.write(C)===!1&&await b()}}catch(C){n||r.destroy(),n=C}try{if(r.writable&&r.end(),await T(),n)throw n}finally{k()}}});var gi=B((Zm,Ts)=>{var fh=mi(),hh=Ur();Ts.exports=r=>({sink:fh(r),source:hh(r)})});var Is=B((Xm,As)=>{var ph=gi();As.exports=r=>async function*(t){let e=ph(r),n;if(e.sink(t).catch(i=>{n=i}),yield*e.source,n)throw n}});var Cs=B((Km,$e)=>{$e.exports=Ur();$e.exports.source=Ur();$e.exports.sink=mi();$e.exports.transform=Is();$e.exports.duplex=gi()});var bi=B((zr,Bs)=>{(function(){var r,t=0xdeadbeefcafe,e=(t&16777215)==15715070;function n(s,c,u){s!=null&&(typeof s=="number"?this.fromNumber(s,c,u):c==null&&typeof s!="string"?this.fromString(s,256):this.fromString(s,c))}function i(){return new n(null)}function o(s,c,u,p,m,y){for(;--y>=0;){var E=c*this[s++]+u[p]+m;m=Math.floor(E/67108864),u[p++]=E&67108863}return m}function a(s,c,u,p,m,y){for(var E=c&32767,v=c>>15;--y>=0;){var N=this[s]&32767,j=this[s++]>>15,Et=v*N+j*E;N=E*N+((Et&32767)<<15)+u[p]+(m&1073741823),m=(N>>>30)+(Et>>>15)+v*j+(m>>>30),u[p++]=N&1073741823}return m}function l(s,c,u,p,m,y){for(var E=c&16383,v=c>>14;--y>=0;){var N=this[s]&16383,j=this[s++]>>14,Et=v*N+j*E;N=E*N+((Et&16383)<<14)+u[p]+m,m=(N>>28)+(Et>>14)+v*j,u[p++]=N&268435455}return m}var f=typeof navigator<"u";f&&e&&navigator.appName=="Microsoft Internet Explorer"?(n.prototype.am=a,r=30):f&&e&&navigator.appName!="Netscape"?(n.prototype.am=o,r=26):(n.prototype.am=l,r=28),n.prototype.DB=r,n.prototype.DM=(1<<r)-1,n.prototype.DV=1<<r;var d=52;n.prototype.FV=Math.pow(2,d),n.prototype.F1=d-r,n.prototype.F2=2*r-d;var h="0123456789abcdefghijklmnopqrstuvwxyz",g=new Array,w,S;for(w="0".charCodeAt(0),S=0;S<=9;++S)g[w++]=S;for(w="a".charCodeAt(0),S=10;S<36;++S)g[w++]=S;for(w="A".charCodeAt(0),S=10;S<36;++S)g[w++]=S;function b(s){return h.charAt(s)}function T(s,c){var u=g[s.charCodeAt(c)];return u??-1}function k(s){for(var c=this.t-1;c>=0;--c)s[c]=this[c];s.t=this.t,s.s=this.s}function C(s){this.t=1,this.s=s<0?-1:0,s>0?this[0]=s:s<-1?this[0]=s+this.DV:this.t=0}function _(s){var c=i();return c.fromInt(s),c}function G(s,c){var u;if(c==16)u=4;else if(c==8)u=3;else if(c==256)u=8;else if(c==2)u=1;else if(c==32)u=5;else if(c==4)u=2;else{this.fromRadix(s,c);return}this.t=0,this.s=0;for(var p=s.length,m=!1,y=0;--p>=0;){var E=u==8?s[p]&255:T(s,p);if(E<0){s.charAt(p)=="-"&&(m=!0);continue}m=!1,y==0?this[this.t++]=E:y+u>this.DB?(this[this.t-1]|=(E&(1<<this.DB-y)-1)<<y,this[this.t++]=E>>this.DB-y):this[this.t-1]|=E<<y,y+=u,y>=this.DB&&(y-=this.DB)}u==8&&s[0]&128&&(this.s=-1,y>0&&(this[this.t-1]|=(1<<this.DB-y)-1<<y)),this.clamp(),m&&n.ZERO.subTo(this,this)}function W(){for(var s=this.s&this.DM;this.t>0&&this[this.t-1]==s;)--this.t}function ht(s){if(this.s<0)return"-"+this.negate().toString(s);var c;if(s==16)c=4;else if(s==8)c=3;else if(s==2)c=1;else if(s==32)c=5;else if(s==4)c=2;else return this.toRadix(s);var u=(1<<c)-1,p,m=!1,y="",E=this.t,v=this.DB-E*this.DB%c;if(E-- >0)for(v<this.DB&&(p=this[E]>>v)>0&&(m=!0,y=b(p));E>=0;)v<c?(p=(this[E]&(1<<v)-1)<<c-v,p|=this[--E]>>(v+=this.DB-c)):(p=this[E]>>(v-=c)&u,v<=0&&(v+=this.DB,--E)),p>0&&(m=!0),m&&(y+=b(p));return m?y:"0"}function at(){var s=i();return n.ZERO.subTo(this,s),s}function ot(){return this.s<0?this.negate():this}function ut(s){var c=this.s-s.s;if(c!=0)return c;var u=this.t;if(c=u-s.t,c!=0)return this.s<0?-c:c;for(;--u>=0;)if((c=this[u]-s[u])!=0)return c;return 0}function Ct(s){var c=1,u;return(u=s>>>16)!=0&&(s=u,c+=16),(u=s>>8)!=0&&(s=u,c+=8),(u=s>>4)!=0&&(s=u,c+=4),(u=s>>2)!=0&&(s=u,c+=2),(u=s>>1)!=0&&(s=u,c+=1),c}function ea(){return this.t<=0?0:this.DB*(this.t-1)+Ct(this[this.t-1]^this.s&this.DM)}function ra(s,c){var u;for(u=this.t-1;u>=0;--u)c[u+s]=this[u];for(u=s-1;u>=0;--u)c[u]=0;c.t=this.t+s,c.s=this.s}function na(s,c){for(var u=s;u<this.t;++u)c[u-s]=this[u];c.t=Math.max(this.t-s,0),c.s=this.s}function ia(s,c){var u=s%this.DB,p=this.DB-u,m=(1<<p)-1,y=Math.floor(s/this.DB),E=this.s<<u&this.DM,v;for(v=this.t-1;v>=0;--v)c[v+y+1]=this[v]>>p|E,E=(this[v]&m)<<u;for(v=y-1;v>=0;--v)c[v]=0;c[y]=E,c.t=this.t+y+1,c.s=this.s,c.clamp()}function oa(s,c){c.s=this.s;var u=Math.floor(s/this.DB);if(u>=this.t){c.t=0;return}var p=s%this.DB,m=this.DB-p,y=(1<<p)-1;c[0]=this[u]>>p;for(var E=u+1;E<this.t;++E)c[E-u-1]|=(this[E]&y)<<m,c[E-u]=this[E]>>p;p>0&&(c[this.t-u-1]|=(this.s&y)<<m),c.t=this.t-u,c.clamp()}function sa(s,c){for(var u=0,p=0,m=Math.min(s.t,this.t);u<m;)p+=this[u]-s[u],c[u++]=p&this.DM,p>>=this.DB;if(s.t<this.t){for(p-=s.s;u<this.t;)p+=this[u],c[u++]=p&this.DM,p>>=this.DB;p+=this.s}else{for(p+=this.s;u<s.t;)p-=s[u],c[u++]=p&this.DM,p>>=this.DB;p-=s.s}c.s=p<0?-1:0,p<-1?c[u++]=this.DV+p:p>0&&(c[u++]=p),c.t=u,c.clamp()}function ca(s,c){var u=this.abs(),p=s.abs(),m=u.t;for(c.t=m+p.t;--m>=0;)c[m]=0;for(m=0;m<p.t;++m)c[m+u.t]=u.am(0,p[m],c,m,0,u.t);c.s=0,c.clamp(),this.s!=s.s&&n.ZERO.subTo(c,c)}function aa(s){for(var c=this.abs(),u=s.t=2*c.t;--u>=0;)s[u]=0;for(u=0;u<c.t-1;++u){var p=c.am(u,c[u],s,2*u,0,1);(s[u+c.t]+=c.am(u+1,2*c[u],s,2*u+1,p,c.t-u-1))>=c.DV&&(s[u+c.t]-=c.DV,s[u+c.t+1]=1)}s.t>0&&(s[s.t-1]+=c.am(u,c[u],s,2*u,0,1)),s.s=0,s.clamp()}function ua(s,c,u){var p=s.abs();if(!(p.t<=0)){var m=this.abs();if(m.t<p.t){c?.fromInt(0),u!=null&&this.copyTo(u);return}u==null&&(u=i());var y=i(),E=this.s,v=s.s,N=this.DB-Ct(p[p.t-1]);N>0?(p.lShiftTo(N,y),m.lShiftTo(N,u)):(p.copyTo(y),m.copyTo(u));var j=y.t,Et=y[j-1];if(Et!=0){var dt=Et*(1<<this.F1)+(j>1?y[j-2]>>this.F2:0),Gt=this.FV/dt,Er=(1<<this.F1)/dt,kt=1<<this.F2,Bt=u.t,vr=Bt-j,Yt=c??i();for(y.dlShiftTo(vr,Yt),u.compareTo(Yt)>=0&&(u[u.t++]=1,u.subTo(Yt,u)),n.ONE.dlShiftTo(j,Yt),Yt.subTo(y,y);y.t<j;)y[y.t++]=0;for(;--vr>=0;){var Cn=u[--Bt]==Et?this.DM:Math.floor(u[Bt]*Gt+(u[Bt-1]+kt)*Er);if((u[Bt]+=y.am(0,Cn,u,vr,0,j))<Cn)for(y.dlShiftTo(vr,Yt),u.subTo(Yt,u);u[Bt]<--Cn;)u.subTo(Yt,u)}c!=null&&(u.drShiftTo(j,c),E!=v&&n.ZERO.subTo(c,c)),u.t=j,u.clamp(),N>0&&u.rShiftTo(N,u),E<0&&n.ZERO.subTo(u,u)}}}function la(s){var c=i();return this.abs().divRemTo(s,null,c),this.s<0&&c.compareTo(n.ZERO)>0&&s.subTo(c,c),c}function ae(s){this.m=s}function fa(s){return s.s<0||s.compareTo(this.m)>=0?s.mod(this.m):s}function ha(s){return s}function pa(s){s.divRemTo(this.m,null,s)}function da(s,c,u){s.multiplyTo(c,u),this.reduce(u)}function ma(s,c){s.squareTo(c),this.reduce(c)}ae.prototype.convert=fa,ae.prototype.revert=ha,ae.prototype.reduce=pa,ae.prototype.mulTo=da,ae.prototype.sqrTo=ma;function ga(){if(this.t<1)return 0;var s=this[0];if(!(s&1))return 0;var c=s&3;return c=c*(2-(s&15)*c)&15,c=c*(2-(s&255)*c)&255,c=c*(2-((s&65535)*c&65535))&65535,c=c*(2-s*c%this.DV)%this.DV,c>0?this.DV-c:-c}function ue(s){this.m=s,this.mp=s.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<s.DB-15)-1,this.mt2=2*s.t}function ya(s){var c=i();return s.abs().dlShiftTo(this.m.t,c),c.divRemTo(this.m,null,c),s.s<0&&c.compareTo(n.ZERO)>0&&this.m.subTo(c,c),c}function ba(s){var c=i();return s.copyTo(c),this.reduce(c),c}function wa(s){for(;s.t<=this.mt2;)s[s.t++]=0;for(var c=0;c<this.m.t;++c){var u=s[c]&32767,p=u*this.mpl+((u*this.mph+(s[c]>>15)*this.mpl&this.um)<<15)&s.DM;for(u=c+this.m.t,s[u]+=this.m.am(0,p,s,c,0,this.m.t);s[u]>=s.DV;)s[u]-=s.DV,s[++u]++}s.clamp(),s.drShiftTo(this.m.t,s),s.compareTo(this.m)>=0&&s.subTo(this.m,s)}function Ea(s,c){s.squareTo(c),this.reduce(c)}function va(s,c,u){s.multiplyTo(c,u),this.reduce(u)}ue.prototype.convert=ya,ue.prototype.revert=ba,ue.prototype.reduce=wa,ue.prototype.mulTo=va,ue.prototype.sqrTo=Ea;function xa(){return(this.t>0?this[0]&1:this.s)==0}function Sa(s,c){if(s>4294967295||s<1)return n.ONE;var u=i(),p=i(),m=c.convert(this),y=Ct(s)-1;for(m.copyTo(u);--y>=0;)if(c.sqrTo(u,p),(s&1<<y)>0)c.mulTo(p,m,u);else{var E=u;u=p,p=E}return c.revert(u)}function Ta(s,c){var u;return s<256||c.isEven()?u=new ae(c):u=new ue(c),this.exp(s,u)}n.prototype.copyTo=k,n.prototype.fromInt=C,n.prototype.fromString=G,n.prototype.clamp=W,n.prototype.dlShiftTo=ra,n.prototype.drShiftTo=na,n.prototype.lShiftTo=ia,n.prototype.rShiftTo=oa,n.prototype.subTo=sa,n.prototype.multiplyTo=ca,n.prototype.squareTo=aa,n.prototype.divRemTo=ua,n.prototype.invDigit=ga,n.prototype.isEven=xa,n.prototype.exp=Sa,n.prototype.toString=ht,n.prototype.negate=at,n.prototype.abs=ot,n.prototype.compareTo=ut,n.prototype.bitLength=ea,n.prototype.mod=la,n.prototype.modPowInt=Ta,n.ZERO=_(0),n.ONE=_(1);function Aa(){var s=i();return this.copyTo(s),s}function Ia(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<<this.DB|this[0]}function Ca(){return this.t==0?this.s:this[0]<<24>>24}function _a(){return this.t==0?this.s:this[0]<<16>>16}function ka(s){return Math.floor(Math.LN2*this.DB/Math.log(s))}function Ba(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function Da(s){if(s==null&&(s=10),this.signum()==0||s<2||s>36)return"0";var c=this.chunkSize(s),u=Math.pow(s,c),p=_(u),m=i(),y=i(),E="";for(this.divRemTo(p,m,y);m.signum()>0;)E=(u+y.intValue()).toString(s).substr(1)+E,m.divRemTo(p,m,y);return y.intValue().toString(s)+E}function Ra(s,c){this.fromInt(0),c==null&&(c=10);for(var u=this.chunkSize(c),p=Math.pow(c,u),m=!1,y=0,E=0,v=0;v<s.length;++v){var N=T(s,v);if(N<0){s.charAt(v)=="-"&&this.signum()==0&&(m=!0);continue}E=c*E+N,++y>=u&&(this.dMultiply(p),this.dAddOffset(E,0),y=0,E=0)}y>0&&(this.dMultiply(Math.pow(c,y)),this.dAddOffset(E,0)),m&&n.ZERO.subTo(this,this)}function La(s,c,u){if(typeof c=="number")if(s<2)this.fromInt(1);else for(this.fromNumber(s,u),this.testBit(s-1)||this.bitwiseTo(n.ONE.shiftLeft(s-1),Sn,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(c);)this.dAddOffset(2,0),this.bitLength()>s&&this.subTo(n.ONE.shiftLeft(s-1),this);else{var p=new Array,m=s&7;p.length=(s>>3)+1,c.nextBytes(p),m>0?p[0]&=(1<<m)-1:p[0]=0,this.fromString(p,256)}}function Na(){var s=this.t,c=new Array;c[0]=this.s;var u=this.DB-s*this.DB%8,p,m=0;if(s-- >0)for(u<this.DB&&(p=this[s]>>u)!=(this.s&this.DM)>>u&&(c[m++]=p|this.s<<this.DB-u);s>=0;)u<8?(p=(this[s]&(1<<u)-1)<<8-u,p|=this[--s]>>(u+=this.DB-8)):(p=this[s]>>(u-=8)&255,u<=0&&(u+=this.DB,--s)),p&128&&(p|=-256),m==0&&(this.s&128)!=(p&128)&&++m,(m>0||p!=this.s)&&(c[m++]=p);return c}function Oa(s){return this.compareTo(s)==0}function Pa(s){return this.compareTo(s)<0?this:s}function Ma(s){return this.compareTo(s)>0?this:s}function Fa(s,c,u){var p,m,y=Math.min(s.t,this.t);for(p=0;p<y;++p)u[p]=c(this[p],s[p]);if(s.t<this.t){for(m=s.s&this.DM,p=y;p<this.t;++p)u[p]=c(this[p],m);u.t=this.t}else{for(m=this.s&this.DM,p=y;p<s.t;++p)u[p]=c(m,s[p]);u.t=s.t}u.s=c(this.s,s.s),u.clamp()}function Ua(s,c){return s&c}function Ga(s){var c=i();return this.bitwiseTo(s,Ua,c),c}function Sn(s,c){return s|c}function $a(s){var c=i();return this.bitwiseTo(s,Sn,c),c}function no(s,c){return s^c}function za(s){var c=i();return this.bitwiseTo(s,no,c),c}function io(s,c){return s&~c}function Va(s){var c=i();return this.bitwiseTo(s,io,c),c}function Ha(){for(var s=i(),c=0;c<this.t;++c)s[c]=this.DM&~this[c];return s.t=this.t,s.s=~this.s,s}function Wa(s){var c=i();return s<0?this.rShiftTo(-s,c):this.lShiftTo(s,c),c}function qa(s){var c=i();return s<0?this.lShiftTo(-s,c):this.rShiftTo(s,c),c}function Za(s){if(s==0)return-1;var c=0;return s&65535||(s>>=16,c+=16),s&255||(s>>=8,c+=8),s&15||(s>>=4,c+=4),s&3||(s>>=2,c+=2),s&1||++c,c}function Xa(){for(var s=0;s<this.t;++s)if(this[s]!=0)return s*this.DB+Za(this[s]);return this.s<0?this.t*this.DB:-1}function Ka(s){for(var c=0;s!=0;)s&=s-1,++c;return c}function ja(){for(var s=0,c=this.s&this.DM,u=0;u<this.t;++u)s+=Ka(this[u]^c);return s}function Ya(s){var c=Math.floor(s/this.DB);return c>=this.t?this.s!=0:(this[c]&1<<s%this.DB)!=0}function Ja(s,c){var u=n.ONE.shiftLeft(s);return this.bitwiseTo(u,c,u),u}function Qa(s){return this.changeBit(s,Sn)}function tu(s){return this.changeBit(s,io)}function eu(s){return this.changeBit(s,no)}function ru(s,c){for(var u=0,p=0,m=Math.min(s.t,this.t);u<m;)p+=this[u]+s[u],c[u++]=p&this.DM,p>>=this.DB;if(s.t<this.t){for(p+=s.s;u<this.t;)p+=this[u],c[u++]=p&this.DM,p>>=this.DB;p+=this.s}else{for(p+=this.s;u<s.t;)p+=s[u],c[u++]=p&this.DM,p>>=this.DB;p+=s.s}c.s=p<0?-1:0,p>0?c[u++]=p:p<-1&&(c[u++]=this.DV+p),c.t=u,c.clamp()}function nu(s){var c=i();return this.addTo(s,c),c}function iu(s){var c=i();return this.subTo(s,c),c}function ou(s){var c=i();return this.multiplyTo(s,c),c}function su(){var s=i();return this.squareTo(s),s}function cu(s){var c=i();return this.divRemTo(s,c,null),c}function au(s){var c=i();return this.divRemTo(s,null,c),c}function uu(s){var c=i(),u=i();return this.divRemTo(s,c,u),new Array(c,u)}function lu(s){this[this.t]=this.am(0,s-1,this,0,0,this.t),++this.t,this.clamp()}function fu(s,c){if(s!=0){for(;this.t<=c;)this[this.t++]=0;for(this[c]+=s;this[c]>=this.DV;)this[c]-=this.DV,++c>=this.t&&(this[this.t++]=0),++this[c]}}function Qe(){}function oo(s){return s}function hu(s,c,u){s.multiplyTo(c,u)}function pu(s,c){s.squareTo(c)}Qe.prototype.convert=oo,Qe.prototype.revert=oo,Qe.prototype.mulTo=hu,Qe.prototype.sqrTo=pu;function du(s){return this.exp(s,new Qe)}function mu(s,c,u){var p=Math.min(this.t+s.t,c);for(u.s=0,u.t=p;p>0;)u[--p]=0;var m;for(m=u.t-this.t;p<m;++p)u[p+this.t]=this.am(0,s[p],u,p,0,this.t);for(m=Math.min(s.t,c);p<m;++p)this.am(0,s[p],u,p,0,c-p);u.clamp()}function gu(s,c,u){--c;var p=u.t=this.t+s.t-c;for(u.s=0;--p>=0;)u[p]=0;for(p=Math.max(c-this.t,0);p<s.t;++p)u[this.t+p-c]=this.am(c-p,s[p],u,0,0,this.t+p-c);u.clamp(),u.drShiftTo(1,u)}function le(s){this.r2=i(),this.q3=i(),n.ONE.dlShiftTo(2*s.t,this.r2),this.mu=this.r2.divide(s),this.m=s}function yu(s){if(s.s<0||s.t>2*this.m.t)return s.mod(this.m);if(s.compareTo(this.m)<0)return s;var c=i();return s.copyTo(c),this.reduce(c),c}function bu(s){return s}function wu(s){for(s.drShiftTo(this.m.t-1,this.r2),s.t>this.m.t+1&&(s.t=this.m.t+1,s.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);s.compareTo(this.r2)<0;)s.dAddOffset(1,this.m.t+1);for(s.subTo(this.r2,s);s.compareTo(this.m)>=0;)s.subTo(this.m,s)}function Eu(s,c){s.squareTo(c),this.reduce(c)}function vu(s,c,u){s.multiplyTo(c,u),this.reduce(u)}le.prototype.convert=yu,le.prototype.revert=bu,le.prototype.reduce=wu,le.prototype.mulTo=vu,le.prototype.sqrTo=Eu;function xu(s,c){var u=s.bitLength(),p,m=_(1),y;if(u<=0)return m;u<18?p=1:u<48?p=3:u<144?p=4:u<768?p=5:p=6,u<8?y=new ae(c):c.isEven()?y=new le(c):y=new ue(c);var E=new Array,v=3,N=p-1,j=(1<<p)-1;if(E[1]=y.convert(this),p>1){var Et=i();for(y.sqrTo(E[1],Et);v<=j;)E[v]=i(),y.mulTo(Et,E[v-2],E[v]),v+=2}var dt=s.t-1,Gt,Er=!0,kt=i(),Bt;for(u=Ct(s[dt])-1;dt>=0;){for(u>=N?Gt=s[dt]>>u-N&j:(Gt=(s[dt]&(1<<u+1)-1)<<N-u,dt>0&&(Gt|=s[dt-1]>>this.DB+u-N)),v=p;!(Gt&1);)Gt>>=1,--v;if((u-=v)<0&&(u+=this.DB,--dt),Er)E[Gt].copyTo(m),Er=!1;else{for(;v>1;)y.sqrTo(m,kt),y.sqrTo(kt,m),v-=2;v>0?y.sqrTo(m,kt):(Bt=m,m=kt,kt=Bt),y.mulTo(kt,E[Gt],m)}for(;dt>=0&&!(s[dt]&1<<u);)y.sqrTo(m,kt),Bt=m,m=kt,kt=Bt,--u<0&&(u=this.DB-1,--dt)}return y.revert(m)}function Su(s){var c=this.s<0?this.negate():this.clone(),u=s.s<0?s.negate():s.clone();if(c.compareTo(u)<0){var p=c;c=u,u=p}var m=c.getLowestSetBit(),y=u.getLowestSetBit();if(y<0)return c;for(m<y&&(y=m),y>0&&(c.rShiftTo(y,c),u.rShiftTo(y,u));c.signum()>0;)(m=c.getLowestSetBit())>0&&c.rShiftTo(m,c),(m=u.getLowestSetBit())>0&&u.rShiftTo(m,u),c.compareTo(u)>=0?(c.subTo(u,c),c.rShiftTo(1,c)):(u.subTo(c,u),u.rShiftTo(1,u));return y>0&&u.lShiftTo(y,u),u}function Tu(s){if(s<=0)return 0;var c=this.DV%s,u=this.s<0?s-1:0;if(this.t>0)if(c==0)u=this[0]%s;else for(var p=this.t-1;p>=0;--p)u=(c*u+this[p])%s;return u}function Au(s){var c=s.isEven();if(this.isEven()&&c||s.signum()==0)return n.ZERO;for(var u=s.clone(),p=this.clone(),m=_(1),y=_(0),E=_(0),v=_(1);u.signum()!=0;){for(;u.isEven();)u.rShiftTo(1,u),c?((!m.isEven()||!y.isEven())&&(m.addTo(this,m),y.subTo(s,y)),m.rShiftTo(1,m)):y.isEven()||y.subTo(s,y),y.rShiftTo(1,y);for(;p.isEven();)p.rShiftTo(1,p),c?((!E.isEven()||!v.isEven())&&(E.addTo(this,E),v.subTo(s,v)),E.rShiftTo(1,E)):v.isEven()||v.subTo(s,v),v.rShiftTo(1,v);u.compareTo(p)>=0?(u.subTo(p,u),c&&m.subTo(E,m),y.subTo(v,y)):(p.subTo(u,p),c&&E.subTo(m,E),v.subTo(y,v))}if(p.compareTo(n.ONE)!=0)return n.ZERO;if(v.compareTo(s)>=0)return v.subtract(s);if(v.signum()<0)v.addTo(s,v);else return v;return v.signum()<0?v.add(s):v}var st=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],Iu=(1<<26)/st[st.length-1];function Cu(s){var c,u=this.abs();if(u.t==1&&u[0]<=st[st.length-1]){for(c=0;c<st.length;++c)if(u[0]==st[c])return!0;return!1}if(u.isEven())return!1;for(c=1;c<st.length;){for(var p=st[c],m=c+1;m<st.length&&p<Iu;)p*=st[m++];for(p=u.modInt(p);c<m;)if(p%st[c++]==0)return!1}return u.millerRabin(s)}function _u(s){var c=this.subtract(n.ONE),u=c.getLowestSetBit();if(u<=0)return!1;var p=c.shiftRight(u);s=s+1>>1,s>st.length&&(s=st.length);for(var m=i(),y=0;y<s;++y){m.fromInt(st[Math.floor(Math.random()*st.length)]);var E=m.modPow(p,this);if(E.compareTo(n.ONE)!=0&&E.compareTo(c)!=0){for(var v=1;v++<u&&E.compareTo(c)!=0;)if(E=E.modPowInt(2,this),E.compareTo(n.ONE)==0)return!1;if(E.compareTo(c)!=0)return!1}}return!0}n.prototype.chunkSize=ka,n.prototype.toRadix=Da,n.prototype.fromRadix=Ra,n.prototype.fromNumber=La,n.prototype.bitwiseTo=Fa,n.prototype.changeBit=Ja,n.prototype.addTo=ru,n.prototype.dMultiply=lu,n.prototype.dAddOffset=fu,n.prototype.multiplyLowerTo=mu,n.prototype.multiplyUpperTo=gu,n.prototype.modInt=Tu,n.prototype.millerRabin=_u,n.prototype.clone=Aa,n.prototype.intValue=Ia,n.prototype.byteValue=Ca,n.prototype.shortValue=_a,n.prototype.signum=Ba,n.prototype.toByteArray=Na,n.prototype.equals=Oa,n.prototype.min=Pa,n.prototype.max=Ma,n.prototype.and=Ga,n.prototype.or=$a,n.prototype.xor=za,n.prototype.andNot=Va,n.prototype.not=Ha,n.prototype.shiftLeft=Wa,n.prototype.shiftRight=qa,n.prototype.getLowestSetBit=Xa,n.prototype.bitCount=ja,n.prototype.testBit=Ya,n.prototype.setBit=Qa,n.prototype.clearBit=tu,n.prototype.flipBit=eu,n.prototype.add=nu,n.prototype.subtract=iu,n.prototype.multiply=ou,n.prototype.divide=cu,n.prototype.remainder=au,n.prototype.divideAndRemainder=uu,n.prototype.modPow=xu,n.prototype.modInverse=Au,n.prototype.pow=du,n.prototype.gcd=Su,n.prototype.isProbablePrime=Cu,n.prototype.square=su,n.prototype.Barrett=le;var wr,pt,K;function ku(s){pt[K++]^=s&255,pt[K++]^=s>>8&255,pt[K++]^=s>>16&255,pt[K++]^=s>>24&255,K>=In&&(K-=In)}function so(){ku(new Date().getTime())}if(pt==null){pt=new Array,K=0;var _t;if(typeof window<"u"&&window.crypto){if(window.crypto.getRandomValues){var co=new Uint8Array(32);for(window.crypto.getRandomValues(co),_t=0;_t<32;++_t)pt[K++]=co[_t]}else if(navigator.appName=="Netscape"&&navigator.appVersion<"5"){var ao=window.crypto.random(32);for(_t=0;_t<ao.length;++_t)pt[K++]=ao.charCodeAt(_t)&255}}for(;K<In;)_t=Math.floor(65536*Math.random()),pt[K++]=_t>>>8,pt[K++]=_t&255;K=0,so()}function Bu(){if(wr==null){for(so(),wr=Nu(),wr.init(pt),K=0;K<pt.length;++K)pt[K]=0;K=0}return wr.next()}function Du(s){var c;for(c=0;c<s.length;++c)s[c]=Bu()}function Tn(){}Tn.prototype.nextBytes=Du;function An(){this.i=0,this.j=0,this.S=new Array}function Ru(s){var c,u,p;for(c=0;c<256;++c)this.S[c]=c;for(u=0,c=0;c<256;++c)u=u+this.S[c]+s[c%s.length]&255,p=this.S[c],this.S[c]=this.S[u],this.S[u]=p;this.i=0,this.j=0}function Lu(){var s;return this.i=this.i+1&255,this.j=this.j+this.S[this.i]&255,s=this.S[this.i],this.S[this.i]=this.S[this.j],this.S[this.j]=s,this.S[s+this.S[this.i]&255]}An.prototype.init=Ru,An.prototype.next=Lu;function Nu(){return new An}var In=256;typeof zr<"u"?zr=Bs.exports={default:n,BigInteger:n,SecureRandom:Tn}:this.jsbn={BigInteger:n,SecureRandom:Tn}}).call(zr)});var lr=B(Vr=>{(function(){"use strict";var r={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function t(a){return n(o(a),arguments)}function e(a,l){return t.apply(null,[a].concat(l||[]))}function n(a,l){var f=1,d=a.length,h,g="",w,S,b,T,k,C,_,G;for(w=0;w<d;w++)if(typeof a[w]=="string")g+=a[w];else if(typeof a[w]=="object"){if(b=a[w],b.keys)for(h=l[f],S=0;S<b.keys.length;S++){if(h==null)throw new Error(t('[sprintf] Cannot access property "%s" of undefined value "%s"',b.keys[S],b.keys[S-1]));h=h[b.keys[S]]}else b.param_no?h=l[b.param_no]:h=l[f++];if(r.not_type.test(b.type)&&r.not_primitive.test(b.type)&&h instanceof Function&&(h=h()),r.numeric_arg.test(b.type)&&typeof h!="number"&&isNaN(h))throw new TypeError(t("[sprintf] expecting number but found %T",h));switch(r.number.test(b.type)&&(_=h>=0),b.type){case"b":h=parseInt(h,10).toString(2);break;case"c":h=String.fromCharCode(parseInt(h,10));break;case"d":case"i":h=parseInt(h,10);break;case"j":h=JSON.stringify(h,null,b.width?parseInt(b.width):0);break;case"e":h=b.precision?parseFloat(h).toExponential(b.precision):parseFloat(h).toExponential();break;case"f":h=b.precision?parseFloat(h).toFixed(b.precision):parseFloat(h);break;case"g":h=b.precision?String(Number(h.toPrecision(b.precision))):parseFloat(h);break;case"o":h=(parseInt(h,10)>>>0).toString(8);break;case"s":h=String(h),h=b.precision?h.substring(0,b.precision):h;break;case"t":h=String(!!h),h=b.precision?h.substring(0,b.precision):h;break;case"T":h=Object.prototype.toString.call(h).slice(8,-1).toLowerCase(),h=b.precision?h.substring(0,b.precision):h;break;case"u":h=parseInt(h,10)>>>0;break;case"v":h=h.valueOf(),h=b.precision?h.substring(0,b.precision):h;break;case"x":h=(parseInt(h,10)>>>0).toString(16);break;case"X":h=(parseInt(h,10)>>>0).toString(16).toUpperCase();break}r.json.test(b.type)?g+=h:(r.number.test(b.type)&&(!_||b.sign)?(G=_?"+":"-",h=h.toString().replace(r.sign,"")):G="",k=b.pad_char?b.pad_char==="0"?"0":b.pad_char.charAt(1):" ",C=b.width-(G+h).length,T=b.width&&C>0?k.repeat(C):"",g+=b.align?G+h+T:k==="0"?G+T+h:T+G+h)}return g}var i=Object.create(null);function o(a){if(i[a])return i[a];for(var l=a,f,d=[],h=0;l;){if((f=r.text.exec(l))!==null)d.push(f[0]);else if((f=r.modulo.exec(l))!==null)d.push("%");else if((f=r.placeholder.exec(l))!==null){if(f[2]){h|=1;var g=[],w=f[2],S=[];if((S=r.key.exec(w))!==null)for(g.push(S[1]);(w=w.substring(S[0].length))!=="";)if((S=r.key_access.exec(w))!==null)g.push(S[1]);else if((S=r.index_access.exec(w))!==null)g.push(S[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");f[2]=g}else h|=2;if(h===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");d.push({placeholder:f[0],param_no:f[1],keys:f[2],sign:f[3],pad_char:f[4],align:f[5],width:f[6],precision:f[7],type:f[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");l=l.substring(f[0].length)}return i[a]=d}typeof Vr<"u"&&(Vr.sprintf=t,Vr.vsprintf=e),typeof window<"u"&&(window.sprintf=t,window.vsprintf=e,typeof define=="function"&&define.amd&&define(function(){return{sprintf:t,vsprintf:e}}))})()});var Qs=B((eg,Js)=>{"use strict";function Ys(r,t){for(let e in t)Object.defineProperty(r,e,{value:t[e],enumerable:!0,configurable:!0});return r}function Fh(r,t,e){if(!r||typeof r=="string")throw new TypeError("Please pass an Error to err-code");e||(e={}),typeof t=="object"&&(e=t,t=""),t&&(e.code=t);try{return Ys(r,e)}catch{e.message=r.message,e.stack=r.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(r)),Ys(new i,e)}}Js.exports=Fh});var cc=B((Cg,sc)=>{"use strict";sc.exports=qh;function qh(r,t){for(var e=new Array(arguments.length-1),n=0,i=2,o=!0;i<arguments.length;)e[n++]=arguments[i++];return new Promise(function(l,f){e[n]=function(h){if(o)if(o=!1,h)f(h);else{for(var g=new Array(arguments.length-1),w=0;w<g.length;)g[w++]=arguments[w];l.apply(null,g)}};try{r.apply(t||null,e)}catch(d){o&&(o=!1,f(d))}})}});var fc=B(lc=>{"use strict";var nn=lc;nn.length=function(t){var e=t.length;if(!e)return 0;for(var n=0;--e%4>1&&t.charAt(e)==="=";)++n;return Math.ceil(t.length*3)/4-n};var je=new Array(64),uc=new Array(123);for(Ot=0;Ot<64;)uc[je[Ot]=Ot<26?Ot+65:Ot<52?Ot+71:Ot<62?Ot-4:Ot-59|43]=Ot++;var Ot;nn.encode=function(t,e,n){for(var i=null,o=[],a=0,l=0,f;e<n;){var d=t[e++];switch(l){case 0:o[a++]=je[d>>2],f=(d&3)<<4,l=1;break;case 1:o[a++]=je[f|d>>4],f=(d&15)<<2,l=2;break;case 2:o[a++]=je[f|d>>6],o[a++]=je[d&63],l=0;break}a>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,o)),a=0)}return l&&(o[a++]=je[f],o[a++]=61,l===1&&(o[a++]=61)),i?(a&&i.push(String.fromCharCode.apply(String,o.slice(0,a))),i.join("")):String.fromCharCode.apply(String,o.slice(0,a))};var ac="invalid encoding";nn.decode=function(t,e,n){for(var i=n,o=0,a,l=0;l<t.length;){var f=t.charCodeAt(l++);if(f===61&&o>1)break;if((f=uc[f])===void 0)throw Error(ac);switch(o){case 0:a=f,o=1;break;case 1:e[n++]=a<<2|(f&48)>>4,a=f,o=2;break;case 2:e[n++]=(a&15)<<4|(f&60)>>2,a=f,o=3;break;case 3:e[n++]=(a&3)<<6|f,o=0;break}}if(o===1)throw Error(ac);return n-i};nn.test=function(t){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(t)}});var pc=B((kg,hc)=>{"use strict";hc.exports=on;function on(){this._listeners={}}on.prototype.on=function(t,e,n){return(this._listeners[t]||(this._listeners[t]=[])).push({fn:e,ctx:n||this}),this};on.prototype.off=function(t,e){if(t===void 0)this._listeners={};else if(e===void 0)this._listeners[t]=[];else for(var n=this._listeners[t],i=0;i<n.length;)n[i].fn===e?n.splice(i,1):++i;return this};on.prototype.emit=function(t){var e=this._listeners[t];if(e){for(var n=[],i=1;i<arguments.length;)n.push(arguments[i++]);for(i=0;i<e.length;)e[i].fn.apply(e[i++].ctx,n)}return this}});var Ec=B((Bg,wc)=>{"use strict";wc.exports=dc(dc);function dc(r){return typeof Float32Array<"u"?function(){var t=new Float32Array([-0]),e=new Uint8Array(t.buffer),n=e[3]===128;function i(f,d,h){t[0]=f,d[h]=e[0],d[h+1]=e[1],d[h+2]=e[2],d[h+3]=e[3]}function o(f,d,h){t[0]=f,d[h]=e[3],d[h+1]=e[2],d[h+2]=e[1],d[h+3]=e[0]}r.writeFloatLE=n?i:o,r.writeFloatBE=n?o:i;function a(f,d){return e[0]=f[d],e[1]=f[d+1],e[2]=f[d+2],e[3]=f[d+3],t[0]}function l(f,d){return e[3]=f[d],e[2]=f[d+1],e[1]=f[d+2],e[0]=f[d+3],t[0]}r.readFloatLE=n?a:l,r.readFloatBE=n?l:a}():function(){function t(n,i,o,a){var l=i<0?1:0;if(l&&(i=-i),i===0)n(1/i>0?0:2147483648,o,a);else if(isNaN(i))n(2143289344,o,a);else if(i>34028234663852886e22)n((l<<31|2139095040)>>>0,o,a);else if(i<11754943508222875e-54)n((l<<31|Math.round(i/1401298464324817e-60))>>>0,o,a);else{var f=Math.floor(Math.log(i)/Math.LN2),d=Math.round(i*Math.pow(2,-f)*8388608)&8388607;n((l<<31|f+127<<23|d)>>>0,o,a)}}r.writeFloatLE=t.bind(null,mc),r.writeFloatBE=t.bind(null,gc);function e(n,i,o){var a=n(i,o),l=(a>>31)*2+1,f=a>>>23&255,d=a&8388607;return f===255?d?NaN:l*(1/0):f===0?l*1401298464324817e-60*d:l*Math.pow(2,f-150)*(d+8388608)}r.readFloatLE=e.bind(null,yc),r.readFloatBE=e.bind(null,bc)}(),typeof Float64Array<"u"?function(){var t=new Float64Array([-0]),e=new Uint8Array(t.buffer),n=e[7]===128;function i(f,d,h){t[0]=f,d[h]=e[0],d[h+1]=e[1],d[h+2]=e[2],d[h+3]=e[3],d[h+4]=e[4],d[h+5]=e[5],d[h+6]=e[6],d[h+7]=e[7]}function o(f,d,h){t[0]=f,d[h]=e[7],d[h+1]=e[6],d[h+2]=e[5],d[h+3]=e[4],d[h+4]=e[3],d[h+5]=e[2],d[h+6]=e[1],d[h+7]=e[0]}r.writeDoubleLE=n?i:o,r.writeDoubleBE=n?o:i;function a(f,d){return e[0]=f[d],e[1]=f[d+1],e[2]=f[d+2],e[3]=f[d+3],e[4]=f[d+4],e[5]=f[d+5],e[6]=f[d+6],e[7]=f[d+7],t[0]}function l(f,d){return e[7]=f[d],e[6]=f[d+1],e[5]=f[d+2],e[4]=f[d+3],e[3]=f[d+4],e[2]=f[d+5],e[1]=f[d+6],e[0]=f[d+7],t[0]}r.readDoubleLE=n?a:l,r.readDoubleBE=n?l:a}():function(){function t(n,i,o,a,l,f){var d=a<0?1:0;if(d&&(a=-a),a===0)n(0,l,f+i),n(1/a>0?0:2147483648,l,f+o);else if(isNaN(a))n(0,l,f+i),n(2146959360,l,f+o);else if(a>17976931348623157e292)n(0,l,f+i),n((d<<31|2146435072)>>>0,l,f+o);else{var h;if(a<22250738585072014e-324)h=a/5e-324,n(h>>>0,l,f+i),n((d<<31|h/4294967296)>>>0,l,f+o);else{var g=Math.floor(Math.log(a)/Math.LN2);g===1024&&(g=1023),h=a*Math.pow(2,-g),n(h*4503599627370496>>>0,l,f+i),n((d<<31|g+1023<<20|h*1048576&1048575)>>>0,l,f+o)}}}r.writeDoubleLE=t.bind(null,mc,0,4),r.writeDoubleBE=t.bind(null,gc,4,0);function e(n,i,o,a,l){var f=n(a,l+i),d=n(a,l+o),h=(d>>31)*2+1,g=d>>>20&2047,w=4294967296*(d&1048575)+f;return g===2047?w?NaN:h*(1/0):g===0?h*5e-324*w:h*Math.pow(2,g-1075)*(w+4503599627370496)}r.readDoubleLE=e.bind(null,yc,0,4),r.readDoubleBE=e.bind(null,bc,4,0)}(),r}function mc(r,t,e){t[e]=r&255,t[e+1]=r>>>8&255,t[e+2]=r>>>16&255,t[e+3]=r>>>24}function gc(r,t,e){t[e]=r>>>24,t[e+1]=r>>>16&255,t[e+2]=r>>>8&255,t[e+3]=r&255}function yc(r,t){return(r[t]|r[t+1]<<8|r[t+2]<<16|r[t+3]<<24)>>>0}function bc(r,t){return(r[t]<<24|r[t+1]<<16|r[t+2]<<8|r[t+3])>>>0}});var vc=B((exports,module)=>{"use strict";module.exports=inquire;function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(r){}return null}});var Sc=B(xc=>{"use strict";var Gi=xc;Gi.length=function(t){for(var e=0,n=0,i=0;i<t.length;++i)n=t.charCodeAt(i),n<128?e+=1:n<2048?e+=2:(n&64512)===55296&&(t.charCodeAt(i+1)&64512)===56320?(++i,e+=4):e+=3;return e};Gi.read=function(t,e,n){var i=n-e;if(i<1)return"";for(var o=null,a=[],l=0,f;e<n;)f=t[e++],f<128?a[l++]=f:f>191&&f<224?a[l++]=(f&31)<<6|t[e++]&63:f>239&&f<365?(f=((f&7)<<18|(t[e++]&63)<<12|(t[e++]&63)<<6|t[e++]&63)-65536,a[l++]=55296+(f>>10),a[l++]=56320+(f&1023)):a[l++]=(f&15)<<12|(t[e++]&63)<<6|t[e++]&63,l>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,a)),l=0);return o?(l&&o.push(String.fromCharCode.apply(String,a.slice(0,l))),o.join("")):String.fromCharCode.apply(String,a.slice(0,l))};Gi.write=function(t,e,n){for(var i=n,o,a,l=0;l<t.length;++l)o=t.charCodeAt(l),o<128?e[n++]=o:o<2048?(e[n++]=o>>6|192,e[n++]=o&63|128):(o&64512)===55296&&((a=t.charCodeAt(l+1))&64512)===56320?(o=65536+((o&1023)<<10)+(a&1023),++l,e[n++]=o>>18|240,e[n++]=o>>12&63|128,e[n++]=o>>6&63|128,e[n++]=o&63|128):(e[n++]=o>>12|224,e[n++]=o>>6&63|128,e[n++]=o&63|128);return n-i}});var Ac=B((Rg,Tc)=>{"use strict";Tc.exports=Zh;function Zh(r,t,e){var n=e||8192,i=n>>>1,o=null,a=n;return function(f){if(f<1||f>i)return r(f);a+f>n&&(o=r(n),a=0);var d=t.call(o,a,a+=f);return a&7&&(a=(a|7)+1),d}}});var Cc=B((Lg,Ic)=>{"use strict";Ic.exports=Y;var hr=Te();function Y(r,t){this.lo=r>>>0,this.hi=t>>>0}var Se=Y.zero=new Y(0,0);Se.toNumber=function(){return 0};Se.zzEncode=Se.zzDecode=function(){return this};Se.length=function(){return 1};var Xh=Y.zeroHash="\0\0\0\0\0\0\0\0";Y.fromNumber=function(t){if(t===0)return Se;var e=t<0;e&&(t=-t);var n=t>>>0,i=(t-n)/4294967296>>>0;return e&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new Y(n,i)};Y.from=function(t){if(typeof t=="number")return Y.fromNumber(t);if(hr.isString(t))if(hr.Long)t=hr.Long.fromString(t);else return Y.fromNumber(parseInt(t,10));return t.low||t.high?new Y(t.low>>>0,t.high>>>0):Se};Y.prototype.toNumber=function(t){if(!t&&this.hi>>>31){var e=~this.lo+1>>>0,n=~this.hi>>>0;return e||(n=n+1>>>0),-(e+n*4294967296)}return this.lo+this.hi*4294967296};Y.prototype.toLong=function(t){return hr.Long?new hr.Long(this.lo|0,this.hi|0,!!t):{low:this.lo|0,high:this.hi|0,unsigned:!!t}};var oe=String.prototype.charCodeAt;Y.fromHash=function(t){return t===Xh?Se:new Y((oe.call(t,0)|oe.call(t,1)<<8|oe.call(t,2)<<16|oe.call(t,3)<<24)>>>0,(oe.call(t,4)|oe.call(t,5)<<8|oe.call(t,6)<<16|oe.call(t,7)<<24)>>>0)};Y.prototype.toHash=function(){return String.fromCharCode(this.lo&255,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,this.hi&255,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)};Y.prototype.zzEncode=function(){var t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this};Y.prototype.zzDecode=function(){var t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this};Y.prototype.length=function(){var t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?e===0?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:n<128?9:10}});var Te=B($i=>{"use strict";var A=$i;A.asPromise=cc();A.base64=fc();A.EventEmitter=pc();A.float=Ec();A.inquire=vc();A.utf8=Sc();A.pool=Ac();A.LongBits=Cc();A.isNode=!!(typeof globalThis<"u"&&globalThis&&globalThis.process&&globalThis.process.versions&&globalThis.process.versions.node);A.global=A.isNode&&globalThis||typeof window<"u"&&window||typeof self<"u"&&self||$i;A.emptyArray=Object.freeze?Object.freeze([]):[];A.emptyObject=Object.freeze?Object.freeze({}):{};A.isInteger=Number.isInteger||function(t){return typeof t=="number"&&isFinite(t)&&Math.floor(t)===t};A.isString=function(t){return typeof t=="string"||t instanceof String};A.isObject=function(t){return t&&typeof t=="object"};A.isset=A.isSet=function(t,e){var n=t[e];return n!=null&&t.hasOwnProperty(e)?typeof n!="object"||(Array.isArray(n)?n.length:Object.keys(n).length)>0:!1};A.Buffer=function(){try{var r=A.inquire("buffer").Buffer;return r.prototype.utf8Write?r:null}catch{return null}}();A._Buffer_from=null;A._Buffer_allocUnsafe=null;A.newBuffer=function(t){return typeof t=="number"?A.Buffer?A._Buffer_allocUnsafe(t):new A.Array(t):A.Buffer?A._Buffer_from(t):typeof Uint8Array>"u"?t:new Uint8Array(t)};A.Array=typeof Uint8Array<"u"?Uint8Array:Array;A.Long=A.global.dcodeIO&&A.global.dcodeIO.Long||A.global.Long||A.inquire("long");A.key2Re=/^true|false|0|1$/;A.key32Re=/^-?(?:0|[1-9][0-9]*)$/;A.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;A.longToHash=function(t){return t?A.LongBits.from(t).toHash():A.LongBits.zeroHash};A.longFromHash=function(t,e){var n=A.LongBits.fromHash(t);return A.Long?A.Long.fromBits(n.lo,n.hi,e):n.toNumber(!!e)};function _c(r,t,e){for(var n=Object.keys(t),i=0;i<n.length;++i)(r[n[i]]===void 0||!e)&&(r[n[i]]=t[n[i]]);return r}A.merge=_c;A.lcFirst=function(t){return t.charAt(0).toLowerCase()+t.substring(1)};function kc(r){function t(e,n){if(!(this instanceof t))return new t(e,n);Object.defineProperty(this,"message",{get:function(){return e}}),Error.captureStackTrace?Error.captureStackTrace(this,t):Object.defineProperty(this,"stack",{value:new Error().stack||""}),n&&_c(this,n)}return t.prototype=Object.create(Error.prototype,{constructor:{value:t,writable:!0,enumerable:!1,configurable:!0},name:{get:function(){return r},set:void 0,enumerable:!1,configurable:!0},toString:{value:function(){return this.name+": "+this.message},writable:!0,enumerable:!1,configurable:!0}}),t}A.newError=kc;A.ProtocolError=kc("ProtocolError");A.oneOfGetter=function(t){for(var e={},n=0;n<t.length;++n)e[t[n]]=1;return function(){for(var i=Object.keys(this),o=i.length-1;o>-1;--o)if(e[i[o]]===1&&this[i[o]]!==void 0&&this[i[o]]!==null)return i[o]}};A.oneOfSetter=function(t){return function(e){for(var n=0;n<t.length;++n)t[n]!==e&&delete this[t[n]]}};A.toJSONOptions={longs:String,enums:String,bytes:String,json:!0};A._configure=function(){var r=A.Buffer;if(!r){A._Buffer_from=A._Buffer_allocUnsafe=null;return}A._Buffer_from=r.from!==Uint8Array.from&&r.from||function(e,n){return new r(e,n)},A._Buffer_allocUnsafe=r.allocUnsafe||function(e){return new r(e)}}});var Hi=B((Og,Nc)=>{"use strict";Nc.exports=$;var Ft=Te(),Vi,Rc=Ft.LongBits,Kh=Ft.utf8;function Pt(r,t){return RangeError("index out of range: "+r.pos+" + "+(t||1)+" > "+r.len)}function $(r){this.buf=r,this.pos=0,this.len=r.length}var Bc=typeof Uint8Array<"u"?function(t){if(t instanceof Uint8Array||Array.isArray(t))return new $(t);throw Error("illegal buffer")}:function(t){if(Array.isArray(t))return new $(t);throw Error("illegal buffer")},Lc=function(){return Ft.Buffer?function(e){return($.create=function(i){return Ft.Buffer.isBuffer(i)?new Vi(i):Bc(i)})(e)}:Bc};$.create=Lc();$.prototype._slice=Ft.Array.prototype.subarray||Ft.Array.prototype.slice;$.prototype.uint32=function(){var t=4294967295;return function(){if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,Pt(this,10);return t}}();$.prototype.int32=function(){return this.uint32()|0};$.prototype.sint32=function(){var t=this.uint32();return t>>>1^-(t&1)|0};function zi(){var r=new Rc(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(r.lo=(r.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return r;if(r.lo=(r.lo|(this.buf[this.pos]&127)<<28)>>>0,r.hi=(r.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return r;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw Pt(this);if(r.lo=(r.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return r}return r.lo=(r.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,r}if(this.len-this.pos>4){for(;t<5;++t)if(r.hi=(r.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return r}else for(;t<5;++t){if(this.pos>=this.len)throw Pt(this);if(r.hi=(r.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return r}throw Error("invalid varint encoding")}$.prototype.bool=function(){return this.uint32()!==0};function sn(r,t){return(r[t-4]|r[t-3]<<8|r[t-2]<<16|r[t-1]<<24)>>>0}$.prototype.fixed32=function(){if(this.pos+4>this.len)throw Pt(this,4);return sn(this.buf,this.pos+=4)};$.prototype.sfixed32=function(){if(this.pos+4>this.len)throw Pt(this,4);return sn(this.buf,this.pos+=4)|0};function Dc(){if(this.pos+8>this.len)throw Pt(this,8);return new Rc(sn(this.buf,this.pos+=4),sn(this.buf,this.pos+=4))}$.prototype.float=function(){if(this.pos+4>this.len)throw Pt(this,4);var t=Ft.float.readFloatLE(this.buf,this.pos);return this.pos+=4,t};$.prototype.double=function(){if(this.pos+8>this.len)throw Pt(this,4);var t=Ft.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,t};$.prototype.bytes=function(){var t=this.uint32(),e=this.pos,n=this.pos+t;if(n>this.len)throw Pt(this,t);return this.pos+=t,Array.isArray(this.buf)?this.buf.slice(e,n):e===n?new this.buf.constructor(0):this._slice.call(this.buf,e,n)};$.prototype.string=function(){var t=this.bytes();return Kh.read(t,0,t.length)};$.prototype.skip=function(t){if(typeof t=="number"){if(this.pos+t>this.len)throw Pt(this,t);this.pos+=t}else do if(this.pos>=this.len)throw Pt(this);while(this.buf[this.pos++]&128);return this};$.prototype.skipType=function(r){switch(r){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(r=this.uint32()&7)!==4;)this.skipType(r);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+r+" at offset "+this.pos)}return this};$._configure=function(r){Vi=r,$.create=Lc(),Vi._configure();var t=Ft.Long?"toLong":"toNumber";Ft.merge($.prototype,{int64:function(){return zi.call(this)[t](!1)},uint64:function(){return zi.call(this)[t](!0)},sint64:function(){return zi.call(this).zzDecode()[t](!1)},fixed64:function(){return Dc.call(this)[t](!0)},sfixed64:function(){return Dc.call(this)[t](!1)}})}});var Fc=B((Pg,Mc)=>{"use strict";Mc.exports=Ae;var Pc=Hi();(Ae.prototype=Object.create(Pc.prototype)).constructor=Ae;var Oc=Te();function Ae(r){Pc.call(this,r)}Ae._configure=function(){Oc.Buffer&&(Ae.prototype._slice=Oc.Buffer.prototype.slice)};Ae.prototype.string=function(){var t=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+t,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+t,this.len))};Ae._configure()});var Yi=B((Mg,zc)=>{"use strict";zc.exports=D;var Tt=Te(),Wi,cn=Tt.LongBits,Uc=Tt.base64,Gc=Tt.utf8;function pr(r,t,e){this.fn=r,this.len=t,this.next=void 0,this.val=e}function Zi(){}function jh(r){this.head=r.head,this.tail=r.tail,this.len=r.len,this.next=r.states}function D(){this.len=0,this.head=new pr(Zi,0,0),this.tail=this.head,this.states=null}var $c=function(){return Tt.Buffer?function(){return(D.create=function(){return new Wi})()}:function(){return new D}};D.create=$c();D.alloc=function(t){return new Tt.Array(t)};Tt.Array!==Array&&(D.alloc=Tt.pool(D.alloc,Tt.Array.prototype.subarray));D.prototype._push=function(t,e,n){return this.tail=this.tail.next=new pr(t,e,n),this.len+=e,this};function Xi(r,t,e){t[e]=r&255}function Yh(r,t,e){for(;r>127;)t[e++]=r&127|128,r>>>=7;t[e]=r}function Ki(r,t){this.len=r,this.next=void 0,this.val=t}Ki.prototype=Object.create(pr.prototype);Ki.prototype.fn=Yh;D.prototype.uint32=function(t){return this.len+=(this.tail=this.tail.next=new Ki((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this};D.prototype.int32=function(t){return t<0?this._push(ji,10,cn.fromNumber(t)):this.uint32(t)};D.prototype.sint32=function(t){return this.uint32((t<<1^t>>31)>>>0)};function ji(r,t,e){for(;r.hi;)t[e++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)t[e++]=r.lo&127|128,r.lo=r.lo>>>7;t[e++]=r.lo}D.prototype.uint64=function(t){var e=cn.from(t);return this._push(ji,e.length(),e)};D.prototype.int64=D.prototype.uint64;D.prototype.sint64=function(t){var e=cn.from(t).zzEncode();return this._push(ji,e.length(),e)};D.prototype.bool=function(t){return this._push(Xi,1,t?1:0)};function qi(r,t,e){t[e]=r&255,t[e+1]=r>>>8&255,t[e+2]=r>>>16&255,t[e+3]=r>>>24}D.prototype.fixed32=function(t){return this._push(qi,4,t>>>0)};D.prototype.sfixed32=D.prototype.fixed32;D.prototype.fixed64=function(t){var e=cn.from(t);return this._push(qi,4,e.lo)._push(qi,4,e.hi)};D.prototype.sfixed64=D.prototype.fixed64;D.prototype.float=function(t){return this._push(Tt.float.writeFloatLE,4,t)};D.prototype.double=function(t){return this._push(Tt.float.writeDoubleLE,8,t)};var Jh=Tt.Array.prototype.set?function(t,e,n){e.set(t,n)}:function(t,e,n){for(var i=0;i<t.length;++i)e[n+i]=t[i]};D.prototype.bytes=function(t){var e=t.length>>>0;if(!e)return this._push(Xi,1,0);if(Tt.isString(t)){var n=D.alloc(e=Uc.length(t));Uc.decode(t,n,0),t=n}return this.uint32(e)._push(Jh,e,t)};D.prototype.string=function(t){var e=Gc.length(t);return e?this.uint32(e)._push(Gc.write,e,t):this._push(Xi,1,0)};D.prototype.fork=function(){return this.states=new jh(this),this.head=this.tail=new pr(Zi,0,0),this.len=0,this};D.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new pr(Zi,0,0),this.len=0),this};D.prototype.ldelim=function(){var t=this.head,e=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=t.next,this.tail=e,this.len+=n),this};D.prototype.finish=function(){for(var t=this.head.next,e=this.constructor.alloc(this.len),n=0;t;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e};D._configure=function(r){Wi=r,D.create=$c(),Wi._configure()}});var Wc=B((Fg,Hc)=>{"use strict";Hc.exports=Ut;var Vc=Yi();(Ut.prototype=Object.create(Vc.prototype)).constructor=Ut;var se=Te();function Ut(){Vc.call(this)}Ut._configure=function(){Ut.alloc=se._Buffer_allocUnsafe,Ut.writeBytesBuffer=se.Buffer&&se.Buffer.prototype instanceof Uint8Array&&se.Buffer.prototype.set.name==="set"?function(t,e,n){e.set(t,n)}:function(t,e,n){if(t.copy)t.copy(e,n,0,t.length);else for(var i=0;i<t.length;)e[n++]=t[i++]}};Ut.prototype.bytes=function(t){se.isString(t)&&(t=se._Buffer_from(t,"base64"));var e=t.length>>>0;return this.uint32(e),e&&this._push(Ut.writeBytesBuffer,e,t),this};function Qh(r,t,e){r.length<40?se.utf8.write(r,t,e):t.utf8Write?t.utf8Write(r,e):t.write(r,e)}Ut.prototype.string=function(t){var e=se.Buffer.byteLength(t);return this.uint32(e),e&&this._push(Qh,e,t),this};Ut._configure()});var lp={};mt(lp,{Server:()=>xn,createServer:()=>up});var qs=M($t("net"),1);var Jt=$t("node:net");function Sr(r){return!!(0,Jt.isIP)(r)}var Rn={};mt(Rn,{identity:()=>qu});function $u(r,t){if(r.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),n=0;n<e.length;n++)e[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),a=o.charCodeAt(0);if(e[a]!==255)throw new TypeError(o+" is ambiguous");e[a]=i}var l=r.length,f=r.charAt(0),d=Math.log(l)/Math.log(256),h=Math.log(256)/Math.log(l);function g(b){if(b instanceof Uint8Array||(ArrayBuffer.isView(b)?b=new Uint8Array(b.buffer,b.byteOffset,b.byteLength):Array.isArray(b)&&(b=Uint8Array.from(b))),!(b instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(b.length===0)return"";for(var T=0,k=0,C=0,_=b.length;C!==_&&b[C]===0;)C++,T++;for(var G=(_-C)*h+1>>>0,W=new Uint8Array(G);C!==_;){for(var ht=b[C],at=0,ot=G-1;(ht!==0||at<k)&&ot!==-1;ot--,at++)ht+=256*W[ot]>>>0,W[ot]=ht%l>>>0,ht=ht/l>>>0;if(ht!==0)throw new Error("Non-zero carry");k=at,C++}for(var ut=G-k;ut!==G&&W[ut]===0;)ut++;for(var Ct=f.repeat(T);ut<G;++ut)Ct+=r.charAt(W[ut]);return Ct}function w(b){if(typeof b!="string")throw new TypeError("Expected String");if(b.length===0)return new Uint8Array;var T=0;if(b[T]!==" "){for(var k=0,C=0;b[T]===f;)k++,T++;for(var _=(b.length-T)*d+1>>>0,G=new Uint8Array(_);b[T];){var W=e[b.charCodeAt(T)];if(W===255)return;for(var ht=0,at=_-1;(W!==0||ht<C)&&at!==-1;at--,ht++)W+=l*G[at]>>>0,G[at]=W%256>>>0,W=W/256>>>0;if(W!==0)throw new Error("Non-zero carry");C=ht,T++}if(b[T]!==" "){for(var ot=_-C;ot!==_&&G[ot]===0;)ot++;for(var ut=new Uint8Array(k+(_-ot)),Ct=k;ot!==_;)ut[Ct++]=G[ot++];return ut}}}function S(b){var T=w(b);if(T)return T;throw new Error(`Non-${t} character`)}return{encode:g,decodeUnsafe:w,decode:S}}var zu=$u,Vu=zu,lo=Vu;var dp=new Uint8Array(0);var fo=(r,t)=>{if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0},vt=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 ho=r=>new TextEncoder().encode(r),po=r=>new TextDecoder().decode(r);var _n=class{constructor(t,e,n){this.name=t,this.prefix=e,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},kn=class{constructor(t,e,n){if(this.name=t,this.prefix=e,e.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=e.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return go(this,t)}},Bn=class{constructor(t){this.decoders=t}or(t){return go(this,t)}decode(t){let e=t[0],n=this.decoders[e];if(n)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},go=(r,t)=>new Bn({...r.decoders||{[r.prefix]:r},...t.decoders||{[t.prefix]:t}}),Dn=class{constructor(t,e,n,i){this.name=t,this.prefix=e,this.baseEncode=n,this.baseDecode=i,this.encoder=new _n(t,e,n),this.decoder=new kn(t,e,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},ke=({name:r,prefix:t,encode:e,decode:n})=>new Dn(r,t,e,n),Qt=({prefix:r,name:t,alphabet:e})=>{let{encode:n,decode:i}=lo(e,t);return ke({prefix:r,name:t,encode:n,decode:o=>vt(i(o))})},Hu=(r,t,e,n)=>{let i={};for(let h=0;h<t.length;++h)i[t[h]]=h;let o=r.length;for(;r[o-1]==="=";)--o;let a=new Uint8Array(o*e/8|0),l=0,f=0,d=0;for(let h=0;h<o;++h){let g=i[r[h]];if(g===void 0)throw new SyntaxError(`Non-${n} character`);f=f<<e|g,l+=e,l>=8&&(l-=8,a[d++]=255&f>>l)}if(l>=e||255&f<<8-l)throw new SyntaxError("Unexpected end of data");return a},Wu=(r,t,e)=>{let n=t[t.length-1]==="=",i=(1<<e)-1,o="",a=0,l=0;for(let f=0;f<r.length;++f)for(l=l<<8|r[f],a+=8;a>e;)a-=e,o+=t[i&l>>a];if(a&&(o+=t[i&l<<e-a]),n)for(;o.length*e&7;)o+="=";return o},F=({name:r,prefix:t,bitsPerChar:e,alphabet:n})=>ke({prefix:t,name:r,encode(i){return Wu(i,n,e)},decode(i){return Hu(i,n,e,r)}});var qu=ke({prefix:"\0",name:"identity",encode:r=>po(r),decode:r=>ho(r)});var Ln={};mt(Ln,{base2:()=>Zu});var Zu=F({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Nn={};mt(Nn,{base8:()=>Xu});var Xu=F({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var On={};mt(On,{base10:()=>Ku});var Ku=Qt({prefix:"9",name:"base10",alphabet:"0123456789"});var Pn={};mt(Pn,{base16:()=>ju,base16upper:()=>Yu});var ju=F({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Yu=F({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Mn={};mt(Mn,{base32:()=>Dt,base32hex:()=>el,base32hexpad:()=>nl,base32hexpadupper:()=>il,base32hexupper:()=>rl,base32pad:()=>Qu,base32padupper:()=>tl,base32upper:()=>Ju,base32z:()=>ol});var Dt=F({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Ju=F({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Qu=F({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),tl=F({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),el=F({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),rl=F({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),nl=F({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),il=F({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),ol=F({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Fn={};mt(Fn,{base36:()=>sl,base36upper:()=>cl});var sl=Qt({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),cl=Qt({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Un={};mt(Un,{base58btc:()=>q,base58flickr:()=>al});var q=Qt({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),al=Qt({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var $n={};mt($n,{base64:()=>Gn,base64pad:()=>ul,base64url:()=>ll,base64urlpad:()=>fl});var Gn=F({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),ul=F({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ll=F({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),fl=F({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var zn={};mt(zn,{base256emoji:()=>gl});var yo=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}"),hl=yo.reduce((r,t,e)=>(r[e]=t,r),[]),pl=yo.reduce((r,t,e)=>(r[t.codePointAt(0)]=e,r),[]);function dl(r){return r.reduce((t,e)=>(t+=hl[e],t),"")}function ml(r){let t=[];for(let e of r){let n=pl[e.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${e}`);t.push(n)}return new Uint8Array(t)}var gl=ke({prefix:"\u{1F680}",name:"base256emoji",encode:dl,decode:ml});var Zn={};mt(Zn,{sha256:()=>Ar,sha512:()=>Ol});var qn=M($t("crypto"),1);var yl=Eo,bo=128,bl=127,wl=~bl,El=Math.pow(2,31);function Eo(r,t,e){t=t||[],e=e||0;for(var n=e;r>=El;)t[e++]=r&255|bo,r/=128;for(;r&wl;)t[e++]=r&255|bo,r>>>=7;return t[e]=r|0,Eo.bytes=e-n+1,t}var vl=Vn,xl=128,wo=127;function Vn(r,n){var e=0,n=n||0,i=0,o=n,a,l=r.length;do{if(o>=l)throw Vn.bytes=0,new RangeError("Could not decode varint");a=r[o++],e+=i<28?(a&wo)<<i:(a&wo)*Math.pow(2,i),i+=7}while(a>=xl);return Vn.bytes=o-n,e}var Sl=Math.pow(2,7),Tl=Math.pow(2,14),Al=Math.pow(2,21),Il=Math.pow(2,28),Cl=Math.pow(2,35),_l=Math.pow(2,42),kl=Math.pow(2,49),Bl=Math.pow(2,56),Dl=Math.pow(2,63),Rl=function(r){return r<Sl?1:r<Tl?2:r<Al?3:r<Il?4:r<Cl?5:r<_l?6:r<kl?7:r<Bl?8:r<Dl?9:10},Ll={encode:yl,decode:vl,encodingLength:Rl},Nl=Ll,tr=Nl;var er=(r,t=0)=>[tr.decode(r,t),tr.decode.bytes],Be=(r,t,e=0)=>(tr.encode(r,t,e),t),De=r=>tr.encodingLength(r);var te=(r,t)=>{let e=t.byteLength,n=De(r),i=n+De(e),o=new Uint8Array(i+e);return Be(r,o,0),Be(e,o,n),o.set(t,i),new Re(r,e,t,o)},fe=r=>{let t=vt(r),[e,n]=er(t),[i,o]=er(t.subarray(n)),a=t.subarray(n+o);if(a.byteLength!==i)throw new Error("Incorrect length");return new Re(e,i,a,t)},vo=(r,t)=>{if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&fo(r.bytes,e.bytes)}},Re=class{constructor(t,e,n,i){this.code=t,this.size=e,this.digest=n,this.bytes=i}};var Wn=({name:r,code:t,encode:e})=>new Hn(r,t,e),Hn=class{constructor(t,e,n){this.name=t,this.code=e,this.encode=n}digest(t){if(t instanceof Uint8Array){let e=this.encode(t);return e instanceof Uint8Array?te(this.code,e):e.then(n=>te(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Ar=Wn({name:"sha2-256",code:18,encode:r=>vt(qn.default.createHash("sha256").update(r).digest())}),Ol=Wn({name:"sha2-512",code:19,encode:r=>vt(qn.default.createHash("sha512").update(r).digest())});var Xn={};mt(Xn,{identity:()=>Ir});var So=0,Pl="identity",To=vt,Ml=r=>te(So,To(r)),Ir={code:So,name:Pl,encode:To,digest:Ml};var Pp=new TextEncoder,Mp=new TextDecoder;var Ao=(r,t)=>{let{bytes:e,version:n}=r;switch(n){case 0:return $l(e,Kn(r),t||q.encoder);default:return zl(e,Kn(r),t||Dt.encoder)}};var Io=new WeakMap,Kn=r=>{let t=Io.get(r);if(t==null){let e=new Map;return Io.set(r,e),e}return t},R=class{constructor(t,e,n,i){this.code=e,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:e}=this;if(t!==rr)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==Vl)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return R.createV0(e)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:e}=this.multihash,n=te(t,e);return R.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return R.equals(this,t)}static equals(t,e){let n=e;return n&&t.code===n.code&&t.version===n.version&&vo(t.multihash,n.multihash)}toString(t){return Ao(this,t)}toJSON(){return{"/":Ao(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let e=t;if(e instanceof R)return e;if(e["/"]!=null&&e["/"]===e.bytes||e.asCID===e){let{version:n,code:i,multihash:o,bytes:a}=e;return new R(n,i,o,a||Co(n,i,o.bytes))}else if(e[Hl]===!0){let{version:n,multihash:i,code:o}=e,a=fe(i);return R.create(n,o,a)}else return null}static create(t,e,n){if(typeof e!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(e!==rr)throw new Error(`Version 0 CID must use dag-pb (code: ${rr}) block encoding`);return new R(t,e,n,n.bytes)}case 1:{let i=Co(t,e,n.bytes);return new R(t,e,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return R.create(0,rr,t)}static createV1(t,e){return R.create(1,t,e)}static decode(t){let[e,n]=R.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return e}static decodeFirst(t){let e=R.inspectBytes(t),n=e.size-e.multihashSize,i=vt(t.subarray(n,n+e.multihashSize));if(i.byteLength!==e.multihashSize)throw new Error("Incorrect length");let o=i.subarray(e.multihashSize-e.digestSize),a=new Re(e.multihashCode,e.digestSize,o,i);return[e.version===0?R.createV0(a):R.createV1(e.codec,a),t.subarray(e.size)]}static inspectBytes(t){let e=0,n=()=>{let[g,w]=er(t.subarray(e));return e+=w,g},i=n(),o=rr;if(i===18?(i=0,e=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let a=e,l=n(),f=n(),d=e+f,h=d-a;return{version:i,codec:o,multihashCode:l,digestSize:f,multihashSize:h,size:d}}static parse(t,e){let[n,i]=Gl(t,e),o=R.decode(i);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Kn(o).set(n,t),o}},Gl=(r,t)=>{switch(r[0]){case"Q":{let e=t||q;return[q.prefix,e.decode(`${q.prefix}${r}`)]}case q.prefix:{let e=t||q;return[q.prefix,e.decode(r)]}case Dt.prefix:{let e=t||Dt;return[Dt.prefix,e.decode(r)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],t.decode(r)]}}},$l=(r,t,e)=>{let{prefix:n}=e;if(n!==q.prefix)throw Error(`Cannot string encode V0 in ${e.name} encoding`);let i=t.get(n);if(i==null){let o=e.encode(r).slice(1);return t.set(n,o),o}else return i},zl=(r,t,e)=>{let{prefix:n}=e,i=t.get(n);if(i==null){let o=e.encode(r);return t.set(n,o),o}else return i},rr=112,Vl=18,Co=(r,t,e)=>{let n=De(r),i=n+De(t),o=new Uint8Array(i+e.byteLength);return Be(r,o,0),Be(t,o,n),o.set(e,i),o},Hl=Symbol.for("@ipld/js-cid/CID");var ee={...Rn,...Ln,...Nn,...On,...Pn,...Mn,...Fn,...Un,...$n,...zn},Zp={...Zn,...Xn};function pe(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function zt(r=0){return globalThis.Buffer?.alloc!=null?pe(globalThis.Buffer.alloc(r)):new Uint8Array(r)}function Rt(r=0){return globalThis.Buffer?.allocUnsafe!=null?pe(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}function ko(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var _o=ko("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),jn=ko("ascii","a",r=>{let t="a";for(let e=0;e<r.length;e++)t+=String.fromCharCode(r[e]);return t},r=>{r=r.substring(1);let t=Rt(r.length);for(let e=0;e<r.length;e++)t[e]=r.charCodeAt(e);return t}),Wl={utf8:_o,"utf-8":_o,hex:ee.base16,latin1:jn,ascii:jn,binary:jn,...ee},Cr=Wl;function lt(r,t="utf8"){let e=Cr[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r.buffer,r.byteOffset,r.byteLength).toString("utf8"):e.encoder.encode(r).substring(1)}var Bo=Jt.isIPv4,ql=Jt.isIPv6,Yn=function(r){let t=0;if(r=r.toString().trim(),Bo(r)){let e=new Uint8Array(t+4);return r.split(/\./g).forEach(n=>{e[t++]=parseInt(n,10)&255}),e}if(ql(r)){let e=r.split(":",8),n;for(n=0;n<e.length;n++){let o=Bo(e[n]),a;o&&(a=Yn(e[n]),e[n]=lt(a.slice(0,2),"base16")),a!=null&&++n<8&&e.splice(n,0,lt(a.slice(2,4),"base16"))}if(e[0]==="")for(;e.length<8;)e.unshift("0");else if(e[e.length-1]==="")for(;e.length<8;)e.push("0");else if(e.length<8){for(n=0;n<e.length&&e[n]!=="";n++);let o=[n,1];for(n=9-e.length;n>0;n--)o.push("0");e.splice.apply(e,o)}let i=new Uint8Array(t+16);for(n=0;n<e.length;n++){let o=parseInt(e[n],16);i[t++]=o>>8&255,i[t++]=o&255}return i}throw new Error("invalid ip address")},Do=function(r,t=0,e){t=~~t,e=e??r.length-t;let n=new DataView(r.buffer);if(e===4){let i=[];for(let o=0;o<e;o++)i.push(r[t+o]);return i.join(".")}if(e===16){let i=[];for(let o=0;o<e;o+=2)i.push(n.getUint16(t+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var nr={},Jn={},Xl=[[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"]];Xl.forEach(r=>{let t=Kl(...r);Jn[t.code]=t,nr[t.name]=t});function Kl(r,t,e,n,i){return{code:r,size:t,name:e,resolvable:!!n,path:!!i}}function L(r){if(typeof r=="number"){if(Jn[r]!=null)return Jn[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 Mt=M(_r(),1);function ir(r,t="utf8"){let e=Cr[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?pe(globalThis.Buffer.from(r,"utf-8")):e.decoder.decode(`${e.prefix}${r}`)}function xt(r,t){t==null&&(t=r.reduce((i,o)=>i+o.length,0));let e=Rt(t),n=0;for(let i of r)e.set(i,n),n+=i.length;return pe(e)}var kr=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let e=this.index,n=t();return n===void 0&&(this.index=e),n}parseWith(t){let e=t();if(this.index===this.input.length)return e}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let e=this.readChar();if(e===t)return e})}readSeparator(t,e,n){return this.readAtomically(()=>{if(!(e>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,e,n,i){return this.readAtomically(()=>{let o=0,a=0,l=this.peekChar();if(l===void 0)return;let f=l==="0",d=2**(8*i)-1;for(;;){let h=this.readAtomically(()=>{let g=this.readChar();if(g===void 0)return;let w=Number.parseInt(g,t);if(!Number.isNaN(w))return w});if(h===void 0)break;if(o*=t,o+=h,o>d||(a+=1,e!==void 0&&a>e))return}if(a!==0)return!n&&f&&a>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let e=0;e<t.length;e++){let n=this.readSeparator(".",e,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[e]=n}return t})}readIPv6Addr(){let t=e=>{for(let n=0;n<e.length/2;n++){let i=n*2;if(n<e.length-3){let a=this.readSeparator(":",n,()=>this.readIPv4Addr());if(a!==void 0)return e[i]=a[0],e[i+1]=a[1],e[i+2]=a[2],e[i+3]=a[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];e[i]=o>>8,e[i+1]=o&255}return[e.length,!1]};return this.readAtomically(()=>{let e=new Uint8Array(16),[n,i]=t(e);if(n===16)return e;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),a=16-(n+2),[l]=t(o.subarray(0,a));return e.set(o.subarray(0,l),16-l),e})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var wd=new kr;var Cd=parseInt("0xFFFF",16),_d=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);var cm=L("ip4"),am=L("ip6"),um=L("ipcidr");function Zo(r,t){switch(L(r).code){case 4:case 41:return gf(t);case 42:return Wo(t);case 6:case 273:case 33:case 132:return Ko(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Wo(t);case 421:return Ef(t);case 444:return qo(t);case 445:return qo(t);case 466:return wf(t);default:return lt(t,"base16")}}function Xo(r,t){switch(L(r).code){case 4:return Vo(t);case 41:return Vo(t);case 42:return Ho(t);case 6:case 273:case 33:case 132:return ri(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Ho(t);case 421:return yf(t);case 444:return vf(t);case 445:return xf(t);case 466:return bf(t);default:return ir(t,"base16")}}var ei=Object.values(ee).map(r=>r.decoder),mf=function(){let r=ei[0].or(ei[1]);return ei.slice(2).forEach(t=>r=r.or(t)),r}();function Vo(r){if(!Sr(r))throw new Error("invalid ip address");return Yn(r)}function gf(r){let t=Do(r,0,r.length);if(t==null)throw new Error("ipBuff is required");if(!Sr(t))throw new Error("invalid ip address");return t}function ri(r){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,r),new Uint8Array(t)}function Ko(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function Ho(r){let t=ir(r),e=Uint8Array.from(Mt.default.encode(t.length));return xt([e,t],e.length+t.length)}function Wo(r){let t=Mt.default.decode(r);if(r=r.slice(Mt.default.decode.bytes),r.length!==t)throw new Error("inconsistent lengths");return lt(r)}function yf(r){let t;r[0]==="Q"||r[0]==="1"?t=fe(q.decode(`z${r}`)).bytes:t=R.parse(r).multihash.bytes;let e=Uint8Array.from(Mt.default.encode(t.length));return xt([e,t],e.length+t.length)}function bf(r){let t=mf.decode(r),e=Uint8Array.from(Mt.default.encode(t.length));return xt([e,t],e.length+t.length)}function wf(r){let t=Mt.default.decode(r),e=r.slice(Mt.default.decode.bytes);if(e.length!==t)throw new Error("inconsistent lengths");return"u"+lt(e,"base64url")}function Ef(r){let t=Mt.default.decode(r),e=r.slice(Mt.default.decode.bytes);if(e.length!==t)throw new Error("inconsistent lengths");return lt(e,"base58btc")}function vf(r){let t=r.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let e=Dt.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=ri(n);return xt([e,i],e.length+i.length)}function xf(r){let t=r.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let e=Dt.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=ri(n);return xt([e,i],e.length+i.length)}function qo(r){let t=r.slice(0,r.length-2),e=r.slice(r.length-2),n=lt(t,"base32"),i=Ko(e);return`${n}:${i}`}var Le=M(_r(),1);function Sf(r){let t=[],e=r.split("/").slice(1);if(e.length===1&&e[0]==="")return[];for(let n=0;n<e.length;n++){let i=e[n],o=L(i);if(o.size===0){t.push([i]);continue}if(n++,n>=e.length)throw Yo("invalid address: "+r);if(o.path===!0){t.push([i,ci(e.slice(n).join("/"))]);break}t.push([i,e[n]])}return t}function Tf(r){let t=[];return r.map(e=>{let n=Rr(e);return t.push(n.name),e.length>1&&e[1]!=null&&t.push(e[1]),null}),ci(t.join("/"))}function Af(r){return r.map(t=>{Array.isArray(t)||(t=[t]);let e=Rr(t);return t.length>1?[e.code,Xo(e.code,t[1])]:[e.code]})}function ni(r){return r.map(t=>{let e=Rr(t);return t[1]!=null?[e.code,Zo(e.code,t[1])]:[e.code]})}function ii(r){return Dr(xt(r.map(t=>{let e=Rr(t),n=Uint8Array.from(Le.default.encode(e.code));return t.length>1&&t[1]!=null&&(n=xt([n,t[1]])),n})))}function oi(r,t){return r.size>0?r.size/8:r.size===0?0:Le.default.decode(t)+(Le.default.decode.bytes??0)}function Br(r){let t=[],e=0;for(;e<r.length;){let n=Le.default.decode(r,e),i=Le.default.decode.bytes??0,o=L(n),a=oi(o,r.slice(e+i));if(a===0){t.push([n]),e+=i;continue}let l=r.slice(e+i,e+i+a);if(e+=a+i,e>r.length)throw Yo("Invalid address Uint8Array: "+lt(r,"base16"));t.push([n,l])}return t}function si(r){let t=Br(r),e=ni(t);return Tf(e)}function If(r){r=ci(r);let t=Sf(r),e=Af(t);return ii(e)}function jo(r){return If(r)}function Dr(r){let t=Cf(r);if(t!=null)throw t;return Uint8Array.from(r)}function Cf(r){try{Br(r)}catch(t){return t}}function ci(r){return"/"+r.trim().split("/").filter(t=>t).join("/")}function Yo(r){return new Error("Error parsing address: "+r)}function Rr(r){return L(r[0])}var ui=M(_r(),1);var Vt=class extends Error{constructor(t="The operation was aborted"){super(t),this.code=Vt.code,this.type=Vt.type}static get code(){return"ABORT_ERR"}static get type(){return"aborted"}},ct=class extends Error{constructor(t,e,n){super(t),this.code=e,this.name=n?.name??"CodeError",this.props=n??{}}};function de(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}var Ne=function(r,t,e,n){if(e==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?r!==t||!n:!t.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?n:e==="a"?n.call(r):n?n.value:t.get(r)},ai=function(r,t,e,n,i){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?r!==t||!i:!t.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?i.call(r,e):i?i.value=e:t.set(r,e),e},or,sr,cr,Jo,kf=Symbol.for("nodejs.util.inspect.custom"),Bf=[L("dns").code,L("dns4").code,L("dns6").code,L("dnsaddr").code],Df=new Map,Qo=Symbol.for("@multiformats/js-multiaddr/multiaddr");function Rf(r){return!!r?.[Qo]}var Ht=class{constructor(t){if(or.set(this,void 0),sr.set(this,void 0),cr.set(this,void 0),this[Jo]=!0,t==null&&(t=""),t instanceof Uint8Array)this.bytes=Dr(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);this.bytes=jo(t)}else if(Rf(t))this.bytes=Dr(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr")}toString(){return Ne(this,or,"f")==null&&ai(this,or,si(this.bytes),"f"),Ne(this,or,"f")}toJSON(){return this.toString()}toOptions(){let t,e,n,i,o="",a=L("tcp"),l=L("udp"),f=L("ip4"),d=L("ip6"),h=L("dns6"),g=L("ip6zone");for(let[S,b]of this.stringTuples())S===g.code&&(o=`%${b??""}`),Bf.includes(S)&&(e=a.name,i=443,n=`${b??""}${o}`,t=S===h.code?6:4),(S===a.code||S===l.code)&&(e=L(S).name,i=parseInt(b??"")),(S===f.code||S===d.code)&&(e=L(S).name,n=`${b??""}${o}`,t=S===d.code?6:4);if(t==null||e==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:e,port:i}}protos(){return this.protoCodes().map(t=>Object.assign({},L(t)))}protoCodes(){let t=[],e=this.bytes,n=0;for(;n<e.length;){let i=ui.default.decode(e,n),o=ui.default.decode.bytes??0,a=L(i),l=oi(a,e.slice(n+o));n+=l+o,t.push(i)}return t}protoNames(){return this.protos().map(t=>t.name)}tuples(){return Ne(this,sr,"f")==null&&ai(this,sr,Br(this.bytes),"f"),Ne(this,sr,"f")}stringTuples(){return Ne(this,cr,"f")==null&&ai(this,cr,ni(this.tuples()),"f"),Ne(this,cr,"f")}encapsulate(t){return t=new Ht(t),new Ht(this.toString()+t.toString())}decapsulate(t){let e=t.toString(),n=this.toString(),i=n.lastIndexOf(e);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new Ht(n.slice(0,i))}decapsulateCode(t){let e=this.tuples();for(let n=e.length-1;n>=0;n--)if(e[n][0]===t)return new Ht(ii(e.slice(0,n)));return this}getPeerId(){try{let e=this.stringTuples().filter(n=>n[0]===nr.ipfs.code).pop();if(e?.[1]!=null){let n=e[1];return n[0]==="Q"||n[0]==="1"?lt(q.decode(`z${n}`),"base58btc"):lt(R.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){let t=null;try{t=this.stringTuples().filter(e=>L(e[0]).path===!0)[0][1],t==null&&(t=null)}catch{t=null}return t}equals(t){return de(this.bytes,t.bytes)}async resolve(t){let e=this.protos().find(o=>o.resolvable);if(e==null)return[this];let n=Df.get(e.name);if(n==null)throw new ct(`no available resolver for ${e.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new Ht(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let e=(t??this).protos();return!(e.length!==2||e[0].code!==4&&e[0].code!==41||e[1].code!==6&&e[1].code!==273)}[(or=new WeakMap,sr=new WeakMap,cr=new WeakMap,Jo=Qo,kf)](){return`Multiaddr(${si(this.bytes)})`}};function gt(r){return new Ht(r)}var Lf=x("dns4"),Nf=x("dns6"),Of=x("dnsaddr"),me=Z(x("dns"),Of,Lf,Nf),Lr=Z(x("ip4"),x("ip6")),ne=Z(I(Lr,x("tcp")),I(me,x("tcp"))),Nr=I(Lr,x("udp")),Pf=I(Nr,x("utp")),Mf=I(Nr,x("quic")),Ff=I(Nr,x("quic-v1")),ar=Z(I(ne,x("ws")),I(me,x("ws"))),ur=Z(I(ne,x("wss")),I(me,x("wss")),I(ne,x("tls"),x("ws")),I(me,x("tls"),x("ws"))),li=Z(I(ne,x("http")),I(Lr,x("http")),I(me,x("http"))),fi=Z(I(ne,x("https")),I(Lr,x("https")),I(me,x("https"))),ts=I(Nr,x("webrtc-direct"),x("certhash")),ns=Z(I(ts,x("p2p")),ts),es=I(Ff,x("webtransport"),x("certhash"),x("certhash")),is=Z(I(es,x("p2p")),es),os=Z(I(ar,x("p2p-webrtc-star"),x("p2p")),I(ur,x("p2p-webrtc-star"),x("p2p")),I(ar,x("p2p-webrtc-star")),I(ur,x("p2p-webrtc-star"))),Dm=Z(I(ar,x("p2p-websocket-star"),x("p2p")),I(ur,x("p2p-websocket-star"),x("p2p")),I(ar,x("p2p-websocket-star")),I(ur,x("p2p-websocket-star"))),ss=Z(I(li,x("p2p-webrtc-direct"),x("p2p")),I(fi,x("p2p-webrtc-direct"),x("p2p")),I(li,x("p2p-webrtc-direct")),I(fi,x("p2p-webrtc-direct"))),Pe=Z(ar,ur,li,fi,os,ss,ne,Pf,Mf,me,ns,is),Rm=Z(I(Pe,x("p2p-stardust"),x("p2p")),I(Pe,x("p2p-stardust"))),re=Z(I(Pe,x("p2p")),os,ss,ns,is,x("p2p")),rs=Z(I(re,x("p2p-circuit"),re),I(re,x("p2p-circuit")),I(x("p2p-circuit"),re),I(Pe,x("p2p-circuit")),I(x("p2p-circuit"),Pe),x("p2p-circuit")),cs=()=>Z(I(rs,cs),rs),Oe=cs(),Lm=Z(I(Oe,re,Oe),I(re,Oe),I(Oe,re),Oe,re);var Nm=Z(I(Oe,x("webrtc")),I(Pe,x("webrtc")),x("webrtc"));function as(r){function t(e){let n;try{n=gt(e)}catch{return!1}let i=r(n.protoNames());return i===null?!1:i===!0||i===!1?i:i.length===0}return t}function I(...r){function t(e){if(e.length<r.length)return null;let n=e;return r.some(i=>(n=typeof i=="function"?i().partialMatch(e):i.partialMatch(e),Array.isArray(n)&&(e=n),n===null)),n}return{toString:function(){return"{ "+r.join(" ")+" }"},input:r,matches:as(t),partialMatch:t}}function Z(...r){function t(n){let i=null;return r.some(o=>{let a=typeof o=="function"?o().partialMatch(n):o.partialMatch(n);return a!=null?(i=a,!0):!1}),i}return{toString:function(){return"{ "+r.join(" ")+" }"},input:r,matches:as(t),partialMatch:t}}function x(r){let t=r;function e(i){let o;try{o=gt(i)}catch{return!1}let a=o.protoNames();return a.length===1&&a[0]===t}function n(i){return i.length===0?null:i[0]===t?i.slice(1):null}return{toString:function(){return t},matches:e,partialMatch:n}}var St=M(ws(),1);St.default.formatters.b=r=>r==null?"undefined":q.baseEncode(r);St.default.formatters.t=r=>r==null?"undefined":Dt.baseEncode(r);St.default.formatters.m=r=>r==null?"undefined":Gn.baseEncode(r);St.default.formatters.p=r=>r==null?"undefined":r.toString();St.default.formatters.c=r=>r==null?"undefined":r.toString();St.default.formatters.k=r=>r==null?"undefined":r.toString();function uh(r){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=r,t.destroy=()=>!0,t.extend=()=>t,t}function et(r){let t=uh(`${r}:trace`);return St.default.enabled(`${r}:trace`)&&St.default.names.map(e=>e.toString()).find(e=>e.includes(":trace"))!=null&&(t=(0,St.default)(`${r}:trace`)),Object.assign((0,St.default)(r),{error:(0,St.default)(`${r}:error`),trace:t})}var zs=M(Cs(),1);function Gr(r){return this.subnetMask<r.subnetMask?!1:this.mask(r.subnetMask)===r.mask()}function $r(r){return function(){return this.addressMinusSuffix!==this.correctForm()?!1:this.subnetMask===r&&!this.parsedSubnet?!0:this.parsedSubnet===String(this.subnetMask)}}var ze=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g,yi=/\/\d{1,2}$/;var rt=class extends Error{constructor(t,e){super(t),this.name="AddressError",e!==null&&(this.parseMessage=e)}};var Ve=M(bi(),1),ye=M(lr(),1),O=class{constructor(t){this.groups=4,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=$r(32),this.isInSubnet=Gr,this.address=t;let e=yi.exec(t);if(e){if(this.parsedSubnet=e[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>32)throw new rt("Invalid subnet mask.");t=t.replace(yi,"")}this.addressMinusSuffix=t,this.parsedAddress=this.parse(t)}static isValid(t){try{return new O(t),!0}catch{return!1}}parse(t){let e=t.split(".");if(!t.match(ze))throw new rt("Invalid IPv4 address.");return e}correctForm(){return this.parsedAddress.map(t=>parseInt(t,10)).join(".")}static fromHex(t){let e=t.replace(/:/g,"").padStart(8,"0"),n=[],i;for(i=0;i<8;i+=2){let o=e.slice(i,i+2);n.push(parseInt(o,16))}return new O(n.join("."))}static fromInteger(t){return O.fromHex(t.toString(16))}static fromArpa(t){let n=t.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join(".");return new O(n)}toHex(){return this.parsedAddress.map(t=>(0,ye.sprintf)("%02x",parseInt(t,10))).join(":")}toArray(){return this.parsedAddress.map(t=>parseInt(t,10))}toGroup6(){let t=[],e;for(e=0;e<4;e+=2){let n=(0,ye.sprintf)("%02x%02x",parseInt(this.parsedAddress[e],10),parseInt(this.parsedAddress[e+1],10));t.push((0,ye.sprintf)("%x",parseInt(n,16)))}return t.join(":")}bigInteger(){return new Ve.BigInteger(this.parsedAddress.map(t=>(0,ye.sprintf)("%02x",parseInt(t,10))).join(""),16)}_startAddress(){return new Ve.BigInteger(this.mask()+"0".repeat(32-this.subnetMask),2)}startAddress(){return O.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new Ve.BigInteger("1");return O.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new Ve.BigInteger(this.mask()+"1".repeat(32-this.subnetMask),2)}endAddress(){return O.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new Ve.BigInteger("1");return O.fromBigInteger(this._endAddress().subtract(t))}static fromBigInteger(t){return O.fromInteger(parseInt(t.toString(),10))}mask(t){return t===void 0&&(t=this.subnetMask),this.getBitsBase2(0,t)}getBitsBase2(t,e){return this.binaryZeroPad().slice(t,e)}reverseForm(t){t||(t={});let e=this.correctForm().split(".").reverse().join(".");return t.omitSuffix?e:(0,ye.sprintf)("%s.in-addr.arpa.",e)}isMulticast(){return this.isInSubnet(new O("224.0.0.0/4"))}binaryZeroPad(){return this.bigInteger().toString(2).padStart(32,"0")}groupForV6(){let t=this.parsedAddress;return this.address.replace(ze,(0,ye.sprintf)('<span class="hover-group group-v4 group-6">%s</span>.<span class="hover-group group-v4 group-7">%s</span>',t.slice(0,2).join("."),t.slice(2,4).join(".")))}};var Rs={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"},wi={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"},Ei=/([^0-9a-f:/%])/gi,vi=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi,xi=/\/\d{1,3}(?=%|$)/,Si=/%.*$/,Ls=new RegExp(/^\[{0,1}([0-9a-f:]+)\]{0,1}/),Ns=new RegExp(/\[([0-9a-f:]+)\]:([0-9]{1,5})/);var Ps=M(lr(),1);function dh(r){return r.replace(/^(0+)/,'<span class="zero">$1</span>')}function Hr(r,t=0){return r.split(":").map((n,i)=>/group-v4/.test(n)?n:(0,Ps.sprintf)('<span class="hover-group group-%d">%s</span>',i+t,dh(n)))}var we=M(lr(),1);function Ai(r){return(0,we.sprintf)("(%s)",r.join("|"))}function Ti(r){return r.length<4?(0,we.sprintf)("0{0,%d}%s",4-r.length,r):r}var Ii="[^A-Fa-f0-9:]";function Wr(r){let t=[];r.forEach((n,i)=>{parseInt(n,16)===0&&t.push(i)});let e=t.map(n=>r.map((i,o)=>{if(o===n){let a=o===0||o===8-1?":":"";return Ai([Ti(i),a])}return Ti(i)}).join(":"));return e.push(r.map(Ti).join(":")),Ai(e)}function Ci(r,t,e){let n=t?"":":",i=e?"":":",o=[];!t&&!e&&o.push("::"),t&&e&&o.push(""),(e&&!t||!e&&t)&&o.push(":"),o.push((0,we.sprintf)("%s(:0{1,4}){1,%d}",n,r-1)),o.push((0,we.sprintf)("(0{1,4}:){1,%d}%s",r-1,i)),o.push((0,we.sprintf)("(0{1,4}:){%d}0{1,4}",r-1));for(let a=1;a<r-1;a++)for(let l=1;l<r-a;l++)o.push((0,we.sprintf)("(0{1,4}:){%d}:(0{1,4}:){%d}0{1,4}",l,r-l-a-1));return Ai(o)}var nt=M(bi(),1),it=M(lr(),1);function qr(r){if(!r)throw new Error("Assertion failed.")}function mh(r){let t=/(\d+)(\d{3})/;for(;t.test(r);)r=r.replace(t,"$1,$2");return r}function gh(r){return r=r.replace(/^(0{1,})([1-9]+)$/,'<span class="parse-error">$1</span>$2'),r=r.replace(/^(0{1,})(0)$/,'<span class="parse-error">$1</span>$2'),r}function yh(r,t){let e=[],n=[],i;for(i=0;i<r.length;i++)i<t[0]?e.push(r[i]):i>t[1]&&n.push(r[i]);return e.concat(["compact"]).concat(n)}function Fs(r){return(0,it.sprintf)("%04x",parseInt(r,16))}function Us(r){return r&255}var U=class{constructor(t,e){this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=Gr,this.isCorrect=$r(128),e===void 0?this.groups=8:this.groups=e,this.address=t;let n=xi.exec(t);if(n){if(this.parsedSubnet=n[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>128)throw new rt("Invalid subnet mask.");t=t.replace(xi,"")}else if(/\//.test(t))throw new rt("Invalid subnet mask.");let i=Si.exec(t);i&&(this.zone=i[0],t=t.replace(Si,"")),this.addressMinusSuffix=t,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid(t){try{return new U(t),!0}catch{return!1}}static fromBigInteger(t){let e=t.toString(16).padStart(32,"0"),n=[],i;for(i=0;i<8;i++)n.push(e.slice(i*4,(i+1)*4));return new U(n.join(":"))}static fromURL(t){let e,n=null,i;if(t.indexOf("[")!==-1&&t.indexOf("]:")!==-1){if(i=Ns.exec(t),i===null)return{error:"failed to parse address with port",address:null,port:null};e=i[1],n=i[2]}else if(t.indexOf("/")!==-1){if(t=t.replace(/^[a-z0-9]+:\/\//,""),i=Ls.exec(t),i===null)return{error:"failed to parse address from URL",address:null,port:null};e=i[1]}else e=t;return n?(n=parseInt(n,10),(n<0||n>65536)&&(n=null)):n=null,{address:new U(e),port:n}}static fromAddress4(t){let e=new O(t),n=128-(32-e.subnetMask);return new U(`::ffff:${e.correctForm()}/${n}`)}static fromArpa(t){let e=t.replace(/(\.ip6\.arpa)?\.$/,""),n=7;if(e.length!==63)throw new rt("Invalid 'ip6.arpa' form.");let i=e.split(".").reverse();for(let o=n;o>0;o--){let a=o*4;i.splice(a,0,":")}return e=i.join(""),new U(e)}microsoftTranscription(){return(0,it.sprintf)("%s.ipv6-literal.net",this.correctForm().replace(/:/g,"-"))}mask(t=this.subnetMask){return this.getBitsBase2(0,t)}possibleSubnets(t=128){let e=128-this.subnetMask,n=Math.abs(t-128),i=e-n;return i<0?"0":mh(new nt.BigInteger("2",10).pow(i).toString(10))}_startAddress(){return new nt.BigInteger(this.mask()+"0".repeat(128-this.subnetMask),2)}startAddress(){return U.fromBigInteger(this._startAddress())}startAddressExclusive(){let t=new nt.BigInteger("1");return U.fromBigInteger(this._startAddress().add(t))}_endAddress(){return new nt.BigInteger(this.mask()+"1".repeat(128-this.subnetMask),2)}endAddress(){return U.fromBigInteger(this._endAddress())}endAddressExclusive(){let t=new nt.BigInteger("1");return U.fromBigInteger(this._endAddress().subtract(t))}getScope(){let t=Rs[this.getBits(12,16).intValue()];return this.getType()==="Global unicast"&&t!=="Link local"&&(t="Global"),t||"Unknown"}getType(){for(let t of Object.keys(wi))if(this.isInSubnet(new U(t)))return wi[t];return"Global unicast"}getBits(t,e){return new nt.BigInteger(this.getBitsBase2(t,e),2)}getBitsBase2(t,e){return this.binaryZeroPad().slice(t,e)}getBitsBase16(t,e){let n=e-t;if(n%4!==0)throw new Error("Length of bits to retrieve must be divisible by four");return this.getBits(t,e).toString(16).padStart(n/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,128)}reverseForm(t){t||(t={});let e=Math.floor(this.subnetMask/4),n=this.canonicalForm().replace(/:/g,"").split("").slice(0,e).reverse().join(".");return e>0?t.omitSuffix?n:(0,it.sprintf)("%s.ip6.arpa.",n):t.omitSuffix?"":"ip6.arpa."}correctForm(){let t,e=[],n=0,i=[];for(t=0;t<this.parsedAddress.length;t++){let l=parseInt(this.parsedAddress[t],16);l===0&&n++,l!==0&&n>0&&(n>1&&i.push([t-n,t-1]),n=0)}n>1&&i.push([this.parsedAddress.length-n,this.parsedAddress.length-1]);let o=i.map(l=>l[1]-l[0]+1);if(i.length>0){let l=o.indexOf(Math.max(...o));e=yh(this.parsedAddress,i[l])}else e=this.parsedAddress;for(t=0;t<e.length;t++)e[t]!=="compact"&&(e[t]=parseInt(e[t],16).toString(16));let a=e.join(":");return a=a.replace(/^compact$/,"::"),a=a.replace(/^compact|compact$/,":"),a=a.replace(/compact/,""),a}binaryZeroPad(){return this.bigInteger().toString(2).padStart(128,"0")}parse4in6(t){let e=t.split(":"),i=e.slice(-1)[0].match(ze);if(i){this.parsedAddress4=i[0],this.address4=new O(this.parsedAddress4);for(let o=0;o<this.address4.groups;o++)if(/^0[0-9]+/.test(this.address4.parsedAddress[o]))throw new rt("IPv4 addresses can't have leading zeroes.",t.replace(ze,this.address4.parsedAddress.map(gh).join(".")));this.v4=!0,e[e.length-1]=this.address4.toGroup6(),t=e.join(":")}return t}parse(t){t=this.parse4in6(t);let e=t.match(Ei);if(e)throw new rt((0,it.sprintf)("Bad character%s detected in address: %s",e.length>1?"s":"",e.join("")),t.replace(Ei,'<span class="parse-error">$1</span>'));let n=t.match(vi);if(n)throw new rt((0,it.sprintf)("Address failed regex: %s",n.join("")),t.replace(vi,'<span class="parse-error">$1</span>'));let i=[],o=t.split("::");if(o.length===2){let a=o[0].split(":"),l=o[1].split(":");a.length===1&&a[0]===""&&(a=[]),l.length===1&&l[0]===""&&(l=[]);let f=this.groups-(a.length+l.length);if(!f)throw new rt("Error parsing groups");this.elidedGroups=f,this.elisionBegin=a.length,this.elisionEnd=a.length+this.elidedGroups,i=i.concat(a);for(let d=0;d<f;d++)i.push("0");i=i.concat(l)}else if(o.length===1)i=t.split(":"),this.elidedGroups=0;else throw new rt("Too many :: groups found");if(i=i.map(a=>(0,it.sprintf)("%x",parseInt(a,16))),i.length!==this.groups)throw new rt("Incorrect number of groups found");return i}canonicalForm(){return this.parsedAddress.map(Fs).join(":")}decimal(){return this.parsedAddress.map(t=>(0,it.sprintf)("%05d",parseInt(t,16))).join(":")}bigInteger(){return new nt.BigInteger(this.parsedAddress.map(Fs).join(""),16)}to4(){let t=this.binaryZeroPad().split("");return O.fromHex(new nt.BigInteger(t.slice(96,128).join(""),2).toString(16))}to4in6(){let t=this.to4(),n=new U(this.parsedAddress.slice(0,6).join(":"),6).correctForm(),i="";return/:$/.test(n)||(i=":"),n+i+t.address}inspectTeredo(){let t=this.getBitsBase16(0,32),e=this.getBits(80,96).xor(new nt.BigInteger("ffff",16)).toString(),n=O.fromHex(this.getBitsBase16(32,64)),i=O.fromHex(this.getBits(96,128).xor(new nt.BigInteger("ffffffff",16)).toString(16)),o=this.getBits(64,80),a=this.getBitsBase2(64,80),l=o.testBit(15),f=o.testBit(14),d=o.testBit(8),h=o.testBit(9),g=new nt.BigInteger(a.slice(2,6)+a.slice(8,16),2).toString(10);return{prefix:(0,it.sprintf)("%s:%s",t.slice(0,4),t.slice(4,8)),server4:n.address,client4:i.address,flags:a,coneNat:l,microsoft:{reserved:f,universalLocal:h,groupIndividual:d,nonce:g},udpPort:e}}inspect6to4(){let t=this.getBitsBase16(0,16),e=O.fromHex(this.getBitsBase16(16,48));return{prefix:(0,it.sprintf)("%s",t.slice(0,4)),gateway:e.address}}to6to4(){if(!this.is4())return null;let t=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new U(t)}toByteArray(){let t=this.bigInteger().toByteArray();return t.length===17&&t[0]===0?t.slice(1):t}toUnsignedByteArray(){return this.toByteArray().map(Us)}static fromByteArray(t){return this.fromUnsignedByteArray(t.map(Us))}static fromUnsignedByteArray(t){let e=new nt.BigInteger("256",10),n=new nt.BigInteger("0",10),i=new nt.BigInteger("1",10);for(let o=t.length-1;o>=0;o--)n=n.add(i.multiply(new nt.BigInteger(t[o].toString(10),10))),i=i.multiply(e);return U.fromBigInteger(n)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){return this.getBitsBase2(0,64)==="1111111010000000000000000000000000000000000000000000000000000000"}isMulticast(){return this.getType()==="Multicast"}is4(){return this.v4}isTeredo(){return this.isInSubnet(new U("2001::/32"))}is6to4(){return this.isInSubnet(new U("2002::/16"))}isLoopback(){return this.getType()==="Loopback"}href(t){return t===void 0?t="":t=(0,it.sprintf)(":%s",t),(0,it.sprintf)("http://[%s]%s/",this.correctForm(),t)}link(t){t||(t={}),t.className===void 0&&(t.className=""),t.prefix===void 0&&(t.prefix="/#address="),t.v4===void 0&&(t.v4=!1);let e=this.correctForm;return t.v4&&(e=this.to4in6),t.className?(0,it.sprintf)('<a href="%1$s%2$s" class="%3$s">%2$s</a>',t.prefix,e.call(this),t.className):(0,it.sprintf)('<a href="%1$s%2$s">%2$s</a>',t.prefix,e.call(this))}group(){if(this.elidedGroups===0)return Hr(this.address).join(":");qr(typeof this.elidedGroups=="number"),qr(typeof this.elisionBegin=="number");let t=[],[e,n]=this.address.split("::");e.length?t.push(...Hr(e)):t.push("");let i=["hover-group"];for(let o=this.elisionBegin;o<this.elisionBegin+this.elidedGroups;o++)i.push((0,it.sprintf)("group-%d",o));return t.push((0,it.sprintf)('<span class="%s"></span>',i.join(" "))),n.length?t.push(...Hr(n,this.elisionEnd)):t.push(""),this.is4()&&(qr(this.address4 instanceof O),t.pop(),t.push(this.address4.groupForV6())),t.join(":")}regularExpressionString(t=!1){let e=[],n=new U(this.correctForm());if(n.elidedGroups===0)e.push(Wr(n.parsedAddress));else if(n.elidedGroups===8)e.push(Ci(8));else{let i=n.address.split("::");i[0].length&&e.push(Wr(i[0].split(":"))),qr(typeof n.elidedGroups=="number"),e.push(Ci(n.elidedGroups,i[0].length!==0,i[1].length!==0)),i[1].length&&e.push(Wr(i[1].split(":"))),e=[e.join(":")]}return t||(e=["(?=^|",Ii,"|[^\\w\\:])(",...e,")(?=[^\\w\\:]|",Ii,"|$)"]),e.join("")}regularExpression(t=!1){return new RegExp(this.regularExpressionString(t),"i")}};var bh=et("libp2p:ip-port-to-multiaddr"),_i={ERR_INVALID_IP_PARAMETER:"ERR_INVALID_IP_PARAMETER",ERR_INVALID_PORT_PARAMETER:"ERR_INVALID_PORT_PARAMETER",ERR_INVALID_IP:"ERR_INVALID_IP"};function Gs(r,t){if(typeof r!="string")throw new ct(`invalid ip provided: ${r}`,_i.ERR_INVALID_IP_PARAMETER);if(typeof t=="string"&&(t=parseInt(t)),isNaN(t))throw new ct(`invalid port provided: ${t}`,_i.ERR_INVALID_PORT_PARAMETER);try{return new O(r),gt(`/ip4/${r}/tcp/${t}`)}catch{}try{let e=new U(r);return e.is4()?gt(`/ip4/${e.to4().correctForm()}/tcp/${t}`):gt(`/ip6/${r}/tcp/${t}`)}catch{let n=`invalid ip:port for creating a multiaddr: ${r}:${t}`;throw bh.error(n),new ct(n,_i.ERR_INVALID_IP)}}var ki=M($t("os"),1),$s=M($t("path"),1),wh={ip4:"IPv4",ip6:"IPv6"};function We(r){let t=r.getPath();return t!=null?ki.default.platform()==="win32"?{path:$s.default.join("\\\\.\\pipe\\",t)}:{path:t}:r.toOptions()}function Bi(r,t,e){let n=i=>gt(`/${r}/${i}/tcp/${e}`);return(Eh(t)?xh(wh[r]):[t]).map(n)}function Eh(r){return["0.0.0.0","::"].includes(r)}var vh=ki.default.networkInterfaces();function xh(r){let t=[];for(let[,e]of Object.entries(vh))if(e!=null)for(let n of e)n.family===r&&t.push(n.address);return t}var Nt=et("libp2p:tcp:socket"),Zr=(r,t)=>{let e=t.metrics,n=t.metricPrefix??"",i=t.socketInactivityTimeout??3e5,o=t.socketCloseTimeout??2e3;t.listeningAddr?.getPath()!=null&&(t.remoteAddr=t.listeningAddr),t.remoteAddr?.getPath()!=null&&(t.localAddr=t.remoteAddr);let a;if(t.remoteAddr!=null)a=t.remoteAddr;else{if(r.remoteAddress==null||r.remotePort==null)throw new ct("Could not determine remote address or port","ERR_NO_REMOTE_ADDRESS");a=Gs(r.remoteAddress,r.remotePort)}let l=We(a),f=l.path??`${l.host??""}:${l.port??""}`,{sink:d,source:h}=zs.default.duplex(r);r.setTimeout(i,()=>{Nt("%s socket read timeout",f),e?.increment({[`${n}timeout`]:!0});let w;r.readable&&(w=new ct("Socket read timeout","ERR_SOCKET_READ_TIMEOUT")),r.destroy(w)}),r.once("close",()=>{Nt("%s socket close",f),e?.increment({[`${n}close`]:!0}),g.timeline.close==null&&(g.timeline.close=Date.now())}),r.once("end",()=>{Nt("%s socket end",f),e?.increment({[`${n}end`]:!0})});let g={async sink(w){try{await d(w)}catch(S){S.type!=="aborted"&&Nt(S)}r.end()},source:h,remoteAddr:a,timeline:{open:Date.now()},async close(){if(r.destroyed){Nt("%s socket was already destroyed when trying to close",f);return}Nt("%s closing socket",f),await new Promise((w,S)=>{let b=Date.now(),T=setTimeout(()=>{r.destroyed?(Nt("%s is already destroyed",f),w()):(Nt("%s socket close timeout after %dms, destroying it manually",f,Date.now()-b),r.destroy(new ct("Socket close timeout","ERR_SOCKET_CLOSE_TIMEOUT")))},o).unref();r.once("close",()=>{Nt("%s socket closed",f),clearTimeout(T),w()}),r.once("error",k=>{Nt("%s socket error",f,k),g.timeline.close==null&&(g.timeline.close=Date.now()),r.destroyed&&clearTimeout(T),S(k)}),r.setTimeout(o),r.end(),r.writableLength>0?r.once("drain",()=>{Nt("%s socket drained",f),r.destroy()}):r.destroy()})}};return g};var Vs=M($t("net"),1);var Ee=function(r,t,e,n){if(e==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?r!==t||!n:!t.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?n:e==="a"?n.call(r):n?n.value:t.get(r)},qt,Xr=class extends EventTarget{constructor(){super(...arguments),qt.set(this,new Map)}listenerCount(t){let e=Ee(this,qt,"f").get(t);return e==null?0:e.length}addEventListener(t,e,n){super.addEventListener(t,e,n);let i=Ee(this,qt,"f").get(t);i==null&&(i=[],Ee(this,qt,"f").set(t,i)),i.push({callback:e,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(t,e,n){super.removeEventListener(t.toString(),e??null,n);let i=Ee(this,qt,"f").get(t);i!=null&&(i=i.filter(({callback:o})=>o!==e),Ee(this,qt,"f").set(t,i))}dispatchEvent(t){let e=super.dispatchEvent(t),n=Ee(this,qt,"f").get(t.type);return n==null||(n=n.filter(({once:i})=>!i),Ee(this,qt,"f").set(t.type,n)),e}safeDispatchEvent(t,e){return this.dispatchEvent(new qe(t,e))}};qt=new WeakMap;var Di=class extends Event{constructor(t,e){super(t,e),this.detail=e?.detail}},qe=globalThis.CustomEvent??Di;var bt=et("libp2p:tcp:listener");async function Ri(r){try{await r.close()}catch(t){bt.error("an error occurred closing the connection",t)}}var Ah=1,Ih=0,Kr=class extends Xr{constructor(t){if(super(),this.context=t,this.connections=new Set,this.status={started:!1},t.keepAlive=t.keepAlive??!0,this.addr="unknown",this.server=Vs.default.createServer(t,this.onSocket.bind(this)),t.maxConnections!==void 0&&(this.server.maxConnections=t.maxConnections),t.closeServerOnMaxConnections!=null&&t.closeServerOnMaxConnections.closeAbove<t.closeServerOnMaxConnections.listenBelow)throw Error("closeAbove must be >= listenBelow");this.server.on("listening",()=>{if(t.metrics!=null){let e=this.server.address();e==null?this.addr="unknown":typeof e=="string"?this.addr=e:this.addr=`${e.address}:${e.port}`,t.metrics?.registerMetricGroup("libp2p_tcp_inbound_connections_total",{label:"address",help:"Current active connections in TCP listener",calculate:()=>({[this.addr]:this.connections.size})}),this.metrics={status:t.metrics.registerMetricGroup("libp2p_tcp_listener_status_info",{label:"address",help:"Current status of the TCP listener socket"}),errors:t.metrics.registerMetricGroup("libp2p_tcp_listener_errors_total",{label:"address",help:"Total count of TCP listener errors by type"}),events:t.metrics.registerMetricGroup("libp2p_tcp_listener_events_total",{label:"address",help:"Total count of TCP listener events by type"})},this.metrics?.status.update({[this.addr]:Ah})}this.dispatchEvent(new qe("listening"))}).on("error",e=>{this.metrics?.errors.increment({[`${this.addr} listen_error`]:!0}),this.dispatchEvent(new qe("error",{detail:e}))}).on("close",()=>{this.metrics?.status.update({[this.addr]:Ih}),this.dispatchEvent(new qe("close"))})}onSocket(t){t.on("error",n=>{bt("socket error",n),this.metrics?.events.increment({[`${this.addr} error`]:!0})});let e;try{e=Zr(t,{listeningAddr:this.status.started?this.status.listeningAddr:void 0,socketInactivityTimeout:this.context.socketInactivityTimeout,socketCloseTimeout:this.context.socketCloseTimeout,metrics:this.metrics?.events,metricPrefix:`${this.addr} `})}catch(n){bt.error("inbound connection failed",n),this.metrics?.errors.increment({[`${this.addr} inbound_to_connection`]:!0});return}bt("new inbound connection %s",e.remoteAddr);try{this.context.upgrader.upgradeInbound(e).then(n=>{bt("inbound connection upgraded %s",e.remoteAddr),this.connections.add(e),t.once("close",()=>{this.connections.delete(e),this.context.closeServerOnMaxConnections!=null&&this.connections.size<this.context.closeServerOnMaxConnections.listenBelow&&this.netListen().catch(i=>{bt.error("error attempting to listen server once connection count under limit",i),this.context.closeServerOnMaxConnections?.onListenError?.(i)})}),this.context.handler!=null&&this.context.handler(n),this.context.closeServerOnMaxConnections!=null&&this.connections.size>=this.context.closeServerOnMaxConnections.closeAbove&&this.netClose(),this.dispatchEvent(new qe("connection",{detail:n}))}).catch(async n=>{bt.error("inbound connection failed",n),this.metrics?.errors.increment({[`${this.addr} inbound_upgrade`]:!0}),await Ri(e)}).catch(n=>{bt.error("closing inbound connection failed",n)})}catch(n){bt.error("inbound connection failed",n),Ri(e).catch(i=>{bt.error("closing inbound connection failed",i),this.metrics?.errors.increment({[`${this.addr} inbound_closing_failed`]:!0})})}}getAddrs(){if(!this.status.started)return[];let t=[],e=this.server.address(),{listeningAddr:n,peerId:i}=this.status;if(e==null)return[];if(typeof e=="string")t=[n];else try{n.toString().startsWith("/ip4")?t=t.concat(Bi("ip4",e.address,e.port)):e.family==="IPv6"&&(t=t.concat(Bi("ip6",e.address,e.port)))}catch(o){bt.error("could not turn %s:%s into multiaddr",e.address,e.port,o)}return t.map(o=>i!=null?o.encapsulate(`/p2p/${i}`):o)}async listen(t){if(this.status.started)throw Error("server is already listening");let e=t.getPeerId(),n=e==null?t.decapsulateCode(421):t;this.status={started:!0,listeningAddr:n,peerId:e,netConfig:We(n)},await this.netListen()}async close(){await Promise.all(Array.from(this.connections.values()).map(async t=>{await Ri(t)})),this.netClose()}async netListen(){if(!this.status.started||this.server.listening)return;let t=this.status.netConfig;await new Promise((e,n)=>{this.server.once("error",n),this.server.listen(t,e)}),bt("Listening on %s",this.server.address())}netClose(){!this.status.started||!this.server.listening||(bt("Closing server on %s",this.server.address()),this.server.close())}};var Ws=Symbol.for("@libp2p/transport");var Hs;(function(r){r[r.FATAL_ALL=0]="FATAL_ALL",r[r.NO_FATAL=1]="NO_FATAL"})(Hs||(Hs={}));var Zt=et("libp2p:tcp"),Ni=class{constructor(t,e={}){this.opts=e,this.components=t,t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_tcp_dialer_events_total",{label:"event",help:"Total count of TCP dialer events by type"})})}get[Ws](){return!0}get[Symbol.toStringTag](){return"@libp2p/tcp"}async dial(t,e){e.keepAlive=e.keepAlive??!0;let n=await this._connect(t,e);n.on("error",l=>{Zt("socket error",l)});let i=Zr(n,{remoteAddr:t,socketInactivityTimeout:this.opts.outboundSocketInactivityTimeout,socketCloseTimeout:this.opts.socketCloseTimeout,metrics:this.metrics?.dialerEvents}),o=()=>{i.close().catch(l=>{Zt.error("Error closing maConn after abort",l)})};e.signal?.addEventListener("abort",o,{once:!0}),Zt("new outbound connection %s",i.remoteAddr);let a=await e.upgrader.upgradeOutbound(i);if(Zt("outbound connection %s upgraded",i.remoteAddr),e.signal?.removeEventListener("abort",o),e.signal?.aborted===!0)throw a.close().catch(l=>{Zt.error("Error closing conn after abort",l)}),new Vt;return a}async _connect(t,e){if(e.signal?.aborted===!0)throw new Vt;return await new Promise((n,i)=>{let o=Date.now(),a=We(t),l=a.path??`${a.host??""}:${a.port}`;Zt("dialing %j",a);let f=qs.default.connect(a),d=b=>{b.message=`connection error ${l}: ${b.message}`,this.metrics?.dialerEvents.increment({error:!0}),S(b)},h=()=>{Zt("connection timeout %s",l),this.metrics?.dialerEvents.increment({timeout:!0});let b=new ct(`connection timeout after ${Date.now()-o}ms`,"ERR_CONNECT_TIMEOUT");f.emit("error",b)},g=()=>{Zt("connection opened %j",a),this.metrics?.dialerEvents.increment({connect:!0}),S()},w=()=>{Zt("connection aborted %j",a),this.metrics?.dialerEvents.increment({abort:!0}),f.destroy(),S(new Vt)},S=b=>{if(f.removeListener("error",d),f.removeListener("timeout",h),f.removeListener("connect",g),e.signal!=null&&e.signal.removeEventListener("abort",w),b!=null){i(b);return}n(f)};f.on("error",d),f.on("timeout",h),f.on("connect",g),e.signal!=null&&e.signal.addEventListener("abort",w)})}createListener(t){return new Kr({...t,maxConnections:this.opts.maxConnections,closeServerOnMaxConnections:this.opts.closeServerOnMaxConnections,socketInactivityTimeout:this.opts.inboundSocketInactivityTimeout,socketCloseTimeout:this.opts.socketCloseTimeout,metrics:this.components.metrics})}filter(t){return t=Array.isArray(t)?t:[t],t.filter(e=>e.protoCodes().includes(290)?!1:e.protoCodes().includes(400)?!0:ne.matches(e.decapsulateCode(421)))}};function Zs(r={}){return(t={})=>new Ni(t,r)}var Ks=Symbol.for("@achingbrain/uint8arraylist");function Xs(r,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let e=0;for(let n of r){let i=e+n.byteLength;if(t<i)return{buf:n,index:t-e};e=i}throw new RangeError("index is out of bounds")}function jr(r){return!!r?.[Ks]}var ft=class{constructor(...t){Object.defineProperty(this,Ks,{value:!0}),this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let e=0;for(let n of t)if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.push(n);else if(jr(n))e+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}prepend(...t){this.prependAll(t)}prependAll(t){let e=0;for(let n of t.reverse())if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.unshift(n);else if(jr(n))e+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}get(t){let e=Xs(this.bufs,t);return e.buf[e.index]}set(t,e){let n=Xs(this.bufs,t);n.buf[n.index]=e}write(t,e=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(e+n,t[n]);else if(jr(t))for(let n=0;n<t.length;n++)this.set(e+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,e){let{bufs:n,length:i}=this._subList(t,e);return xt(n,i)}subarray(t,e){let{bufs:n,length:i}=this._subList(t,e);return n.length===1?n[0]:xt(n,i)}sublist(t,e){let{bufs:n,length:i}=this._subList(t,e),o=new ft;return o.length=i,o.bufs=n,o}_subList(t,e){if(t=t??0,e=e??this.length,t<0&&(t=this.length+t),e<0&&(e=this.length+e),t<0||e>this.length)throw new RangeError("index is out of bounds");if(t===e)return{bufs:[],length:0};if(t===0&&e===this.length)return{bufs:[...this.bufs],length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let a=this.bufs[o],l=i,f=l+a.byteLength;if(i=f,t>=f)continue;let d=t>=l&&t<f,h=e>l&&e<=f;if(d&&h){if(t===l&&e===f){n.push(a);break}let g=t-l;n.push(a.subarray(g,g+(e-t)));break}if(d){if(t===0){n.push(a);continue}n.push(a.subarray(t-l));continue}if(h){if(e===f){n.push(a);break}n.push(a.subarray(0,e-l));break}n.push(a)}return{bufs:n,length:e-t}}indexOf(t,e=0){if(!jr(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(e=Number(e??0),isNaN(e)&&(e=0),e<0&&(e=this.length+e),e<0&&(e=0),t.length===0)return e>this.length?this.length:e;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,a=new Int32Array(o);for(let g=0;g<o;g++)a[g]=-1;for(let g=0;g<i;g++)a[n[g]]=g;let l=a,f=this.byteLength-n.byteLength,d=n.byteLength-1,h;for(let g=e;g<=f;g+=h){h=0;for(let w=d;w>=0;w--){let S=this.get(g+w);if(n[w]!==S){h=Math.max(1,w-l[S]);break}}if(h===0)return g}return-1}getInt8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getInt8(0)}setInt8(t,e){let n=Rt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,e),this.write(n,t)}getInt16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,e)}setInt16(t,e,n){let i=zt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,e,n),this.write(i,t)}getInt32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,e)}setInt32(t,e,n){let i=zt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,e,n),this.write(i,t)}getBigInt64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,e)}setBigInt64(t,e,n){let i=zt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,e,n),this.write(i,t)}getUint8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getUint8(0)}setUint8(t,e){let n=Rt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,e),this.write(n,t)}getUint16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,e)}setUint16(t,e,n){let i=zt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,e,n),this.write(i,t)}getUint32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,e)}setUint32(t,e,n){let i=zt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,e,n),this.write(i,t)}getBigUint64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,e)}setBigUint64(t,e,n){let i=zt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,e,n),this.write(i,t)}getFloat32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,e)}setFloat32(t,e,n){let i=zt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,e,n),this.write(i,t)}getFloat64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,e)}setFloat64(t,e,n){let i=zt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,e,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof ft)||t.bufs.length!==this.bufs.length)return!1;for(let e=0;e<this.bufs.length;e++)if(!de(this.bufs[e],t.bufs[e]))return!1;return!0}static fromUint8Arrays(t,e){let n=new ft;return n.bufs=t,e==null&&(e=t.reduce((i,o)=>i+o.byteLength,0)),n.length=e,n}};function Yr(r){return r instanceof Uint8Array?{get(t){return r[t]},set(t,e){r[t]=e}}:{get(t){return r.get(t)},set(t,e){r.set(t,e)}}}var js=4294967296,wt=class{constructor(t=0,e=0){this.hi=t,this.lo=e}toBigInt(t){if(t===!0)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(BigInt(e)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toNumber(t){return Number(this.toBigInt(t))}zzDecode(){let t=-(this.lo&1),e=((this.lo>>>1|this.hi<<31)^t)>>>0,n=(this.hi>>>1^t)>>>0;return new wt(n,e)}zzEncode(){let t=this.hi>>31,e=((this.hi<<1|this.lo>>>31)^t)>>>0,n=(this.lo<<1^t)>>>0;return new wt(e,n)}toBytes(t,e=0){let n=Yr(t);for(;this.hi>0;)n.set(e++,this.lo&127|128),this.lo=(this.lo>>>7|this.hi<<25)>>>0,this.hi>>>=7;for(;this.lo>127;)n.set(e++,this.lo&127|128),this.lo=this.lo>>>7;n.set(e++,this.lo)}static fromBigInt(t){if(t===0n)return new wt;let e=t<0;e&&(t=-t);let n=Number(t>>32n)|0,i=Number(t-(BigInt(n)<<32n))|0;return e&&(n=~n>>>0,i=~i>>>0,++i>js&&(i=0,++n>js&&(n=0))),new wt(n,i)}static fromNumber(t){if(t===0)return new wt;let e=t<0;e&&(t=-t);let n=t>>>0,i=(t-n)/4294967296>>>0;return e&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new wt(i,n)}static fromBytes(t,e=0){let n=Yr(t),i=new wt,o=0;if(t.length-e>4){for(;o<4;++o)if(i.lo=(i.lo|(n.get(e)&127)<<o*7)>>>0,n.get(e++)<128)return i;if(i.lo=(i.lo|(n.get(e)&127)<<28)>>>0,i.hi=(i.hi|(n.get(e)&127)>>4)>>>0,n.get(e++)<128)return i;o=0}else for(;o<4;++o){if(e>=t.length)throw RangeError(`index out of range: ${e} > ${t.length}`);if(i.lo=(i.lo|(n.get(e)&127)<<o*7)>>>0,n.get(e++)<128)return i}if(t.length-e>4){for(;o<5;++o)if(i.hi=(i.hi|(n.get(e)&127)<<o*7+3)>>>0,n.get(e++)<128)return i}else if(e<t.byteLength)for(;o<5;++o){if(e>=t.length)throw RangeError(`index out of range: ${e} > ${t.length}`);if(i.hi=(i.hi|(n.get(e)&127)<<o*7+3)>>>0,n.get(e++)<128)return i}throw RangeError("invalid varint encoding")}};var kh=Math.pow(2,7),Bh=Math.pow(2,14),Dh=Math.pow(2,21),Rh=Math.pow(2,28),Lh=Math.pow(2,35),Nh=Math.pow(2,42),Oh=Math.pow(2,49),Ph=Math.pow(2,56),Mh=Math.pow(2,63),ve={encodingLength(r){return r<kh?1:r<Bh?2:r<Dh?3:r<Rh?4:r<Lh?5:r<Nh?6:r<Oh?7:r<Ph?8:r<Mh?9:10},encode(r,t,e=0){if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return t==null&&(t=Rt(ve.encodingLength(r))),wt.fromNumber(r).toBytes(t,e),t},decode(r,t=0){return wt.fromBytes(r,t).toNumber(!0)}};function Jr(r){return r[Symbol.asyncIterator]!=null}var Qr=r=>{let t=ve.encodingLength(r),e=Rt(t);return ve.encode(r,e),Qr.bytes=t,e};Qr.bytes=0;function Ze(r,t){t=t??{};let e=t.lengthEncoder??Qr;function*n(i){let o=e(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return Jr(r)?async function*(){for await(let i of r)yield*n(i)}():function*(){for(let i of r)yield*n(i)}()}Ze.single=(r,t)=>{t=t??{};let e=t.lengthEncoder??Qr;return new ft(e(r.byteLength),r)};var Xe=M(Qs(),1);var Uh=8,Gh=1024*1024*4,xe;(function(r){r[r.LENGTH=0]="LENGTH",r[r.DATA=1]="DATA"})(xe||(xe={}));var Oi=r=>{let t=ve.decode(r);return Oi.bytes=ve.encodingLength(t),t};Oi.bytes=0;function fr(r,t){let e=new ft,n=xe.LENGTH,i=-1,o=t?.lengthDecoder??Oi,a=t?.maxLengthLength??Uh,l=t?.maxDataLength??Gh;function*f(){for(;e.byteLength>0;){if(n===xe.LENGTH)try{if(i=o(e),i<0)throw(0,Xe.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>l)throw(0,Xe.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let d=o.bytes;e.consume(d),t?.onLength!=null&&t.onLength(i),n=xe.DATA}catch(d){if(d instanceof RangeError){if(e.byteLength>a)throw(0,Xe.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw d}if(n===xe.DATA){if(e.byteLength<i)break;let d=e.sublist(0,i);e.consume(i),t?.onData!=null&&t.onData(d),yield d,n=xe.LENGTH}}}return Jr(r)?async function*(){for await(let d of r)e.append(d),yield*f();if(e.byteLength>0)throw(0,Xe.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let d of r)e.append(d),yield*f();if(e.byteLength>0)throw(0,Xe.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}fr.fromReader=(r,t)=>{let e=1,n=async function*(){for(;;)try{let{done:o,value:a}=await r.next(e);if(o===!0)return;a!=null&&(yield a)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{e=1}}();return fr(n,{...t??{},onLength:o=>{e=o}})};var tn=class{constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},Ke=class{constructor(t={}){this.hwm=t.splitLimit??16,this.head=new tn(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let e=this.head;this.head=e.next=new tn(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let e=this.tail.next;this.tail.next=null,this.tail=e,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};function ie(r={}){return $h(e=>{let n=e.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function $h(r,t){t=t??{};let e=t.onEnd,n=new Ke,i,o,a,l=async()=>n.isEmpty()?a?{done:!0}:await new Promise((T,k)=>{o=C=>{o=null,n.push(C);try{T(r(n))}catch(_){k(_)}return i}}):r(n),f=T=>o!=null?o(T):(n.push(T),i),d=T=>(n=new Ke,o!=null?o({error:T}):(n.push({error:T}),i)),h=T=>{if(a)return i;if(t?.objectMode!==!0&&T?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:T})},g=T=>a?i:(a=!0,T!=null?d(T):f({done:!0})),w=()=>(n=new Ke,g(),{done:!0}),S=T=>(g(T),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:l,return:w,throw:S,push:h,end:g,get readableLength(){return n.size}},e==null)return i;let b=i;return i={[Symbol.asyncIterator](){return this},next(){return b.next()},throw(T){return b.throw(T),e!=null&&(e(T),e=void 0),{done:!0}},return(){return b.return(),e!=null&&(e(),e=void 0),{done:!0}},push:h,end(T){return b.end(T),e!=null&&(e(T),e=void 0),i},get readableLength(){return b.readableLength}},i}function zh(r){return r[Symbol.asyncIterator]!=null}function Vh(...r){let t=[];for(let e of r)zh(e)||t.push(e);return t.length===r.length?function*(){for(let e of t)yield*e}():async function*(){let e=ie({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(r.map(async n=>{for await(let i of n)e.push(i)})),e.end()}catch(n){e.end(n)}}),yield*e}()}var ec=Vh;function en(r,...t){if(r==null)throw new Error("Empty pipeline");if(Pi(r)){let n=r;r=()=>n.source}else if(nc(r)||rc(r)){let n=r;r=()=>n}let e=[r,...t];if(e.length>1&&Pi(e[e.length-1])&&(e[e.length-1]=e[e.length-1].sink),e.length>2)for(let n=1;n<e.length-1;n++)Pi(e[n])&&(e[n]=Wh(e[n]));return Hh(...e)}var Hh=(...r)=>{let t;for(;r.length>0;)t=r.shift()(t);return t},rc=r=>r?.[Symbol.asyncIterator]!=null,nc=r=>r?.[Symbol.iterator]!=null,Pi=r=>r==null?!1:r.sink!=null&&r.source!=null,Wh=r=>t=>{let e=r.sink(t);if(e?.then!=null){let n=ie({objectMode:!0});e.then(()=>{n.end()},a=>{n.end(a)});let i,o=r.source;if(rc(o))i=async function*(){yield*o,n.end()};else if(nc(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return ec(n,i())}return r.source};function ic(r){let t=async function*(){let e=yield,n=new ft;for await(let i of r){if(e==null){n.append(i),e=yield n,n=new ft;continue}for(n.append(i);n.length>=e;){let o=n.sublist(0,e);if(n.consume(e),e=yield o,e==null){n.length>0&&(e=yield n,n=new ft);break}}}if(e!=null)throw Object.assign(new Error(`stream ended before ${e} bytes became available`),{code:"ERR_UNDER_READ",buffer:n})}();return t.next(),t}function Mi(){let r={};return r.promise=new Promise((t,e)=>{r.resolve=t,r.reject=e}),r}function oc(r){let t=ie(),e=ic(r.source),n=Mi(),i,o=r.sink(async function*(){yield*t,yield*await n.promise}());return o.catch(l=>{i=l}),{reader:e,writer:t,stream:{sink:async l=>i!=null?await Promise.reject(i):(n.resolve(l),await o),source:e},rest:()=>t.end(),write:t.push,read:async()=>{let l=await e.next();if(l.value!=null)return l.value}}}var Fi=et("libp2p:daemon-protocol:stream-handler"),rn=class{constructor(t){let{stream:e,maxLength:n}=t;this.stream=e,this.shake=oc(this.stream),this.decoder=fr.fromReader(this.shake.reader,{maxDataLength:n??4096})}async read(){let t=await this.decoder.next();if(t.value!=null)return t.value.subarray();Fi("read received no value, closing stream"),await this.close()}write(t){Fi("write message"),this.shake.write(Ze.single(t).subarray())}rest(){return this.shake.rest(),this.shake.stream}async close(){Fi("closing the stream"),await this.rest().sink([])}};var Ui={upgradeInbound:async r=>r,upgradeOutbound:async r=>r};var Ji=M(Hi(),1),qc=M(Fc(),1),Zc=M(Te(),1),Qi=M(Yi(),1),Xc=M(Wc(),1);function tp(){Zc.default._configure(),Ji.default._configure(qc.default),Qi.default._configure(Xc.default)}tp();var Kc=["uint64","int64","sint64","fixed64","sfixed64"];function ep(r){for(let t of Kc){if(r[t]==null)continue;let e=r[t];r[t]=function(){return BigInt(e.call(this).toString())}}return r}function to(r){return ep(new Ji.default(r))}function rp(r){for(let t of Kc){if(r[t]==null)continue;let e=r[t];r[t]=function(n){return e.call(this,n.toString())}}return r}function eo(){return rp(Qi.default.create())}function z(r,t){let e=to(r instanceof Uint8Array?r:r.subarray());return t.decode(e)}function V(r,t){let e=eo();return t.encode(r,e,{lengthDelimited:!1}),e.finish()}var Ye;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(Ye||(Ye={}));function an(r,t,e,n){return{name:r,type:t,encode:e,decode:n}}function Xt(r){function t(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let e=function(o,a){let l=t(o);a.int32(l)},n=function(o){let a=o.int32();return t(a)};return an("enum",Ye.VARINT,e,n)}function H(r,t){return an("message",Ye.LENGTH_DELIMITED,r,t)}var At;(function(r){let t;(function(i){i.IDENTIFY="IDENTIFY",i.CONNECT="CONNECT",i.STREAM_OPEN="STREAM_OPEN",i.STREAM_HANDLER="STREAM_HANDLER",i.DHT="DHT",i.LIST_PEERS="LIST_PEERS",i.CONNMANAGER="CONNMANAGER",i.DISCONNECT="DISCONNECT",i.PUBSUB="PUBSUB",i.PEERSTORE="PEERSTORE"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.IDENTIFY=0]="IDENTIFY",i[i.CONNECT=1]="CONNECT",i[i.STREAM_OPEN=2]="STREAM_OPEN",i[i.STREAM_HANDLER=3]="STREAM_HANDLER",i[i.DHT=4]="DHT",i[i.LIST_PEERS=5]="LIST_PEERS",i[i.CONNMANAGER=6]="CONNMANAGER",i[i.DISCONNECT=7]="DISCONNECT",i[i.PUBSUB=8]="PUBSUB",i[i.PEERSTORE=9]="PEERSTORE"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.connect!=null&&(o.uint32(18),ln.codec().encode(i.connect,o)),i.streamOpen!=null&&(o.uint32(26),fn.codec().encode(i.streamOpen,o)),i.streamHandler!=null&&(o.uint32(34),hn.codec().encode(i.streamHandler,o)),i.dht!=null&&(o.uint32(42),It.codec().encode(i.dht,o)),i.connManager!=null&&(o.uint32(50),dn.codec().encode(i.connManager,o)),i.disconnect!=null&&(o.uint32(58),mn.codec().encode(i.disconnect,o)),i.pubsub!=null&&(o.uint32(66),Kt.codec().encode(i.pubsub,o)),i.peerStore!=null&&(o.uint32(74),Ce.codec().encode(i.peerStore,o)),a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.connect=ln.codec().decode(i,i.uint32());break;case 3:a.streamOpen=fn.codec().decode(i,i.uint32());break;case 4:a.streamHandler=hn.codec().decode(i,i.uint32());break;case 5:a.dht=It.codec().decode(i,i.uint32());break;case 6:a.connManager=dn.codec().decode(i,i.uint32());break;case 7:a.disconnect=mn.codec().decode(i,i.uint32());break;case 8:a.pubsub=Kt.codec().decode(i,i.uint32());break;case 9:a.peerStore=Ce.codec().decode(i,i.uint32());break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(At||(At={}));var Ie;(function(r){let t;(function(i){i.OK="OK",i.ERROR="ERROR"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.OK=0]="OK",i[i.ERROR=1]="ERROR"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{if(a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.error!=null&&(o.uint32(18),pn.codec().encode(i.error,o)),i.streamInfo!=null&&(o.uint32(26),Je.codec().encode(i.streamInfo,o)),i.identify!=null&&(o.uint32(34),un.codec().encode(i.identify,o)),i.dht!=null&&(o.uint32(42),Q.codec().encode(i.dht,o)),i.peers!=null)for(let l of i.peers)o.uint32(50),ce.codec().encode(l,o);i.pubsub!=null&&(o.uint32(58),gn.codec().encode(i.pubsub,o)),i.peerStore!=null&&(o.uint32(66),yn.codec().encode(i.peerStore,o)),a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={peers:[]},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.error=pn.codec().decode(i,i.uint32());break;case 3:a.streamInfo=Je.codec().decode(i,i.uint32());break;case 4:a.identify=un.codec().decode(i,i.uint32());break;case 5:a.dht=Q.codec().decode(i,i.uint32());break;case 6:a.peers.push(ce.codec().decode(i,i.uint32()));break;case 7:a.pubsub=gn.codec().decode(i,i.uint32());break;case 8:a.peerStore=yn.codec().decode(i,i.uint32());break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(Ie||(Ie={}));var un;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.id!=null&&e.id.byteLength>0&&(n.uint32(10),n.bytes(e.id)),e.addrs!=null)for(let o of e.addrs)n.uint32(18),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={id:new Uint8Array(0),addrs:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.id=e.bytes();break;case 2:i.addrs.push(e.bytes());break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(un||(un={}));var ln;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.peer!=null&&e.peer.byteLength>0&&(n.uint32(10),n.bytes(e.peer)),e.addrs!=null)for(let o of e.addrs)n.uint32(18),n.bytes(o);e.timeout!=null&&(n.uint32(24),n.int64(e.timeout)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={peer:new Uint8Array(0),addrs:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.peer=e.bytes();break;case 2:i.addrs.push(e.bytes());break;case 3:i.timeout=e.int64();break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(ln||(ln={}));var fn;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.peer!=null&&e.peer.byteLength>0&&(n.uint32(10),n.bytes(e.peer)),e.proto!=null)for(let o of e.proto)n.uint32(18),n.string(o);e.timeout!=null&&(n.uint32(24),n.int64(e.timeout)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={peer:new Uint8Array(0),proto:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.peer=e.bytes();break;case 2:i.proto.push(e.string());break;case 3:i.timeout=e.int64();break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(fn||(fn={}));var hn;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.addr!=null&&e.addr.byteLength>0&&(n.uint32(10),n.bytes(e.addr)),e.proto!=null)for(let o of e.proto)n.uint32(18),n.string(o);i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={addr:new Uint8Array(0),proto:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.addr=e.bytes();break;case 2:i.proto.push(e.string());break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(hn||(hn={}));var pn;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),e.msg!=null&&e.msg!==""&&(n.uint32(10),n.string(e.msg)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={msg:""},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.msg=e.string();break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(pn||(pn={}));var Je;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),e.peer!=null&&e.peer.byteLength>0&&(n.uint32(10),n.bytes(e.peer)),e.addr!=null&&e.addr.byteLength>0&&(n.uint32(18),n.bytes(e.addr)),e.proto!=null&&e.proto!==""&&(n.uint32(26),n.string(e.proto)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={peer:new Uint8Array(0),addr:new Uint8Array(0),proto:""},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.peer=e.bytes();break;case 2:i.addr=e.bytes();break;case 3:i.proto=e.string();break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(Je||(Je={}));var It;(function(r){let t;(function(i){i.FIND_PEER="FIND_PEER",i.FIND_PEERS_CONNECTED_TO_PEER="FIND_PEERS_CONNECTED_TO_PEER",i.FIND_PROVIDERS="FIND_PROVIDERS",i.GET_CLOSEST_PEERS="GET_CLOSEST_PEERS",i.GET_PUBLIC_KEY="GET_PUBLIC_KEY",i.GET_VALUE="GET_VALUE",i.SEARCH_VALUE="SEARCH_VALUE",i.PUT_VALUE="PUT_VALUE",i.PROVIDE="PROVIDE"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.FIND_PEER=0]="FIND_PEER",i[i.FIND_PEERS_CONNECTED_TO_PEER=1]="FIND_PEERS_CONNECTED_TO_PEER",i[i.FIND_PROVIDERS=2]="FIND_PROVIDERS",i[i.GET_CLOSEST_PEERS=3]="GET_CLOSEST_PEERS",i[i.GET_PUBLIC_KEY=4]="GET_PUBLIC_KEY",i[i.GET_VALUE=5]="GET_VALUE",i[i.SEARCH_VALUE=6]="SEARCH_VALUE",i[i.PUT_VALUE=7]="PUT_VALUE",i[i.PROVIDE=8]="PROVIDE"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.peer!=null&&(o.uint32(18),o.bytes(i.peer)),i.cid!=null&&(o.uint32(26),o.bytes(i.cid)),i.key!=null&&(o.uint32(34),o.bytes(i.key)),i.value!=null&&(o.uint32(42),o.bytes(i.value)),i.count!=null&&(o.uint32(48),o.int32(i.count)),i.timeout!=null&&(o.uint32(56),o.int64(i.timeout)),a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.peer=i.bytes();break;case 3:a.cid=i.bytes();break;case 4:a.key=i.bytes();break;case 5:a.value=i.bytes();break;case 6:a.count=i.int32();break;case 7:a.timeout=i.int64();break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(It||(It={}));var Q;(function(r){let t;(function(i){i.BEGIN="BEGIN",i.VALUE="VALUE",i.END="END"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.BEGIN=0]="BEGIN",i[i.VALUE=1]="VALUE",i[i.END=2]="END"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.peer!=null&&(o.uint32(18),ce.codec().encode(i.peer,o)),i.value!=null&&(o.uint32(26),o.bytes(i.value)),a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.peer=ce.codec().decode(i,i.uint32());break;case 3:a.value=i.bytes();break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(Q||(Q={}));var ce;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.id!=null&&e.id.byteLength>0&&(n.uint32(10),n.bytes(e.id)),e.addrs!=null)for(let o of e.addrs)n.uint32(18),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={id:new Uint8Array(0),addrs:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.id=e.bytes();break;case 2:i.addrs.push(e.bytes());break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(ce||(ce={}));var dn;(function(r){let t;(function(i){i.TAG_PEER="TAG_PEER",i.UNTAG_PEER="UNTAG_PEER",i.TRIM="TRIM"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.TAG_PEER=0]="TAG_PEER",i[i.UNTAG_PEER=1]="UNTAG_PEER",i[i.TRIM=2]="TRIM"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.peer!=null&&(o.uint32(18),o.bytes(i.peer)),i.tag!=null&&(o.uint32(26),o.string(i.tag)),i.weight!=null&&(o.uint32(32),o.int64(i.weight)),a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.peer=i.bytes();break;case 3:a.tag=i.string();break;case 4:a.weight=i.int64();break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(dn||(dn={}));var mn;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),e.peer!=null&&e.peer.byteLength>0&&(n.uint32(10),n.bytes(e.peer)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={peer:new Uint8Array(0)},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.peer=e.bytes();break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(mn||(mn={}));var Kt;(function(r){let t;(function(i){i.GET_TOPICS="GET_TOPICS",i.LIST_PEERS="LIST_PEERS",i.PUBLISH="PUBLISH",i.SUBSCRIBE="SUBSCRIBE"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.GET_TOPICS=0]="GET_TOPICS",i[i.LIST_PEERS=1]="LIST_PEERS",i[i.PUBLISH=2]="PUBLISH",i[i.SUBSCRIBE=3]="SUBSCRIBE"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.topic!=null&&(o.uint32(18),o.string(i.topic)),i.data!=null&&(o.uint32(26),o.bytes(i.data)),a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.topic=i.string();break;case 3:a.data=i.bytes();break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(Kt||(Kt={}));var dr;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.from!=null&&(n.uint32(10),n.bytes(e.from)),e.data!=null&&(n.uint32(18),n.bytes(e.data)),e.seqno!=null&&(n.uint32(26),n.bytes(e.seqno)),e.topicIDs!=null)for(let o of e.topicIDs)n.uint32(34),n.string(o);e.signature!=null&&(n.uint32(42),n.bytes(e.signature)),e.key!=null&&(n.uint32(50),n.bytes(e.key)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={topicIDs:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.from=e.bytes();break;case 2:i.data=e.bytes();break;case 3:i.seqno=e.bytes();break;case 4:i.topicIDs.push(e.string());break;case 5:i.signature=e.bytes();break;case 6:i.key=e.bytes();break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(dr||(dr={}));var gn;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.topics!=null)for(let o of e.topics)n.uint32(10),n.string(o);if(e.peerIDs!=null)for(let o of e.peerIDs)n.uint32(18),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={topics:[],peerIDs:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.topics.push(e.string());break;case 2:i.peerIDs.push(e.bytes());break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(gn||(gn={}));var Ce;(function(r){let t;(function(i){i.UNSPECIFIED="UNSPECIFIED",i.GET_PROTOCOLS="GET_PROTOCOLS",i.GET_PEER_INFO="GET_PEER_INFO"})(t=r.Type||(r.Type={}));let e;(function(i){i[i.UNSPECIFIED=0]="UNSPECIFIED",i[i.GET_PROTOCOLS=1]="GET_PROTOCOLS",i[i.GET_PEER_INFO=2]="GET_PEER_INFO"})(e||(e={})),function(i){i.codec=()=>Xt(e)}(t=r.Type||(r.Type={}));let n;r.codec=()=>(n==null&&(n=H((i,o,a={})=>{if(a.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),r.Type.codec().encode(i.type,o)),i.id!=null&&(o.uint32(18),o.bytes(i.id)),i.protos!=null)for(let l of i.protos)o.uint32(26),o.string(l);a.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let a={protos:[]},l=o==null?i.len:i.pos+o;for(;i.pos<l;){let f=i.uint32();switch(f>>>3){case 1:a.type=r.Type.codec().decode(i);break;case 2:a.id=i.bytes();break;case 3:a.protos.push(i.string());break;default:i.skipType(f&7);break}}return a})),n),r.encode=i=>V(i,r.codec()),r.decode=i=>z(i,r.codec())})(Ce||(Ce={}));var yn;(function(r){let t;r.codec=()=>(t==null&&(t=H((e,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),e.peer!=null&&(n.uint32(10),ce.codec().encode(e.peer,n)),e.protos!=null)for(let o of e.protos)n.uint32(18),n.string(o);i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={protos:[]},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let a=e.uint32();switch(a>>>3){case 1:i.peer=ce.codec().decode(e,e.uint32());break;case 2:i.protos.push(e.string());break;default:e.skipType(a&7);break}}return i})),t),r.encode=e=>V(e,r.codec()),r.decode=e=>z(e,r.codec())})(yn||(yn={}));function X(r){return Ie.encode({type:Ie.Type.OK,peers:[],...r}).subarray()}function P(r){return Ie.encode({type:Ie.Type.ERROR,error:{msg:r.message},peers:[]}).subarray()}function np(r){return r[Symbol.asyncIterator]!=null}function ip(r){if(np(r))return(async()=>{for await(let t of r);})();for(let t of r);}var ro=ip;var bn=et("libp2p:daemon-server:dht"),wn=class{constructor(t){let{dht:e}=t;this.dht=e}async*provide(t){try{await ro(this.dht.provide(t)),yield X()}catch(e){bn.error(e),yield P(e)}}async*getClosestPeers(t){yield X({dht:{type:Q.Type.BEGIN}});for await(let e of this.dht.getClosestPeers(t))e.name==="PEER_RESPONSE"&&(yield*e.closer.map(n=>Q.encode({type:Q.Type.VALUE,value:n.id.toBytes()})));yield Q.encode({type:Q.Type.END})}async*getPublicKey(t){yield P(new Error("FIX ME: not implemented"))}async*getValue(t){try{for await(let e of this.dht.get(t))e.name==="VALUE"&&(yield X({dht:{type:Q.Type.VALUE,value:e.value}}))}catch(e){bn.error(e),yield P(e)}}async*putValue(t,e){try{await ro(this.dht.put(t,e)),yield X()}catch(n){bn.error(n),yield P(n)}}async*findPeer(t){try{for await(let e of this.dht.findPeer(t))e.name==="FINAL_PEER"&&(yield X({dht:{type:Q.Type.VALUE,peer:{id:e.peer.id.toBytes(),addrs:e.peer.multiaddrs.map(n=>n.bytes)}}}));throw new Error("Peer not found")}catch(e){bn.error(e),yield P(e)}}async*findProviders(t,e){yield X({dht:{type:Q.Type.BEGIN}});try{let n=e,i=0;for await(let o of this.dht.findProviders(t))if(o.name==="PEER_RESPONSE"){for(let a of o.providers)i++,yield Q.encode({type:Q.Type.VALUE,peer:{id:a.id.toBytes(),addrs:(a.multiaddrs??[]).map(l=>l.bytes)}});if(n===i)break}}catch(n){yield P(n)}yield Q.encode({type:Q.Type.END})}};var jc=Symbol.for("@libp2p/peer-id");var op=Symbol.for("nodejs.util.inspect.custom"),Yc=Object.values(ee).map(r=>r.decoder).reduce((r,t)=>r.or(t),ee.identity.decoder),Jc=114,Qc=36,ta=37,mr=class{constructor(t){this.type=t.type,this.multihash=t.multihash,this.privateKey=t.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}get[jc](){return!0}toString(){return this.string==null&&(this.string=q.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return R.createV1(Jc,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return de(this.multihash.bytes,t);if(typeof t=="string")return sp(t).equals(this);if(t?.multihash?.bytes!=null)return de(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[op](){return`PeerId(${this.toString()})`}},gr=class extends mr{constructor(t){super({...t,type:"RSA"}),this.type="RSA",this.publicKey=t.publicKey}},yr=class extends mr{constructor(t){super({...t,type:"Ed25519"}),this.type="Ed25519",this.publicKey=t.multihash.digest}},br=class extends mr{constructor(t){super({...t,type:"secp256k1"}),this.type="secp256k1",this.publicKey=t.multihash.digest}};function sp(r,t){if(t=t??Yc,r.charAt(0)==="1"||r.charAt(0)==="Q"){let e=fe(q.decode(`z${r}`));return r.startsWith("12D")?new yr({multihash:e}):r.startsWith("16U")?new br({multihash:e}):new gr({multihash:e})}return _e(Yc.decode(r))}function _e(r){try{let t=fe(r);if(t.code===Ir.code){if(t.digest.length===Qc)return new yr({multihash:t});if(t.digest.length===ta)return new br({multihash:t})}if(t.code===Ar.code)return new gr({multihash:t})}catch{return cp(R.decode(r))}throw new Error("Supplied PeerID CID is invalid")}function cp(r){if(r==null||r.multihash==null||r.version==null||r.version===1&&r.code!==Jc)throw new Error("Supplied PeerID CID is invalid");let t=r.multihash;if(t.code===Ar.code)return new gr({multihash:r.multihash});if(t.code===Ir.code){if(t.digest.length===Qc)return new yr({multihash:r.multihash});if(t.digest.length===ta)return new br({multihash:r.multihash})}throw new Error("Supplied PeerID CID is invalid")}var En=et("libp2p:daemon-server:pubsub"),vn=class{constructor(t){let{pubsub:e}=t;this.pubsub=e}async*getTopics(){try{yield X({pubsub:{topics:this.pubsub.getTopics(),peerIDs:[]}})}catch(t){En.error(t),yield P(t)}}async*subscribe(t){try{let e=ie();this.pubsub.subscribe(t),this.pubsub.addEventListener("message",n=>{let i=n.detail;i.topic===t&&(i.type==="signed"?e.push(dr.encode({from:i.from.toBytes(),data:i.data,seqno:i.sequenceNumber==null?void 0:ir(i.sequenceNumber.toString(16).padStart(16,"0"),"base16"),topicIDs:[i.topic],signature:i.signature,key:i.key}).subarray()):e.push(dr.encode({data:i.data,topicIDs:[i.topic]}).subarray()))}),yield X(),yield*e}catch(e){En.error(e),yield P(e)}}async*publish(t,e){try{await this.pubsub.publish(t,e),yield X()}catch(n){En.error(n),yield P(n)}}async*listPeers(t){try{yield X({pubsub:{topics:[t],peerIDs:this.pubsub.getSubscribers(t).map(e=>e.toBytes())}})}catch(e){En.error(e),yield P(e)}}};var ap=1<<22,jt=et("libp2p:daemon-server"),xn=class{constructor(t){let{multiaddr:e,libp2pNode:n}=t;this.multiaddr=e,this.libp2p=n,this.tcp=Zs()(),this.listener=this.tcp.createListener({handler:this.handleConnection.bind(this),upgrader:Ui}),this._onExit=this._onExit.bind(this),n.dht!=null&&(this.dhtOperations=new wn({dht:n.dht})),n.pubsub!=null&&(this.pubsubOperations=new vn({pubsub:n.pubsub}))}async connect(t){if(t.connect==null||t.connect.addrs==null)throw new Error("Invalid request");let e=t.connect.peer,n=t.connect.addrs.map(o=>gt(o)),i=_e(e);return await this.libp2p.peerStore.addressBook.set(i,n),await this.libp2p.dial(i)}async openStream(t){if(t.streamOpen==null||t.streamOpen.proto==null)throw new Error("Invalid request");let{peer:e,proto:n}=t.streamOpen,i=_e(e),o=await this.libp2p.dial(i),a=await o.newStream(n);return{streamInfo:{peer:i.toBytes(),addr:o.remoteAddr.bytes,proto:a.stat.protocol??""},connection:a}}async registerStreamHandler(t){if(t.streamHandler==null||t.streamHandler.proto==null)throw new Error("Invalid request");let e=t.streamHandler.proto,n=gt(t.streamHandler.addr),i;await this.libp2p.handle(e,({connection:o,stream:a})=>{Promise.resolve().then(async()=>{i=await this.tcp.dial(n,{upgrader:Ui});let l=Je.encode({peer:o.remotePeer.toBytes(),addr:o.remoteAddr.bytes,proto:a.stat.protocol??""}),f=Ze.single(l);await en(async function*(){yield f,yield*a.source}(),async function*(d){for await(let h of d)yield*h},i,a.sink)}).catch(async l=>{jt.error(l),i!=null&&await i.close(l)}).finally(()=>{i?.close().catch(l=>{jt.error(l)})})})}_listen(){process.on("SIGTERM",this._onExit),process.on("SIGINT",this._onExit),process.on("SIGHUP",this._onExit)}_onExit(){this.stop({exit:!0}).catch(t=>{jt.error(t)})}async start(){this._listen(),await this.libp2p.start(),await this.listener.listen(this.multiaddr)}getMultiaddr(){let t=this.listener.getAddrs();if(t.length>0)return t[0];throw new Error("Not started")}async stop(t={exit:!1}){await this.libp2p.stop(),await this.listener.close(),t.exit&&jt("server closed, exiting"),process.removeListener("SIGTERM",this._onExit),process.removeListener("SIGINT",this._onExit),process.removeListener("SIGHUP",this._onExit)}async*handlePeerStoreRequest(t){try{switch(t.type){case Ce.Type.GET_PROTOCOLS:if(t.id==null)throw new Error("Invalid request");let e=_e(t.id),i=(await this.libp2p.peerStore.get(e)).protocols;yield X({peerStore:{protos:i}});return;case Ce.Type.GET_PEER_INFO:throw new Error("ERR_NOT_IMPLEMENTED");default:throw new Error("ERR_INVALID_REQUEST_TYPE")}}catch(e){jt.error(e),yield P(e)}}async*handlePubsubRequest(t){try{if(this.libp2p.pubsub==null||this.pubsubOperations==null)throw new Error("PubSub not configured");switch(t.type){case Kt.Type.GET_TOPICS:yield*this.pubsubOperations.getTopics();return;case Kt.Type.SUBSCRIBE:if(t.topic==null)throw new Error("Invalid request");yield*this.pubsubOperations.subscribe(t.topic);return;case Kt.Type.PUBLISH:if(t.topic==null||t.data==null)throw new Error("Invalid request");yield*this.pubsubOperations.publish(t.topic,t.data);return;case Kt.Type.LIST_PEERS:if(t.topic==null)throw new Error("Invalid request");yield*this.pubsubOperations.listPeers(t.topic);return;default:throw new Error("ERR_INVALID_REQUEST_TYPE")}}catch(e){jt.error(e),yield P(e)}}async*handleDHTRequest(t){try{if(this.libp2p.dht==null||this.dhtOperations==null)throw new Error("DHT not configured");switch(t.type){case It.Type.FIND_PEER:if(t.peer==null)throw new Error("Invalid request");yield*this.dhtOperations.findPeer(_e(t.peer));return;case It.Type.FIND_PROVIDERS:if(t.cid==null)throw new Error("Invalid request");yield*this.dhtOperations.findProviders(R.decode(t.cid),t.count??20);return;case It.Type.PROVIDE:if(t.cid==null)throw new Error("Invalid request");yield*this.dhtOperations.provide(R.decode(t.cid));return;case It.Type.GET_CLOSEST_PEERS:if(t.key==null)throw new Error("Invalid request");yield*this.dhtOperations.getClosestPeers(t.key);return;case It.Type.GET_PUBLIC_KEY:if(t.peer==null)throw new Error("Invalid request");yield*this.dhtOperations.getPublicKey(_e(t.peer));return;case It.Type.GET_VALUE:if(t.key==null)throw new Error("Invalid request");yield*this.dhtOperations.getValue(t.key);return;case It.Type.PUT_VALUE:if(t.key==null||t.value==null)throw new Error("Invalid request");yield*this.dhtOperations.putValue(t.key,t.value);return;default:throw new Error("ERR_INVALID_REQUEST_TYPE")}}catch(e){jt.error(e),yield P(e)}}handleConnection(t){let e=this,n=new rn({stream:t,maxLength:ap});en(n.decoder,i=>async function*(){let o;for await(let a of i)try{switch(o=At.decode(a),o.type){case At.Type.CONNECT:{try{await e.connect(o)}catch(l){yield P(l);break}yield X();break}case At.Type.IDENTIFY:{yield X({identify:{id:e.libp2p.peerId.toBytes(),addrs:e.libp2p.getMultiaddrs().map(l=>l.decapsulateCode(L("p2p").code)).map(l=>l.bytes)}});break}case At.Type.LIST_PEERS:{let l=[],f=new Set;for(let d of e.libp2p.getConnections()){let h=d.remotePeer.toString();f.has(h)||(f.add(h),l.push({id:d.remotePeer.toBytes(),addrs:[d.remoteAddr.bytes]}))}yield X({peers:l});break}case At.Type.STREAM_OPEN:{let l;try{l=await e.openStream(o)}catch(d){yield P(d);break}yield X({streamInfo:l.streamInfo});let f=n.rest();await en(f,l.connection,async function*(d){for await(let h of d)yield*h},f);return}case At.Type.STREAM_HANDLER:{try{await e.registerStreamHandler(o)}catch(l){yield P(l);break}yield X();break}case At.Type.PEERSTORE:{if(o.peerStore==null){yield P(new Error("ERR_INVALID_REQUEST"));break}yield*e.handlePeerStoreRequest(o.peerStore);break}case At.Type.PUBSUB:{if(o.pubsub==null){yield P(new Error("ERR_INVALID_REQUEST"));break}yield*e.handlePubsubRequest(o.pubsub);break}case At.Type.DHT:{if(o.dht==null){yield P(new Error("ERR_INVALID_REQUEST"));break}yield*e.handleDHTRequest(o.dht);break}default:yield P(new Error("ERR_INVALID_REQUEST_TYPE"));break}}catch(l){jt.error(l),yield P(l);continue}}(),async function(i){for await(let o of i)n.write(o)}).catch(i=>{jt(i)})}},up=(r,t)=>new xn({multiaddr:r,libp2pNode:t});return Gu(lp);})();
|
|
7
7
|
return Libp2PDaemonServer}));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@libp2p/daemon-server",
|
|
3
|
-
"version": "4.1.
|
|
3
|
+
"version": "4.1.4",
|
|
4
4
|
"description": "API server for libp2p-daemon instances",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
6
|
"homepage": "https://github.com/libp2p/js-libp2p-daemon/tree/master/packages/libp2p-daemon-server#readme",
|
|
@@ -139,7 +139,7 @@
|
|
|
139
139
|
},
|
|
140
140
|
"dependencies": {
|
|
141
141
|
"@libp2p/daemon-protocol": "^3.0.0",
|
|
142
|
-
"@libp2p/interface-connection": "^
|
|
142
|
+
"@libp2p/interface-connection": "^4.0.0",
|
|
143
143
|
"@libp2p/interface-dht": "^2.0.0",
|
|
144
144
|
"@libp2p/interface-peer-id": "^2.0.0",
|
|
145
145
|
"@libp2p/interface-peer-store": "^1.2.8",
|