@libp2p/webtransport 3.0.10-122f1e67 → 3.0.10-20d5f220
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 +1 -1
- package/package.json +5 -5
package/dist/index.min.js
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
`,r};Mc.decode=function(t){for(var e=[],r=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,n=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,i=/\r?\n/,o;o=r.exec(t),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:Gi.util.decode64(o[3])};if(e.push(a),!!o[2]){for(var c=o[2].split(i),f=0;o&&f<c.length;){for(var u=c[f].replace(/\s+$/,""),l=f+1;l<c.length;++l){var h=c[l];if(!/\s/.test(h[0]))break;u+=h,f=l}if(o=u.match(n),o){for(var g={name:o[1],values:[]},d=o[2].split(","),p=0;p<d.length;++p)g.values.push(Dp(d[p]));if(a.procType)if(!a.contentDomain&&g.name==="Content-Domain")a.contentDomain=d[0]||"";else if(!a.dekInfo&&g.name==="DEK-Info"){if(g.values.length===0)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');a.dekInfo={algorithm:d[0],parameters:d[1]||null}}else a.headers.push(g);else{if(g.name!=="Proc-Type")throw new Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(g.values.length!==2)throw new Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');a.procType={version:d[0],type:d[1]}}}++f}if(a.procType==="ENCRYPTED"&&!a.dekInfo)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".')}}if(e.length===0)throw new Error("Invalid PEM formatted message.");return e};function zi(t){for(var e=t.name+": ",r=[],n=function(c,f){return" "+f},i=0;i<t.values.length;++i)r.push(t.values[i].replace(/^(\S+\r\n)/,n));e+=r.join(",")+`\r
|
|
13
13
|
`;for(var o=0,s=-1,i=0;i<e.length;++i,++o)if(o>65&&s!==-1){var a=e[s];a===","?(++s,e=e.substr(0,s)+`\r
|
|
14
14
|
`+e.substr(s)):e=e.substr(0,s)+`\r
|
|
15
|
-
`+a+e.substr(s+1),o=i-s-1,s=-1,++i}else(e[i]===" "||e[i]===" "||e[i]===",")&&(s=i);return e}function Dp(t){return t.replace(/^\s+/,"")}});var $c=J((Jb,Wc)=>{var Le=gt();_r();Dt();var Hc=Wc.exports=Le.sha256=Le.sha256||{};Le.md.sha256=Le.md.algorithms.sha256=Hc;Hc.create=function(){zc||Pp();var t=null,e=Le.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=Le.util.createBuffer(),t={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Le.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),qc(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=Le.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Ss.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4,h5:t.h5,h6:t.h6,h7:t.h7};qc(l,r,i);var h=Le.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h.putInt32(l.h5),h.putInt32(l.h6),h.putInt32(l.h7),h},n};var Ss=null,zc=!1,Gc=null;function Pp(){Ss=String.fromCharCode(128),Ss+=Le.util.fillString(String.fromCharCode(0),64),Gc=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],zc=!0}function qc(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,g,d,p,y,m,S=r.length();S>=64;){for(f=0;f<16;++f)e[f]=r.getInt32();for(;f<64;++f)n=e[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=e[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,e[f]=n+e[f-7]+i+e[f-16]|0;for(u=t.h0,l=t.h1,h=t.h2,g=t.h3,d=t.h4,p=t.h5,y=t.h6,m=t.h7,f=0;f<64;++f)s=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),a=y^d&(p^y),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|h&(u^l),n=m+s+a+Gc[f]+e[f],i=o+c,m=y,y=p,p=d,d=g+n>>>0,g=h,h=l,l=u,u=n+i>>>0;t.h0=t.h0+u|0,t.h1=t.h1+l|0,t.h2=t.h2+h|0,t.h3=t.h3+g|0,t.h4=t.h4+d|0,t.h5=t.h5+p|0,t.h6=t.h6+y|0,t.h7=t.h7+m|0,S-=64}}});var Zc=J((tv,Yc)=>{var Re=gt();Dt();var Wi=null;Re.util.isNodejs&&!Re.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Wi=Hi());var Np=Yc.exports=Re.prng=Re.prng||{};Np.create=function(t){for(var e={plugin:t,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=t.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();e.pools=n,e.pool=0,e.generate=function(f,u){if(!u)return e.generateSync(f);var l=e.plugin.cipher,h=e.plugin.increment,g=e.plugin.formatKey,d=e.plugin.formatSeed,p=Re.util.createBuffer();e.key=null,y();function y(m){if(m)return u(m);if(p.length()>=f)return u(null,p.getBytes(f));if(e.generated>1048575&&(e.key=null),e.key===null)return Re.util.nextTick(function(){o(y)});var S=l(e.key,e.seed);e.generated+=S.length,p.putBytes(S),e.key=g(l(e.key,h(e.seed))),e.seed=d(l(e.key,e.seed)),Re.util.setImmediate(y)}},e.generateSync=function(f){var u=e.plugin.cipher,l=e.plugin.increment,h=e.plugin.formatKey,g=e.plugin.formatSeed;e.key=null;for(var d=Re.util.createBuffer();d.length()<f;){e.generated>1048575&&(e.key=null),e.key===null&&s();var p=u(e.key,e.seed);e.generated+=p.length,d.putBytes(p),e.key=h(u(e.key,l(e.seed))),e.seed=g(u(e.key,e.seed))}return d.getBytes(f)};function o(f){if(e.pools[0].messageLength>=32)return a(),f();var u=32-e.pools[0].messageLength<<5;e.seedFile(u,function(l,h){if(l)return f(l);e.collect(h),a(),f()})}function s(){if(e.pools[0].messageLength>=32)return a();var f=32-e.pools[0].messageLength<<5;e.collect(e.seedFileSync(f)),a()}function a(){e.reseeds=e.reseeds===4294967295?0:e.reseeds+1;var f=e.plugin.md.create();f.update(e.keyBytes);for(var u=1,l=0;l<32;++l)e.reseeds%u===0&&(f.update(e.pools[l].digest().getBytes()),e.pools[l].start()),u=u<<1;e.keyBytes=f.digest().getBytes(),f.start(),f.update(e.keyBytes);var h=f.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(h),e.generated=0}function c(f){var u=null,l=Re.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(u=function(B){return h.getRandomValues(B)});var g=Re.util.createBuffer();if(u)for(;g.length()<f;){var d=Math.max(1,Math.min(f-g.length(),65536)/4),p=new Uint32Array(Math.floor(d));try{u(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(B){if(!(typeof QuotaExceededError<"u"&&B instanceof QuotaExceededError))throw B}}if(g.length()<f)for(var m,S,x,I=Math.floor(Math.random()*65536);g.length()<f;){S=16807*(I&65535),m=16807*(I>>16),S+=(m&32767)<<16,S+=m>>15,S=(S&2147483647)+(S>>31),I=S&4294967295;for(var y=0;y<3;++y)x=I>>>(y<<3),x^=Math.floor(Math.random()*256),g.putByte(x&255)}return g.getBytes(f)}return Wi?(e.seedFile=function(f,u){Wi.randomBytes(f,function(l,h){if(l)return u(l);u(null,h.toString())})},e.seedFileSync=function(f){return Wi.randomBytes(f).toString()}):(e.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},e.seedFileSync=c),e.collect=function(f){for(var u=f.length,l=0;l<u;++l)e.pools[e.pool].update(f.substr(l,1)),e.pool=e.pool===31?0:e.pool+1},e.collectInt=function(f,u){for(var l="",h=0;h<u;h+=8)l+=String.fromCharCode(f>>h&255);e.collect(l)},e.registerWorker=function(f){if(f===self)e.seedFile=function(l,h){function g(d){var p=d.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),h(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var h=l.data;h.forge&&h.forge.prng&&e.seedFile(h.forge.prng.needed,function(g,d){f.postMessage({forge:{prng:{err:g,bytes:d}}})})};f.addEventListener("message",u)}},e}});var Hn=J((ev,Bs)=>{var Ft=gt();Es();$c();Zc();Dt();(function(){if(Ft.random&&Ft.random.getBytes){Bs.exports=Ft.random;return}(function(t){var e={},r=new Array(4),n=Ft.util.createBuffer();e.formatKey=function(l){var h=Ft.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),Ft.aes._expandKey(l,!1)},e.formatSeed=function(l){var h=Ft.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),l},e.cipher=function(l,h){return Ft.aes._updateBlock(l,h,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},e.increment=function(l){return++l[3],l},e.md=Ft.md.sha256;function i(){var l=Ft.prng.create(e);return l.getBytes=function(h,g){return l.generate(h,g)},l.getBytesSync=function(h){return l.generate(h)},l}var o=i(),s=null,a=Ft.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Ft.options.usePureJavaScript||!Ft.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}t&&(t().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),t().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Ft.random)Ft.random=o;else for(var u in o)Ft.random[u]=o[u];Ft.random.createInstance=i,Bs.exports=Ft.random})(typeof jQuery<"u"?jQuery:null)})()});var Jc=J((rv,jc)=>{var te=gt();Dt();var As=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],Xc=[1,2,3,5],Up=function(t,e){return t<<e&65535|(t&65535)>>16-e},Kp=function(t,e){return(t&65535)>>e|t<<16-e&65535};jc.exports=te.rc2=te.rc2||{};te.rc2.expandKey=function(t,e){typeof t=="string"&&(t=te.util.createBuffer(t)),e=e||128;var r=t,n=t.length(),i=e,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(As[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,As[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,As[r.at(a+1)^r.at(a+o)]);return r};var Qc=function(t,e,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(t=te.rc2.expandKey(t,e),f=0;f<64;f++)l.push(t.getInt16Le());r?(a=function(d){for(f=0;f<4;f++)d[f]+=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),d[f]=Up(d[f],Xc[f]),u++},c=function(d){for(f=0;f<4;f++)d[f]+=l[d[(f+3)%4]&63]}):(a=function(d){for(f=3;f>=0;f--)d[f]=Kp(d[f],Xc[f]),d[f]-=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),u--},c=function(d){for(f=3;f>=0;f--)d[f]-=l[d[(f+3)%4]&63]});var h=function(d){var p=[];for(f=0;f<4;f++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}u=r?0:63;for(var m=0;m<d.length;m++)for(var S=0;S<d[m][0];S++)d[m][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},g=null;return g={start:function(d,p){d&&typeof d=="string"&&(d=te.util.createBuffer(d)),n=!1,i=te.util.createBuffer(),o=p||new te.util.createBuffer,s=d,g.output=o},update:function(d){for(n||i.putBuffer(d);i.length()>=8;)h([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(d){var p=!0;if(r)if(d)p=d(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(d)p=d(8,o,!r);else{var m=o.length(),S=o.at(m-1);S>m?p=!1:o.truncate(S)}return p}},g};te.rc2.startEncrypting=function(t,e,r){var n=te.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};te.rc2.createEncryptionCipher=function(t,e){return Qc(t,e,!0)};te.rc2.startDecrypting=function(t,e,r){var n=te.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};te.rc2.createDecryptionCipher=function(t,e){return Qc(t,e,!1)}});var Zi=J((nv,cf)=>{var Cs=gt();cf.exports=Cs.jsbn=Cs.jsbn||{};var je,Op=0xdeadbeefcafe,tf=(Op&16777215)==15715070;function D(t,e,r){this.data=[],t!=null&&(typeof t=="number"?this.fromNumber(t,e,r):e==null&&typeof t!="string"?this.fromString(t,256):this.fromString(t,e))}Cs.jsbn.BigInteger=D;function at(){return new D(null)}function Mp(t,e,r,n,i,o){for(;--o>=0;){var s=e*this.data[t++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function Fp(t,e,r,n,i,o){for(var s=e&32767,a=e>>15;--o>=0;){var c=this.data[t]&32767,f=this.data[t++]>>15,u=a*c+f*s;c=s*c+((u&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(u>>>15)+a*f+(i>>>30),r.data[n++]=c&1073741823}return i}function ef(t,e,r,n,i,o){for(var s=e&16383,a=e>>14;--o>=0;){var c=this.data[t]&16383,f=this.data[t++]>>14,u=a*c+f*s;c=s*c+((u&16383)<<14)+r.data[n]+i,i=(c>>28)+(u>>14)+a*f,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(D.prototype.am=ef,je=28):tf&&navigator.appName=="Microsoft Internet Explorer"?(D.prototype.am=Fp,je=30):tf&&navigator.appName!="Netscape"?(D.prototype.am=Mp,je=26):(D.prototype.am=ef,je=28);D.prototype.DB=je;D.prototype.DM=(1<<je)-1;D.prototype.DV=1<<je;var Is=52;D.prototype.FV=Math.pow(2,Is);D.prototype.F1=Is-je;D.prototype.F2=2*je-Is;var Vp="0123456789abcdefghijklmnopqrstuvwxyz",$i=new Array,sn,ue;sn="0".charCodeAt(0);for(ue=0;ue<=9;++ue)$i[sn++]=ue;sn="a".charCodeAt(0);for(ue=10;ue<36;++ue)$i[sn++]=ue;sn="A".charCodeAt(0);for(ue=10;ue<36;++ue)$i[sn++]=ue;function rf(t){return Vp.charAt(t)}function nf(t,e){var r=$i[t.charCodeAt(e)];return r??-1}function qp(t){for(var e=this.t-1;e>=0;--e)t.data[e]=this.data[e];t.t=this.t,t.s=this.s}function Hp(t){this.t=1,this.s=t<0?-1:0,t>0?this.data[0]=t:t<-1?this.data[0]=t+this.DV:this.t=0}function pr(t){var e=at();return e.fromInt(t),e}function zp(t,e){var r;if(e==16)r=4;else if(e==8)r=3;else if(e==256)r=8;else if(e==2)r=1;else if(e==32)r=5;else if(e==4)r=2;else{this.fromRadix(t,e);return}this.t=0,this.s=0;for(var n=t.length,i=!1,o=0;--n>=0;){var s=r==8?t[n]&255:nf(t,n);if(s<0){t.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&t[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&D.ZERO.subTo(this,this)}function Gp(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function Wp(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(t==16)e=4;else if(t==8)e=3;else if(t==2)e=1;else if(t==32)e=5;else if(t==4)e=2;else return this.toRadix(t);var r=(1<<e)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%e;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=rf(n));s>=0;)a<e?(n=(this.data[s]&(1<<a)-1)<<e-a,n|=this.data[--s]>>(a+=this.DB-e)):(n=this.data[s]>>(a-=e)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=rf(n));return i?o:"0"}function $p(){var t=at();return D.ZERO.subTo(this,t),t}function Yp(){return this.s<0?this.negate():this}function Zp(t){var e=this.s-t.s;if(e!=0)return e;var r=this.t;if(e=r-t.t,e!=0)return this.s<0?-e:e;for(;--r>=0;)if((e=this.data[r]-t.data[r])!=0)return e;return 0}function Yi(t){var e=1,r;return(r=t>>>16)!=0&&(t=r,e+=16),(r=t>>8)!=0&&(t=r,e+=8),(r=t>>4)!=0&&(t=r,e+=4),(r=t>>2)!=0&&(t=r,e+=2),(r=t>>1)!=0&&(t=r,e+=1),e}function Xp(){return this.t<=0?0:this.DB*(this.t-1)+Yi(this.data[this.t-1]^this.s&this.DM)}function Qp(t,e){var r;for(r=this.t-1;r>=0;--r)e.data[r+t]=this.data[r];for(r=t-1;r>=0;--r)e.data[r]=0;e.t=this.t+t,e.s=this.s}function jp(t,e){for(var r=t;r<this.t;++r)e.data[r-t]=this.data[r];e.t=Math.max(this.t-t,0),e.s=this.s}function Jp(t,e){var r=t%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(t/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)e.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)e.data[a]=0;e.data[o]=s,e.t=this.t+o+1,e.s=this.s,e.clamp()}function ty(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t){e.t=0;return}var n=t%this.DB,i=this.DB-n,o=(1<<n)-1;e.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)e.data[s-r-1]|=(this.data[s]&o)<<i,e.data[s-r]=this.data[s]>>n;n>0&&(e.data[this.t-r-1]|=(this.s&o)<<i),e.t=this.t-r,e.clamp()}function ey(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]-t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n-=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n-=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e.data[r++]=this.DV+n:n>0&&(e.data[r++]=n),e.t=r,e.clamp()}function ry(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e.data[i]=0;for(i=0;i<n.t;++i)e.data[i+r.t]=r.am(0,n.data[i],e,i,0,r.t);e.s=0,e.clamp(),this.s!=t.s&&D.ZERO.subTo(e,e)}function ny(t){for(var e=this.abs(),r=t.t=2*e.t;--r>=0;)t.data[r]=0;for(r=0;r<e.t-1;++r){var n=e.am(r,e.data[r],t,2*r,0,1);(t.data[r+e.t]+=e.am(r+1,2*e.data[r],t,2*r+1,n,e.t-r-1))>=e.DV&&(t.data[r+e.t]-=e.DV,t.data[r+e.t+1]=1)}t.t>0&&(t.data[t.t-1]+=e.am(r,e.data[r],t,2*r,0,1)),t.s=0,t.clamp()}function iy(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=at());var o=at(),s=this.s,a=t.s,c=this.DB-Yi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),h=this.FV/l,g=(1<<this.F1)/l,d=1<<this.F2,p=r.t,y=p-f,m=e??at();for(o.dlShiftTo(y,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),D.ONE.dlShiftTo(f,m),m.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--y>=0;){var S=r.data[--p]==u?this.DM:Math.floor(r.data[p]*h+(r.data[p-1]+d)*g);if((r.data[p]+=o.am(0,S,r,y,0,f))<S)for(o.dlShiftTo(y,m),r.subTo(m,r);r.data[p]<--S;)r.subTo(m,r)}e!=null&&(r.drShiftTo(f,e),s!=a&&D.ZERO.subTo(e,e)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&D.ZERO.subTo(r,r)}}}function oy(t){var e=at();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(D.ZERO)>0&&t.subTo(e,e),e}function Lr(t){this.m=t}function sy(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function ay(t){return t}function cy(t){t.divRemTo(this.m,null,t)}function fy(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function uy(t,e){t.squareTo(e),this.reduce(e)}Lr.prototype.convert=sy;Lr.prototype.revert=ay;Lr.prototype.reduce=cy;Lr.prototype.mulTo=fy;Lr.prototype.sqrTo=uy;function ly(){if(this.t<1)return 0;var t=this.data[0];if(!(t&1))return 0;var e=t&3;return e=e*(2-(t&15)*e)&15,e=e*(2-(t&255)*e)&255,e=e*(2-((t&65535)*e&65535))&65535,e=e*(2-t*e%this.DV)%this.DV,e>0?this.DV-e:-e}function Rr(t){this.m=t,this.mp=t.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<t.DB-15)-1,this.mt2=2*t.t}function hy(t){var e=at();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(D.ZERO)>0&&this.m.subTo(e,e),e}function dy(t){var e=at();return t.copyTo(e),this.reduce(e),e}function py(t){for(;t.t<=this.mt2;)t.data[t.t++]=0;for(var e=0;e<this.m.t;++e){var r=t.data[e]&32767,n=r*this.mpl+((r*this.mph+(t.data[e]>>15)*this.mpl&this.um)<<15)&t.DM;for(r=e+this.m.t,t.data[r]+=this.m.am(0,n,t,e,0,this.m.t);t.data[r]>=t.DV;)t.data[r]-=t.DV,t.data[++r]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)}function yy(t,e){t.squareTo(e),this.reduce(e)}function gy(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Rr.prototype.convert=hy;Rr.prototype.revert=dy;Rr.prototype.reduce=py;Rr.prototype.mulTo=gy;Rr.prototype.sqrTo=yy;function my(){return(this.t>0?this.data[0]&1:this.s)==0}function xy(t,e){if(t>4294967295||t<1)return D.ONE;var r=at(),n=at(),i=e.convert(this),o=Yi(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<<o)>0)e.mulTo(n,i,r);else{var s=r;r=n,n=s}return e.revert(r)}function by(t,e){var r;return t<256||e.isEven()?r=new Lr(e):r=new Rr(e),this.exp(t,r)}D.prototype.copyTo=qp;D.prototype.fromInt=Hp;D.prototype.fromString=zp;D.prototype.clamp=Gp;D.prototype.dlShiftTo=Qp;D.prototype.drShiftTo=jp;D.prototype.lShiftTo=Jp;D.prototype.rShiftTo=ty;D.prototype.subTo=ey;D.prototype.multiplyTo=ry;D.prototype.squareTo=ny;D.prototype.divRemTo=iy;D.prototype.invDigit=ly;D.prototype.isEven=my;D.prototype.exp=xy;D.prototype.toString=Wp;D.prototype.negate=$p;D.prototype.abs=Yp;D.prototype.compareTo=Zp;D.prototype.bitLength=Xp;D.prototype.mod=oy;D.prototype.modPowInt=by;D.ZERO=pr(0);D.ONE=pr(1);function vy(){var t=at();return this.copyTo(t),t}function wy(){if(this.s<0){if(this.t==1)return this.data[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this.data[0];if(this.t==0)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]}function Ey(){return this.t==0?this.s:this.data[0]<<24>>24}function Sy(){return this.t==0?this.s:this.data[0]<<16>>16}function By(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function Ay(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Cy(t){if(t==null&&(t=10),this.signum()==0||t<2||t>36)return"0";var e=this.chunkSize(t),r=Math.pow(t,e),n=pr(r),i=at(),o=at(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s}function Iy(t,e){this.fromInt(0),e==null&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,s=0,a=0;a<t.length;++a){var c=nf(t,a);if(c<0){t.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=e*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(s,0)),i&&D.ZERO.subTo(this,this)}function Ty(t,e,r){if(typeof e=="number")if(t<2)this.fromInt(1);else for(this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(D.ONE.shiftLeft(t-1),Ts,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(D.ONE.shiftLeft(t-1),this);else{var n=new Array,i=t&7;n.length=(t>>3)+1,e.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function _y(){var t=this.t,e=new Array;e[0]=this.s;var r=this.DB-t*this.DB%8,n,i=0;if(t-- >0)for(r<this.DB&&(n=this.data[t]>>r)!=(this.s&this.DM)>>r&&(e[i++]=n|this.s<<this.DB-r);t>=0;)r<8?(n=(this.data[t]&(1<<r)-1)<<8-r,n|=this.data[--t]>>(r+=this.DB-8)):(n=this.data[t]>>(r-=8)&255,r<=0&&(r+=this.DB,--t)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(e[i++]=n);return e}function Ly(t){return this.compareTo(t)==0}function Ry(t){return this.compareTo(t)<0?this:t}function ky(t){return this.compareTo(t)>0?this:t}function Dy(t,e,r){var n,i,o=Math.min(t.t,this.t);for(n=0;n<o;++n)r.data[n]=e(this.data[n],t.data[n]);if(t.t<this.t){for(i=t.s&this.DM,n=o;n<this.t;++n)r.data[n]=e(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<t.t;++n)r.data[n]=e(i,t.data[n]);r.t=t.t}r.s=e(this.s,t.s),r.clamp()}function Py(t,e){return t&e}function Ny(t){var e=at();return this.bitwiseTo(t,Py,e),e}function Ts(t,e){return t|e}function Uy(t){var e=at();return this.bitwiseTo(t,Ts,e),e}function of(t,e){return t^e}function Ky(t){var e=at();return this.bitwiseTo(t,of,e),e}function sf(t,e){return t&~e}function Oy(t){var e=at();return this.bitwiseTo(t,sf,e),e}function My(){for(var t=at(),e=0;e<this.t;++e)t.data[e]=this.DM&~this.data[e];return t.t=this.t,t.s=~this.s,t}function Fy(t){var e=at();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function Vy(t){var e=at();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function qy(t){if(t==0)return-1;var e=0;return t&65535||(t>>=16,e+=16),t&255||(t>>=8,e+=8),t&15||(t>>=4,e+=4),t&3||(t>>=2,e+=2),t&1||++e,e}function Hy(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+qy(this.data[t]);return this.s<0?this.t*this.DB:-1}function zy(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function Gy(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=zy(this.data[r]^e);return t}function Wy(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function $y(t,e){var r=D.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function Yy(t){return this.changeBit(t,Ts)}function Zy(t){return this.changeBit(t,sf)}function Xy(t){return this.changeBit(t,of)}function Qy(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]+t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n+=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n+=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e.data[r++]=n:n<-1&&(e.data[r++]=this.DV+n),e.t=r,e.clamp()}function jy(t){var e=at();return this.addTo(t,e),e}function Jy(t){var e=at();return this.subTo(t,e),e}function t1(t){var e=at();return this.multiplyTo(t,e),e}function e1(t){var e=at();return this.divRemTo(t,e,null),e}function r1(t){var e=at();return this.divRemTo(t,null,e),e}function n1(t){var e=at(),r=at();return this.divRemTo(t,e,r),new Array(e,r)}function i1(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function o1(t,e){if(t!=0){for(;this.t<=e;)this.data[this.t++]=0;for(this.data[e]+=t;this.data[e]>=this.DV;)this.data[e]-=this.DV,++e>=this.t&&(this.data[this.t++]=0),++this.data[e]}}function zn(){}function af(t){return t}function s1(t,e,r){t.multiplyTo(e,r)}function a1(t,e){t.squareTo(e)}zn.prototype.convert=af;zn.prototype.revert=af;zn.prototype.mulTo=s1;zn.prototype.sqrTo=a1;function c1(t){return this.exp(t,new zn)}function f1(t,e,r){var n=Math.min(this.t+t.t,e);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,t.data[n],r,n,0,this.t);for(i=Math.min(t.t,e);n<i;++n)this.am(0,t.data[n],r,n,0,e-n);r.clamp()}function u1(t,e,r){--e;var n=r.t=this.t+t.t-e;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(e-this.t,0);n<t.t;++n)r.data[this.t+n-e]=this.am(e-n,t.data[n],r,0,0,this.t+n-e);r.clamp(),r.drShiftTo(1,r)}function an(t){this.r2=at(),this.q3=at(),D.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function l1(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=at();return t.copyTo(e),this.reduce(e),e}function h1(t){return t}function d1(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);t.compareTo(this.m)>=0;)t.subTo(this.m,t)}function p1(t,e){t.squareTo(e),this.reduce(e)}function y1(t,e,r){t.multiplyTo(e,r),this.reduce(r)}an.prototype.convert=l1;an.prototype.revert=h1;an.prototype.reduce=d1;an.prototype.mulTo=y1;an.prototype.sqrTo=p1;function g1(t,e){var r=t.bitLength(),n,i=pr(1),o;if(r<=0)return i;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?o=new Lr(e):e.isEven()?o=new an(e):o=new Rr(e);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=at();for(o.sqrTo(s[1],u);a<=f;)s[a]=at(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=t.t-1,h,g=!0,d=at(),p;for(r=Yi(t.data[l])-1;l>=0;){for(r>=c?h=t.data[l]>>r-c&f:(h=(t.data[l]&(1<<r+1)-1)<<c-r,l>0&&(h|=t.data[l-1]>>this.DB+r-c)),a=n;!(h&1);)h>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[h].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,d),o.sqrTo(d,i),a-=2;a>0?o.sqrTo(i,d):(p=i,i=d,d=p),o.mulTo(d,s[h],i)}for(;l>=0&&!(t.data[l]&1<<r);)o.sqrTo(i,d),p=i,i=d,d=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function m1(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return e;for(i<o&&(o=i),o>0&&(e.rShiftTo(o,e),r.rShiftTo(o,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function x1(t){if(t<=0)return 0;var e=this.DV%t,r=this.s<0?t-1:0;if(this.t>0)if(e==0)r=this.data[0]%t;else for(var n=this.t-1;n>=0;--n)r=(e*r+this.data[n])%t;return r}function b1(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return D.ZERO;for(var r=t.clone(),n=this.clone(),i=pr(1),o=pr(0),s=pr(0),a=pr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),e?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(t,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(t,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),e?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(t,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(t,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),e&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),e&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(D.ONE)!=0)return D.ZERO;if(a.compareTo(t)>=0)return a.subtract(t);if(a.signum()<0)a.addTo(t,a);else return a;return a.signum()<0?a.add(t):a}var ve=[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],v1=(1<<26)/ve[ve.length-1];function w1(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=ve[ve.length-1]){for(e=0;e<ve.length;++e)if(r.data[0]==ve[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<ve.length;){for(var n=ve[e],i=e+1;i<ve.length&&n<v1;)n*=ve[i++];for(n=r.modInt(n);e<i;)if(n%ve[e++]==0)return!1}return r.millerRabin(t)}function E1(t){var e=this.subtract(D.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=S1(),o,s=0;s<t;++s){do o=new D(this.bitLength(),i);while(o.compareTo(D.ONE)<=0||o.compareTo(e)>=0);var a=o.modPow(n,this);if(a.compareTo(D.ONE)!=0&&a.compareTo(e)!=0){for(var c=1;c++<r&&a.compareTo(e)!=0;)if(a=a.modPowInt(2,this),a.compareTo(D.ONE)==0)return!1;if(a.compareTo(e)!=0)return!1}}return!0}function S1(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}D.prototype.chunkSize=By;D.prototype.toRadix=Cy;D.prototype.fromRadix=Iy;D.prototype.fromNumber=Ty;D.prototype.bitwiseTo=Dy;D.prototype.changeBit=$y;D.prototype.addTo=Qy;D.prototype.dMultiply=i1;D.prototype.dAddOffset=o1;D.prototype.multiplyLowerTo=f1;D.prototype.multiplyUpperTo=u1;D.prototype.modInt=x1;D.prototype.millerRabin=E1;D.prototype.clone=vy;D.prototype.intValue=wy;D.prototype.byteValue=Ey;D.prototype.shortValue=Sy;D.prototype.signum=Ay;D.prototype.toByteArray=_y;D.prototype.equals=Ly;D.prototype.min=Ry;D.prototype.max=ky;D.prototype.and=Ny;D.prototype.or=Uy;D.prototype.xor=Ky;D.prototype.andNot=Oy;D.prototype.not=My;D.prototype.shiftLeft=Fy;D.prototype.shiftRight=Vy;D.prototype.getLowestSetBit=Hy;D.prototype.bitCount=Gy;D.prototype.testBit=Wy;D.prototype.setBit=Yy;D.prototype.clearBit=Zy;D.prototype.flipBit=Xy;D.prototype.add=jy;D.prototype.subtract=Jy;D.prototype.multiply=t1;D.prototype.divide=e1;D.prototype.remainder=r1;D.prototype.divideAndRemainder=n1;D.prototype.modPow=g1;D.prototype.modInverse=b1;D.prototype.pow=c1;D.prototype.gcd=m1;D.prototype.isProbablePrime=w1});var df=J((iv,hf)=>{var ke=gt();_r();Dt();var uf=hf.exports=ke.sha1=ke.sha1||{};ke.md.sha1=ke.md.algorithms.sha1=uf;uf.create=function(){lf||B1();var t=null,e=ke.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=ke.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=ke.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),ff(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=ke.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(_s.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4};ff(l,r,i);var h=ke.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h},n};var _s=null,lf=!1;function B1(){_s=String.fromCharCode(128),_s+=ke.util.fillString(String.fromCharCode(0),64),lf=!0}function ff(t,e,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=t.h0,o=t.h1,s=t.h2,a=t.h3,c=t.h4,u=0;u<16;++u)n=r.getInt32(),e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<20;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<32;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<40;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<60;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o&s|a&(o^s),n=(i<<5|i>>>27)+f+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<80;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;t.h0=t.h0+i|0,t.h1=t.h1+o|0,t.h2=t.h2+s|0,t.h3=t.h3+a|0,t.h4=t.h4+c|0,l-=64}}});var gf=J((ov,yf)=>{var De=gt();Dt();Hn();df();var pf=yf.exports=De.pkcs1=De.pkcs1||{};pf.encode_rsa_oaep=function(t,e,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=De.md.sha1.create(),s||(s=o);var a=Math.ceil(t.n.bitLength()/8),c=a-2*o.digestLength-2;if(e.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=e.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",h=c-e.length,g=0;g<h;g++)l+="\0";var d=u.getBytes()+l+""+e;if(!i)i=De.random.getBytes(o.digestLength);else if(i.length!==o.digestLength){var f=new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw f.seedLength=i.length,f.digestLength=o.digestLength,f}var p=Xi(i,a-o.digestLength-1,s),y=De.util.xorBytes(d,p,d.length),m=Xi(y,o.digestLength,s),S=De.util.xorBytes(i,m,i.length);return"\0"+S+y};pf.decode_rsa_oaep=function(t,e,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(t.n.bitLength()/8);if(e.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=e.length,y.expectedLength=s,y}if(i===void 0?i=De.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=e.charAt(0),f=e.substring(1,i.digestLength+1),u=e.substring(1+i.digestLength),l=Xi(u,i.digestLength,o),h=De.util.xorBytes(f,l,f.length),g=Xi(h,s-i.digestLength-1,o),d=De.util.xorBytes(u,g,u.length),p=d.substring(0,i.digestLength),y=c!=="\0",m=0;m<i.digestLength;++m)y|=a.charAt(m)!==p.charAt(m);for(var S=1,x=i.digestLength,I=i.digestLength;I<d.length;I++){var B=d.charCodeAt(I),E=B&1^1,L=S?65534:0;y|=B&L,S=S&E,x+=S}if(y||d.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(x+1)};function Xi(t,e,r){r||(r=De.md.sha1.create());for(var n="",i=Math.ceil(e/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(t+s),n+=r.digest().getBytes()}return n.substring(0,e)}});var mf=J((sv,Ls)=>{var yr=gt();Dt();Zi();Hn();(function(){if(yr.prime){Ls.exports=yr.prime;return}var t=Ls.exports=yr.prime=yr.prime||{},e=yr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var i=function(l,h){return l|h};t.generateProbablePrime=function(l,h,g){typeof h=="function"&&(g=h,h={}),h=h||{};var d=h.algorithm||"PRIMEINC";typeof d=="string"&&(d={name:d}),d.options=d.options||{};var p=h.prng||yr.random,y={nextBytes:function(m){for(var S=p.getBytesSync(m.length),x=0;x<m.length;++x)m[x]=S.charCodeAt(x)}};if(d.name==="PRIMEINC")return o(l,y,d.options,g);throw new Error("Invalid prime generation algorithm: "+d.name)};function o(l,h,g,d){return"workers"in g?c(l,h,g,d):s(l,h,g,d)}function s(l,h,g,d){var p=f(l,h),y=0,m=u(p.bitLength());"millerRabinTests"in g&&(m=g.millerRabinTests);var S=10;"maxBlockTime"in g&&(S=g.maxBlockTime),a(p,l,h,y,m,S,d)}function a(l,h,g,d,p,y,m){var S=+new Date;do{if(l.bitLength()>h&&(l=f(h,g)),l.isProbablePrime(p))return m(null,l);l.dAddOffset(r[d++%8],0)}while(y<0||+new Date-S<y);yr.util.setImmediate(function(){a(l,h,g,d,p,y,m)})}function c(l,h,g,d){if(typeof Worker>"u")return s(l,h,g,d);var p=f(l,h),y=g.workers,m=g.workLoad||100,S=m*30/8,x=g.workerScript||"forge/prime.worker.js";if(y===-1)return yr.util.estimateCores(function(B,E){B&&(E=2),y=E-1,I()});I();function I(){y=Math.max(1,y);for(var B=[],E=0;E<y;++E)B[E]=new Worker(x);for(var L=y,E=0;E<y;++E)B[E].addEventListener("message",N);var _=!1;function N(M){if(!_){--L;var K=M.data;if(K.found){for(var F=0;F<B.length;++F)B[F].terminate();return _=!0,d(null,new e(K.prime,16))}p.bitLength()>l&&(p=f(l,h));var H=p.toString(16);M.target.postMessage({hex:H,workLoad:m}),p.dAddOffset(S,0)}}}}function f(l,h){var g=new e(l,h),d=l-1;return g.testBit(d)||g.bitwiseTo(e.ONE.shiftLeft(d),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var ji=J((av,Bf)=>{var W=gt();qn();Zi();Ui();gf();mf();Hn();Dt();typeof st>"u"&&(st=W.jsbn.BigInteger);var st,Rs=W.util.isNodejs?Hi():null,w=W.asn1,le=W.util;W.pki=W.pki||{};Bf.exports=W.pki.rsa=W.rsa=W.rsa||{};var Q=W.pki,A1=[6,4,2,4,2,4,6,2],C1={name:"PrivateKeyInfo",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:w.Class.UNIVERSAL,type:w.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:w.Class.UNIVERSAL,type:w.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},I1={name:"RSAPrivateKey",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},T1={name:"RSAPublicKey",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},_1=W.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:w.Class.UNIVERSAL,type:w.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:w.Class.UNIVERSAL,type:w.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},L1={name:"DigestInfo",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:w.Class.UNIVERSAL,type:w.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:w.Class.UNIVERSAL,type:w.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:w.Class.UNIVERSAL,type:w.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},R1=function(t){var e;if(t.algorithm in Q.oids)e=Q.oids[t.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=t.algorithm,r}var n=w.oidToDer(e).getBytes(),i=w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[]),o=w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[]);o.value.push(w.create(w.Class.UNIVERSAL,w.Type.OID,!1,n)),o.value.push(w.create(w.Class.UNIVERSAL,w.Type.NULL,!1,""));var s=w.create(w.Class.UNIVERSAL,w.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(o),i.value.push(s),w.toDer(i).getBytes()},Ef=function(t,e,r){if(r)return t.modPow(e.e,e.n);if(!e.p||!e.q)return t.modPow(e.d,e.n);e.dP||(e.dP=e.d.mod(e.p.subtract(st.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(st.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new st(W.util.bytesToHex(W.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(st.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),o=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(o)<0;)i=i.add(e.p);var s=i.subtract(o).multiply(e.qInv).mod(e.p).multiply(e.q).add(o);return s=s.multiply(n.modInverse(e.n)).mod(e.n),s};Q.rsa.encrypt=function(t,e,r){var n=r,i,o=Math.ceil(e.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=Sf(t,e,r)):(i=W.util.createBuffer(),i.putBytes(t));for(var s=new st(i.toHex(),16),a=Ef(s,e,n),c=a.toString(16),f=W.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8);if(t.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=t.length,o.expected=i,o}var s=new st(W.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Ef(s,e,r),c=a.toString(16),f=W.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),n!==!1?Qi(f.getBytes(),e,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(t,e,r){typeof t=="string"&&(t=parseInt(t,10)),t=t||2048,r=r||{};var n=r.prng||W.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:t,rng:i,eInt:e||65537,e:new st(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};Q.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new st(null);r.fromInt(30);for(var n=0,i=function(l,h){return l|h},o=+new Date,s,a=0;t.keys===null&&(e<=0||a<e);){if(t.state===0){var c=t.p===null?t.pBits:t.qBits,f=c-1;t.pqState===0?(t.num=new st(c,t.rng),t.num.testBit(f)||t.num.bitwiseTo(st.ONE.shiftLeft(f),i,t.num),t.num.dAddOffset(31-t.num.mod(r).byteValue(),0),n=0,++t.pqState):t.pqState===1?t.num.bitLength()>c?t.pqState=0:t.num.isProbablePrime(D1(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(A1[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(st.ONE).gcd(t.e).compareTo(st.ONE)===0?3:0:t.pqState===3&&(t.pqState=0,t.p===null?t.p=t.num:t.q=t.num,t.p!==null&&t.q!==null&&++t.state,t.num=null)}else if(t.state===1)t.p.compareTo(t.q)<0&&(t.num=t.p,t.p=t.q,t.q=t.num),++t.state;else if(t.state===2)t.p1=t.p.subtract(st.ONE),t.q1=t.q.subtract(st.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(st.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var u=t.e.modInverse(t.phi);t.keys={privateKey:Q.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:Q.rsa.setPublicKey(t.n,t.e)}}s=+new Date,a+=s-o,o=s}return t.keys!==null};Q.rsa.generateKeyPair=function(t,e,r,n){if(arguments.length===1?typeof t=="object"?(r=t,t=void 0):typeof t=="function"&&(n=t,t=void 0):arguments.length===2?typeof t=="number"?typeof e=="function"?(n=e,e=void 0):typeof e!="number"&&(r=e,e=void 0):(r=t,n=e,t=void 0,e=void 0):arguments.length===3&&(typeof e=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=e,e=void 0)),r=r||{},t===void 0&&(t=r.bits||2048),e===void 0&&(e=r.e||65537),!W.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(xf("generateKeyPair"))return Rs.generateKeyPair("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,f){if(a)return n(a);n(null,{privateKey:Q.privateKeyFromPem(f),publicKey:Q.publicKeyFromPem(c)})});if(bf("generateKey")&&bf("exportKey"))return le.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:wf(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return le.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(w.fromDer(W.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(vf("generateKey")&&vf("exportKey")){var i=le.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:wf(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=le.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,h=Q.privateKeyFromAsn1(w.fromDer(W.util.createBuffer(l)));n(null,{privateKey:h,publicKey:Q.setRsaPublicKey(h.n,h.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(xf("generateKeyPairSync")){var o=Rs.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:Q.privateKeyFromPem(o.privateKey),publicKey:Q.publicKeyFromPem(o.publicKey)}}}var s=Q.rsa.createKeyPairGenerationState(t,e,r);if(!n)return Q.rsa.stepKeyPairGenerationState(s,0),s.keys;k1(s,r,n)};Q.setRsaPublicKey=Q.rsa.setPublicKey=function(t,e){var r={n:t,e};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,f){return Sf(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return W.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return Q.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,f){f=Qi(f,r,!0);var u=w.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!w.validate(u,L1,l,h)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=h,g}var d=w.derToOid(l.algorithmIdentifier);if(!(d===W.oids.md2||d===W.oids.md5||d===W.oids.sha1||d===W.oids.sha224||d===W.oids.sha256||d===W.oids.sha384||d===W.oids.sha512||d===W.oids["sha512-224"]||d===W.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=d,g}if((d===W.oids.md2||d===W.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=Qi(f,r,!0),c===f}});var a=Q.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};Q.setRsaPrivateKey=Q.rsa.setPrivateKey=function(t,e,r,n,i,o,s,a){var c={n:t,e,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var h=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:Qi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,d){return W.pkcs1.decode_rsa_oaep(d,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(h,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:R1},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var h=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(h,c,l)},c};Q.wrapRsaPrivateKey=function(t){return w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,w.integerToDer(0).getBytes()),w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.OID,!1,w.oidToDer(Q.oids.rsaEncryption).getBytes()),w.create(w.Class.UNIVERSAL,w.Type.NULL,!1,"")]),w.create(w.Class.UNIVERSAL,w.Type.OCTETSTRING,!1,w.toDer(t).getBytes())])};Q.privateKeyFromAsn1=function(t){var e={},r=[];if(w.validate(t,C1,e,r)&&(t=w.fromDer(W.util.createBuffer(e.privateKey))),e={},r=[],!w.validate(t,I1,e,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=W.util.createBuffer(e.privateKeyModulus).toHex(),o=W.util.createBuffer(e.privateKeyPublicExponent).toHex(),s=W.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=W.util.createBuffer(e.privateKeyPrime1).toHex(),c=W.util.createBuffer(e.privateKeyPrime2).toHex(),f=W.util.createBuffer(e.privateKeyExponent1).toHex(),u=W.util.createBuffer(e.privateKeyExponent2).toHex(),l=W.util.createBuffer(e.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new st(i,16),new st(o,16),new st(s,16),new st(a,16),new st(c,16),new st(f,16),new st(u,16),new st(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(t){return w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,w.integerToDer(0).getBytes()),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.n)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.e)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.d)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.p)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.q)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.dP)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.dQ)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.qInv))])};Q.publicKeyFromAsn1=function(t){var e={},r=[];if(w.validate(t,_1,e,r)){var n=w.derToOid(e.publicKeyOid);if(n!==Q.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}t=e.rsaPublicKey}if(r=[],!w.validate(t,T1,e,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=W.util.createBuffer(e.publicKeyModulus).toHex(),s=W.util.createBuffer(e.publicKeyExponent).toHex();return Q.setRsaPublicKey(new st(o,16),new st(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(t){return w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.OID,!1,w.oidToDer(Q.oids.rsaEncryption).getBytes()),w.create(w.Class.UNIVERSAL,w.Type.NULL,!1,"")]),w.create(w.Class.UNIVERSAL,w.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(t)])])};Q.publicKeyToRSAPublicKey=function(t){return w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.n)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.e))])};function Sf(t,e,r){var n=W.util.createBuffer(),i=Math.ceil(e.n.bitLength()/8);if(t.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=t.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-t.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=W.random.getBytes(s),c=0;c<s;++c)a=u.charCodeAt(c),a===0?++f:n.putByte(a);s=f}return n.putByte(0),n.putBytes(t),n}function Qi(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8),o=W.util.createBuffer(t),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function k1(t,e,r){typeof e=="function"&&(r=e,e={}),e=e||{};var n={algorithm:{name:e.algorithm||"PRIMEINC",options:{workers:e.workers||2,workLoad:e.workLoad||100,workerScript:e.workerScript}}};"prng"in e&&(n.prng=e.prng),i();function i(){o(t.pBits,function(a,c){if(a)return r(a);if(t.p=c,t.q!==null)return s(a,t.q);o(t.qBits,s)})}function o(a,c){W.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(t.q=c,t.p.compareTo(t.q)<0){var f=t.p;t.p=t.q,t.q=f}if(t.p.subtract(st.ONE).gcd(t.e).compareTo(st.ONE)!==0){t.p=null,i();return}if(t.q.subtract(st.ONE).gcd(t.e).compareTo(st.ONE)!==0){t.q=null,o(t.qBits,s);return}if(t.p1=t.p.subtract(st.ONE),t.q1=t.q.subtract(st.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(st.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,o(t.qBits,s);return}var u=t.e.modInverse(t.phi);t.keys={privateKey:Q.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:Q.rsa.setPublicKey(t.n,t.e)},r(null,t.keys)}}function Pe(t){var e=t.toString(16);e[0]>="8"&&(e="00"+e);var r=W.util.hexToBytes(e);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function D1(t){return t<=100?27:t<=150?18:t<=200?15:t<=250?12:t<=300?9:t<=350?8:t<=400?7:t<=500?6:t<=600?5:t<=800?4:t<=1250?3:2}function xf(t){return W.util.isNodejs&&typeof Rs[t]=="function"}function bf(t){return typeof le.globalScope<"u"&&typeof le.globalScope.crypto=="object"&&typeof le.globalScope.crypto.subtle=="object"&&typeof le.globalScope.crypto.subtle[t]=="function"}function vf(t){return typeof le.globalScope<"u"&&typeof le.globalScope.msCrypto=="object"&&typeof le.globalScope.msCrypto.subtle=="object"&&typeof le.globalScope.msCrypto.subtle[t]=="function"}function wf(t){for(var e=W.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var Lf=J((cv,_f)=>{var z=gt();Es();qn();Dc();_r();Ui();Oc();Vc();Hn();Jc();ji();Dt();typeof Af>"u"&&(Af=z.jsbn.BigInteger);var Af,C=z.asn1,et=z.pki=z.pki||{};_f.exports=et.pbe=z.pbe=z.pbe||{};var kr=et.oids,P1={name:"EncryptedPrivateKeyInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},N1={name:"PBES2Algorithms",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},U1={name:"pkcs-12PbeParams",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"iterations"}]};et.encryptPrivateKeyInfo=function(t,e,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=z.random.getBytesSync(r.saltSize),i=r.count,o=C.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=kr["aes128-CBC"],l=z.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=kr["aes192-CBC"],l=z.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=kr["aes256-CBC"],l=z.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=kr.desCBC,l=z.des.createEncryptionCipher;break;default:var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),d=Tf(g),p=z.pkcs5.pbkdf2(e,n,i,s,d),y=z.random.getBytesSync(f),m=l(p);m.start(y),m.update(C.toDer(t)),m.finish(),c=m.output.getBytes();var S=K1(n,o,s,g);a=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(kr.pkcs5PBES2).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(kr.pkcs5PBKDF2).getBytes()),S]),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(u).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){s=24;var x=new z.util.ByteBuffer(n),p=et.pbe.generatePkcs12Key(e,x,1,i,s),y=et.pbe.generatePkcs12Key(e,x,2,i,s),m=z.des.createEncryptionCipher(p);m.start(y),m.update(C.toDer(t)),m.finish(),c=m.output.getBytes(),a=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(kr["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,n),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,o.getBytes())])])}else{var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var I=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[a,C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,c)]);return I};et.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!C.validate(t,P1,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=C.derToOid(n.encryptionOid),a=et.pbe.getCipher(s,n.encryptionParams,e),c=z.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=C.fromDer(a.output)),r};et.encryptedPrivateKeyToPem=function(t,e){var r={type:"ENCRYPTED PRIVATE KEY",body:C.toDer(t).getBytes()};return z.pem.encode(r,{maxline:e})};et.encryptedPrivateKeyFromPem=function(t){var e=z.pem.decode(t)[0];if(e.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=e.type,r}if(e.procType&&e.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return C.fromDer(e.body)};et.encryptRsaPrivateKey=function(t,e,r){if(r=r||{},!r.legacy){var n=et.wrapRsaPrivateKey(et.privateKeyToAsn1(t));return n=et.encryptPrivateKeyInfo(n,e,r),et.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=z.pbe.opensslDeriveBytes(e,o.substr(0,8),s),u=a(f);u.start(o),u.update(C.toDer(et.privateKeyToAsn1(t))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:z.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return z.pem.encode(l)};et.decryptRsaPrivateKey=function(t,e){var r=null,n=z.pem.decode(t)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=z.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=z.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=z.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=z.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=z.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return z.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return z.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return z.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=z.util.hexToBytes(n.dekInfo.parameters),c=z.pbe.opensslDeriveBytes(e,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(z.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=et.decryptPrivateKeyInfo(C.fromDer(r),e):r=C.fromDer(r),r!==null&&(r=et.privateKeyFromAsn1(r)),r};et.pbe.generatePkcs12Key=function(t,e,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in z.md))throw new Error('"sha1" hash algorithm unavailable.');o=z.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new z.util.ByteBuffer,l=new z.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)l.putInt16(t.charCodeAt(a));l.putInt16(0)}var h=l.length(),g=e.length(),d=new z.util.ByteBuffer;d.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new z.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(e.at(a%g));var m=f*Math.ceil(h/f),S=new z.util.ByteBuffer;for(a=0;a<m;a++)S.putByte(l.at(a%h));var x=y;x.putBuffer(S);for(var I=Math.ceil(i/c),B=1;B<=I;B++){var E=new z.util.ByteBuffer;E.putBytes(d.bytes()),E.putBytes(x.bytes());for(var L=0;L<n;L++)o.start(),o.update(E.getBytes()),E=o.digest();var _=new z.util.ByteBuffer;for(a=0;a<f;a++)_.putByte(E.at(a%c));var N=Math.ceil(g/f)+Math.ceil(h/f),M=new z.util.ByteBuffer;for(s=0;s<N;s++){var K=new z.util.ByteBuffer(x.getBytes(f)),F=511;for(a=_.length()-1;a>=0;a--)F=F>>8,F+=_.at(a)+K.at(a),K.setAt(a,F&255);M.putBuffer(K)}x=M,u.putBuffer(E)}return u.truncate(u.length()-i),u};et.pbe.getCipher=function(t,e,r){switch(t){case et.oids.pkcs5PBES2:return et.pbe.getCipherForPBES2(t,e,r);case et.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case et.oids["pbewithSHAAnd40BitRC2-CBC"]:return et.pbe.getCipherForPKCS12PBE(t,e,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=t,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};et.pbe.getCipherForPBES2=function(t,e,r){var n={},i=[];if(!C.validate(e,N1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(t=C.derToOid(n.kdfOid),t!==et.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=t,o.supportedOids=["pkcs5PBKDF2"],o}if(t=C.derToOid(n.encOid),t!==et.oids["aes128-CBC"]&&t!==et.oids["aes192-CBC"]&&t!==et.oids["aes256-CBC"]&&t!==et.oids["des-EDE3-CBC"]&&t!==et.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=t,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=z.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(et.oids[t]){case"aes128-CBC":c=16,f=z.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=z.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=z.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=z.des.createDecryptionCipher;break;case"desCBC":c=8,f=z.des.createDecryptionCipher;break}var u=If(n.prfOid),l=z.pkcs5.pbkdf2(r,s,a,c,u),h=n.encIv,g=f(l);return g.start(h),g};et.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!C.validate(e,U1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=z.util.createBuffer(n.salt),a=z.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(t){case et.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=z.des.startDecrypting;break;case et.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var m=z.rc2.createDecryptionCipher(p,40);return m.start(y,null),m};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=t,o}var l=If(n.prfOid),h=et.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=et.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(h,g)};et.pbe.opensslDeriveBytes=function(t,e,r,n){if(typeof n>"u"||n===null){if(!("md5"in z.md))throw new Error('"md5" hash algorithm unavailable.');n=z.md.md5.create()}e===null&&(e="");for(var i=[Cf(n,t+e)],o=16,s=1;o<r;++s,o+=16)i.push(Cf(n,i[s-1]+t+e));return i.join("").substr(0,r)};function Cf(t,e){return t.start().update(e).digest().getBytes()}function If(t){var e;if(!t)e="hmacWithSHA1";else if(e=et.oids[C.derToOid(t)],!e){var r=new Error("Unsupported PRF OID.");throw r.oid=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return Tf(e)}function Tf(t){var e=z.md;switch(t){case"hmacWithSHA224":e=z.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":t=t.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!e||!(t in e))throw new Error("Unknown hash algorithm: "+t);return e[t].create()}function K1(t,e,r,n){var i=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,t),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,e.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,z.util.hexToBytes(r.toString(16))),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(et.oids[n]).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,"")])),i}});var nu=J((nw,ru)=>{"use strict";ru.exports=Hg;function Hg(t,e){for(var r=new Array(arguments.length-1),n=0,i=2,o=!0;i<arguments.length;)r[n++]=arguments[i++];return new Promise(function(a,c){r[n]=function(u){if(o)if(o=!1,u)c(u);else{for(var l=new Array(arguments.length-1),h=0;h<l.length;)l[h++]=arguments[h];a.apply(null,l)}};try{t.apply(e||null,r)}catch(f){o&&(o=!1,c(f))}})}});var au=J(su=>{"use strict";var ro=su;ro.length=function(e){var r=e.length;if(!r)return 0;for(var n=0;--r%4>1&&e.charAt(r)==="=";)++n;return Math.ceil(e.length*3)/4-n};var pn=new Array(64),ou=new Array(123);for(Be=0;Be<64;)ou[pn[Be]=Be<26?Be+65:Be<52?Be+71:Be<62?Be-4:Be-59|43]=Be++;var Be;ro.encode=function(e,r,n){for(var i=null,o=[],s=0,a=0,c;r<n;){var f=e[r++];switch(a){case 0:o[s++]=pn[f>>2],c=(f&3)<<4,a=1;break;case 1:o[s++]=pn[c|f>>4],c=(f&15)<<2,a=2;break;case 2:o[s++]=pn[c|f>>6],o[s++]=pn[f&63],a=0;break}s>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,o)),s=0)}return a&&(o[s++]=pn[c],o[s++]=61,a===1&&(o[s++]=61)),i?(s&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))};var iu="invalid encoding";ro.decode=function(e,r,n){for(var i=n,o=0,s,a=0;a<e.length;){var c=e.charCodeAt(a++);if(c===61&&o>1)break;if((c=ou[c])===void 0)throw Error(iu);switch(o){case 0:s=c,o=1;break;case 1:r[n++]=s<<2|(c&48)>>4,s=c,o=2;break;case 2:r[n++]=(s&15)<<4|(c&60)>>2,s=c,o=3;break;case 3:r[n++]=(s&3)<<6|c,o=0;break}}if(o===1)throw Error(iu);return n-i};ro.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}});var fu=J((ow,cu)=>{"use strict";cu.exports=no;function no(){this._listeners={}}no.prototype.on=function(e,r,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:r,ctx:n||this}),this};no.prototype.off=function(e,r){if(e===void 0)this._listeners={};else if(r===void 0)this._listeners[e]=[];else for(var n=this._listeners[e],i=0;i<n.length;)n[i].fn===r?n.splice(i,1):++i;return this};no.prototype.emit=function(e){var r=this._listeners[e];if(r){for(var n=[],i=1;i<arguments.length;)n.push(arguments[i++]);for(i=0;i<r.length;)r[i].fn.apply(r[i++].ctx,n)}return this}});var gu=J((sw,yu)=>{"use strict";yu.exports=uu(uu);function uu(t){return typeof Float32Array<"u"?function(){var e=new Float32Array([-0]),r=new Uint8Array(e.buffer),n=r[3]===128;function i(c,f,u){e[0]=c,f[u]=r[0],f[u+1]=r[1],f[u+2]=r[2],f[u+3]=r[3]}function o(c,f,u){e[0]=c,f[u]=r[3],f[u+1]=r[2],f[u+2]=r[1],f[u+3]=r[0]}t.writeFloatLE=n?i:o,t.writeFloatBE=n?o:i;function s(c,f){return r[0]=c[f],r[1]=c[f+1],r[2]=c[f+2],r[3]=c[f+3],e[0]}function a(c,f){return r[3]=c[f],r[2]=c[f+1],r[1]=c[f+2],r[0]=c[f+3],e[0]}t.readFloatLE=n?s:a,t.readFloatBE=n?a:s}():function(){function e(n,i,o,s){var a=i<0?1:0;if(a&&(i=-i),i===0)n(1/i>0?0:2147483648,o,s);else if(isNaN(i))n(2143289344,o,s);else if(i>34028234663852886e22)n((a<<31|2139095040)>>>0,o,s);else if(i<11754943508222875e-54)n((a<<31|Math.round(i/1401298464324817e-60))>>>0,o,s);else{var c=Math.floor(Math.log(i)/Math.LN2),f=Math.round(i*Math.pow(2,-c)*8388608)&8388607;n((a<<31|c+127<<23|f)>>>0,o,s)}}t.writeFloatLE=e.bind(null,lu),t.writeFloatBE=e.bind(null,hu);function r(n,i,o){var s=n(i,o),a=(s>>31)*2+1,c=s>>>23&255,f=s&8388607;return c===255?f?NaN:a*(1/0):c===0?a*1401298464324817e-60*f:a*Math.pow(2,c-150)*(f+8388608)}t.readFloatLE=r.bind(null,du),t.readFloatBE=r.bind(null,pu)}(),typeof Float64Array<"u"?function(){var e=new Float64Array([-0]),r=new Uint8Array(e.buffer),n=r[7]===128;function i(c,f,u){e[0]=c,f[u]=r[0],f[u+1]=r[1],f[u+2]=r[2],f[u+3]=r[3],f[u+4]=r[4],f[u+5]=r[5],f[u+6]=r[6],f[u+7]=r[7]}function o(c,f,u){e[0]=c,f[u]=r[7],f[u+1]=r[6],f[u+2]=r[5],f[u+3]=r[4],f[u+4]=r[3],f[u+5]=r[2],f[u+6]=r[1],f[u+7]=r[0]}t.writeDoubleLE=n?i:o,t.writeDoubleBE=n?o:i;function s(c,f){return r[0]=c[f],r[1]=c[f+1],r[2]=c[f+2],r[3]=c[f+3],r[4]=c[f+4],r[5]=c[f+5],r[6]=c[f+6],r[7]=c[f+7],e[0]}function a(c,f){return r[7]=c[f],r[6]=c[f+1],r[5]=c[f+2],r[4]=c[f+3],r[3]=c[f+4],r[2]=c[f+5],r[1]=c[f+6],r[0]=c[f+7],e[0]}t.readDoubleLE=n?s:a,t.readDoubleBE=n?a:s}():function(){function e(n,i,o,s,a,c){var f=s<0?1:0;if(f&&(s=-s),s===0)n(0,a,c+i),n(1/s>0?0:2147483648,a,c+o);else if(isNaN(s))n(0,a,c+i),n(2146959360,a,c+o);else if(s>17976931348623157e292)n(0,a,c+i),n((f<<31|2146435072)>>>0,a,c+o);else{var u;if(s<22250738585072014e-324)u=s/5e-324,n(u>>>0,a,c+i),n((f<<31|u/4294967296)>>>0,a,c+o);else{var l=Math.floor(Math.log(s)/Math.LN2);l===1024&&(l=1023),u=s*Math.pow(2,-l),n(u*4503599627370496>>>0,a,c+i),n((f<<31|l+1023<<20|u*1048576&1048575)>>>0,a,c+o)}}}t.writeDoubleLE=e.bind(null,lu,0,4),t.writeDoubleBE=e.bind(null,hu,4,0);function r(n,i,o,s,a){var c=n(s,a+i),f=n(s,a+o),u=(f>>31)*2+1,l=f>>>20&2047,h=4294967296*(f&1048575)+c;return l===2047?h?NaN:u*(1/0):l===0?u*5e-324*h:u*Math.pow(2,l-1075)*(h+4503599627370496)}t.readDoubleLE=r.bind(null,du,0,4),t.readDoubleBE=r.bind(null,pu,4,0)}(),t}function lu(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}function hu(t,e,r){e[r]=t>>>24,e[r+1]=t>>>16&255,e[r+2]=t>>>8&255,e[r+3]=t&255}function du(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16|t[e+3]<<24)>>>0}function pu(t,e){return(t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3])>>>0}});var mu=J((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(t){}return null}});var bu=J(xu=>{"use strict";var na=xu;na.length=function(e){for(var r=0,n=0,i=0;i<e.length;++i)n=e.charCodeAt(i),n<128?r+=1:n<2048?r+=2:(n&64512)===55296&&(e.charCodeAt(i+1)&64512)===56320?(++i,r+=4):r+=3;return r};na.read=function(e,r,n){var i=n-r;if(i<1)return"";for(var o=null,s=[],a=0,c;r<n;)c=e[r++],c<128?s[a++]=c:c>191&&c<224?s[a++]=(c&31)<<6|e[r++]&63:c>239&&c<365?(c=((c&7)<<18|(e[r++]&63)<<12|(e[r++]&63)<<6|e[r++]&63)-65536,s[a++]=55296+(c>>10),s[a++]=56320+(c&1023)):s[a++]=(c&15)<<12|(e[r++]&63)<<6|e[r++]&63,a>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,s)),a=0);return o?(a&&o.push(String.fromCharCode.apply(String,s.slice(0,a))),o.join("")):String.fromCharCode.apply(String,s.slice(0,a))};na.write=function(e,r,n){for(var i=n,o,s,a=0;a<e.length;++a)o=e.charCodeAt(a),o<128?r[n++]=o:o<2048?(r[n++]=o>>6|192,r[n++]=o&63|128):(o&64512)===55296&&((s=e.charCodeAt(a+1))&64512)===56320?(o=65536+((o&1023)<<10)+(s&1023),++a,r[n++]=o>>18|240,r[n++]=o>>12&63|128,r[n++]=o>>6&63|128,r[n++]=o&63|128):(r[n++]=o>>12|224,r[n++]=o>>6&63|128,r[n++]=o&63|128);return n-i}});var wu=J((cw,vu)=>{"use strict";vu.exports=zg;function zg(t,e,r){var n=r||8192,i=n>>>1,o=null,s=n;return function(c){if(c<1||c>i)return t(c);s+c>n&&(o=t(n),s=0);var f=e.call(o,s,s+=c);return s&7&&(s=(s|7)+1),f}}});var Su=J((fw,Eu)=>{"use strict";Eu.exports=Vt;var Yn=Nr();function Vt(t,e){this.lo=t>>>0,this.hi=e>>>0}var Pr=Vt.zero=new Vt(0,0);Pr.toNumber=function(){return 0};Pr.zzEncode=Pr.zzDecode=function(){return this};Pr.length=function(){return 1};var Gg=Vt.zeroHash="\0\0\0\0\0\0\0\0";Vt.fromNumber=function(e){if(e===0)return Pr;var r=e<0;r&&(e=-e);var n=e>>>0,i=(e-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new Vt(n,i)};Vt.from=function(e){if(typeof e=="number")return Vt.fromNumber(e);if(Yn.isString(e))if(Yn.Long)e=Yn.Long.fromString(e);else return Vt.fromNumber(parseInt(e,10));return e.low||e.high?new Vt(e.low>>>0,e.high>>>0):Pr};Vt.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var r=~this.lo+1>>>0,n=~this.hi>>>0;return r||(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296};Vt.prototype.toLong=function(e){return Yn.Long?new Yn.Long(this.lo|0,this.hi|0,!!e):{low:this.lo|0,high:this.hi|0,unsigned:!!e}};var br=String.prototype.charCodeAt;Vt.fromHash=function(e){return e===Gg?Pr:new Vt((br.call(e,0)|br.call(e,1)<<8|br.call(e,2)<<16|br.call(e,3)<<24)>>>0,(br.call(e,4)|br.call(e,5)<<8|br.call(e,6)<<16|br.call(e,7)<<24)>>>0)};Vt.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)};Vt.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this};Vt.prototype.zzDecode=function(){var e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this};Vt.prototype.length=function(){var e=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?e<16384?e<128?1:2:e<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}});var Nr=J(ia=>{"use strict";var G=ia;G.asPromise=nu();G.base64=au();G.EventEmitter=fu();G.float=gu();G.inquire=mu();G.utf8=bu();G.pool=wu();G.LongBits=Su();G.isNode=!!(typeof globalThis<"u"&&globalThis&&globalThis.process&&globalThis.process.versions&&globalThis.process.versions.node);G.global=G.isNode&&globalThis||typeof window<"u"&&window||typeof self<"u"&&self||ia;G.emptyArray=Object.freeze?Object.freeze([]):[];G.emptyObject=Object.freeze?Object.freeze({}):{};G.isInteger=Number.isInteger||function(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e};G.isString=function(e){return typeof e=="string"||e instanceof String};G.isObject=function(e){return e&&typeof e=="object"};G.isset=G.isSet=function(e,r){var n=e[r];return n!=null&&e.hasOwnProperty(r)?typeof n!="object"||(Array.isArray(n)?n.length:Object.keys(n).length)>0:!1};G.Buffer=function(){try{var t=G.inquire("buffer").Buffer;return t.prototype.utf8Write?t:null}catch{return null}}();G._Buffer_from=null;G._Buffer_allocUnsafe=null;G.newBuffer=function(e){return typeof e=="number"?G.Buffer?G._Buffer_allocUnsafe(e):new G.Array(e):G.Buffer?G._Buffer_from(e):typeof Uint8Array>"u"?e:new Uint8Array(e)};G.Array=typeof Uint8Array<"u"?Uint8Array:Array;G.Long=G.global.dcodeIO&&G.global.dcodeIO.Long||G.global.Long||G.inquire("long");G.key2Re=/^true|false|0|1$/;G.key32Re=/^-?(?:0|[1-9][0-9]*)$/;G.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;G.longToHash=function(e){return e?G.LongBits.from(e).toHash():G.LongBits.zeroHash};G.longFromHash=function(e,r){var n=G.LongBits.fromHash(e);return G.Long?G.Long.fromBits(n.lo,n.hi,r):n.toNumber(!!r)};function Bu(t,e,r){for(var n=Object.keys(e),i=0;i<n.length;++i)(t[n[i]]===void 0||!r)&&(t[n[i]]=e[n[i]]);return t}G.merge=Bu;G.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)};function Au(t){function e(r,n){if(!(this instanceof e))return new e(r,n);Object.defineProperty(this,"message",{get:function(){return r}}),Error.captureStackTrace?Error.captureStackTrace(this,e):Object.defineProperty(this,"stack",{value:new Error().stack||""}),n&&Bu(this,n)}return e.prototype=Object.create(Error.prototype,{constructor:{value:e,writable:!0,enumerable:!1,configurable:!0},name:{get:function(){return t},set:void 0,enumerable:!1,configurable:!0},toString:{value:function(){return this.name+": "+this.message},writable:!0,enumerable:!1,configurable:!0}}),e}G.newError=Au;G.ProtocolError=Au("ProtocolError");G.oneOfGetter=function(e){for(var r={},n=0;n<e.length;++n)r[e[n]]=1;return function(){for(var i=Object.keys(this),o=i.length-1;o>-1;--o)if(r[i[o]]===1&&this[i[o]]!==void 0&&this[i[o]]!==null)return i[o]}};G.oneOfSetter=function(e){return function(r){for(var n=0;n<e.length;++n)e[n]!==r&&delete this[e[n]]}};G.toJSONOptions={longs:String,enums:String,bytes:String,json:!0};G._configure=function(){var t=G.Buffer;if(!t){G._Buffer_from=G._Buffer_allocUnsafe=null;return}G._Buffer_from=t.from!==Uint8Array.from&&t.from||function(r,n){return new t(r,n)},G._Buffer_allocUnsafe=t.allocUnsafe||function(r){return new t(r)}}});var aa=J((lw,Lu)=>{"use strict";Lu.exports=Lt;var Ae=Nr(),sa,Tu=Ae.LongBits,Wg=Ae.utf8;function Ce(t,e){return RangeError("index out of range: "+t.pos+" + "+(e||1)+" > "+t.len)}function Lt(t){this.buf=t,this.pos=0,this.len=t.length}var Cu=typeof Uint8Array<"u"?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new Lt(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new Lt(e);throw Error("illegal buffer")},_u=function(){return Ae.Buffer?function(r){return(Lt.create=function(i){return Ae.Buffer.isBuffer(i)?new sa(i):Cu(i)})(r)}:Cu};Lt.create=_u();Lt.prototype._slice=Ae.Array.prototype.subarray||Ae.Array.prototype.slice;Lt.prototype.uint32=function(){var e=4294967295;return function(){if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,Ce(this,10);return e}}();Lt.prototype.int32=function(){return this.uint32()|0};Lt.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(e&1)|0};function oa(){var t=new Tu(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw Ce(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<e*7)>>>0,t}if(this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw Ce(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}Lt.prototype.bool=function(){return this.uint32()!==0};function io(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}Lt.prototype.fixed32=function(){if(this.pos+4>this.len)throw Ce(this,4);return io(this.buf,this.pos+=4)};Lt.prototype.sfixed32=function(){if(this.pos+4>this.len)throw Ce(this,4);return io(this.buf,this.pos+=4)|0};function Iu(){if(this.pos+8>this.len)throw Ce(this,8);return new Tu(io(this.buf,this.pos+=4),io(this.buf,this.pos+=4))}Lt.prototype.float=function(){if(this.pos+4>this.len)throw Ce(this,4);var e=Ae.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e};Lt.prototype.double=function(){if(this.pos+8>this.len)throw Ce(this,4);var e=Ae.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e};Lt.prototype.bytes=function(){var e=this.uint32(),r=this.pos,n=this.pos+e;if(n>this.len)throw Ce(this,e);if(this.pos+=e,Array.isArray(this.buf))return this.buf.slice(r,n);if(r===n){var i=Ae.Buffer;return i?i.alloc(0):new this.buf.constructor(0)}return this._slice.call(this.buf,r,n)};Lt.prototype.string=function(){var e=this.bytes();return Wg.read(e,0,e.length)};Lt.prototype.skip=function(e){if(typeof e=="number"){if(this.pos+e>this.len)throw Ce(this,e);this.pos+=e}else do if(this.pos>=this.len)throw Ce(this);while(this.buf[this.pos++]&128);return this};Lt.prototype.skipType=function(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+t+" at offset "+this.pos)}return this};Lt._configure=function(t){sa=t,Lt.create=_u(),sa._configure();var e=Ae.Long?"toLong":"toNumber";Ae.merge(Lt.prototype,{int64:function(){return oa.call(this)[e](!1)},uint64:function(){return oa.call(this)[e](!0)},sint64:function(){return oa.call(this).zzDecode()[e](!1)},fixed64:function(){return Iu.call(this)[e](!0)},sfixed64:function(){return Iu.call(this)[e](!1)}})}});var Pu=J((hw,Du)=>{"use strict";Du.exports=Ur;var ku=aa();(Ur.prototype=Object.create(ku.prototype)).constructor=Ur;var Ru=Nr();function Ur(t){ku.call(this,t)}Ur._configure=function(){Ru.Buffer&&(Ur.prototype._slice=Ru.Buffer.prototype.slice)};Ur.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))};Ur._configure()});var pa=J((dw,Ou)=>{"use strict";Ou.exports=ct;var he=Nr(),ca,oo=he.LongBits,Nu=he.base64,Uu=he.utf8;function Zn(t,e,r){this.fn=t,this.len=e,this.next=void 0,this.val=r}function ua(){}function $g(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}function ct(){this.len=0,this.head=new Zn(ua,0,0),this.tail=this.head,this.states=null}var Ku=function(){return he.Buffer?function(){return(ct.create=function(){return new ca})()}:function(){return new ct}};ct.create=Ku();ct.alloc=function(e){return new he.Array(e)};he.Array!==Array&&(ct.alloc=he.pool(ct.alloc,he.Array.prototype.subarray));ct.prototype._push=function(e,r,n){return this.tail=this.tail.next=new Zn(e,r,n),this.len+=r,this};function la(t,e,r){e[r]=t&255}function Yg(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}function ha(t,e){this.len=t,this.next=void 0,this.val=e}ha.prototype=Object.create(Zn.prototype);ha.prototype.fn=Yg;ct.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new ha((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this};ct.prototype.int32=function(e){return e<0?this._push(da,10,oo.fromNumber(e)):this.uint32(e)};ct.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)};function da(t,e,r){for(;t.hi;)e[r++]=t.lo&127|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)e[r++]=t.lo&127|128,t.lo=t.lo>>>7;e[r++]=t.lo}ct.prototype.uint64=function(e){var r=oo.from(e);return this._push(da,r.length(),r)};ct.prototype.int64=ct.prototype.uint64;ct.prototype.sint64=function(e){var r=oo.from(e).zzEncode();return this._push(da,r.length(),r)};ct.prototype.bool=function(e){return this._push(la,1,e?1:0)};function fa(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}ct.prototype.fixed32=function(e){return this._push(fa,4,e>>>0)};ct.prototype.sfixed32=ct.prototype.fixed32;ct.prototype.fixed64=function(e){var r=oo.from(e);return this._push(fa,4,r.lo)._push(fa,4,r.hi)};ct.prototype.sfixed64=ct.prototype.fixed64;ct.prototype.float=function(e){return this._push(he.float.writeFloatLE,4,e)};ct.prototype.double=function(e){return this._push(he.float.writeDoubleLE,8,e)};var Zg=he.Array.prototype.set?function(e,r,n){r.set(e,n)}:function(e,r,n){for(var i=0;i<e.length;++i)r[n+i]=e[i]};ct.prototype.bytes=function(e){var r=e.length>>>0;if(!r)return this._push(la,1,0);if(he.isString(e)){var n=ct.alloc(r=Nu.length(e));Nu.decode(e,n,0),e=n}return this.uint32(r)._push(Zg,r,e)};ct.prototype.string=function(e){var r=Uu.length(e);return r?this.uint32(r)._push(Uu.write,r,e):this._push(la,1,0)};ct.prototype.fork=function(){return this.states=new $g(this),this.head=this.tail=new Zn(ua,0,0),this.len=0,this};ct.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 Zn(ua,0,0),this.len=0),this};ct.prototype.ldelim=function(){var e=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=r,this.len+=n),this};ct.prototype.finish=function(){for(var e=this.head.next,r=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r};ct._configure=function(t){ca=t,ct.create=Ku(),ca._configure()}});var Vu=J((pw,Fu)=>{"use strict";Fu.exports=Ke;var Mu=pa();(Ke.prototype=Object.create(Mu.prototype)).constructor=Ke;var vr=Nr();function Ke(){Mu.call(this)}Ke._configure=function(){Ke.alloc=vr._Buffer_allocUnsafe,Ke.writeBytesBuffer=vr.Buffer&&vr.Buffer.prototype instanceof Uint8Array&&vr.Buffer.prototype.set.name==="set"?function(e,r,n){r.set(e,n)}:function(e,r,n){if(e.copy)e.copy(r,n,0,e.length);else for(var i=0;i<e.length;)r[n++]=e[i++]}};Ke.prototype.bytes=function(e){vr.isString(e)&&(e=vr._Buffer_from(e,"base64"));var r=e.length>>>0;return this.uint32(r),r&&this._push(Ke.writeBytesBuffer,r,e),this};function Xg(t,e,r){t.length<40?vr.utf8.write(t,e,r):e.utf8Write?e.utf8Write(t,r):e.write(t,r)}Ke.prototype.string=function(e){var r=vr.Buffer.byteLength(e);return this.uint32(r),r&&this._push(Xg,r,e),this};Ke._configure()});var Ju=J((p8,ju)=>{var Et=gt();_r();Dt();var Qn=ju.exports=Et.sha512=Et.sha512||{};Et.md.sha512=Et.md.algorithms.sha512=Qn;var Xu=Et.sha384=Et.sha512.sha384=Et.sha512.sha384||{};Xu.create=function(){return Qn.create("SHA-384")};Et.md.sha384=Et.md.algorithms.sha384=Xu;Et.sha512.sha256=Et.sha512.sha256||{create:function(){return Qn.create("SHA-512/256")}};Et.md["sha512/256"]=Et.md.algorithms["sha512/256"]=Et.sha512.sha256;Et.sha512.sha224=Et.sha512.sha224||{create:function(){return Qn.create("SHA-512/224")}};Et.md["sha512/224"]=Et.md.algorithms["sha512/224"]=Et.sha512.sha224;Qn.create=function(t){if(Qu||s2(),typeof t>"u"&&(t="SHA-512"),!(t in Vr))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=Vr[t],r=null,n=Et.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(t){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:t.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=Et.util.createBuffer(),r=new Array(e.length);for(var f=0;f<e.length;++f)r[f]=e[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=Et.util.encodeUtf8(c));var u=c.length;a.messageLength+=u,u=[u/4294967296>>>0,u>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=u[1],u[1]=u[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,u[0]=u[1]/4294967296>>>0;return n.putBytes(c),Zu(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=Et.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(Ea.substr(0,a.blockLength-u));for(var l,h,g=a.fullMessageLength[0]*8,d=0;d<a.fullMessageLength.length-1;++d)l=a.fullMessageLength[d+1]*8,h=l/4294967296>>>0,g+=h,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),d=0;d<r.length;++d)p[d]=r[d].slice(0);Zu(p,i,c);var y=Et.util.createBuffer(),m;t==="SHA-512"?m=p.length:t==="SHA-384"?m=p.length-2:m=p.length-4;for(var d=0;d<m;++d)y.putInt32(p[d][0]),(d!==m-1||t!=="SHA-512/224")&&y.putInt32(p[d][1]);return y},a};var Ea=null,Qu=!1,Sa=null,Vr=null;function s2(){Ea=String.fromCharCode(128),Ea+=Et.util.fillString(String.fromCharCode(0),128),Sa=[[1116352408,3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],Vr={},Vr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Vr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Vr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Vr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Qu=!0}function Zu(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,g,d,p,y,m,S,x,I,B,E,L,_,N,M,K,F,H,Z,A,k,T,R,v,U,O,q=r.length();q>=128;){for(A=0;A<16;++A)e[A][0]=r.getInt32()>>>0,e[A][1]=r.getInt32()>>>0;for(;A<80;++A)R=e[A-2],k=R[0],T=R[1],n=((k>>>19|T<<13)^(T>>>29|k<<3)^k>>>6)>>>0,i=((k<<13|T>>>19)^(T<<3|k>>>29)^(k<<26|T>>>6))>>>0,U=e[A-15],k=U[0],T=U[1],o=((k>>>1|T<<31)^(k>>>8|T<<24)^k>>>7)>>>0,s=((k<<31|T>>>1)^(k<<24|T>>>8)^(k<<25|T>>>7))>>>0,v=e[A-7],O=e[A-16],T=i+v[1]+s+O[1],e[A][0]=n+v[0]+o+O[0]+(T/4294967296>>>0)>>>0,e[A][1]=T>>>0;for(p=t[0][0],y=t[0][1],m=t[1][0],S=t[1][1],x=t[2][0],I=t[2][1],B=t[3][0],E=t[3][1],L=t[4][0],_=t[4][1],N=t[5][0],M=t[5][1],K=t[6][0],F=t[6][1],H=t[7][0],Z=t[7][1],A=0;A<80;++A)f=((L>>>14|_<<18)^(L>>>18|_<<14)^(_>>>9|L<<23))>>>0,u=((L<<18|_>>>14)^(L<<14|_>>>18)^(_<<23|L>>>9))>>>0,l=(K^L&(N^K))>>>0,h=(F^_&(M^F))>>>0,a=((p>>>28|y<<4)^(y>>>2|p<<30)^(y>>>7|p<<25))>>>0,c=((p<<4|y>>>28)^(y<<30|p>>>2)^(y<<25|p>>>7))>>>0,g=(p&m|x&(p^m))>>>0,d=(y&S|I&(y^S))>>>0,T=Z+u+h+Sa[A][1]+e[A][1],n=H+f+l+Sa[A][0]+e[A][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+d,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,H=K,Z=F,K=N,F=M,N=L,M=_,T=E+i,L=B+n+(T/4294967296>>>0)>>>0,_=T>>>0,B=x,E=I,x=m,I=S,m=p,S=y,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,y=T>>>0;T=t[0][1]+y,t[0][0]=t[0][0]+p+(T/4294967296>>>0)>>>0,t[0][1]=T>>>0,T=t[1][1]+S,t[1][0]=t[1][0]+m+(T/4294967296>>>0)>>>0,t[1][1]=T>>>0,T=t[2][1]+I,t[2][0]=t[2][0]+x+(T/4294967296>>>0)>>>0,t[2][1]=T>>>0,T=t[3][1]+E,t[3][0]=t[3][0]+B+(T/4294967296>>>0)>>>0,t[3][1]=T>>>0,T=t[4][1]+_,t[4][0]=t[4][0]+L+(T/4294967296>>>0)>>>0,t[4][1]=T>>>0,T=t[5][1]+M,t[5][0]=t[5][0]+N+(T/4294967296>>>0)>>>0,t[5][1]=T>>>0,T=t[6][1]+F,t[6][0]=t[6][0]+K+(T/4294967296>>>0)>>>0,t[6][1]=T>>>0,T=t[7][1]+Z,t[7][0]=t[7][0]+H+(T/4294967296>>>0)>>>0,t[7][1]=T>>>0,q-=128}}});var Rl=J((Q4,Ll)=>{var wn=1e3,En=wn*60,Sn=En*60,Gr=Sn*24,N2=Gr*7,U2=Gr*365.25;Ll.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return K2(t);if(r==="number"&&isFinite(t))return e.long?M2(t):O2(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function K2(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*U2;case"weeks":case"week":case"w":return r*N2;case"days":case"day":case"d":return r*Gr;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Sn;case"minutes":case"minute":case"mins":case"min":case"m":return r*En;case"seconds":case"second":case"secs":case"sec":case"s":return r*wn;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function O2(t){var e=Math.abs(t);return e>=Gr?Math.round(t/Gr)+"d":e>=Sn?Math.round(t/Sn)+"h":e>=En?Math.round(t/En)+"m":e>=wn?Math.round(t/wn)+"s":t+"ms"}function M2(t){var e=Math.abs(t);return e>=Gr?lo(t,e,Gr,"day"):e>=Sn?lo(t,e,Sn,"hour"):e>=En?lo(t,e,En,"minute"):e>=wn?lo(t,e,wn,"second"):t+" ms"}function lo(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var Dl=J((j4,kl)=>{function F2(t){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=Rl(),r.destroy=f,Object.keys(t).forEach(u=>{r[u]=t[u]}),r.names=[],r.skips=[],r.formatters={};function e(u){let l=0;for(let h=0;h<u.length;h++)l=(l<<5)-l+u.charCodeAt(h),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=e;function r(u){let l,h=null,g,d;function p(...y){if(!p.enabled)return;let m=p,S=Number(new Date),x=S-(l||S);m.diff=x,m.prev=l,m.curr=S,l=S,y[0]=r.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let I=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(E,L)=>{if(E==="%%")return"%";I++;let _=r.formatters[L];if(typeof _=="function"){let N=y[I];E=_.call(m,N),y.splice(I,1),I--}return E}),r.formatArgs.call(m,y),(m.log||r.log).apply(m,y)}return p.namespace=u,p.useColors=r.useColors(),p.color=r.selectColor(u),p.extend=n,p.destroy=r.destroy,Object.defineProperty(p,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(g!==r.namespaces&&(g=r.namespaces,d=r.enabled(u)),d),set:y=>{h=y}}),typeof r.init=="function"&&r.init(p),p}function n(u,l){let h=r(this.namespace+(typeof l>"u"?":":l)+u);return h.log=this.log,h}function i(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let l,h=(typeof u=="string"?u:"").split(/[\s,]+/),g=h.length;for(l=0;l<g;l++)h[l]&&(u=h[l].replace(/\*/g,".*?"),u[0]==="-"?r.skips.push(new RegExp("^"+u.slice(1)+"$")):r.names.push(new RegExp("^"+u+"$")))}function o(){let u=[...r.names.map(a),...r.skips.map(a).map(l=>"-"+l)].join(",");return r.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let l,h;for(l=0,h=r.skips.length;l<h;l++)if(r.skips[l].test(u))return!1;for(l=0,h=r.names.length;l<h;l++)if(r.names[l].test(u))return!0;return!1}function a(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}function c(u){return u instanceof Error?u.stack||u.message:u}function f(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}kl.exports=F2});var Pl=J((oe,ho)=>{oe.formatArgs=q2;oe.save=H2;oe.load=z2;oe.useColors=V2;oe.storage=G2();oe.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();oe.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function V2(){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 q2(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+ho.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),t.splice(n,0,e)}oe.log=console.debug||console.log||(()=>{});function H2(t){try{t?oe.storage.setItem("debug",t):oe.storage.removeItem("debug")}catch{}}function z2(){let t;try{t=oe.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function G2(){try{return localStorage}catch{}}ho.exports=Dl()(oe);var{formatters:W2}=ho.exports;W2.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Bm={};Ut(Bm,{webTransport:()=>Sm});function ir(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function He(t=0){return globalThis.Buffer?.alloc!=null?ir(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function ce(t=0){return globalThis.Buffer?.allocUnsafe!=null?ir(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var Lh=Math.pow(2,7),Rh=Math.pow(2,14),kh=Math.pow(2,21),Lo=Math.pow(2,28),Ro=Math.pow(2,35),ko=Math.pow(2,42),Do=Math.pow(2,49),lt=128,Zt=127;function Jt(t){if(t<Lh)return 1;if(t<Rh)return 2;if(t<kh)return 3;if(t<Lo)return 4;if(t<Ro)return 5;if(t<ko)return 6;if(t<Do)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Dh(t,e,r=0){switch(Jt(t)){case 8:e[r++]=t&255|lt,t/=128;case 7:e[r++]=t&255|lt,t/=128;case 6:e[r++]=t&255|lt,t/=128;case 5:e[r++]=t&255|lt,t/=128;case 4:e[r++]=t&255|lt,t>>>=7;case 3:e[r++]=t&255|lt,t>>>=7;case 2:e[r++]=t&255|lt,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function Ph(t,e,r=0){switch(Jt(t)){case 8:e.set(r++,t&255|lt),t/=128;case 7:e.set(r++,t&255|lt),t/=128;case 6:e.set(r++,t&255|lt),t/=128;case 5:e.set(r++,t&255|lt),t/=128;case 4:e.set(r++,t&255|lt),t>>>=7;case 3:e.set(r++,t&255|lt),t>>>=7;case 2:e.set(r++,t&255|lt),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function Nh(t,e){let r=t[e],n=0;if(n+=r&Zt,r<lt||(r=t[e+1],n+=(r&Zt)<<7,r<lt)||(r=t[e+2],n+=(r&Zt)<<14,r<lt)||(r=t[e+3],n+=(r&Zt)<<21,r<lt)||(r=t[e+4],n+=(r&Zt)*Lo,r<lt)||(r=t[e+5],n+=(r&Zt)*Ro,r<lt)||(r=t[e+6],n+=(r&Zt)*ko,r<lt)||(r=t[e+7],n+=(r&Zt)*Do,r<lt))return n;throw new RangeError("Could not decode varint")}function Uh(t,e){let r=t.get(e),n=0;if(n+=r&Zt,r<lt||(r=t.get(e+1),n+=(r&Zt)<<7,r<lt)||(r=t.get(e+2),n+=(r&Zt)<<14,r<lt)||(r=t.get(e+3),n+=(r&Zt)<<21,r<lt)||(r=t.get(e+4),n+=(r&Zt)*Lo,r<lt)||(r=t.get(e+5),n+=(r&Zt)*Ro,r<lt)||(r=t.get(e+6),n+=(r&Zt)*ko,r<lt)||(r=t.get(e+7),n+=(r&Zt)*Do,r<lt))return n;throw new RangeError("Could not decode varint")}function or(t,e,r=0){return e==null&&(e=ce(Jt(t))),e instanceof Uint8Array?Dh(t,e,r):Ph(t,e,r)}function ye(t,e=0){return t instanceof Uint8Array?Nh(t,e):Uh(t,e)}function yt(t,e){e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=ce(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return ir(r)}function It(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}var g0=Symbol.for("@achingbrain/uint8arraylist");function y0(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let i=r+n.byteLength;if(e<i)return{buf:n,index:e-r};r=i}throw new RangeError("index is out of bounds")}function ui(t){return!!t?.[g0]}var re=class t{constructor(...e){Object.defineProperty(this,g0,{value:!0}),this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let r=0;for(let n of e)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(ui(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...e){this.prependAll(e)}prependAll(e){let r=0;for(let n of e.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(ui(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(e){let r=y0(this.bufs,e);return r.buf[r.index]}set(e,r){let n=y0(this.bufs,e);n.buf[n.index]=r}write(e,r=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(r+n,e[n]);else if(ui(e))for(let n=0;n<e.length;n++)this.set(r+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,r){let{bufs:n,length:i}=this._subList(e,r);return yt(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:yt(n,i)}sublist(e,r){let{bufs:n,length:i}=this._subList(e,r),o=new t;return o.length=i,o.bufs=n,o}_subList(e,r){if(e=e??0,r=r??this.length,e<0&&(e=this.length+e),r<0&&(r=this.length+r),e<0||r>this.length)throw new RangeError("index is out of bounds");if(e===r)return{bufs:[],length:0};if(e===0&&r===this.length)return{bufs:[...this.bufs],length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let f=e>=a&&e<c,u=r>a&&r<=c;if(f&&u){if(e===a&&r===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(r-e)));break}if(f){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-e}}indexOf(e,r=0){if(!ui(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),e.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let h=f;h>=0;h--){let g=this.get(l+h);if(n[h]!==g){u=Math.max(1,h-a[g]);break}}if(u===0)return l}return-1}getInt8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(e,r){let n=ce(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,e)}getInt16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(e,r,n){let i=He(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,e)}getInt32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(e,r,n){let i=He(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,e)}getBigInt64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(e,r,n){let i=He(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,e)}getUint8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(e,r){let n=ce(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,e)}getUint16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(e,r,n){let i=He(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,e)}getUint32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(e,r,n){let i=He(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,e)}getBigUint64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(e,r,n){let i=He(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,e)}getFloat32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(e,r,n){let i=He(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,e)}getFloat64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(e,r,n){let i=He(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof t)||e.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!It(this.bufs[r],e.bufs[r]))return!1;return!0}static fromUint8Arrays(e,r){let n=new t;return n.bufs=e,r==null&&(r=e.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function li(t){return t[Symbol.asyncIterator]!=null}var hi=t=>{let e=Jt(t),r=ce(e);return or(t,r),hi.bytes=e,r};hi.bytes=0;function di(t,e){e=e??{};let r=e.lengthEncoder??hi;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return li(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}di.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??hi;return new re(r(t.byteLength),t)};var Wr=kt(b0(),1);var Oh=8,Mh=1024*1024*4,Er;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(Er||(Er={}));var Po=t=>{let e=ye(t);return Po.bytes=Jt(e),e};Po.bytes=0;function _n(t,e){let r=new re,n=Er.LENGTH,i=-1,o=e?.lengthDecoder??Po,s=e?.maxLengthLength??Oh,a=e?.maxDataLength??Mh;function*c(){for(;r.byteLength>0;){if(n===Er.LENGTH)try{if(i=o(r),i<0)throw(0,Wr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Wr.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),e?.onLength!=null&&e.onLength(i),n=Er.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Wr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===Er.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(f),yield f,n=Er.LENGTH}}}return li(t)?async function*(){for await(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,Wr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,Wr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}_n.fromReader=(t,e)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await t.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return _n(n,{...e??{},onLength:o=>{r=o}})};function $r(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var pi=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Yr=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new pi(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let r=this.head;this.head=r.next=new pi(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var No=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Zr(t={}){return Vh(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},t)}function Vh(t,e){e=e??{};let r=e.onEnd,n=new Yr,i,o,s,a=$r(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,m)=>{o=S=>{o=null,n.push(S);try{y(t(n))}catch(x){m(x)}return i}}):t(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=$r()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new Yr,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(e?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:y})},h=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new Yr,h(),{done:!0}),d=y=>(h(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:d,push:l,end:h,get readableLength(){return n.size},onEmpty:async y=>{let m=y?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let S,x;m!=null&&(S=new Promise((I,B)=>{x=()=>{B(new No)},m.addEventListener("abort",x)}));try{await Promise.race([a.promise,S])}finally{x!=null&&m!=null&&m?.removeEventListener("abort",x)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(y){return p.throw(y),r!=null&&(r(y),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(y){return p.end(y),r!=null&&(r(y),r=void 0),i},get readableLength(){return p.readableLength}},i}var yi=class extends Error{code;constructor(e,r){super(e),this.code=r}},Uo=class extends yi{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function v0(t){let e=Zr();t.sink(e).catch(o=>{e.end(o)}),t.sink=async o=>{for await(let s of o)e.push(s);e.end()};let r=t.source;t.source[Symbol.iterator]!=null?r=t.source[Symbol.iterator]():t.source[Symbol.asyncIterator]!=null&&(r=t.source[Symbol.asyncIterator]());let n=new re;return{read:async(o,s)=>{s?.signal?.throwIfAborted();let a,c=new Promise((f,u)=>{a=()=>{u(new Uo("Read aborted"))},s?.signal?.addEventListener("abort",a)});try{if(o==null){let{done:u,value:l}=await Promise.race([r.next(),c]);return u===!0?new re:l}for(;n.byteLength<o;){let{value:u,done:l}=await Promise.race([r.next(),c]);if(l===!0)throw new yi("unexpected end of input","ERR_UNEXPECTED_EOF");n.append(u)}let f=n.sublist(0,o);return n.consume(o),f}finally{a!=null&&s?.signal?.removeEventListener("abort",a)}},write:async(o,s)=>{s?.signal?.throwIfAborted(),o instanceof Uint8Array?e.push(o):e.push(o.subarray()),await e.onEmpty(s)},unwrap:()=>{let o=t.source;return t.source=async function*(){yield*n,yield*o}(),t}}}var gi=class extends Error{code;constructor(e,r){super(e),this.code=r}},w0=t=>ye(t);w0.bytes=0;function Ko(t,e){let r=v0(t);return{read:async i=>{let o=-1,s=new re,a=e?.lengthDecoder??w0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(o>-1)break;if(e?.maxLengthLength!=null&&s.byteLength>e.maxLengthLength)throw new gi("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(e?.maxDataLength!=null&&o>e.maxDataLength)throw new gi("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(di.single(i,e),o)},unwrap:()=>r.unwrap()}}function Oo(){let t=$r(),e=!1;return{sink:async r=>{if(e)throw new Error("already piped");e=!0,t.resolve(r)},source:async function*(){yield*await t.promise}()}}function E0(){let t=Oo(),e=Oo();return[{source:t.source,sink:e.sink},{source:e.source,sink:t.sink}]}function qh(t){return t[Symbol.asyncIterator]!=null}function Hh(...t){let e=[];for(let r of t)qh(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=Zr({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(t.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var S0=Hh;function B0(t,...e){if(t==null)throw new Error("Empty pipeline");if(Mo(t)){let n=t;t=()=>n.source}else if(C0(t)||A0(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&Mo(r[r.length-1])&&(r[r.length-1]=r[r.length-1].sink),r.length>2)for(let n=1;n<r.length-1;n++)Mo(r[n])&&(r[n]=Gh(r[n]));return zh(...r)}var zh=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},A0=t=>t?.[Symbol.asyncIterator]!=null,C0=t=>t?.[Symbol.iterator]!=null,Mo=t=>t==null?!1:t.sink!=null&&t.source!=null,Gh=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=Zr({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=t.source;if(A0(o))i=async function*(){yield*o,n.end()};else if(C0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return S0(n,i())}return t.source};var I0=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var Wh=t=>t instanceof Uint8Array;var ze=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),T0=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),$h=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!$h)throw new Error("Non little-endian hardware is not supported");function mi(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function xi(t){if(typeof t=="string"&&(t=mi(t)),!Wh(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}var Yh=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function _0(t,e){if(e!==void 0&&(typeof e!="object"||!Yh(e)))throw new Error("options must be object or undefined");return Object.assign(t,e)}function Sr(t,e){if(!(t instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof e=="number"&&t.length!==e)throw new Error(`Uint8Array length ${e} expected`)}function L0(t,e){if(t.length!==e.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<t.length;n++)r&&(r=t[n]===e[n]);return r}function Fo(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}function Vo(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Zh(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}function R0(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Xh(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("hash must be wrapped by utils.wrapConstructor");Vo(t.outputLen),Vo(t.blockLen)}function Qh(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function jh(t,e){R0(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Jh={number:Vo,bool:Zh,bytes:R0,hash:Xh,exists:Qh,output:jh},Xt=Jh;var Wt=(t,e)=>t[e++]&255|(t[e++]&255)<<8,qo=class{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,e=xi(e),Sr(e,32);let r=Wt(e,0),n=Wt(e,2),i=Wt(e,4),o=Wt(e,6),s=Wt(e,8),a=Wt(e,10),c=Wt(e,12),f=Wt(e,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=Wt(e,16+2*u)}process(e,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],h=s[5],g=s[6],d=s[7],p=s[8],y=s[9],m=Wt(e,r+0),S=Wt(e,r+2),x=Wt(e,r+4),I=Wt(e,r+6),B=Wt(e,r+8),E=Wt(e,r+10),L=Wt(e,r+12),_=Wt(e,r+14),N=o[0]+(m&8191),M=o[1]+((m>>>13|S<<3)&8191),K=o[2]+((S>>>10|x<<6)&8191),F=o[3]+((x>>>7|I<<9)&8191),H=o[4]+((I>>>4|B<<12)&8191),Z=o[5]+(B>>>1&8191),A=o[6]+((B>>>14|E<<2)&8191),k=o[7]+((E>>>11|L<<5)&8191),T=o[8]+((L>>>8|_<<8)&8191),R=o[9]+(_>>>5|i),v=0,U=v+N*a+M*(5*y)+K*(5*p)+F*(5*d)+H*(5*g);v=U>>>13,U&=8191,U+=Z*(5*h)+A*(5*l)+k*(5*u)+T*(5*f)+R*(5*c),v+=U>>>13,U&=8191;let O=v+N*c+M*a+K*(5*y)+F*(5*p)+H*(5*d);v=O>>>13,O&=8191,O+=Z*(5*g)+A*(5*h)+k*(5*l)+T*(5*u)+R*(5*f),v+=O>>>13,O&=8191;let q=v+N*f+M*c+K*a+F*(5*y)+H*(5*p);v=q>>>13,q&=8191,q+=Z*(5*d)+A*(5*g)+k*(5*h)+T*(5*l)+R*(5*u),v+=q>>>13,q&=8191;let $=v+N*u+M*f+K*c+F*a+H*(5*y);v=$>>>13,$&=8191,$+=Z*(5*p)+A*(5*d)+k*(5*g)+T*(5*h)+R*(5*l),v+=$>>>13,$&=8191;let Y=v+N*l+M*u+K*f+F*c+H*a;v=Y>>>13,Y&=8191,Y+=Z*(5*y)+A*(5*p)+k*(5*d)+T*(5*g)+R*(5*h),v+=Y>>>13,Y&=8191;let rt=v+N*h+M*l+K*u+F*f+H*c;v=rt>>>13,rt&=8191,rt+=Z*a+A*(5*y)+k*(5*p)+T*(5*d)+R*(5*g),v+=rt>>>13,rt&=8191;let X=v+N*g+M*h+K*l+F*u+H*f;v=X>>>13,X&=8191,X+=Z*c+A*a+k*(5*y)+T*(5*p)+R*(5*d),v+=X>>>13,X&=8191;let j=v+N*d+M*g+K*h+F*l+H*u;v=j>>>13,j&=8191,j+=Z*f+A*c+k*a+T*(5*y)+R*(5*p),v+=j>>>13,j&=8191;let mt=v+N*p+M*d+K*g+F*h+H*l;v=mt>>>13,mt&=8191,mt+=Z*u+A*f+k*c+T*a+R*(5*y),v+=mt>>>13,mt&=8191;let dt=v+N*y+M*p+K*d+F*g+H*h;v=dt>>>13,dt&=8191,dt+=Z*l+A*u+k*f+T*c+R*a,v+=dt>>>13,dt&=8191,v=(v<<2)+v|0,v=v+U|0,U=v&8191,v=v>>>13,O+=v,o[0]=U,o[1]=O,o[2]=q,o[3]=$,o[4]=Y,o[5]=rt,o[6]=X,o[7]=j,o[8]=mt,o[9]=dt}finalize(){let{h:e,pad:r}=this,n=new Uint16Array(10),i=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=i,i=e[a]>>>13,e[a]&=8191;e[0]+=i*5,i=e[0]>>>13,e[0]&=8191,e[1]+=i,i=e[1]>>>13,e[1]&=8191,e[2]+=i,n[0]=e[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=e[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)e[a]=e[a]&o|n[a];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let s=e[0]+r[0];e[0]=s&65535;for(let a=1;a<8;a++)s=(e[a]+r[a]|0)+(s>>>16)|0,e[a]=s&65535}update(e){Xt.exists(this);let{buffer:r,blockLen:n}=this;e=xi(e);let i=e.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(e,o);continue}r.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(e){Xt.exists(this),Xt.output(e,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)e[o++]=n[s]>>>0,e[o++]=n[s]>>>8;return e}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}};function td(t){let e=(n,i)=>t(i).update(xi(n)).digest(),r=t(new Uint8Array(32));return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=n=>t(n),e}var k0=td(t=>new qo(t));var ed=mi("expand 16-byte k"),rd=mi("expand 32-byte k"),nd=ze(ed),id=ze(rd),bi=t=>!(t.byteOffset%4),D0=t=>{let{core:e,rounds:r,counterRight:n,counterLen:i,allow128bitKeys:o,extendNonceFn:s,blockLen:a}=_0({rounds:20,counterRight:!1,counterLen:8,allow128bitKeys:!0,blockLen:64},t);Xt.number(i),Xt.number(r),Xt.number(a),Xt.bool(n),Xt.bool(o);let c=a/4;if(a%4!==0)throw new Error("Salsa/ChaCha: blockLen must be aligned to 4 bytes");return(f,u,l,h,g=0)=>{if(Xt.bytes(f),Xt.bytes(u),Xt.bytes(l),h||(h=new Uint8Array(l.length)),Xt.bytes(h),Xt.number(g),g<0||g>=2**32-1)throw new Error("Salsa/ChaCha: counter overflow");if(h.length<l.length)throw new Error(`Salsa/ChaCha: output (${h.length}) is shorter than data (${l.length})`);let d=[],p,y;if(f.length===32)bi(f)?p=f:(p=f.slice(),d.push(p)),y=id;else if(f.length===16&&o)p=new Uint8Array(32),p.set(f),p.set(f,16),y=nd,d.push(p);else throw new Error(`Salsa/ChaCha: invalid 32-byte key, got length=${f.length}`);if(bi(u)||(u=u.slice(),d.push(u)),s){if(u.length<=16)throw new Error("Salsa/ChaCha: extended nonce must be bigger than 16 bytes");p=s(y,p,u.subarray(0,16),new Uint8Array(32)),d.push(p),u=u.subarray(16)}let m=16-i;if(u.length!==m)throw new Error(`Salsa/ChaCha: nonce must be ${m} or 16 bytes`);if(m!==12){let N=new Uint8Array(12);N.set(u,n?0:12-u.length),d.push(u=N)}let S=new Uint8Array(a),x=ze(S),I=ze(p),B=ze(u),E=bi(l)&&ze(l),L=bi(h)&&ze(h);d.push(x);let _=l.length;for(let N=0,M=g;N<_;M++){if(e(y,I,B,x,M,r),M>=2**32-1)throw new Error("Salsa/ChaCha: counter overflow");let K=Math.min(a,_-N);if(K===a&&L&&E){let F=N/4;if(N%4!==0)throw new Error("Salsa/ChaCha: invalid block position");for(let H=0;H<c;H++)L[F+H]=E[F+H]^x[H];N+=a;continue}for(let F=0;F<K;F++)h[N+F]=l[N+F]^S[F];N+=K}for(let N=0;N<d.length;N++)d[N].fill(0);return h}};var ft=(t,e)=>t<<e|t>>>32-e;function od(t,e,r,n,i,o=20){let s=t[0],a=t[1],c=t[2],f=t[3],u=e[0],l=e[1],h=e[2],g=e[3],d=e[4],p=e[5],y=e[6],m=e[7],S=i,x=r[0],I=r[1],B=r[2],E=s,L=a,_=c,N=f,M=u,K=l,F=h,H=g,Z=d,A=p,k=y,T=m,R=S,v=x,U=I,O=B;for(let $=0;$<o;$+=2)E=E+M|0,R=ft(R^E,16),Z=Z+R|0,M=ft(M^Z,12),E=E+M|0,R=ft(R^E,8),Z=Z+R|0,M=ft(M^Z,7),L=L+K|0,v=ft(v^L,16),A=A+v|0,K=ft(K^A,12),L=L+K|0,v=ft(v^L,8),A=A+v|0,K=ft(K^A,7),_=_+F|0,U=ft(U^_,16),k=k+U|0,F=ft(F^k,12),_=_+F|0,U=ft(U^_,8),k=k+U|0,F=ft(F^k,7),N=N+H|0,O=ft(O^N,16),T=T+O|0,H=ft(H^T,12),N=N+H|0,O=ft(O^N,8),T=T+O|0,H=ft(H^T,7),E=E+K|0,O=ft(O^E,16),k=k+O|0,K=ft(K^k,12),E=E+K|0,O=ft(O^E,8),k=k+O|0,K=ft(K^k,7),L=L+F|0,R=ft(R^L,16),T=T+R|0,F=ft(F^T,12),L=L+F|0,R=ft(R^L,8),T=T+R|0,F=ft(F^T,7),_=_+H|0,v=ft(v^_,16),Z=Z+v|0,H=ft(H^Z,12),_=_+H|0,v=ft(v^_,8),Z=Z+v|0,H=ft(H^Z,7),N=N+M|0,U=ft(U^N,16),A=A+U|0,M=ft(M^A,12),N=N+M|0,U=ft(U^N,8),A=A+U|0,M=ft(M^A,7);let q=0;n[q++]=s+E|0,n[q++]=a+L|0,n[q++]=c+_|0,n[q++]=f+N|0,n[q++]=u+M|0,n[q++]=l+K|0,n[q++]=h+F|0,n[q++]=g+H|0,n[q++]=d+Z|0,n[q++]=p+A|0,n[q++]=y+k|0,n[q++]=m+T|0,n[q++]=S+R|0,n[q++]=x+v|0,n[q++]=I+U|0,n[q++]=B+O|0}var sd=D0({core:od,counterRight:!1,counterLen:4,allow128bitKeys:!1});var ad=new Uint8Array(16),P0=(t,e)=>{t.update(e);let r=e.length%16;r&&t.update(ad.subarray(r))},N0=(t,e,r,n,i)=>{let o=t(e,r,new Uint8Array(32)),s=k0.create(o);i&&P0(s,i),P0(s,n);let a=new Uint8Array(16),c=T0(a);Fo(c,0,BigInt(i?i.length:0),!0),Fo(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f},cd=t=>(e,r,n)=>(Sr(e,32),Sr(r),{tagLength:16,encrypt:(o,s)=>{let a=o.length,c=a+16;s?Sr(s,c):s=new Uint8Array(c),t(e,r,o,s,1);let f=N0(t,e,r,s.subarray(0,-16),n);return s.set(f,a),s},decrypt:(o,s)=>{let a=o.length,c=a-16;if(a<16)throw new Error("encrypted data must be at least 16 bytes");s?Sr(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=N0(t,e,r,f,n);if(!L0(u,l))throw new Error("invalid tag");return t(e,r,f,s,1),s}}),Ho=cd(sd);function vi(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function zo(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Ln(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");vi(t.outputLen),vi(t.blockLen)}function Xr(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function U0(t,e){zo(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var wi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var K0=t=>t instanceof Uint8Array;var Ei=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),ge=(t,e)=>t<<32-e|t>>>e,fd=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!fd)throw new Error("Non little-endian hardware is not supported");function Go(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function sr(t){if(typeof t=="string"&&(t=Go(t)),!K0(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function Si(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!K0(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var Qr=class{clone(){return this._cloneInto()}},Rx={}.toString;function Bi(t){let e=n=>t().update(sr(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Br(t=32){if(wi&&typeof wi.getRandomValues=="function")return wi.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function ud(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}var jr=class extends Qr{constructor(e,r,n,i){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Ei(this.buffer)}update(e){Xr(this);let{view:r,buffer:n,blockLen:i}=this;e=sr(e);let o=e.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=Ei(e);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Xr(this),U0(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;ud(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=Ei(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],o)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return e.length=i,e.pos=a,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var Ai=BigInt(4294967295),Wo=BigInt(32);function O0(t,e=!1){return e?{h:Number(t&Ai),l:Number(t>>Wo&Ai)}:{h:Number(t>>Wo&Ai)|0,l:Number(t&Ai)|0}}function ld(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let i=0;i<t.length;i++){let{h:o,l:s}=O0(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var hd=(t,e)=>BigInt(t>>>0)<<Wo|BigInt(e>>>0),dd=(t,e,r)=>t>>>r,pd=(t,e,r)=>t<<32-r|e>>>r,yd=(t,e,r)=>t>>>r|e<<32-r,gd=(t,e,r)=>t<<32-r|e>>>r,md=(t,e,r)=>t<<64-r|e>>>r-32,xd=(t,e,r)=>t>>>r-32|e<<64-r,bd=(t,e)=>e,vd=(t,e)=>t,wd=(t,e,r)=>t<<r|e>>>32-r,Ed=(t,e,r)=>e<<r|t>>>32-r,Sd=(t,e,r)=>e<<r-32|t>>>64-r,Bd=(t,e,r)=>t<<r-32|e>>>64-r;function Ad(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Cd=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Id=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Td=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),_d=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,Ld=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Rd=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var kd={fromBig:O0,split:ld,toBig:hd,shrSH:dd,shrSL:pd,rotrSH:yd,rotrSL:gd,rotrBH:md,rotrBL:xd,rotr32H:bd,rotr32L:vd,rotlSH:wd,rotlSL:Ed,rotlBH:Sd,rotlBL:Bd,add:Ad,add3L:Cd,add3H:Id,add4L:Td,add4H:_d,add5H:Rd,add5L:Ld},tt=kd;var[Dd,Pd]=(()=>tt.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))))(),ar=new Uint32Array(80),cr=new Uint32Array(80),$o=class extends jr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:h,Gh:g,Gl:d,Hh:p,Hl:y}=this;return[e,r,n,i,o,s,a,c,f,u,l,h,g,d,p,y]}set(e,r,n,i,o,s,a,c,f,u,l,h,g,d,p,y){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=h|0,this.Gh=g|0,this.Gl=d|0,this.Hh=p|0,this.Hl=y|0}process(e,r){for(let x=0;x<16;x++,r+=4)ar[x]=e.getUint32(r),cr[x]=e.getUint32(r+=4);for(let x=16;x<80;x++){let I=ar[x-15]|0,B=cr[x-15]|0,E=tt.rotrSH(I,B,1)^tt.rotrSH(I,B,8)^tt.shrSH(I,B,7),L=tt.rotrSL(I,B,1)^tt.rotrSL(I,B,8)^tt.shrSL(I,B,7),_=ar[x-2]|0,N=cr[x-2]|0,M=tt.rotrSH(_,N,19)^tt.rotrBH(_,N,61)^tt.shrSH(_,N,6),K=tt.rotrSL(_,N,19)^tt.rotrBL(_,N,61)^tt.shrSL(_,N,6),F=tt.add4L(L,K,cr[x-7],cr[x-16]),H=tt.add4H(F,E,M,ar[x-7],ar[x-16]);ar[x]=H|0,cr[x]=F|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:h,Fh:g,Fl:d,Gh:p,Gl:y,Hh:m,Hl:S}=this;for(let x=0;x<80;x++){let I=tt.rotrSH(l,h,14)^tt.rotrSH(l,h,18)^tt.rotrBH(l,h,41),B=tt.rotrSL(l,h,14)^tt.rotrSL(l,h,18)^tt.rotrBL(l,h,41),E=l&g^~l&p,L=h&d^~h&y,_=tt.add5L(S,B,L,Pd[x],cr[x]),N=tt.add5H(_,m,I,E,Dd[x],ar[x]),M=_|0,K=tt.rotrSH(n,i,28)^tt.rotrBH(n,i,34)^tt.rotrBH(n,i,39),F=tt.rotrSL(n,i,28)^tt.rotrBL(n,i,34)^tt.rotrBL(n,i,39),H=n&o^n&a^o&a,Z=i&s^i&c^s&c;m=p|0,S=y|0,p=g|0,y=d|0,g=l|0,d=h|0,{h:l,l:h}=tt.add(f|0,u|0,N|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let A=tt.add3L(M,F,Z);n=tt.add3H(A,N,K,H),i=A|0}({h:n,l:i}=tt.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=tt.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=tt.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=tt.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:h}=tt.add(this.Eh|0,this.El|0,l|0,h|0),{h:g,l:d}=tt.add(this.Fh|0,this.Fl|0,g|0,d|0),{h:p,l:y}=tt.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:m,l:S}=tt.add(this.Hh|0,this.Hl|0,m|0,S|0),this.set(n,i,o,s,a,c,f,u,l,h,g,d,p,y,m,S)}roundClean(){ar.fill(0),cr.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var Yo=Bi(()=>new $o);var Ti={};Ut(Ti,{bitGet:()=>Vd,bitLen:()=>Fd,bitMask:()=>Rn,bitSet:()=>qd,bytesToHex:()=>Ge,bytesToNumberBE:()=>We,bytesToNumberLE:()=>me,concatBytes:()=>Ye,createHmacDrbg:()=>Qo,ensureBytes:()=>bt,equalBytes:()=>Od,hexToBytes:()=>Ar,hexToNumber:()=>Xo,numberToBytesBE:()=>fr,numberToBytesLE:()=>$e,numberToHexUnpadded:()=>V0,numberToVarBytesBE:()=>Kd,utf8ToBytes:()=>Md,validateObject:()=>fe});var F0=BigInt(0),Ci=BigInt(1),Nd=BigInt(2),Ii=t=>t instanceof Uint8Array,Ud=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Ge(t){if(!Ii(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=Ud[t[r]];return e}function V0(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Xo(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function Ar(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let r=new Uint8Array(e/2);for(let n=0;n<r.length;n++){let i=n*2,o=t.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function We(t){return Xo(Ge(t))}function me(t){if(!Ii(t))throw new Error("Uint8Array expected");return Xo(Ge(Uint8Array.from(t).reverse()))}function fr(t,e){return Ar(t.toString(16).padStart(e*2,"0"))}function $e(t,e){return fr(t,e).reverse()}function Kd(t){return Ar(V0(t))}function bt(t,e,r){let n;if(typeof e=="string")try{n=Ar(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(Ii(e))n=Uint8Array.from(e);else throw new Error(`${t} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${t} expected ${r} bytes, got ${i}`);return n}function Ye(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!Ii(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function Od(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[r])return!1;return!0}function Md(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Fd(t){let e;for(e=0;t>F0;t>>=Ci,e+=1);return e}function Vd(t,e){return t>>BigInt(e)&Ci}var qd=(t,e,r)=>t|(r?Ci:F0)<<BigInt(e),Rn=t=>(Nd<<BigInt(t-1))-Ci,Zo=t=>new Uint8Array(t),M0=t=>Uint8Array.from(t);function Qo(t,e,r){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=Zo(t),i=Zo(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Zo())=>{i=a(M0([0]),l),n=a(),l.length!==0&&(i=a(M0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<e;){n=a();let g=n.slice();h.push(g),l+=n.length}return Ye(...h)};return(l,h)=>{s(),c(l);let g;for(;!(g=h(f()));)c();return s(),g}}var Hd={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function fe(t,e,r={}){let n=(i,o,s)=>{let a=Hd[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=t[i];if(!(s&&c===void 0)&&!a(c,t))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(e))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return t}var Kt=BigInt(0),St=BigInt(1),Cr=BigInt(2),zd=BigInt(3),jo=BigInt(4),q0=BigInt(5),H0=BigInt(8),Gd=BigInt(9),Wd=BigInt(16);function ut(t,e){let r=t%e;return r>=Kt?r:e+r}function Jo(t,e,r){if(r<=Kt||e<Kt)throw new Error("Expected power/modulo > 0");if(r===St)return Kt;let n=St;for(;e>Kt;)e&St&&(n=n*t%r),t=t*t%r,e>>=St;return n}function vt(t,e,r){let n=t;for(;e-- >Kt;)n*=n,n%=r;return n}function _i(t,e){if(t===Kt||e<=Kt)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=ut(t,e),n=e,i=Kt,o=St,s=St,a=Kt;for(;r!==Kt;){let f=n/r,u=n%r,l=i-s*f,h=o-a*f;n=r,r=u,i=s,o=a,s=l,a=h}if(n!==St)throw new Error("invert: does not exist");return ut(i,e)}function $d(t){let e=(t-St)/Cr,r,n,i;for(r=t-St,n=0;r%Cr===Kt;r/=Cr,n++);for(i=Cr;i<t&&Jo(i,e,t)!==t-St;i++);if(n===1){let s=(t+St)/jo;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+St)/Cr;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),h=a.pow(c,r);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(h);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let d=a.pow(u,St<<BigInt(f-g-1));u=a.sqr(d),l=a.mul(l,d),h=a.mul(h,u),f=g}return l}}function Yd(t){if(t%jo===zd){let e=(t+St)/jo;return function(n,i){let o=n.pow(i,e);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(t%H0===q0){let e=(t-q0)/H0;return function(n,i){let o=n.mul(i,Cr),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,Cr),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return t%Wd,$d(t)}var z0=(t,e)=>(ut(t,e)&St)===St,Zd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function ts(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Zd.reduce((n,i)=>(n[i]="function",n),e);return fe(t,r)}function Xd(t,e,r){if(r<Kt)throw new Error("Expected power > 0");if(r===Kt)return t.ONE;if(r===St)return e;let n=t.ONE,i=e;for(;r>Kt;)r&St&&(n=t.mul(n,i)),i=t.sqr(i),r>>=St;return n}function Qd(t,e){let r=new Array(e.length),n=e.reduce((o,s,a)=>t.is0(s)?o:(r[a]=o,t.mul(o,s)),t.ONE),i=t.inv(n);return e.reduceRight((o,s,a)=>t.is0(s)?o:(r[a]=t.mul(o,r[a]),t.mul(o,s)),i),r}function es(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Li(t,e,r=!1,n={}){if(t<=Kt)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=es(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=Yd(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:Rn(i),ZERO:Kt,ONE:St,create:c=>ut(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Kt<=c&&c<t},is0:c=>c===Kt,isOdd:c=>(c&St)===St,neg:c=>ut(-c,t),eql:(c,f)=>c===f,sqr:c=>ut(c*c,t),add:(c,f)=>ut(c+f,t),sub:(c,f)=>ut(c-f,t),mul:(c,f)=>ut(c*f,t),pow:(c,f)=>Xd(a,c,f),div:(c,f)=>ut(c*_i(f,t),t),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>_i(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Qd(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?$e(c,o):fr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?me(c):We(c)}});return Object.freeze(a)}function G0(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?t.neg(r):r}function W0(t){if(typeof t!="bigint")throw new Error("field order must be bigint");let e=t.toString(2).length;return Math.ceil(e/8)}function rs(t){let e=W0(t);return e+Math.ceil(e/2)}function $0(t,e,r=!1){let n=t.length,i=W0(e),o=rs(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?We(t):me(t),a=ut(s,e-St)+St;return r?$e(a,i):fr(a,i)}var Jd=BigInt(0),ns=BigInt(1);function Ri(t,e){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(e/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=t.ZERO,a=i;for(;o>Jd;)o&ns&&(s=s.add(a)),a=a.double(),o>>=ns;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let h=1;h<a;h++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=t.ZERO,u=t.BASE,l=BigInt(2**i-1),h=2**i,g=BigInt(i);for(let d=0;d<a;d++){let p=d*c,y=Number(s&l);s>>=g,y>c&&(y-=h,s+=ns);let m=p,S=p+Math.abs(y)-1,x=d%2!==0,I=y<0;y===0?u=u.add(r(x,o[m])):f=f.add(r(I,o[S]))}return{p:f,f:u}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,f=o.get(i);return f||(f=this.precomputeWindow(i,c),c!==1&&o.set(i,a(f))),this.wNAF(c,f,s)}}}function kn(t){return ts(t.Fp),fe(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...es(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var xe=BigInt(0),ne=BigInt(1),ki=BigInt(2),tp=BigInt(8),ep={zip215:!0};function rp(t){let e=kn(t);return fe(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Di(t){let e=rp(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,f=ki<<BigInt(a*8)-ne,u=r.create,l=e.uvRatio||((R,v)=>{try{return{isValid:!0,value:r.sqrt(R*r.inv(v))}}catch{return{isValid:!1,value:xe}}}),h=e.adjustScalarBytes||(R=>R),g=e.domain||((R,v,U)=>{if(v.length||U)throw new Error("Contexts/pre-hash are not supported");return R}),d=R=>typeof R=="bigint"&&xe<R,p=(R,v)=>d(R)&&d(v)&&R<v,y=R=>R===xe||p(R,f);function m(R,v){if(p(R,v))return R;throw new Error(`Expected valid scalar < ${v}, got ${typeof R} ${R}`)}function S(R){return R===xe?R:m(R,n)}let x=new Map;function I(R){if(!(R instanceof B))throw new Error("ExtendedPoint expected")}class B{constructor(v,U,O,q){if(this.ex=v,this.ey=U,this.ez=O,this.et=q,!y(v))throw new Error("x required");if(!y(U))throw new Error("y required");if(!y(O))throw new Error("z required");if(!y(q))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(v){if(v instanceof B)throw new Error("extended point not allowed");let{x:U,y:O}=v||{};if(!y(U)||!y(O))throw new Error("invalid affine point");return new B(U,O,ne,u(U*O))}static normalizeZ(v){let U=r.invertBatch(v.map(O=>O.ez));return v.map((O,q)=>O.toAffine(U[q])).map(B.fromAffine)}_setWindowSize(v){this._WINDOW_SIZE=v,x.delete(this)}assertValidity(){let{a:v,d:U}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:O,ey:q,ez:$,et:Y}=this,rt=u(O*O),X=u(q*q),j=u($*$),mt=u(j*j),dt=u(rt*v),zt=u(j*u(dt+X)),Gt=u(mt+u(U*u(rt*X)));if(zt!==Gt)throw new Error("bad point: equation left != right (1)");let Nt=u(O*q),Yt=u($*Y);if(Nt!==Yt)throw new Error("bad point: equation left != right (2)")}equals(v){I(v);let{ex:U,ey:O,ez:q}=this,{ex:$,ey:Y,ez:rt}=v,X=u(U*rt),j=u($*q),mt=u(O*rt),dt=u(Y*q);return X===j&&mt===dt}is0(){return this.equals(B.ZERO)}negate(){return new B(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:v}=e,{ex:U,ey:O,ez:q}=this,$=u(U*U),Y=u(O*O),rt=u(ki*u(q*q)),X=u(v*$),j=U+O,mt=u(u(j*j)-$-Y),dt=X+Y,zt=dt-rt,Gt=X-Y,Nt=u(mt*zt),Yt=u(dt*Gt),qe=u(mt*Gt),wr=u(zt*dt);return new B(Nt,Yt,wr,qe)}add(v){I(v);let{a:U,d:O}=e,{ex:q,ey:$,ez:Y,et:rt}=this,{ex:X,ey:j,ez:mt,et:dt}=v;if(U===BigInt(-1)){let a0=u(($-q)*(j+X)),c0=u(($+q)*(j-X)),_o=u(c0-a0);if(_o===xe)return this.double();let f0=u(Y*ki*dt),u0=u(rt*ki*mt),l0=u0+f0,h0=c0+a0,d0=u0-f0,vh=u(l0*_o),wh=u(h0*d0),Eh=u(l0*d0),Sh=u(_o*h0);return new B(vh,wh,Sh,Eh)}let zt=u(q*X),Gt=u($*j),Nt=u(rt*O*dt),Yt=u(Y*mt),qe=u((q+$)*(X+j)-zt-Gt),wr=Yt-Nt,In=Yt+Nt,s0=u(Gt-U*zt),gh=u(qe*wr),mh=u(In*s0),xh=u(qe*s0),bh=u(wr*In);return new B(gh,mh,bh,xh)}subtract(v){return this.add(v.negate())}wNAF(v){return _.wNAFCached(this,x,v,B.normalizeZ)}multiply(v){let{p:U,f:O}=this.wNAF(m(v,n));return B.normalizeZ([U,O])[0]}multiplyUnsafe(v){let U=S(v);return U===xe?L:this.equals(L)||U===ne?this:this.equals(E)?this.wNAF(U).p:_.unsafeLadder(this,U)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(v){let{ex:U,ey:O,ez:q}=this,$=this.is0();v==null&&(v=$?tp:r.inv(q));let Y=u(U*v),rt=u(O*v),X=u(q*v);if($)return{x:xe,y:ne};if(X!==ne)throw new Error("invZ was invalid");return{x:Y,y:rt}}clearCofactor(){let{h:v}=e;return v===ne?this:this.multiplyUnsafe(v)}static fromHex(v,U=!1){let{d:O,a:q}=e,$=r.BYTES;v=bt("pointHex",v,$);let Y=v.slice(),rt=v[$-1];Y[$-1]=rt&-129;let X=me(Y);X===xe||(U?m(X,f):m(X,r.ORDER));let j=u(X*X),mt=u(j-ne),dt=u(O*j-q),{isValid:zt,value:Gt}=l(mt,dt);if(!zt)throw new Error("Point.fromHex: invalid y coordinate");let Nt=(Gt&ne)===ne,Yt=(rt&128)!==0;if(!U&&Gt===xe&&Yt)throw new Error("Point.fromHex: x=0 and x_0=1");return Yt!==Nt&&(Gt=u(-Gt)),B.fromAffine({x:Gt,y:X})}static fromPrivateKey(v){return K(v).point}toRawBytes(){let{x:v,y:U}=this.toAffine(),O=$e(U,r.BYTES);return O[O.length-1]|=v&ne?128:0,O}toHex(){return Ge(this.toRawBytes())}}B.BASE=new B(e.Gx,e.Gy,ne,u(e.Gx*e.Gy)),B.ZERO=new B(xe,ne,ne,xe);let{BASE:E,ZERO:L}=B,_=Ri(B,a*8);function N(R){return ut(R,n)}function M(R){return N(me(R))}function K(R){let v=a;R=bt("private key",R,v);let U=bt("hashed private key",o(R),2*v),O=h(U.slice(0,v)),q=U.slice(v,2*v),$=M(O),Y=E.multiply($),rt=Y.toRawBytes();return{head:O,prefix:q,scalar:$,point:Y,pointBytes:rt}}function F(R){return K(R).pointBytes}function H(R=new Uint8Array,...v){let U=Ye(...v);return M(o(g(U,bt("context",R),!!i)))}function Z(R,v,U={}){R=bt("message",R),i&&(R=i(R));let{prefix:O,scalar:q,pointBytes:$}=K(v),Y=H(U.context,O,R),rt=E.multiply(Y).toRawBytes(),X=H(U.context,rt,$,R),j=N(Y+X*q);S(j);let mt=Ye(rt,$e(j,r.BYTES));return bt("result",mt,a*2)}let A=ep;function k(R,v,U,O=A){let{context:q,zip215:$}=O,Y=r.BYTES;R=bt("signature",R,2*Y),v=bt("message",v),i&&(v=i(v));let rt=me(R.slice(Y,2*Y)),X,j,mt;try{X=B.fromHex(U,$),j=B.fromHex(R.slice(0,Y),$),mt=E.multiplyUnsafe(rt)}catch{return!1}if(!$&&X.isSmallOrder())return!1;let dt=H(q,j.toRawBytes(),X.toRawBytes(),v);return j.add(X.multiplyUnsafe(dt)).subtract(mt).clearCofactor().equals(B.ZERO)}return E._setWindowSize(8),{CURVE:e,getPublicKey:F,sign:Z,verify:k,ExtendedPoint:B,utils:{getExtendedPublicKey:K,randomPrivateKey:()=>s(r.BYTES),precompute(R=8,v=B.BASE){return v._setWindowSize(R),v.multiply(BigInt(3)),v}}}}var Dn=BigInt(0),is=BigInt(1);function np(t){return fe(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function Y0(t){let e=np(t),{P:r}=e,n=x=>ut(x,r),i=e.montgomeryBits,o=Math.ceil(i/8),s=e.nByteLength,a=e.adjustScalarBytes||(x=>x),c=e.powPminus2||(x=>Jo(x,r-BigInt(2),r));function f(x,I,B){let E=n(x*(I-B));return I=n(I-E),B=n(B+E),[I,B]}function u(x){if(typeof x=="bigint"&&Dn<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(e.a-BigInt(2))/BigInt(4);function h(x,I){let B=u(x),E=u(I),L=B,_=is,N=Dn,M=B,K=is,F=Dn,H;for(let A=BigInt(i-1);A>=Dn;A--){let k=E>>A&is;F^=k,H=f(F,_,M),_=H[0],M=H[1],H=f(F,N,K),N=H[0],K=H[1],F=k;let T=_+N,R=n(T*T),v=_-N,U=n(v*v),O=R-U,q=M+K,$=M-K,Y=n($*T),rt=n(q*v),X=Y+rt,j=Y-rt;M=n(X*X),K=n(L*n(j*j)),_=n(R*U),N=n(O*(R+n(l*O)))}H=f(F,_,M),_=H[0],M=H[1],H=f(F,N,K),N=H[0],K=H[1];let Z=c(N);return n(_*Z)}function g(x){return $e(n(x),o)}function d(x){let I=bt("u coordinate",x,o);return s===o&&(I[s-1]&=127),me(I)}function p(x){let I=bt("scalar",x);if(I.length!==o&&I.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${I.length}`);return me(a(I))}function y(x,I){let B=d(I),E=p(x),L=h(B,E);if(L===Dn)throw new Error("Invalid private or public key received");return g(L)}let m=g(e.Gu);function S(x){return y(x,m)}return{scalarMult:y,scalarMultBase:S,getSharedSecret:(x,I)=>y(x,I),getPublicKey:x=>S(x),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:m}}var Pn=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Z0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),nb=BigInt(0),ip=BigInt(1),os=BigInt(2),op=BigInt(5),X0=BigInt(10),sp=BigInt(20),ap=BigInt(40),Q0=BigInt(80);function j0(t){let e=Pn,n=t*t%e*t%e,i=vt(n,os,e)*n%e,o=vt(i,ip,e)*t%e,s=vt(o,op,e)*o%e,a=vt(s,X0,e)*s%e,c=vt(a,sp,e)*a%e,f=vt(c,ap,e)*c%e,u=vt(f,Q0,e)*f%e,l=vt(u,Q0,e)*f%e,h=vt(l,X0,e)*s%e;return{pow_p_5_8:vt(h,os,e)*t%e,b2:n}}function J0(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function cp(t,e){let r=Pn,n=ut(e*e*e,r),i=ut(n*n*e,r),o=j0(t*i).pow_p_5_8,s=ut(t*n*o,r),a=ut(e*s*s,r),c=s,f=ut(s*Z0,r),u=a===t,l=a===ut(-t,r),h=a===ut(-t*Z0,r);return u&&(s=c),(l||h)&&(s=f),z0(s,r)&&(s=ut(-s,r)),{isValid:u||l,value:s}}var Ze=Li(Pn,void 0,!0),ss={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Ze,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Yo,randomBytes:Br,adjustScalarBytes:J0,uvRatio:cp},Jr=Di(ss);function tc(t,e,r){if(e.length>255)throw new Error("Context is too big");return Si(Go("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var ib=Di({...ss,domain:tc}),ob=Di({...ss,domain:tc,prehash:Yo}),Nn=(()=>Y0({P:Pn,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Pn,{pow_p_5_8:r,b2:n}=j0(t);return ut(vt(r,BigInt(3),e)*n,e)},adjustScalarBytes:J0,randomBytes:Br}))();var fp=(Ze.ORDER+BigInt(3))/BigInt(8),sb=Ze.pow(os,fp),ab=Ze.sqrt(Ze.neg(Ze.ONE)),cb=(Ze.ORDER-BigInt(5))/BigInt(8),fb=BigInt(486662);var ub=G0(Ze,Ze.neg(BigInt(486664)));var lb=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),hb=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),db=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),pb=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var yb=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Pi=class extends Qr{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Ln(e);let n=sr(r);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?e.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(e){return Xr(this),this.iHash.update(e),this}digestInto(e){Xr(this),zo(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=a,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},tn=(t,e,r)=>new Pi(t,e).update(r).digest();tn.create=(t,e)=>new Pi(t,e);function rc(t,e,r){return Ln(t),r===void 0&&(r=new Uint8Array(t.outputLen)),tn(t,sr(r),sr(e))}var as=new Uint8Array([0]),ec=new Uint8Array;function nc(t,e,r,n=32){if(Ln(t),vi(n),n>255*t.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/t.outputLen);r===void 0&&(r=ec);let o=new Uint8Array(i*t.outputLen),s=tn.create(t,e),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)as[0]=f+1,a.update(f===0?ec:c).update(r).update(as).digestInto(c),o.set(c,t.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),as.fill(0),o.slice(0,n)}var up=(t,e,r)=>t&e^~t&r,lp=(t,e,r)=>t&e^t&r^e&r,hp=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),ur=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),lr=new Uint32Array(64),cs=class extends jr{constructor(){super(64,32,8,!1),this.A=ur[0]|0,this.B=ur[1]|0,this.C=ur[2]|0,this.D=ur[3]|0,this.E=ur[4]|0,this.F=ur[5]|0,this.G=ur[6]|0,this.H=ur[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[e,r,n,i,o,s,a,c]}set(e,r,n,i,o,s,a,c){this.A=e|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,r){for(let l=0;l<16;l++,r+=4)lr[l]=e.getUint32(r,!1);for(let l=16;l<64;l++){let h=lr[l-15],g=lr[l-2],d=ge(h,7)^ge(h,18)^h>>>3,p=ge(g,17)^ge(g,19)^g>>>10;lr[l]=p+lr[l-7]+d+lr[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let h=ge(a,6)^ge(a,11)^ge(a,25),g=u+h+up(a,c,f)+hp[l]+lr[l]|0,p=(ge(n,2)^ge(n,13)^ge(n,22))+lp(n,i,o)|0;u=f,f=c,c=a,a=s+g|0,s=o,o=i,i=n,n=g+p|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,u=u+this.H|0,this.set(n,i,o,s,a,c,f,u)}roundClean(){lr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var en=Bi(()=>new cs);var fs={hashSHA256(t){return en(t)},getHKDF(t,e){let r=rc(en,e,t),i=nc(en,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let t=Nn.utils.randomPrivateKey();return{publicKey:Nn.getPublicKey(t),privateKey:t}},generateX25519KeyPairFromSeed(t){return{publicKey:Nn.getPublicKey(t),privateKey:t}},generateX25519SharedKey(t,e){return Nn.getSharedSecret(t,e)},chaCha20Poly1305Encrypt(t,e,r,n){return Ho(n,e,r).encrypt(t)},chaCha20Poly1305Decrypt(t,e,r,n,i){return Ho(n,e,r).decrypt(t,i)}};var dp=t=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(t):new Uint8Array(t),rn=t=>{let e=dp(2);return new DataView(e.buffer,e.byteOffset,e.byteLength).setUint16(0,t,!1),e};rn.bytes=2;var Un=t=>{if(t.length<2)throw RangeError("Could not decode int16BE");return t instanceof Uint8Array?new DataView(t.buffer,t.byteOffset,t.byteLength).getUint16(0,!1):t.getUint16(0)};Un.bytes=2;function ic(t){return yt([t.ne,t.ciphertext],t.ne.length+t.ciphertext.length)}function oc(t){return yt([t.ne,t.ns,t.ciphertext],t.ne.length+t.ns.length+t.ciphertext.length)}function sc(t){return yt([t.ns,t.ciphertext],t.ns.length+t.ciphertext.length)}function ac(t){if(t.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:t.subarray(0,32),ciphertext:t.subarray(32,t.length),ns:new Uint8Array(0)}}function cc(t){if(t.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:t.subarray(0,32),ns:t.subarray(32,80),ciphertext:t.subarray(80,t.length)}}function fc(t){if(t.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:new Uint8Array(0),ns:t.subarray(0,48),ciphertext:t.subarray(48,t.length)}}var lc=16;function hc(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s=t.encrypt(n.subarray(i,o),t.session);e?.encryptedPackets.increment(),yield rn(s.byteLength),yield s}}}function dc(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-lc<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-lc),{plaintext:c,valid:f}=t.decrypt(s,t.session,a);if(!f)throw e?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");e?.decryptedPackets.increment(),yield c}}}var nt=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},On=class t extends Error{code;constructor(e="Unexpected Peer"){super(e),this.code=t.code}static code="ERR_UNEXPECTED_PEER"},Ir=class t extends Error{code;constructor(e="Invalid crypto exchange"){super(e),this.code=t.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var h4=kt(qn(),1),d4=kt(Lf(),1);var _2=kt(gt(),1);var Us={};Ut(Us,{base10:()=>H1});function O1(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<t.length;i++){var o=t.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=t.length,c=t.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,y=0,m=0,S=d.length;m!==S&&d[m]===0;)m++,p++;for(var x=(S-m)*u+1>>>0,I=new Uint8Array(x);m!==S;){for(var B=d[m],E=0,L=x-1;(B!==0||E<y)&&L!==-1;L--,E++)B+=256*I[L]>>>0,I[L]=B%a>>>0,B=B/a>>>0;if(B!==0)throw new Error("Non-zero carry");y=E,m++}for(var _=x-y;_!==x&&I[_]===0;)_++;for(var N=c.repeat(p);_<x;++_)N+=t.charAt(I[_]);return N}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var y=0,m=0;d[p]===c;)y++,p++;for(var S=(d.length-p)*f+1>>>0,x=new Uint8Array(S);d[p];){var I=r[d.charCodeAt(p)];if(I===255)return;for(var B=0,E=S-1;(I!==0||B<m)&&E!==-1;E--,B++)I+=a*x[E]>>>0,x[E]=I%256>>>0,I=I/256>>>0;if(I!==0)throw new Error("Non-zero carry");m=B,p++}if(d[p]!==" "){for(var L=S-m;L!==S&&x[L]===0;)L++;for(var _=new Uint8Array(y+(S-L)),N=y;L!==S;)_[N++]=x[L++];return _}}}function g(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:g}}var M1=O1,F1=M1,Rf=F1;var uv=new Uint8Array(0);var kf=(t,e)=>{if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0},Je=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")};var Df=t=>new TextEncoder().encode(t),Pf=t=>new TextDecoder().decode(t);var ks=class{constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Ds=class{constructor(e,r,n){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return Uf(this,e)}},Ps=class{constructor(e){this.decoders=e}or(e){return Uf(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},Uf=(t,e)=>new Ps({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Ns=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ks(e,r,n),this.decoder=new Ds(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},cn=({name:t,prefix:e,encode:r,decode:n})=>new Ns(t,e,r,n),gr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=Rf(r,e);return cn({prefix:t,name:e,encode:n,decode:o=>Je(i(o))})},V1=(t,e,r,n)=>{let i={};for(let u=0;u<e.length;++u)i[e[u]]=u;let o=t.length;for(;t[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,f=0;for(let u=0;u<o;++u){let l=i[t[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},q1=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Tt=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>cn({prefix:e,name:t,encode(i){return q1(i,n,r)},decode(i){return V1(i,n,r,t)}});var H1=gr({prefix:"9",name:"base10",alphabet:"0123456789"});var Ks={};Ut(Ks,{base16:()=>z1,base16upper:()=>G1});var z1=Tt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),G1=Tt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Os={};Ut(Os,{base2:()=>W1});var W1=Tt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ms={};Ut(Ms,{base256emoji:()=>Q1});var Kf=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}"),$1=Kf.reduce((t,e,r)=>(t[r]=e,t),[]),Y1=Kf.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function Z1(t){return t.reduce((e,r)=>(e+=$1[r],e),"")}function X1(t){let e=[];for(let r of t){let n=Y1[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var Q1=cn({prefix:"\u{1F680}",name:"base256emoji",encode:Z1,decode:X1});var Fs={};Ut(Fs,{base32:()=>we,base32hex:()=>eg,base32hexpad:()=>ng,base32hexpadupper:()=>ig,base32hexupper:()=>rg,base32pad:()=>J1,base32padupper:()=>tg,base32upper:()=>j1,base32z:()=>og});var we=Tt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),j1=Tt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),J1=Tt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),tg=Tt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),eg=Tt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),rg=Tt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),ng=Tt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),ig=Tt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),og=Tt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Vs={};Ut(Vs,{base36:()=>sg,base36upper:()=>ag});var sg=gr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),ag=gr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var qs={};Ut(qs,{base58btc:()=>Ct,base58flickr:()=>cg});var Ct=gr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),cg=gr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var zs={};Ut(zs,{base64:()=>fn,base64pad:()=>fg,base64url:()=>Hs,base64urlpad:()=>ug});var fn=Tt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),fg=Tt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Hs=Tt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),ug=Tt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Gs={};Ut(Gs,{base8:()=>lg});var lg=Tt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Ws={};Ut(Ws,{identity:()=>hg});var hg=cn({prefix:"\0",name:"identity",encode:t=>Pf(t),decode:t=>Df(t)});var Av=new TextEncoder,Cv=new TextDecoder;var Zs={};Ut(Zs,{identity:()=>xr});var Ne={};Ut(Ne,{Digest:()=>Dr,create:()=>Ee,decode:()=>mr,equals:()=>Ys});var yg=Ff,Of=128,gg=127,mg=~gg,xg=Math.pow(2,31);function Ff(t,e,r){e=e||[],r=r||0;for(var n=r;t>=xg;)e[r++]=t&255|Of,t/=128;for(;t&mg;)e[r++]=t&255|Of,t>>>=7;return e[r]=t|0,Ff.bytes=r-n+1,e}var bg=$s,vg=128,Mf=127;function $s(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw $s.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Mf)<<i:(s&Mf)*Math.pow(2,i),i+=7}while(s>=vg);return $s.bytes=o-n,r}var wg=Math.pow(2,7),Eg=Math.pow(2,14),Sg=Math.pow(2,21),Bg=Math.pow(2,28),Ag=Math.pow(2,35),Cg=Math.pow(2,42),Ig=Math.pow(2,49),Tg=Math.pow(2,56),_g=Math.pow(2,63),Lg=function(t){return t<wg?1:t<Eg?2:t<Sg?3:t<Bg?4:t<Ag?5:t<Cg?6:t<Ig?7:t<Tg?8:t<_g?9:10},Rg={encode:yg,decode:bg,encodingLength:Lg},kg=Rg,Gn=kg;var Wn=(t,e=0)=>[Gn.decode(t,e),Gn.decode.bytes],un=(t,e,r=0)=>(Gn.encode(t,e,r),e),ln=t=>Gn.encodingLength(t);var Ee=(t,e)=>{let r=e.byteLength,n=ln(t),i=n+ln(r),o=new Uint8Array(i+r);return un(t,o,0),un(r,o,n),o.set(e,i),new Dr(t,r,e,o)},mr=t=>{let e=Je(t),[r,n]=Wn(e),[i,o]=Wn(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Dr(r,i,s,e)},Ys=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&kf(t.bytes,r.bytes)}},Dr=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var Vf=0,Dg="identity",qf=Je,Pg=t=>Ee(Vf,qf(t)),xr={code:Vf,name:Dg,encode:qf,digest:Pg};var js={};Ut(js,{sha256:()=>$t,sha512:()=>Ng});var Qs=({name:t,code:e,encode:r})=>new Xs(t,e,r),Xs=class{constructor(e,r,n){this.name=e,this.code=r,this.encode=n}digest(e){if(e instanceof Uint8Array){let r=this.encode(e);return r instanceof Uint8Array?Ee(this.code,r):r.then(n=>Ee(this.code,n))}else throw Error("Unknown type, must be binary type")}};var zf=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),$t=Qs({name:"sha2-256",code:18,encode:zf("SHA-256")}),Ng=Qs({name:"sha2-512",code:19,encode:zf("SHA-512")});var Gf=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return Kg(r,Js(t),e||Ct.encoder);default:return Og(r,Js(t),e||we.encoder)}};var Wf=new WeakMap,Js=t=>{let e=Wf.get(t);if(e==null){let r=new Map;return Wf.set(t,r),r}return e},Se=class t{constructor(e,r,n,i){this.code=r,this.version=e,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:e,multihash:r}=this;if(e!==$n)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Mg)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=Ee(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return t.equals(this,e)}static equals(e,r){let n=r;return n&&e.code===n.code&&e.version===n.version&&Ys(e.multihash,n.multihash)}toString(e){return Gf(this,e)}toJSON(){return{"/":Gf(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new t(n,i,o,s||$f(n,i,o.bytes))}else if(r[Fg]===!0){let{version:n,multihash:i,code:o}=r,s=mr(i);return t.create(n,o,s)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(r!==$n)throw new Error(`Version 0 CID must use dag-pb (code: ${$n}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=$f(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,$n,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=Je(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new Dr(r.multihashCode,r.digestSize,o,i);return[r.version===0?t.createV0(s):t.createV1(r.codec,s),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[l,h]=Wn(e.subarray(r));return r+=h,l},i=n(),o=$n;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,i]=Ug(e,r),o=t.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Js(o).set(n,e),o}},Ug=(t,e)=>{switch(t[0]){case"Q":{let r=e||Ct;return[Ct.prefix,r.decode(`${Ct.prefix}${t}`)]}case Ct.prefix:{let r=e||Ct;return[Ct.prefix,r.decode(t)]}case we.prefix:{let r=e||we;return[we.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}},Kg=(t,e,r)=>{let{prefix:n}=r;if(n!==Ct.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i},Og=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i},$n=112,Mg=18,$f=(t,e,r)=>{let n=ln(t),i=n+ln(e),o=new Uint8Array(i+r.byteLength);return un(t,o,0),un(e,o,n),o.set(r,i),o},Fg=Symbol.for("@ipld/js-cid/CID");var Ue={...Ws,...Os,...Gs,...Us,...Ks,...Fs,...Vs,...qs,...zs,...Ms},qv={...js,...Zs};function Zf(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var Yf=Zf("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),ta=Zf("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=ce(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Vg={utf8:Yf,"utf-8":Yf,hex:Ue.base16,latin1:ta,ascii:ta,binary:ta,...Ue},to=Vg;function _t(t,e="utf8"){let r=to[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ir(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var wa={};Ut(wa,{Ed25519PrivateKey:()=>Fr,Ed25519PublicKey:()=>Xn,generateKeyPair:()=>r2,generateKeyPairFromSeed:()=>Wu,unmarshalEd25519PrivateKey:()=>t2,unmarshalEd25519PublicKey:()=>e2});var hn=32,tr=64,eo=32;async function Xf(){let t=Jr.utils.randomPrivateKey(),e=Jr.getPublicKey(t);return{privateKey:tu(t,e),publicKey:e}}async function Qf(t){if(t.length!==eo)throw new TypeError('"seed" must be 32 bytes in length.');if(!(t instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=t,r=Jr.getPublicKey(e);return{privateKey:tu(e,r),publicKey:r}}async function jf(t,e){let r=t.subarray(0,eo);return Jr.sign(e,r)}async function Jf(t,e,r){return Jr.verify(e,r,t)}function tu(t,e){let r=new Uint8Array(tr);for(let n=0;n<eo;n++)r[n]=t[n],r[eo+n]=e[n];return r}var ee={get(t=globalThis){let e=t.crypto;if(e==null||e.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return e}};var ea={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function ra(t){let e=t?.algorithm??"AES-GCM",r=t?.keyLength??16,n=t?.nonceLength??12,i=t?.digest??"SHA-256",o=t?.saltLength??16,s=t?.iterations??32767,a=ee.get();r*=8;async function c(l,h){let g=a.getRandomValues(new Uint8Array(o)),d=a.getRandomValues(new Uint8Array(n)),p={name:e,iv:d};typeof h=="string"&&(h=_t(h));let y;if(h.length===0){y=await a.subtle.importKey("jwk",ea,{name:"AES-GCM"},!0,["encrypt"]);try{let S={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(S,x,{name:e,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",ea,{name:"AES-GCM"},!0,["encrypt"])}}else{let S={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(S,x,{name:e,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,y,l);return yt([g,p.iv,new Uint8Array(m)])}async function f(l,h){let g=l.subarray(0,o),d=l.subarray(o,o+n),p=l.subarray(o+n),y={name:e,iv:d};typeof h=="string"&&(h=_t(h));let m;if(h.length===0)try{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},I=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,I,{name:e,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",ea,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},I=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,I,{name:e,length:r},!0,["decrypt"])}let S=await a.subtle.decrypt(y,m,p);return new Uint8Array(S)}return{encrypt:c,decrypt:f}}async function dn(t,e){let n=await ra().encrypt(t,e);return fn.encode(n)}var ya=kt(aa(),1),qu=kt(Pu(),1),Hu=kt(Nr(),1),ga=kt(pa(),1),zu=kt(Vu(),1);function Qg(){Hu.default._configure(),ya.default._configure(qu.default),ga.default._configure(zu.default)}Qg();var Gu=["uint64","int64","sint64","fixed64","sfixed64"];function jg(t){for(let e of Gu){if(t[e]==null)continue;let r=t[e];t[e]=function(){return BigInt(r.call(this).toString())}}return t}function ma(t){return jg(new ya.default(t))}function Jg(t){for(let e of Gu){if(t[e]==null)continue;let r=t[e];t[e]=function(n){return r.call(this,n.toString())}}return t}function xa(){return Jg(ga.default.create())}function Kr(t,e){let r=ma(t instanceof Uint8Array?t:t.subarray());return e.decode(r)}function Or(t,e){let r=xa();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var yn;(function(t){t[t.VARINT=0]="VARINT",t[t.BIT64=1]="BIT64",t[t.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",t[t.START_GROUP=3]="START_GROUP",t[t.END_GROUP=4]="END_GROUP",t[t.BIT32=5]="BIT32"})(yn||(yn={}));function so(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function ba(t){function e(i){if(t[i.toString()]==null)throw new Error("Invalid enum value");return t[i]}let r=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return so("enum",yn.VARINT,r,n)}function Mr(t,e){return so("message",yn.LENGTH_DELIMITED,t,e)}var At;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(At||(At={}));var va;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(va||(va={}));(function(t){t.codec=()=>ba(va)})(At||(At={}));var Oe;(function(t){let e;t.codec=()=>(e==null&&(e=Mr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),At.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=At.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Or(r,t.codec()),t.decode=r=>Kr(r,t.codec())})(Oe||(Oe={}));var Me;(function(t){let e;t.codec=()=>(e==null&&(e=Mr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),At.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=At.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Or(r,t.codec()),t.decode=r=>Kr(r,t.codec())})(Me||(Me={}));var Xn=class{_key;constructor(e){this._key=gn(e,hn)}async verify(e,r){return Jf(this._key,r,e)}marshal(){return this._key}get bytes(){return Oe.encode({Type:At.Ed25519,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}},Fr=class{_key;_publicKey;constructor(e,r){this._key=gn(e,tr),this._publicKey=gn(r,hn)}async sign(e){return jf(this._key,e)}get public(){return new Xn(this._publicKey)}marshal(){return this._key}get bytes(){return Me.encode({Type:At.Ed25519,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}async id(){let e=xr.digest(this.public.bytes);return Ct.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return dn(this.bytes,e);throw new nt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function t2(t){if(t.length>tr){t=gn(t,tr+hn);let n=t.subarray(0,tr),i=t.subarray(tr,t.length);return new Fr(n,i)}t=gn(t,tr);let e=t.subarray(0,tr),r=t.subarray(hn);return new Fr(e,r)}function e2(t){return t=gn(t,hn),new Xn(t)}async function r2(){let{privateKey:t,publicKey:e}=await Xf();return new Fr(t,e)}async function Wu(t){let{privateKey:e,publicKey:r}=await Qf(t);return new Fr(e,r)}function gn(t,e){if(t=Uint8Array.from(t??[]),t.length!==e)throw new nt(`Key must be a Uint8Array of length ${e}, got ${t.length}`,"ERR_INVALID_KEY_TYPE");return t}function ot(t,e="utf8"){let r=to[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var Fw=kt(Dt(),1),Vw=kt(Zi(),1),$u=kt(gt(),1);function Ie(t,e){let r=Uint8Array.from(t.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=yt([new Uint8Array(e-r.length),r])}return ot(r,"base64url")}function ie(t){let e=Yu(t);return new $u.default.jsbn.BigInteger(ot(e,"base16"),16)}function Yu(t,e){let r=_t(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=yt([new Uint8Array(e-r.length),r])}return r}var n2={"P-256":256,"P-384":384,"P-521":521},i2=Object.keys(n2),jw=i2.join(" / ");var Ca={};Ut(Ca,{MAX_KEY_SIZE:()=>ti,RsaPrivateKey:()=>mn,RsaPublicKey:()=>Jn,fromJwk:()=>y2,generateKeyPair:()=>g2,unmarshalRsaPrivateKey:()=>d2,unmarshalRsaPublicKey:()=>p2});var jn=kt(gt(),1);var U8=kt(Ju(),1);function co(t){if(isNaN(t)||t<=0)throw new nt("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Br(t)}var x8=kt(ji(),1),Ba=kt(gt(),1);function tl(t,e){return e.map(r=>ie(t[r]))}function el(t){return Ba.default.pki.setRsaPrivateKey(...tl(t,["n","e","d","p","q","dp","dq","qi"]))}function rl(t){return Ba.default.pki.setRsaPublicKey(...tl(t,["n","e"]))}var qr={};Ut(qr,{jwkToPkcs1:()=>c2,jwkToPkix:()=>u2,pkcs1ToJwk:()=>a2,pkixToJwk:()=>f2});var w8=kt(qn(),1),E8=kt(ji(),1);var er=kt(gt(),1);function a2(t){let e=er.default.asn1.fromDer(ot(t,"ascii")),r=er.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:Ie(r.n),e:Ie(r.e),d:Ie(r.d),p:Ie(r.p),q:Ie(r.q),dp:Ie(r.dP),dq:Ie(r.dQ),qi:Ie(r.qInv),alg:"RS256"}}function c2(t){if(t.n==null||t.e==null||t.d==null||t.p==null||t.q==null||t.dp==null||t.dq==null||t.qi==null)throw new nt("JWK was missing components","ERR_INVALID_PARAMETERS");let e=er.default.pki.privateKeyToAsn1({n:ie(t.n),e:ie(t.e),d:ie(t.d),p:ie(t.p),q:ie(t.q),dP:ie(t.dp),dQ:ie(t.dq),qInv:ie(t.qi)});return _t(er.default.asn1.toDer(e).getBytes(),"ascii")}function f2(t){let e=er.default.asn1.fromDer(ot(t,"ascii")),r=er.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:Ie(r.n),e:Ie(r.e)}}function u2(t){if(t.n==null||t.e==null)throw new nt("JWK was missing components","ERR_INVALID_PARAMETERS");let e=er.default.pki.publicKeyToAsn1({n:ie(t.n),e:ie(t.e)});return _t(er.default.asn1.toDer(e).getBytes(),"ascii")}async function nl(t){let e=await ee.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await sl(e);return{privateKey:r[0],publicKey:r[1]}}async function Aa(t){let r=[await ee.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await l2(t)],n=await sl({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function il(t,e){let r=await ee.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ee.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(e));return new Uint8Array(n,0,n.byteLength)}async function ol(t,e,r){let n=await ee.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ee.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r)}async function sl(t){if(t.privateKey==null||t.publicKey==null)throw new nt("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([ee.get().subtle.exportKey("jwk",t.privateKey),ee.get().subtle.exportKey("jwk",t.publicKey)])}async function l2(t){return ee.get().subtle.importKey("jwk",{kty:t.kty,n:t.n,e:t.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function al(t,e,r,n){let i=e?rl(t):el(t),o=ot(Uint8Array.from(r),"ascii"),s=n(o,i);return _t(s,"ascii")}function cl(t,e){return al(t,!0,e,(r,n)=>n.encrypt(r))}function fl(t,e){return al(t,!1,e,(r,n)=>n.decrypt(r))}function fo(t){if(t.kty!=="RSA")throw new nt("invalid key type","ERR_INVALID_KEY_TYPE");if(t.n==null)throw new nt("invalid key modulus","ERR_INVALID_KEY_MODULUS");return _t(t.n,"base64url").length*8}var ti=8192,Jn=class{_key;constructor(e){this._key=e}async verify(e,r){return ol(this._key,r,e)}marshal(){return qr.jwkToPkix(this._key)}get bytes(){return Oe.encode({Type:At.RSA,Data:this.marshal()}).subarray()}encrypt(e){return cl(this._key,e)}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}},mn=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return co(16)}async sign(e){return il(this._key,e)}get public(){if(this._publicKey==null)throw new nt("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Jn(this._publicKey)}decrypt(e){return fl(this._key,e)}marshal(){return qr.jwkToPkcs1(this._key)}get bytes(){return Me.encode({Type:At.RSA,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}async id(){let e=await this.public.hash();return ot(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new jn.default.util.ByteBuffer(this.marshal()),i=jn.default.asn1.fromDer(n),o=jn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return jn.default.pki.encryptRsaPrivateKey(o,e,s)}else{if(r==="libp2p-key")return dn(this.bytes,e);throw new nt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function d2(t){let e=qr.pkcs1ToJwk(t);if(fo(e)>ti)throw new nt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await Aa(e);return new mn(r.privateKey,r.publicKey)}function p2(t){let e=qr.pkixToJwk(t);if(fo(e)>ti)throw new nt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Jn(e)}async function y2(t){if(fo(t)>ti)throw new nt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Aa(t);return new mn(e.privateKey,e.publicKey)}async function g2(t){if(t>ti)throw new nt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await nl(t);return new mn(e.privateKey,e.publicKey)}var La={};Ut(La,{Secp256k1PrivateKey:()=>ri,Secp256k1PublicKey:()=>ei,generateKeyPair:()=>T2,unmarshalSecp256k1PrivateKey:()=>C2,unmarshalSecp256k1PublicKey:()=>I2});function m2(t){let e=kn(t);fe(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=e;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:x2,hexToBytes:b2}=Ti,Hr={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=Hr;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");let r=t[1],n=t.subarray(2,r+2);if(!r||n.length!==r)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:x2(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=Hr,r=typeof t=="string"?b2(t):t;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:o}=Hr._parseInt(r.subarray(2)),{d:s,l:a}=Hr._parseInt(o);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(t){let e=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=e(r(t.s)),i=e(r(t.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},rr=BigInt(0),de=BigInt(1),q8=BigInt(2),ul=BigInt(3),H8=BigInt(4);function v2(t){let e=m2(t),{Fp:r}=e,n=e.toBytes||((d,p,y)=>{let m=p.toAffine();return Ye(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=e.fromBytes||(d=>{let p=d.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),m=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:m}});function o(d){let{a:p,b:y}=e,m=r.sqr(d),S=r.mul(m,d);return r.add(r.add(S,r.mul(d,p)),y)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&rr<d&&d<e.n}function a(d){if(!s(d))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(d){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:m,n:S}=e;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=Ge(d)),typeof d!="string"||!p.includes(d.length))throw new Error("Invalid key");d=d.padStart(y*2,"0")}let x;try{x=typeof d=="bigint"?d:We(bt("private key",d,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof d}`)}return m&&(x=ut(x,S)),a(x),x}let f=new Map;function u(d){if(!(d instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,m){if(this.px=p,this.py=y,this.pz=m,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(m==null||!r.isValid(m))throw new Error("z required")}static fromAffine(p){let{x:y,y:m}=p||{};if(!p||!r.isValid(y)||!r.isValid(m))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let S=x=>r.eql(x,r.ZERO);return S(y)&&S(m)?l.ZERO:new l(y,m,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(m=>m.pz));return p.map((m,S)=>m.toAffine(y[S])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(bt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let m=r.sqr(y),S=o(p);if(!r.eql(m,S))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:y,py:m,pz:S}=this,{px:x,py:I,pz:B}=p,E=r.eql(r.mul(y,B),r.mul(x,S)),L=r.eql(r.mul(m,B),r.mul(I,S));return E&&L}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=e,m=r.mul(y,ul),{px:S,py:x,pz:I}=this,B=r.ZERO,E=r.ZERO,L=r.ZERO,_=r.mul(S,S),N=r.mul(x,x),M=r.mul(I,I),K=r.mul(S,x);return K=r.add(K,K),L=r.mul(S,I),L=r.add(L,L),B=r.mul(p,L),E=r.mul(m,M),E=r.add(B,E),B=r.sub(N,E),E=r.add(N,E),E=r.mul(B,E),B=r.mul(K,B),L=r.mul(m,L),M=r.mul(p,M),K=r.sub(_,M),K=r.mul(p,K),K=r.add(K,L),L=r.add(_,_),_=r.add(L,_),_=r.add(_,M),_=r.mul(_,K),E=r.add(E,_),M=r.mul(x,I),M=r.add(M,M),_=r.mul(M,K),B=r.sub(B,_),L=r.mul(M,N),L=r.add(L,L),L=r.add(L,L),new l(B,E,L)}add(p){u(p);let{px:y,py:m,pz:S}=this,{px:x,py:I,pz:B}=p,E=r.ZERO,L=r.ZERO,_=r.ZERO,N=e.a,M=r.mul(e.b,ul),K=r.mul(y,x),F=r.mul(m,I),H=r.mul(S,B),Z=r.add(y,m),A=r.add(x,I);Z=r.mul(Z,A),A=r.add(K,F),Z=r.sub(Z,A),A=r.add(y,S);let k=r.add(x,B);return A=r.mul(A,k),k=r.add(K,H),A=r.sub(A,k),k=r.add(m,S),E=r.add(I,B),k=r.mul(k,E),E=r.add(F,H),k=r.sub(k,E),_=r.mul(N,A),E=r.mul(M,H),_=r.add(E,_),E=r.sub(F,_),_=r.add(F,_),L=r.mul(E,_),F=r.add(K,K),F=r.add(F,K),H=r.mul(N,H),A=r.mul(M,A),F=r.add(F,H),H=r.sub(K,H),H=r.mul(N,H),A=r.add(A,H),K=r.mul(F,A),L=r.add(L,K),K=r.mul(k,A),E=r.mul(Z,E),E=r.sub(E,K),K=r.mul(Z,F),_=r.mul(k,_),_=r.add(_,K),new l(E,L,_)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,f,p,y=>{let m=r.invertBatch(y.map(S=>S.pz));return y.map((S,x)=>S.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===rr)return y;if(a(p),p===de)return this;let{endo:m}=e;if(!m)return g.unsafeLadder(this,p);let{k1neg:S,k1:x,k2neg:I,k2:B}=m.splitScalar(p),E=y,L=y,_=this;for(;x>rr||B>rr;)x&de&&(E=E.add(_)),B&de&&(L=L.add(_)),_=_.double(),x>>=de,B>>=de;return S&&(E=E.negate()),I&&(L=L.negate()),L=new l(r.mul(L.px,m.beta),L.py,L.pz),E.add(L)}multiply(p){a(p);let y=p,m,S,{endo:x}=e;if(x){let{k1neg:I,k1:B,k2neg:E,k2:L}=x.splitScalar(y),{p:_,f:N}=this.wNAF(B),{p:M,f:K}=this.wNAF(L);_=g.constTimeNegate(I,_),M=g.constTimeNegate(E,M),M=new l(r.mul(M.px,x.beta),M.py,M.pz),m=_.add(M),S=N.add(K)}else{let{p:I,f:B}=this.wNAF(y);m=I,S=B}return l.normalizeZ([m,S])[0]}multiplyAndAddUnsafe(p,y,m){let S=l.BASE,x=(B,E)=>E===rr||E===de||!B.equals(S)?B.multiplyUnsafe(E):B.multiply(E),I=x(this,y).add(x(p,m));return I.is0()?void 0:I}toAffine(p){let{px:y,py:m,pz:S}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(S));let I=r.mul(y,p),B=r.mul(m,p),E=r.mul(S,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(E,r.ONE))throw new Error("invZ was invalid");return{x:I,y:B}}isTorsionFree(){let{h:p,isTorsionFree:y}=e;if(p===de)return!0;if(y)return y(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:y}=e;return p===de?this:y?y(l,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Ge(this.toRawBytes(p))}}l.BASE=new l(e.Gx,e.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let h=e.nBitLength,g=Ri(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function w2(t){let e=kn(t);return fe(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function ll(t){let e=w2(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(A){return rr<A&&A<r.ORDER}function a(A){return ut(A,n)}function c(A){return _i(A,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:h}=v2({...e,toBytes(A,k,T){let R=k.toAffine(),v=r.toBytes(R.x),U=Ye;return T?U(Uint8Array.from([k.hasEvenY()?2:3]),v):U(Uint8Array.from([4]),v,r.toBytes(R.y))},fromBytes(A){let k=A.length,T=A[0],R=A.subarray(1);if(k===i&&(T===2||T===3)){let v=We(R);if(!s(v))throw new Error("Point is not on curve");let U=l(v),O=r.sqrt(U),q=(O&de)===de;return(T&1)===1!==q&&(O=r.neg(O)),{x:v,y:O}}else if(k===o&&T===4){let v=r.fromBytes(R.subarray(0,r.BYTES)),U=r.fromBytes(R.subarray(r.BYTES,2*r.BYTES));return{x:v,y:U}}else throw new Error(`Point of length ${k} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=A=>Ge(fr(A,e.nByteLength));function d(A){let k=n>>de;return A>k}function p(A){return d(A)?a(-A):A}let y=(A,k,T)=>We(A.slice(k,T));class m{constructor(k,T,R){this.r=k,this.s=T,this.recovery=R,this.assertValidity()}static fromCompact(k){let T=e.nByteLength;return k=bt("compactSignature",k,T*2),new m(y(k,0,T),y(k,T,2*T))}static fromDER(k){let{r:T,s:R}=Hr.toSig(bt("DER",k));return new m(T,R)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(k){return new m(this.r,this.s,k)}recoverPublicKey(k){let{r:T,s:R,recovery:v}=this,U=L(bt("msgHash",k));if(v==null||![0,1,2,3].includes(v))throw new Error("recovery id invalid");let O=v===2||v===3?T+e.n:T;if(O>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let q=v&1?"03":"02",$=f.fromHex(q+g(O)),Y=c(O),rt=a(-U*Y),X=a(R*Y),j=f.BASE.multiplyAndAddUnsafe($,rt,X);if(!j)throw new Error("point at infinify");return j.assertValidity(),j}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return Ar(this.toDERHex())}toDERHex(){return Hr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Ar(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let S={isValidPrivateKey(A){try{return u(A),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let A=rs(e.n);return $0(e.randomBytes(A),e.n)},precompute(A=8,k=f.BASE){return k._setWindowSize(A),k.multiply(BigInt(3)),k}};function x(A,k=!0){return f.fromPrivateKey(A).toRawBytes(k)}function I(A){let k=A instanceof Uint8Array,T=typeof A=="string",R=(k||T)&&A.length;return k?R===i||R===o:T?R===2*i||R===2*o:A instanceof f}function B(A,k,T=!0){if(I(A))throw new Error("first arg must be private key");if(!I(k))throw new Error("second arg must be public key");return f.fromHex(k).multiply(u(A)).toRawBytes(T)}let E=e.bits2int||function(A){let k=We(A),T=A.length*8-e.nBitLength;return T>0?k>>BigInt(T):k},L=e.bits2int_modN||function(A){return a(E(A))},_=Rn(e.nBitLength);function N(A){if(typeof A!="bigint")throw new Error("bigint expected");if(!(rr<=A&&A<_))throw new Error(`bigint expected < 2^${e.nBitLength}`);return fr(A,e.nByteLength)}function M(A,k,T=K){if(["recovered","canonical"].some(dt=>dt in T))throw new Error("sign() legacy options not supported");let{hash:R,randomBytes:v}=e,{lowS:U,prehash:O,extraEntropy:q}=T;U==null&&(U=!0),A=bt("msgHash",A),O&&(A=bt("prehashed msgHash",R(A)));let $=L(A),Y=u(k),rt=[N(Y),N($)];if(q!=null){let dt=q===!0?v(r.BYTES):q;rt.push(bt("extraEntropy",dt))}let X=Ye(...rt),j=$;function mt(dt){let zt=E(dt);if(!h(zt))return;let Gt=c(zt),Nt=f.BASE.multiply(zt).toAffine(),Yt=a(Nt.x);if(Yt===rr)return;let qe=a(Gt*a(j+Yt*Y));if(qe===rr)return;let wr=(Nt.x===Yt?0:2)|Number(Nt.y&de),In=qe;return U&&d(qe)&&(In=p(qe),wr^=1),new m(Yt,In,wr)}return{seed:X,k2sig:mt}}let K={lowS:e.lowS,prehash:!1},F={lowS:e.lowS,prehash:!1};function H(A,k,T=K){let{seed:R,k2sig:v}=M(A,k,T),U=e;return Qo(U.hash.outputLen,U.nByteLength,U.hmac)(R,v)}f.BASE._setWindowSize(8);function Z(A,k,T,R=F){let v=A;if(k=bt("msgHash",k),T=bt("publicKey",T),"strict"in R)throw new Error("options.strict was renamed to lowS");let{lowS:U,prehash:O}=R,q,$;try{if(typeof v=="string"||v instanceof Uint8Array)try{q=m.fromDER(v)}catch(Nt){if(!(Nt instanceof Hr.Err))throw Nt;q=m.fromCompact(v)}else if(typeof v=="object"&&typeof v.r=="bigint"&&typeof v.s=="bigint"){let{r:Nt,s:Yt}=v;q=new m(Nt,Yt)}else throw new Error("PARSE");$=f.fromHex(T)}catch(Nt){if(Nt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(U&&q.hasHighS())return!1;O&&(k=e.hash(k));let{r:Y,s:rt}=q,X=L(k),j=c(rt),mt=a(X*j),dt=a(Y*j),zt=f.BASE.multiplyAndAddUnsafe($,mt,dt)?.toAffine();return zt?a(zt.x)===Y:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:B,sign:H,verify:Z,ProjectivePoint:f,Signature:m,utils:S}}function E2(t){return{hash:t,hmac:(e,...r)=>tn(t,e,Si(...r)),randomBytes:Br}}function hl(t,e){let r=n=>ll({...t,...E2(n)});return Object.freeze({...r(e),create:r})}var yl=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),dl=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),S2=BigInt(1),Ia=BigInt(2),pl=(t,e)=>(t+e/Ia)/e;function B2(t){let e=yl,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=t*t*t%e,u=f*f*t%e,l=vt(u,r,e)*u%e,h=vt(l,r,e)*u%e,g=vt(h,Ia,e)*f%e,d=vt(g,i,e)*g%e,p=vt(d,o,e)*d%e,y=vt(p,a,e)*p%e,m=vt(y,c,e)*y%e,S=vt(m,a,e)*p%e,x=vt(S,r,e)*u%e,I=vt(x,s,e)*d%e,B=vt(I,n,e)*f%e,E=vt(B,Ia,e);if(!Ta.eql(Ta.sqr(E),t))throw new Error("Cannot find square root");return E}var Ta=Li(yl,void 0,void 0,{sqrt:B2}),nr=hl({a:BigInt(0),b:BigInt(7),Fp:Ta,n:dl,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=dl,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-S2*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=pl(o*t,e),c=pl(-n*t,e),f=ut(t-a*r-c*i,e),u=ut(-a*n-c*o,e),l=f>s,h=u>s;if(l&&(f=e-f),h&&(u=e-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:f,k2neg:h,k2:u}}}},en),j8=BigInt(0);var J8=nr.ProjectivePoint;function gl(){return nr.utils.randomPrivateKey()}async function ml(t,e){let{digest:r}=await $t.digest(e);try{return nr.sign(r,t).toDERRawBytes()}catch(n){throw new nt(String(n),"ERR_INVALID_INPUT")}}async function xl(t,e,r){try{let{digest:n}=await $t.digest(r);return nr.verify(e,n,t)}catch(n){throw new nt(String(n),"ERR_INVALID_INPUT")}}function bl(t){return nr.ProjectivePoint.fromHex(t).toRawBytes(!0)}function vl(t){try{nr.getPublicKey(t,!0)}catch(e){throw new nt(String(e),"ERR_INVALID_PRIVATE_KEY")}}function _a(t){try{nr.ProjectivePoint.fromHex(t)}catch(e){throw new nt(String(e),"ERR_INVALID_PUBLIC_KEY")}}function wl(t){try{return nr.getPublicKey(t,!0)}catch(e){throw new nt(String(e),"ERR_INVALID_PRIVATE_KEY")}}var ei=class{_key;constructor(e){_a(e),this._key=e}async verify(e,r){return xl(this._key,r,e)}marshal(){return bl(this._key)}get bytes(){return Oe.encode({Type:At.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}},ri=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??wl(e),vl(this._key),_a(this._publicKey)}async sign(e){return ml(this._key,e)}get public(){return new ei(this._publicKey)}marshal(){return this._key}get bytes(){return Me.encode({Type:At.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}async id(){let e=await this.public.hash();return ot(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return dn(this.bytes,e);throw new nt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function C2(t){return new ri(t)}function I2(t){return new ei(t)}async function T2(){let t=gl();return new ri(t)}var zr={rsa:Ca,ed25519:wa,secp256k1:La};function El(t){let e=Object.keys(zr).join(" / ");return new nt(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Sl(t){let e=Oe.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case At.RSA:return zr.rsa.unmarshalRsaPublicKey(r);case At.Ed25519:return zr.ed25519.unmarshalEd25519PublicKey(r);case At.Secp256k1:return zr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw El(e.Type??"unknown")}}async function Bl(t){let e=Me.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case At.RSA:return zr.rsa.unmarshalRsaPrivateKey(r);case At.Ed25519:return zr.ed25519.unmarshalEd25519PrivateKey(r);case At.Secp256k1:return zr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw El(e.Type??"RSA")}}var Al=Symbol.for("@libp2p/peer-id");var L2=Symbol.for("nodejs.util.inspect.custom"),Cl=Object.values(Ue).map(t=>t.decoder).reduce((t,e)=>t.or(e),Ue.identity.decoder),Il=114,Ra=36,ka=37,ni=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Al]=!0;toString(){return this.string==null&&(this.string=Ct.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return Se.createV1(Il,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return It(this.multihash.bytes,e);if(typeof e=="string")return Da(e).equals(this);if(e?.multihash?.bytes!=null)return It(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[L2](){return`PeerId(${this.toString()})`}},xn=class extends ni{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},bn=class extends ni{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},vn=class extends ni{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Da(t,e){if(e=e??Cl,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=mr(Ct.decode(`z${t}`));return t.startsWith("12D")?new bn({multihash:r}):t.startsWith("16U")?new vn({multihash:r}):new xn({multihash:r})}return R2(Cl.decode(t))}function R2(t){try{let e=mr(t);if(e.code===xr.code){if(e.digest.length===Ra)return new bn({multihash:e});if(e.digest.length===ka)return new vn({multihash:e})}if(e.code===$t.code)return new xn({multihash:e})}catch{return k2(Se.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function k2(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==Il)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===$t.code)return new xn({multihash:t.multihash});if(e.code===xr.code){if(e.digest.length===Ra)return new bn({multihash:t.multihash});if(e.digest.length===ka)return new vn({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Pa(t,e){return t.length===Ra?new bn({multihash:Ee(xr.code,t),privateKey:e}):t.length===ka?new vn({multihash:Ee(xr.code,t),privateKey:e}):new xn({multihash:await $t.digest(t),publicKey:t,privateKey:e})}var uo;(function(t){let e;t.codec=()=>(e==null&&(e=Mr((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.webtransportCerthashes.push(r.bytes());break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Or(r,t.codec()),t.decode=r=>Kr(r,t.codec())})(uo||(uo={}));var ii;(function(t){let e;t.codec=()=>(e==null&&(e=Mr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),(i.writeDefaults===!0||r.identityKey!=null&&r.identityKey.byteLength>0)&&(n.uint32(10),n.bytes(r.identityKey??new Uint8Array(0))),(i.writeDefaults===!0||r.identitySig!=null&&r.identitySig.byteLength>0)&&(n.uint32(18),n.bytes(r.identitySig??new Uint8Array(0))),r.extensions!=null&&(n.uint32(34),uo.codec().encode(r.extensions,n,{writeDefaults:!1})),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:new Uint8Array(0),identitySig:new Uint8Array(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.identityKey=r.bytes();break;case 2:i.identitySig=r.bytes();break;case 4:i.extensions=uo.codec().decode(r,r.uint32());break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Or(r,t.codec()),t.decode=r=>Kr(r,t.codec())})(ii||(ii={}));async function Tl(t,e,r){let n=await P2(t,_l(e));if(t.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return D2(t.publicKey,n,r)}function D2(t,e,r){return ii.encode({identityKey:t,identitySig:e,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function P2(t,e){if(t.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await Bl(t.privateKey)).sign(e)}async function Na(t){return Pa(t.identityKey)}function Ua(t){return ii.decode(t)}function _l(t){let e=_t("noise-libp2p-static-key:");return yt([e,t],e.length+t.length)}async function Ka(t,e,r){let n=await Pa(e.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=_l(t);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(e.identitySig==null)throw new Error("Signature was missing from message");if(!await Sl(n.publicKey).verify(i,e.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function oi(t){return!(!(t instanceof Uint8Array)||t.length!==32)}var se=kt(Pl(),1);se.default.formatters.b=t=>t==null?"undefined":Ct.baseEncode(t);se.default.formatters.t=t=>t==null?"undefined":we.baseEncode(t);se.default.formatters.m=t=>t==null?"undefined":fn.baseEncode(t);se.default.formatters.p=t=>t==null?"undefined":t.toString();se.default.formatters.c=t=>t==null?"undefined":t.toString();se.default.formatters.k=t=>t==null?"undefined":t.toString();se.default.formatters.a=t=>t==null?"undefined":t.toString();function $2(t){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=t,e.destroy=()=>!0,e.extend=()=>e,e}function Bn(t){let e=$2(`${t}:trace`);return se.default.enabled(`${t}:trace`)&&se.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(e=(0,se.default)(`${t}:trace`)),Object.assign((0,se.default)(t),{error:(0,se.default)(`${t}:error`),trace:e})}var qt=Bn("libp2p:noise");var pe;I0?pe=qt:pe=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function Nl(t){pe(`LOCAL_STATIC_PUBLIC_KEY ${ot(t.publicKey,"hex")}`),pe(`LOCAL_STATIC_PRIVATE_KEY ${ot(t.privateKey,"hex")}`)}function Oa(t){t?(pe(`LOCAL_PUBLIC_EPHEMERAL_KEY ${ot(t.publicKey,"hex")}`),pe(`LOCAL_PRIVATE_EPHEMERAL_KEY ${ot(t.privateKey,"hex")}`)):pe("Missing local ephemeral keys.")}function Ul(t){pe(`REMOTE_STATIC_PUBLIC_KEY ${ot(t,"hex")}`)}function Ma(t){pe(`REMOTE_EPHEMERAL_PUBLIC_KEY ${ot(t,"hex")}`)}function Kl(t){t.cs1&&t.cs2?(pe(`CIPHER_STATE_1 ${t.cs1.n.getUint64()} ${ot(t.cs1.k,"hex")}`),pe(`CIPHER_STATE_2 ${t.cs2.n.getUint64()} ${ot(t.cs2.k,"hex")}`)):pe("Missing cipher state.")}var Y2="Cipherstate has reached maximum n, a new handshake must be performed",po=class{n;bytes;view;constructor(e=0){this.n=e,this.bytes=new Uint8Array(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,e,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>4294967295)throw new Error(Y2)}};var yo=class{crypto;constructor(e){this.crypto=e}encryptWithAd(e,r,n){let i=this.encrypt(e.k,e.n,r,n);return e.n.increment(),i}decryptWithAd(e,r,n,i){let{plaintext:o,valid:s}=this.decrypt(e.k,e.n,r,n,i);return s&&e.n.increment(),{plaintext:o,valid:s}}hasKey(e){return!this.isEmptyKey(e.k)}createEmptyKey(){return new Uint8Array(32)}isEmptyKey(e){let r=this.createEmptyKey();return It(r,e)}encrypt(e,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,e)}encryptAndHash(e,r){let n;return this.hasKey(e.cs)?n=this.encryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,n),n}decrypt(e,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,e,o);return s?{plaintext:s,valid:!0}:{plaintext:new Uint8Array(0),valid:!1}}decryptAndHash(e,r){let n,i=!0;return this.hasKey(e.cs)?{plaintext:n,valid:i}=this.decryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,r),{plaintext:n,valid:i}}dh(e,r){try{let n=this.crypto.generateX25519SharedKey(e,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return qt.error(i),new Uint8Array(32)}}mixHash(e,r){e.h=this.getHash(e.h,r)}getHash(e,r){return this.crypto.hashSHA256(yt([e,r],e.length+r.length))}mixKey(e,r){let[n,i]=this.crypto.getHKDF(e.ck,r);e.cs=this.initializeKey(i),e.ck=n}initializeKey(e){return{k:e,n:new po}}initializeSymmetric(e){let r=_t(e,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(e){if(e.length<=32){let r=new Uint8Array(32);return r.set(e),r}else return this.getHash(e,new Uint8Array(0))}split(e){let[r,n]=this.crypto.getHKDF(e.ck,new Uint8Array(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(e,r){let n=this.encryptWithAd(e,new Uint8Array(0),r),i=this.createEmptyKey(),o=new Uint8Array(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(e,r){return this.decryptWithAd(e,new Uint8Array(0),r.ciphertext)}};var go=class extends yo{initializeInitiator(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(e,r,n){let i=new Uint8Array(0);n!==void 0?e.e=n:e.e=this.crypto.generateX25519KeyPair();let o=e.e.publicKey;this.mixHash(e.ss,o);let s=this.encryptAndHash(e.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(e,r){e.e=this.crypto.generateX25519KeyPair();let n=e.e.publicKey;this.mixHash(e.ss,n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let i=e.s.publicKey,o=this.encryptAndHash(e.ss,i);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let s=this.encryptAndHash(e.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(e,r){let n=e.s.publicKey,i=this.encryptAndHash(e.ss,n);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let o=this.encryptAndHash(e.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(e.ss);return{h:e.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(e,r){return oi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),this.decryptAndHash(e.ss,r.ciphertext)}readMessageB(e,r){if(oi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);i&&oi(n)&&(e.rs=n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(e,r){let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);if(i&&oi(n)&&(e.rs=n),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(e.ss);return{h:e.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(e,r,n){let i=this.createEmptyKey(),o=new Uint8Array(32),s;return e?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:e,mc:0}}sendMessage(e,r,n){let i;if(e.mc===0)i=this.writeMessageA(e.hs,r,n);else if(e.mc===1)i=this.writeMessageB(e.hs,r);else if(e.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(e.hs,r);i=s,e.h=o,e.cs1=a,e.cs2=c}else if(e.mc>2)if(e.i){if(!e.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(e.cs1,r)}else{if(!e.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(e.cs2,r)}else throw new Error("Session invalid.");return e.mc++,i}recvMessage(e,r){let n=new Uint8Array(0),i=!1;if(e.mc===0)({plaintext:n,valid:i}=this.readMessageA(e.hs,r));else if(e.mc===1)({plaintext:n,valid:i}=this.readMessageB(e.hs,r));else if(e.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(e.hs,r);n=s,i=a,e.h=o,e.cs1=c,e.cs2=f}return e.mc++,{plaintext:n,valid:i}}};var mo=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;constructor(e,r,n,i,o,s,a,c){this.isInitiator=e,this.payload=r,this.prologue=n,this.staticKeypair=o,this.connection=s,a&&(this.remotePeer=a),this.xx=c??new go(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(Nl(this.session.hs.s),this.isInitiator){qt.trace("Stage 0 - Initiator starting to send first message.");let e=this.xx.sendMessage(this.session,new Uint8Array(0));await this.connection.write(ic(e)),qt.trace("Stage 0 - Initiator finished sending first message."),Oa(this.session.hs.e)}else{qt.trace("Stage 0 - Responder waiting to receive first message...");let e=ac((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new Ir("xx handshake stage 0 validation fail");qt.trace("Stage 0 - Responder received first message."),Ma(this.session.hs.re)}}async exchange(){if(this.isInitiator){qt.trace("Stage 1 - Initiator waiting to receive first message from responder...");let e=cc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new Ir("xx handshake stage 1 validation fail");qt.trace("Stage 1 - Initiator received the message."),Ma(this.session.hs.re),Ul(this.session.hs.rs),qt.trace("Initiator going to check remote's signature...");try{let i=Ua(r);this.remotePeer=this.remotePeer||await Na(i),await Ka(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new On(`Error occurred while verifying signed payload: ${o.message}`)}qt.trace("All good with the signature!")}else{qt.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(oc(e)),qt.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Oa(this.session.hs.e)}}async finish(){if(this.isInitiator){qt.trace("Stage 2 - Initiator sending third handshake message.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(sc(e)),qt.trace("Stage 2 - Initiator sent message with signed payload.")}else{qt.trace("Stage 2 - Responder waiting for third handshake message...");let e=fc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new Ir("xx handshake stage 2 validation fail");qt.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=Ua(r);this.remotePeer=this.remotePeer||await Na(i),await Ka(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new On(`Error occurred while verifying signed payload: ${o.message}`)}}Kl(this.session)}encrypt(e,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,new Uint8Array(0),e)}decrypt(e,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,new Uint8Array(0),e,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(e,r=!0){if(!e.cs1||!e.cs2)throw new Ir("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?e.cs1:e.cs2:r?e.cs2:e.cs1}setRemoteNoiseExtension(e){e&&(this.remoteExtensions=e)}};function Ol(t){return{xxHandshakeSuccesses:t.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:t.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:t.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:t.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:t.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var xo=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;constructor(e={}){let{staticNoiseKey:r,extensions:n,crypto:i,prologueBytes:o,metrics:s}=e;this.crypto=i??fs,this.extensions=n,this.metrics=s?Ol(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??new Uint8Array(0)}async secureOutbound(e,r,n){let i=Ko(r,{lengthEncoder:rn,lengthDecoder:Un,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(e,r,n){let i=Ko(r,{lengthEncoder:rn,lengthDecoder:Un,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(e){let r=await Tl(e.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(e,r)}async performXXHandshake(e,r){let{isInitiator:n,remotePeer:i,connection:o}=e,s=new mo(n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(e,r){let[n,i]=E0(),o=e.unwrap();return await B0(n,hc(r,this.metrics),o,s=>_n(s,{lengthDecoder:Un}),dc(r,this.metrics),n),i}};function Ml(t={}){return()=>new xo(t)}var Vl=Symbol.for("@libp2p/transport");var Fl;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(Fl||(Fl={}));var bo=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let r=this.index,n=e();return n===void 0&&(this.index=r),n}parseWith(e){let r=e();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let r=this.readChar();if(r===e)return r})}readSeparator(e,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let h=Number.parseInt(l,e);if(!Number.isNaN(h))return h});if(u===void 0)break;if(o*=e,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let r=0;r<e.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[r]=n}return e})}readIPv6Addr(){let e=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=e(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=e(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var ql=45,Z2=15,An=new bo;function Fa(t){if(!(t.length>Z2))return An.new(t).parseWith(()=>An.readIPv4Addr())}function Va(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>ql))return An.new(t).parseWith(()=>An.readIPv6Addr())}function vo(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>ql))return An.new(t).parseWith(()=>An.readIPAddr())}var Z3=parseInt("0xFFFF",16),X3=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function wo(t){return!!Fa(t)}function Eo(t){return!!Va(t)}function So(t){return!!vo(t)}var Gl=wo,tm=Eo,qa=function(t){let e=0;if(t=t.toString().trim(),Gl(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(tm(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let o=Gl(r[n]),s;o&&(s=qa(r[n]),r[n]=ot(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,ot(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(e+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},Wl=function(t,e=0,r){e=~~e,r=r??t.length-e;let n=new DataView(t.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(t[e+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Cn={},Ha={},rm=[[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"]];rm.forEach(t=>{let e=nm(...t);Ha[e.code]=e,Cn[e.name]=e});function nm(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function pt(t){if(typeof t=="number"){if(Ha[t]!=null)return Ha[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(Cn[t]!=null)return Cn[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var DE=pt("ip4"),PE=pt("ip6"),NE=pt("ipcidr");function Ga(t,e){switch(pt(t).code){case 4:case 41:return om(e);case 42:return Zl(e);case 6:case 273:case 33:case 132:return Ql(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Zl(e);case 421:return fm(e);case 444:return Xl(e);case 445:return Xl(e);case 466:return cm(e);default:return ot(e,"base16")}}function Wa(t,e){switch(pt(t).code){case 4:return $l(e);case 41:return $l(e);case 42:return Yl(e);case 6:case 273:case 33:case 132:return $a(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Yl(e);case 421:return sm(e);case 444:return um(e);case 445:return lm(e);case 466:return am(e);default:return _t(e,"base16")}}var za=Object.values(Ue).map(t=>t.decoder),im=function(){let t=za[0].or(za[1]);return za.slice(2).forEach(e=>t=t.or(e)),t}();function $l(t){if(!So(t))throw new Error("invalid ip address");return qa(t)}function om(t){let e=Wl(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!So(e))throw new Error("invalid ip address");return e}function $a(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function Ql(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function Yl(t){let e=_t(t),r=Uint8Array.from(or(e.length));return yt([r,e],r.length+e.length)}function Zl(t){let e=ye(t);if(t=t.slice(Jt(e)),t.length!==e)throw new Error("inconsistent lengths");return ot(t)}function sm(t){let e;t[0]==="Q"||t[0]==="1"?e=mr(Ct.decode(`z${t}`)).bytes:e=Se.parse(t).multihash.bytes;let r=Uint8Array.from(or(e.length));return yt([r,e],r.length+e.length)}function am(t){let e=im.decode(t),r=Uint8Array.from(or(e.length));return yt([r,e],r.length+e.length)}function cm(t){let e=ye(t),r=t.slice(Jt(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+ot(r,"base64url")}function fm(t){let e=ye(t),r=t.slice(Jt(e));if(r.length!==e)throw new Error("inconsistent lengths");return ot(r,"base58btc")}function um(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let r=we.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=$a(n);return yt([r,i],r.length+i.length)}function lm(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let r=we.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=$a(n);return yt([r,i],r.length+i.length)}function Xl(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=ot(e,"base32"),i=Ql(r);return`${n}:${i}`}function jl(t){t=Ya(t);let e=[],r=[],n=null,i=t.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=pt(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw th("invalid address: "+t);if(a.path===!0){n=Ya(i.slice(o).join("/")),e.push([a.code,Wa(a.code,n)]),r.push([a.code,n]);break}let c=Wa(a.code,i[o]);e.push([a.code,c]),r.push([a.code,Ga(a.code,c)])}return{string:Jl(r),bytes:Xa(e),tuples:e,stringTuples:r,path:n}}function Za(t){let e=[],r=[],n=null,i=0;for(;i<t.length;){let o=ye(t,i),s=Jt(o),a=pt(o),c=hm(a,t.slice(i+s));if(c===0){e.push([o]),r.push([o]),i+=s;continue}let f=t.slice(i+s,i+s+c);if(i+=c+s,i>t.length)throw th("Invalid address Uint8Array: "+ot(t,"base16"));e.push([o,f]);let u=Ga(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(t),string:Jl(r),tuples:e,stringTuples:r,path:n}}function Jl(t){let e=[];return t.map(r=>{let n=pt(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),Ya(e.join("/"))}function Xa(t){return yt(t.map(e=>{let r=pt(e[0]),n=Uint8Array.from(or(r.code));return e.length>1&&e[1]!=null&&(n=yt([n,e[1]])),n}))}function hm(t,e){if(t.size>0)return t.size/8;if(t.size===0)return 0;{let r=ye(e instanceof Uint8Array?e:Uint8Array.from(e));return r+Jt(r)}}function Ya(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function th(t){return new Error("Error parsing address: "+t)}var dm=Symbol.for("nodejs.util.inspect.custom"),pm=[pt("dns").code,pt("dns4").code,pt("dns6").code,pt("dnsaddr").code],ym=new Map,rh=Symbol.for("@multiformats/js-multiaddr/multiaddr");function gm(t){return!!t?.[rh]}var eh=class t{bytes;#e;#t;#r;#n;[rh]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=Za(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=jl(e)}else if(gm(e))r=Za(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,r,n,i,o="",s=pt("tcp"),a=pt("udp"),c=pt("ip4"),f=pt("ip6"),u=pt("dns6"),l=pt("ip6zone");for(let[g,d]of this.stringTuples())g===l.code&&(o=`%${d??""}`),pm.includes(g)&&(r=s.name,i=443,n=`${d??""}${o}`,e=g===u.code?6:4),(g===s.code||g===a.code)&&(r=pt(g).name,i=parseInt(d??"")),(g===c.code||g===f.code)&&(r=pt(g).name,n=`${d??""}${o}`,e=g===f.code?6:4);if(e==null||r==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:e,host:n,transport:r,port:i}}protos(){return this.#t.map(([e])=>Object.assign({},pt(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>pt(e).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(e){return e=new t(e),new t(this.toString()+e.toString())}decapsulate(e){let r=e.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new t(n.slice(0,i))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new t(Xa(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===Cn.p2p.code&&e.push([n,i]),n===Cn["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?ot(Ct.decode(`z${n}`),"base58btc"):ot(Se.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return It(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=ym.get(r.name);if(n==null)throw new nt(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new t(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let r=(e??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[dm](){return`Multiaddr(${this.#e})`}};var si=Bn("libp2p:webtransport:stream");async function Qa(t,e,r,n,i){let o=t.writable.getWriter(),s=t.readable.getReader();await o.ready;function a(){let h=n.findIndex(g=>g===l);h!==-1&&(n.splice(h,1),l.timeline.close=Date.now(),i?.(l))}let c=!1,f=!1;(async function(){let h=await o.closed.catch(g=>g);if(h!=null){let g=h.message;g.includes("aborted by the remote server")||g.includes("STOP_SENDING")||si.error(`WebTransport writer closed unexpectedly: streamId=${e} err=${h.message}`)}c=!0,c&&f&&a()})().catch(()=>{si.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await s.closed.catch(g=>g);h!=null&&si.error(`WebTransport reader closed unexpectedly: streamId=${e} err=${h.message}`),f=!0,c&&f&&a()}().catch(()=>{si.error("WebTransport failed to cleanup closed stream")});let u=!1,l={id:e,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){c||(o.abort(h).catch(g=>{si.error("could not abort stream",g)}),c=!0),f=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),a()},async close(h){this.status="closing",await Promise.all([l.closeRead(h),l.closeWrite(h)]),a(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!f){this.readStatus="closing";try{await s.cancel()}catch(g){g.toString().includes("RESET_STREAM")===!0&&(c=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",f=!0}c&&a()},async closeWrite(h){if(!c){c=!0,this.writeStatus="closing";try{await o.close()}catch(g){g.toString().includes("RESET_STREAM")===!0&&(f=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}f&&a()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await s.read();if(h.done){f=!0,c&&a();return}yield new re(h.value)}}(),sink:async function(h){if(u)throw new Error("sink already called on stream");u=!0;try{this.writeStatus="writing";for await(let g of h)if(g instanceof Uint8Array)await o.write(g);else for(let d of g)await o.write(d);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await l.closeWrite()}}};return l}function ja(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async t=>new Promise(()=>{})}}function nh(t,e){return e.filter(n=>!!t.find(i=>It(n,i))).length===e.length}var mm=t=>t.toString().split("/").slice(1),ai=t=>({match:e=>e.length<1?!1:t(e[0])?e.slice(1):!1,pattern:"fn"}),Pt=t=>({match:e=>ai(r=>r===t).match(e),pattern:t}),Ao=()=>({match:t=>ai(e=>typeof e=="string").match(t),pattern:"{string}"}),ih=()=>({match:t=>ai(e=>!isNaN(parseInt(e))).match(t),pattern:"{number}"}),Te=()=>({match:t=>{if(t.length<2||t[0]!=="p2p"&&t[0]!=="ipfs")return!1;if(t[1].startsWith("Q")||t[1].startsWith("1"))try{Ct.decode(`z${t[1]}`)}catch{return!1}else return!1;return t.slice(2)},pattern:"/p2p/{peerid}"}),Bo=()=>({match:t=>{if(t.length<2||t[0]!=="certhash")return!1;try{Hs.decode(t[1])}catch{return!1}return t.slice(2)},pattern:"/certhash/{certhash}"}),Fe=t=>({match:e=>{let r=t.match(e);return r===!1?e:r},pattern:`optional(${t.pattern})`}),Ve=(...t)=>({match:e=>{let r;for(let n of t){let i=n.match(e);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${t.map(e=>e.pattern).join(", ")})`}),Rt=(...t)=>({match:e=>{for(let r of t){let n=r.match(e);if(n===!1)return!1;e=n}return e},pattern:`and(${t.map(e=>e.pattern).join(", ")})`});function Ht(...t){function e(i){let o=mm(i);for(let s of t){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return e(i)!==!1}function n(i){let o=e(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var t0=Rt(Pt("dns4"),Ao()),e0=Rt(Pt("dns6"),Ao()),r0=Rt(Pt("dnsaddr"),Ao()),oh=Rt(Pt("dns"),Ao()),dS=Ht(t0),pS=Ht(e0),yS=Ht(r0),gS=Ht(Ve(oh,r0,t0,e0)),sh=Rt(Pt("ip4"),ai(wo)),ah=Rt(Pt("ip6"),ai(Eo)),ch=Ve(sh,ah),Co=Ve(ch,oh,t0,e0,r0),mS=Ht(sh),xS=Ht(ah),bS=Ht(ch),Io=Rt(Co,Pt("tcp"),ih()),ci=Rt(Co,Pt("udp"),ih()),xm=Ve(Io,ci),vS=Ht(Io),wS=Ht(ci),n0=Rt(ci,Pt("quic")),To=Rt(ci,Pt("quic-v1")),bm=Ve(n0,To),ES=Ht(n0),SS=Ht(To),Ja=Ve(Co,Io,ci,n0,To),fh=Ve(Rt(Ja,Pt("ws"),Fe(Te()))),BS=Ht(fh),uh=Ve(Rt(Ja,Pt("wss"),Fe(Te())),Rt(Ja,Pt("tls"),Pt("ws"),Fe(Te()))),AS=Ht(uh),lh=Rt(xm,Pt("webrtc-direct"),Bo(),Fe(Bo()),Fe(Te())),CS=Ht(lh),hh=Rt(To,Pt("webtransport"),Bo(),Bo(),Fe(Te())),dh=Ht(hh),i0=Ve(fh,uh,Rt(Io,Fe(Te())),Rt(bm,Fe(Te())),Rt(Co,Fe(Te())),lh,hh,Te()),IS=Ht(i0),ph=Rt(i0,Pt("p2p-circuit"),Te()),TS=Ht(ph),vm=Ve(Rt(ph,Pt("webrtc")),Rt(i0,Pt("webrtc"),Fe(Te())),Pt("webrtc")),_S=Ht(vm);var wm=Object.values(Ue).map(t=>t.decoder).reduce((t,e)=>t.or(e));function Em(t){return Ne.decode(wm.decode(t))}function yh(t){if(!dh.matches(t))throw new nt("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let e=t.stringTuples(),r=e.filter(([s,a])=>s===pt("certhash").code).map(([s,a])=>Em(a??"")),n=e.filter(([s,a])=>s===pt("p2p").code).map(([s,a])=>Da(a??""))[0],i=t.toOptions(),o=i.host;return i.family===6&&o?.includes(":")&&(o=`[${o}]`),{url:`https://${o}:${i.port}`,certhashes:r,remotePeer:n}}var ae=Bn("libp2p:webtransport"),o0=class{components;config;constructor(e,r={}){this.components=e,this.config={maxInboundStreams:r.maxInboundStreams??1e3}}[Symbol.toStringTag]="@libp2p/webtransport";[Vl]=!0;async dial(e,r){r?.signal?.throwIfAborted(),ae("dialing %s",e);let n=this.components.peerId;if(n===void 0)throw new Error("Need a local peerid");r=r??{};let{url:i,certhashes:o,remotePeer:s}=yh(e);if(s==null)throw new Error("Need a target peerid");if(o.length===0)throw new Error("Expected multiaddr to contain certhashes");let a,c,f=()=>{};try{let u=!1,l=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{try{if(c!=null){if(c.timeline.close!=null)return;c.timeline.close=Date.now()}if(u)return;l.close(h)}catch(g){ae.error("error closing wt session",g)}finally{u=!0}},l.closed.then(async()=>{await c?.close()}).catch(h=>{ae.error("error on remote wt session close",h),c?.abort(h)}).finally(()=>{c==null&&f()}),a=()=>{a!=null&&r.signal?.removeEventListener("abort",a),f()},r.signal?.addEventListener("abort",a),await l.ready,!await this.authenticateWebTransport(l,n,s,o))throw new Error("Failed to authenticate webtransport");return c={close:async h=>{ae("Closing webtransport"),f()},abort:h=>{ae("aborting webtransport due to passed err",h),f({closeCode:0,reason:h.message})},remoteAddr:e,timeline:{open:Date.now()},...ja()},r?.signal?.throwIfAborted(),await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(l,f),skipProtection:!0})}catch(u){throw ae.error("caught wt session err",u),f({closeCode:0,reason:u.message}),u}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(e,r,n,i){let o=await e.createBidirectionalStream(),s=o.writable.getWriter(),a=o.readable.getReader();await s.ready;let c={source:async function*(){for(;;){let l=await a.read();if(l.value!=null&&(yield l.value),l.done)break}}(),sink:async function(l){for await(let h of l)await s.write(h)}},f=Ml()(),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{ae.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{ae.error(`Failed to close authentication stream reader: ${l.message}`)}),!nh(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(e,r){let n=0,i=this.config;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=e.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f)break;if(s.length>=i.maxInboundStreams)u.writable.close().catch(l=>{ae.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{ae.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await Qa(u,String(n++),"inbound",s,o?.onStreamEnd);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{ae.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await e.createBidirectionalStream(),u=await Qa(f,String(n++),o?.direction??"outbound",s,o?.onStreamEnd);return s.push(u),u},close:async c=>{ae("Closing webtransport muxer"),r()},abort:c=>{ae("Aborting webtransport muxer with err:",c),r({closeCode:0,reason:c.message})},...ja()}}}}createListener(e){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(e){return e.filter(r=>r.protoNames().includes("webtransport"))}};function Sm(t={}){return e=>new o0(e,t)}return _h(Bm);})();
|
|
15
|
+
`+a+e.substr(s+1),o=i-s-1,s=-1,++i}else(e[i]===" "||e[i]===" "||e[i]===",")&&(s=i);return e}function Dp(t){return t.replace(/^\s+/,"")}});var $c=J((Jb,Wc)=>{var Le=gt();_r();Dt();var Hc=Wc.exports=Le.sha256=Le.sha256||{};Le.md.sha256=Le.md.algorithms.sha256=Hc;Hc.create=function(){zc||Pp();var t=null,e=Le.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=Le.util.createBuffer(),t={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Le.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),qc(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=Le.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Ss.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4,h5:t.h5,h6:t.h6,h7:t.h7};qc(l,r,i);var h=Le.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h.putInt32(l.h5),h.putInt32(l.h6),h.putInt32(l.h7),h},n};var Ss=null,zc=!1,Gc=null;function Pp(){Ss=String.fromCharCode(128),Ss+=Le.util.fillString(String.fromCharCode(0),64),Gc=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],zc=!0}function qc(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,g,d,p,y,m,S=r.length();S>=64;){for(f=0;f<16;++f)e[f]=r.getInt32();for(;f<64;++f)n=e[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=e[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,e[f]=n+e[f-7]+i+e[f-16]|0;for(u=t.h0,l=t.h1,h=t.h2,g=t.h3,d=t.h4,p=t.h5,y=t.h6,m=t.h7,f=0;f<64;++f)s=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),a=y^d&(p^y),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|h&(u^l),n=m+s+a+Gc[f]+e[f],i=o+c,m=y,y=p,p=d,d=g+n>>>0,g=h,h=l,l=u,u=n+i>>>0;t.h0=t.h0+u|0,t.h1=t.h1+l|0,t.h2=t.h2+h|0,t.h3=t.h3+g|0,t.h4=t.h4+d|0,t.h5=t.h5+p|0,t.h6=t.h6+y|0,t.h7=t.h7+m|0,S-=64}}});var Zc=J((tv,Yc)=>{var Re=gt();Dt();var Wi=null;Re.util.isNodejs&&!Re.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Wi=Hi());var Np=Yc.exports=Re.prng=Re.prng||{};Np.create=function(t){for(var e={plugin:t,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=t.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();e.pools=n,e.pool=0,e.generate=function(f,u){if(!u)return e.generateSync(f);var l=e.plugin.cipher,h=e.plugin.increment,g=e.plugin.formatKey,d=e.plugin.formatSeed,p=Re.util.createBuffer();e.key=null,y();function y(m){if(m)return u(m);if(p.length()>=f)return u(null,p.getBytes(f));if(e.generated>1048575&&(e.key=null),e.key===null)return Re.util.nextTick(function(){o(y)});var S=l(e.key,e.seed);e.generated+=S.length,p.putBytes(S),e.key=g(l(e.key,h(e.seed))),e.seed=d(l(e.key,e.seed)),Re.util.setImmediate(y)}},e.generateSync=function(f){var u=e.plugin.cipher,l=e.plugin.increment,h=e.plugin.formatKey,g=e.plugin.formatSeed;e.key=null;for(var d=Re.util.createBuffer();d.length()<f;){e.generated>1048575&&(e.key=null),e.key===null&&s();var p=u(e.key,e.seed);e.generated+=p.length,d.putBytes(p),e.key=h(u(e.key,l(e.seed))),e.seed=g(u(e.key,e.seed))}return d.getBytes(f)};function o(f){if(e.pools[0].messageLength>=32)return a(),f();var u=32-e.pools[0].messageLength<<5;e.seedFile(u,function(l,h){if(l)return f(l);e.collect(h),a(),f()})}function s(){if(e.pools[0].messageLength>=32)return a();var f=32-e.pools[0].messageLength<<5;e.collect(e.seedFileSync(f)),a()}function a(){e.reseeds=e.reseeds===4294967295?0:e.reseeds+1;var f=e.plugin.md.create();f.update(e.keyBytes);for(var u=1,l=0;l<32;++l)e.reseeds%u===0&&(f.update(e.pools[l].digest().getBytes()),e.pools[l].start()),u=u<<1;e.keyBytes=f.digest().getBytes(),f.start(),f.update(e.keyBytes);var h=f.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(h),e.generated=0}function c(f){var u=null,l=Re.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(u=function(B){return h.getRandomValues(B)});var g=Re.util.createBuffer();if(u)for(;g.length()<f;){var d=Math.max(1,Math.min(f-g.length(),65536)/4),p=new Uint32Array(Math.floor(d));try{u(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(B){if(!(typeof QuotaExceededError<"u"&&B instanceof QuotaExceededError))throw B}}if(g.length()<f)for(var m,S,x,I=Math.floor(Math.random()*65536);g.length()<f;){S=16807*(I&65535),m=16807*(I>>16),S+=(m&32767)<<16,S+=m>>15,S=(S&2147483647)+(S>>31),I=S&4294967295;for(var y=0;y<3;++y)x=I>>>(y<<3),x^=Math.floor(Math.random()*256),g.putByte(x&255)}return g.getBytes(f)}return Wi?(e.seedFile=function(f,u){Wi.randomBytes(f,function(l,h){if(l)return u(l);u(null,h.toString())})},e.seedFileSync=function(f){return Wi.randomBytes(f).toString()}):(e.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},e.seedFileSync=c),e.collect=function(f){for(var u=f.length,l=0;l<u;++l)e.pools[e.pool].update(f.substr(l,1)),e.pool=e.pool===31?0:e.pool+1},e.collectInt=function(f,u){for(var l="",h=0;h<u;h+=8)l+=String.fromCharCode(f>>h&255);e.collect(l)},e.registerWorker=function(f){if(f===self)e.seedFile=function(l,h){function g(d){var p=d.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),h(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var h=l.data;h.forge&&h.forge.prng&&e.seedFile(h.forge.prng.needed,function(g,d){f.postMessage({forge:{prng:{err:g,bytes:d}}})})};f.addEventListener("message",u)}},e}});var Hn=J((ev,Bs)=>{var Ft=gt();Es();$c();Zc();Dt();(function(){if(Ft.random&&Ft.random.getBytes){Bs.exports=Ft.random;return}(function(t){var e={},r=new Array(4),n=Ft.util.createBuffer();e.formatKey=function(l){var h=Ft.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),Ft.aes._expandKey(l,!1)},e.formatSeed=function(l){var h=Ft.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),l},e.cipher=function(l,h){return Ft.aes._updateBlock(l,h,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},e.increment=function(l){return++l[3],l},e.md=Ft.md.sha256;function i(){var l=Ft.prng.create(e);return l.getBytes=function(h,g){return l.generate(h,g)},l.getBytesSync=function(h){return l.generate(h)},l}var o=i(),s=null,a=Ft.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Ft.options.usePureJavaScript||!Ft.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}t&&(t().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),t().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Ft.random)Ft.random=o;else for(var u in o)Ft.random[u]=o[u];Ft.random.createInstance=i,Bs.exports=Ft.random})(typeof jQuery<"u"?jQuery:null)})()});var Jc=J((rv,jc)=>{var te=gt();Dt();var As=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],Xc=[1,2,3,5],Up=function(t,e){return t<<e&65535|(t&65535)>>16-e},Kp=function(t,e){return(t&65535)>>e|t<<16-e&65535};jc.exports=te.rc2=te.rc2||{};te.rc2.expandKey=function(t,e){typeof t=="string"&&(t=te.util.createBuffer(t)),e=e||128;var r=t,n=t.length(),i=e,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(As[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,As[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,As[r.at(a+1)^r.at(a+o)]);return r};var Qc=function(t,e,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(t=te.rc2.expandKey(t,e),f=0;f<64;f++)l.push(t.getInt16Le());r?(a=function(d){for(f=0;f<4;f++)d[f]+=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),d[f]=Up(d[f],Xc[f]),u++},c=function(d){for(f=0;f<4;f++)d[f]+=l[d[(f+3)%4]&63]}):(a=function(d){for(f=3;f>=0;f--)d[f]=Kp(d[f],Xc[f]),d[f]-=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),u--},c=function(d){for(f=3;f>=0;f--)d[f]-=l[d[(f+3)%4]&63]});var h=function(d){var p=[];for(f=0;f<4;f++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}u=r?0:63;for(var m=0;m<d.length;m++)for(var S=0;S<d[m][0];S++)d[m][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},g=null;return g={start:function(d,p){d&&typeof d=="string"&&(d=te.util.createBuffer(d)),n=!1,i=te.util.createBuffer(),o=p||new te.util.createBuffer,s=d,g.output=o},update:function(d){for(n||i.putBuffer(d);i.length()>=8;)h([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(d){var p=!0;if(r)if(d)p=d(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(d)p=d(8,o,!r);else{var m=o.length(),S=o.at(m-1);S>m?p=!1:o.truncate(S)}return p}},g};te.rc2.startEncrypting=function(t,e,r){var n=te.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};te.rc2.createEncryptionCipher=function(t,e){return Qc(t,e,!0)};te.rc2.startDecrypting=function(t,e,r){var n=te.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};te.rc2.createDecryptionCipher=function(t,e){return Qc(t,e,!1)}});var Zi=J((nv,cf)=>{var Cs=gt();cf.exports=Cs.jsbn=Cs.jsbn||{};var je,Op=0xdeadbeefcafe,tf=(Op&16777215)==15715070;function D(t,e,r){this.data=[],t!=null&&(typeof t=="number"?this.fromNumber(t,e,r):e==null&&typeof t!="string"?this.fromString(t,256):this.fromString(t,e))}Cs.jsbn.BigInteger=D;function at(){return new D(null)}function Mp(t,e,r,n,i,o){for(;--o>=0;){var s=e*this.data[t++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function Fp(t,e,r,n,i,o){for(var s=e&32767,a=e>>15;--o>=0;){var c=this.data[t]&32767,f=this.data[t++]>>15,u=a*c+f*s;c=s*c+((u&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(u>>>15)+a*f+(i>>>30),r.data[n++]=c&1073741823}return i}function ef(t,e,r,n,i,o){for(var s=e&16383,a=e>>14;--o>=0;){var c=this.data[t]&16383,f=this.data[t++]>>14,u=a*c+f*s;c=s*c+((u&16383)<<14)+r.data[n]+i,i=(c>>28)+(u>>14)+a*f,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(D.prototype.am=ef,je=28):tf&&navigator.appName=="Microsoft Internet Explorer"?(D.prototype.am=Fp,je=30):tf&&navigator.appName!="Netscape"?(D.prototype.am=Mp,je=26):(D.prototype.am=ef,je=28);D.prototype.DB=je;D.prototype.DM=(1<<je)-1;D.prototype.DV=1<<je;var Is=52;D.prototype.FV=Math.pow(2,Is);D.prototype.F1=Is-je;D.prototype.F2=2*je-Is;var Vp="0123456789abcdefghijklmnopqrstuvwxyz",$i=new Array,sn,ue;sn="0".charCodeAt(0);for(ue=0;ue<=9;++ue)$i[sn++]=ue;sn="a".charCodeAt(0);for(ue=10;ue<36;++ue)$i[sn++]=ue;sn="A".charCodeAt(0);for(ue=10;ue<36;++ue)$i[sn++]=ue;function rf(t){return Vp.charAt(t)}function nf(t,e){var r=$i[t.charCodeAt(e)];return r??-1}function qp(t){for(var e=this.t-1;e>=0;--e)t.data[e]=this.data[e];t.t=this.t,t.s=this.s}function Hp(t){this.t=1,this.s=t<0?-1:0,t>0?this.data[0]=t:t<-1?this.data[0]=t+this.DV:this.t=0}function pr(t){var e=at();return e.fromInt(t),e}function zp(t,e){var r;if(e==16)r=4;else if(e==8)r=3;else if(e==256)r=8;else if(e==2)r=1;else if(e==32)r=5;else if(e==4)r=2;else{this.fromRadix(t,e);return}this.t=0,this.s=0;for(var n=t.length,i=!1,o=0;--n>=0;){var s=r==8?t[n]&255:nf(t,n);if(s<0){t.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&t[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&D.ZERO.subTo(this,this)}function Gp(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function Wp(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(t==16)e=4;else if(t==8)e=3;else if(t==2)e=1;else if(t==32)e=5;else if(t==4)e=2;else return this.toRadix(t);var r=(1<<e)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%e;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=rf(n));s>=0;)a<e?(n=(this.data[s]&(1<<a)-1)<<e-a,n|=this.data[--s]>>(a+=this.DB-e)):(n=this.data[s]>>(a-=e)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=rf(n));return i?o:"0"}function $p(){var t=at();return D.ZERO.subTo(this,t),t}function Yp(){return this.s<0?this.negate():this}function Zp(t){var e=this.s-t.s;if(e!=0)return e;var r=this.t;if(e=r-t.t,e!=0)return this.s<0?-e:e;for(;--r>=0;)if((e=this.data[r]-t.data[r])!=0)return e;return 0}function Yi(t){var e=1,r;return(r=t>>>16)!=0&&(t=r,e+=16),(r=t>>8)!=0&&(t=r,e+=8),(r=t>>4)!=0&&(t=r,e+=4),(r=t>>2)!=0&&(t=r,e+=2),(r=t>>1)!=0&&(t=r,e+=1),e}function Xp(){return this.t<=0?0:this.DB*(this.t-1)+Yi(this.data[this.t-1]^this.s&this.DM)}function Qp(t,e){var r;for(r=this.t-1;r>=0;--r)e.data[r+t]=this.data[r];for(r=t-1;r>=0;--r)e.data[r]=0;e.t=this.t+t,e.s=this.s}function jp(t,e){for(var r=t;r<this.t;++r)e.data[r-t]=this.data[r];e.t=Math.max(this.t-t,0),e.s=this.s}function Jp(t,e){var r=t%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(t/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)e.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)e.data[a]=0;e.data[o]=s,e.t=this.t+o+1,e.s=this.s,e.clamp()}function ty(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t){e.t=0;return}var n=t%this.DB,i=this.DB-n,o=(1<<n)-1;e.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)e.data[s-r-1]|=(this.data[s]&o)<<i,e.data[s-r]=this.data[s]>>n;n>0&&(e.data[this.t-r-1]|=(this.s&o)<<i),e.t=this.t-r,e.clamp()}function ey(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]-t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n-=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n-=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e.data[r++]=this.DV+n:n>0&&(e.data[r++]=n),e.t=r,e.clamp()}function ry(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e.data[i]=0;for(i=0;i<n.t;++i)e.data[i+r.t]=r.am(0,n.data[i],e,i,0,r.t);e.s=0,e.clamp(),this.s!=t.s&&D.ZERO.subTo(e,e)}function ny(t){for(var e=this.abs(),r=t.t=2*e.t;--r>=0;)t.data[r]=0;for(r=0;r<e.t-1;++r){var n=e.am(r,e.data[r],t,2*r,0,1);(t.data[r+e.t]+=e.am(r+1,2*e.data[r],t,2*r+1,n,e.t-r-1))>=e.DV&&(t.data[r+e.t]-=e.DV,t.data[r+e.t+1]=1)}t.t>0&&(t.data[t.t-1]+=e.am(r,e.data[r],t,2*r,0,1)),t.s=0,t.clamp()}function iy(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=at());var o=at(),s=this.s,a=t.s,c=this.DB-Yi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),h=this.FV/l,g=(1<<this.F1)/l,d=1<<this.F2,p=r.t,y=p-f,m=e??at();for(o.dlShiftTo(y,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),D.ONE.dlShiftTo(f,m),m.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--y>=0;){var S=r.data[--p]==u?this.DM:Math.floor(r.data[p]*h+(r.data[p-1]+d)*g);if((r.data[p]+=o.am(0,S,r,y,0,f))<S)for(o.dlShiftTo(y,m),r.subTo(m,r);r.data[p]<--S;)r.subTo(m,r)}e!=null&&(r.drShiftTo(f,e),s!=a&&D.ZERO.subTo(e,e)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&D.ZERO.subTo(r,r)}}}function oy(t){var e=at();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(D.ZERO)>0&&t.subTo(e,e),e}function Lr(t){this.m=t}function sy(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function ay(t){return t}function cy(t){t.divRemTo(this.m,null,t)}function fy(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function uy(t,e){t.squareTo(e),this.reduce(e)}Lr.prototype.convert=sy;Lr.prototype.revert=ay;Lr.prototype.reduce=cy;Lr.prototype.mulTo=fy;Lr.prototype.sqrTo=uy;function ly(){if(this.t<1)return 0;var t=this.data[0];if(!(t&1))return 0;var e=t&3;return e=e*(2-(t&15)*e)&15,e=e*(2-(t&255)*e)&255,e=e*(2-((t&65535)*e&65535))&65535,e=e*(2-t*e%this.DV)%this.DV,e>0?this.DV-e:-e}function Rr(t){this.m=t,this.mp=t.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<t.DB-15)-1,this.mt2=2*t.t}function hy(t){var e=at();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(D.ZERO)>0&&this.m.subTo(e,e),e}function dy(t){var e=at();return t.copyTo(e),this.reduce(e),e}function py(t){for(;t.t<=this.mt2;)t.data[t.t++]=0;for(var e=0;e<this.m.t;++e){var r=t.data[e]&32767,n=r*this.mpl+((r*this.mph+(t.data[e]>>15)*this.mpl&this.um)<<15)&t.DM;for(r=e+this.m.t,t.data[r]+=this.m.am(0,n,t,e,0,this.m.t);t.data[r]>=t.DV;)t.data[r]-=t.DV,t.data[++r]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)}function yy(t,e){t.squareTo(e),this.reduce(e)}function gy(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Rr.prototype.convert=hy;Rr.prototype.revert=dy;Rr.prototype.reduce=py;Rr.prototype.mulTo=gy;Rr.prototype.sqrTo=yy;function my(){return(this.t>0?this.data[0]&1:this.s)==0}function xy(t,e){if(t>4294967295||t<1)return D.ONE;var r=at(),n=at(),i=e.convert(this),o=Yi(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<<o)>0)e.mulTo(n,i,r);else{var s=r;r=n,n=s}return e.revert(r)}function by(t,e){var r;return t<256||e.isEven()?r=new Lr(e):r=new Rr(e),this.exp(t,r)}D.prototype.copyTo=qp;D.prototype.fromInt=Hp;D.prototype.fromString=zp;D.prototype.clamp=Gp;D.prototype.dlShiftTo=Qp;D.prototype.drShiftTo=jp;D.prototype.lShiftTo=Jp;D.prototype.rShiftTo=ty;D.prototype.subTo=ey;D.prototype.multiplyTo=ry;D.prototype.squareTo=ny;D.prototype.divRemTo=iy;D.prototype.invDigit=ly;D.prototype.isEven=my;D.prototype.exp=xy;D.prototype.toString=Wp;D.prototype.negate=$p;D.prototype.abs=Yp;D.prototype.compareTo=Zp;D.prototype.bitLength=Xp;D.prototype.mod=oy;D.prototype.modPowInt=by;D.ZERO=pr(0);D.ONE=pr(1);function vy(){var t=at();return this.copyTo(t),t}function wy(){if(this.s<0){if(this.t==1)return this.data[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this.data[0];if(this.t==0)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]}function Ey(){return this.t==0?this.s:this.data[0]<<24>>24}function Sy(){return this.t==0?this.s:this.data[0]<<16>>16}function By(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function Ay(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Cy(t){if(t==null&&(t=10),this.signum()==0||t<2||t>36)return"0";var e=this.chunkSize(t),r=Math.pow(t,e),n=pr(r),i=at(),o=at(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s}function Iy(t,e){this.fromInt(0),e==null&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,s=0,a=0;a<t.length;++a){var c=nf(t,a);if(c<0){t.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=e*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(s,0)),i&&D.ZERO.subTo(this,this)}function Ty(t,e,r){if(typeof e=="number")if(t<2)this.fromInt(1);else for(this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(D.ONE.shiftLeft(t-1),Ts,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(D.ONE.shiftLeft(t-1),this);else{var n=new Array,i=t&7;n.length=(t>>3)+1,e.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function _y(){var t=this.t,e=new Array;e[0]=this.s;var r=this.DB-t*this.DB%8,n,i=0;if(t-- >0)for(r<this.DB&&(n=this.data[t]>>r)!=(this.s&this.DM)>>r&&(e[i++]=n|this.s<<this.DB-r);t>=0;)r<8?(n=(this.data[t]&(1<<r)-1)<<8-r,n|=this.data[--t]>>(r+=this.DB-8)):(n=this.data[t]>>(r-=8)&255,r<=0&&(r+=this.DB,--t)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(e[i++]=n);return e}function Ly(t){return this.compareTo(t)==0}function Ry(t){return this.compareTo(t)<0?this:t}function ky(t){return this.compareTo(t)>0?this:t}function Dy(t,e,r){var n,i,o=Math.min(t.t,this.t);for(n=0;n<o;++n)r.data[n]=e(this.data[n],t.data[n]);if(t.t<this.t){for(i=t.s&this.DM,n=o;n<this.t;++n)r.data[n]=e(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<t.t;++n)r.data[n]=e(i,t.data[n]);r.t=t.t}r.s=e(this.s,t.s),r.clamp()}function Py(t,e){return t&e}function Ny(t){var e=at();return this.bitwiseTo(t,Py,e),e}function Ts(t,e){return t|e}function Uy(t){var e=at();return this.bitwiseTo(t,Ts,e),e}function of(t,e){return t^e}function Ky(t){var e=at();return this.bitwiseTo(t,of,e),e}function sf(t,e){return t&~e}function Oy(t){var e=at();return this.bitwiseTo(t,sf,e),e}function My(){for(var t=at(),e=0;e<this.t;++e)t.data[e]=this.DM&~this.data[e];return t.t=this.t,t.s=~this.s,t}function Fy(t){var e=at();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function Vy(t){var e=at();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function qy(t){if(t==0)return-1;var e=0;return t&65535||(t>>=16,e+=16),t&255||(t>>=8,e+=8),t&15||(t>>=4,e+=4),t&3||(t>>=2,e+=2),t&1||++e,e}function Hy(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+qy(this.data[t]);return this.s<0?this.t*this.DB:-1}function zy(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function Gy(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=zy(this.data[r]^e);return t}function Wy(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function $y(t,e){var r=D.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function Yy(t){return this.changeBit(t,Ts)}function Zy(t){return this.changeBit(t,sf)}function Xy(t){return this.changeBit(t,of)}function Qy(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]+t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n+=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n+=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e.data[r++]=n:n<-1&&(e.data[r++]=this.DV+n),e.t=r,e.clamp()}function jy(t){var e=at();return this.addTo(t,e),e}function Jy(t){var e=at();return this.subTo(t,e),e}function t1(t){var e=at();return this.multiplyTo(t,e),e}function e1(t){var e=at();return this.divRemTo(t,e,null),e}function r1(t){var e=at();return this.divRemTo(t,null,e),e}function n1(t){var e=at(),r=at();return this.divRemTo(t,e,r),new Array(e,r)}function i1(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function o1(t,e){if(t!=0){for(;this.t<=e;)this.data[this.t++]=0;for(this.data[e]+=t;this.data[e]>=this.DV;)this.data[e]-=this.DV,++e>=this.t&&(this.data[this.t++]=0),++this.data[e]}}function zn(){}function af(t){return t}function s1(t,e,r){t.multiplyTo(e,r)}function a1(t,e){t.squareTo(e)}zn.prototype.convert=af;zn.prototype.revert=af;zn.prototype.mulTo=s1;zn.prototype.sqrTo=a1;function c1(t){return this.exp(t,new zn)}function f1(t,e,r){var n=Math.min(this.t+t.t,e);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,t.data[n],r,n,0,this.t);for(i=Math.min(t.t,e);n<i;++n)this.am(0,t.data[n],r,n,0,e-n);r.clamp()}function u1(t,e,r){--e;var n=r.t=this.t+t.t-e;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(e-this.t,0);n<t.t;++n)r.data[this.t+n-e]=this.am(e-n,t.data[n],r,0,0,this.t+n-e);r.clamp(),r.drShiftTo(1,r)}function an(t){this.r2=at(),this.q3=at(),D.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function l1(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=at();return t.copyTo(e),this.reduce(e),e}function h1(t){return t}function d1(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);t.compareTo(this.m)>=0;)t.subTo(this.m,t)}function p1(t,e){t.squareTo(e),this.reduce(e)}function y1(t,e,r){t.multiplyTo(e,r),this.reduce(r)}an.prototype.convert=l1;an.prototype.revert=h1;an.prototype.reduce=d1;an.prototype.mulTo=y1;an.prototype.sqrTo=p1;function g1(t,e){var r=t.bitLength(),n,i=pr(1),o;if(r<=0)return i;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?o=new Lr(e):e.isEven()?o=new an(e):o=new Rr(e);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=at();for(o.sqrTo(s[1],u);a<=f;)s[a]=at(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=t.t-1,h,g=!0,d=at(),p;for(r=Yi(t.data[l])-1;l>=0;){for(r>=c?h=t.data[l]>>r-c&f:(h=(t.data[l]&(1<<r+1)-1)<<c-r,l>0&&(h|=t.data[l-1]>>this.DB+r-c)),a=n;!(h&1);)h>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[h].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,d),o.sqrTo(d,i),a-=2;a>0?o.sqrTo(i,d):(p=i,i=d,d=p),o.mulTo(d,s[h],i)}for(;l>=0&&!(t.data[l]&1<<r);)o.sqrTo(i,d),p=i,i=d,d=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function m1(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return e;for(i<o&&(o=i),o>0&&(e.rShiftTo(o,e),r.rShiftTo(o,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function x1(t){if(t<=0)return 0;var e=this.DV%t,r=this.s<0?t-1:0;if(this.t>0)if(e==0)r=this.data[0]%t;else for(var n=this.t-1;n>=0;--n)r=(e*r+this.data[n])%t;return r}function b1(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return D.ZERO;for(var r=t.clone(),n=this.clone(),i=pr(1),o=pr(0),s=pr(0),a=pr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),e?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(t,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(t,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),e?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(t,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(t,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),e&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),e&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(D.ONE)!=0)return D.ZERO;if(a.compareTo(t)>=0)return a.subtract(t);if(a.signum()<0)a.addTo(t,a);else return a;return a.signum()<0?a.add(t):a}var ve=[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],v1=(1<<26)/ve[ve.length-1];function w1(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=ve[ve.length-1]){for(e=0;e<ve.length;++e)if(r.data[0]==ve[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<ve.length;){for(var n=ve[e],i=e+1;i<ve.length&&n<v1;)n*=ve[i++];for(n=r.modInt(n);e<i;)if(n%ve[e++]==0)return!1}return r.millerRabin(t)}function E1(t){var e=this.subtract(D.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=S1(),o,s=0;s<t;++s){do o=new D(this.bitLength(),i);while(o.compareTo(D.ONE)<=0||o.compareTo(e)>=0);var a=o.modPow(n,this);if(a.compareTo(D.ONE)!=0&&a.compareTo(e)!=0){for(var c=1;c++<r&&a.compareTo(e)!=0;)if(a=a.modPowInt(2,this),a.compareTo(D.ONE)==0)return!1;if(a.compareTo(e)!=0)return!1}}return!0}function S1(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}D.prototype.chunkSize=By;D.prototype.toRadix=Cy;D.prototype.fromRadix=Iy;D.prototype.fromNumber=Ty;D.prototype.bitwiseTo=Dy;D.prototype.changeBit=$y;D.prototype.addTo=Qy;D.prototype.dMultiply=i1;D.prototype.dAddOffset=o1;D.prototype.multiplyLowerTo=f1;D.prototype.multiplyUpperTo=u1;D.prototype.modInt=x1;D.prototype.millerRabin=E1;D.prototype.clone=vy;D.prototype.intValue=wy;D.prototype.byteValue=Ey;D.prototype.shortValue=Sy;D.prototype.signum=Ay;D.prototype.toByteArray=_y;D.prototype.equals=Ly;D.prototype.min=Ry;D.prototype.max=ky;D.prototype.and=Ny;D.prototype.or=Uy;D.prototype.xor=Ky;D.prototype.andNot=Oy;D.prototype.not=My;D.prototype.shiftLeft=Fy;D.prototype.shiftRight=Vy;D.prototype.getLowestSetBit=Hy;D.prototype.bitCount=Gy;D.prototype.testBit=Wy;D.prototype.setBit=Yy;D.prototype.clearBit=Zy;D.prototype.flipBit=Xy;D.prototype.add=jy;D.prototype.subtract=Jy;D.prototype.multiply=t1;D.prototype.divide=e1;D.prototype.remainder=r1;D.prototype.divideAndRemainder=n1;D.prototype.modPow=g1;D.prototype.modInverse=b1;D.prototype.pow=c1;D.prototype.gcd=m1;D.prototype.isProbablePrime=w1});var df=J((iv,hf)=>{var ke=gt();_r();Dt();var uf=hf.exports=ke.sha1=ke.sha1||{};ke.md.sha1=ke.md.algorithms.sha1=uf;uf.create=function(){lf||B1();var t=null,e=ke.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=ke.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=ke.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),ff(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=ke.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(_s.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4};ff(l,r,i);var h=ke.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h},n};var _s=null,lf=!1;function B1(){_s=String.fromCharCode(128),_s+=ke.util.fillString(String.fromCharCode(0),64),lf=!0}function ff(t,e,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=t.h0,o=t.h1,s=t.h2,a=t.h3,c=t.h4,u=0;u<16;++u)n=r.getInt32(),e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<20;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<32;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<40;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<60;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o&s|a&(o^s),n=(i<<5|i>>>27)+f+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<80;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;t.h0=t.h0+i|0,t.h1=t.h1+o|0,t.h2=t.h2+s|0,t.h3=t.h3+a|0,t.h4=t.h4+c|0,l-=64}}});var gf=J((ov,yf)=>{var De=gt();Dt();Hn();df();var pf=yf.exports=De.pkcs1=De.pkcs1||{};pf.encode_rsa_oaep=function(t,e,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=De.md.sha1.create(),s||(s=o);var a=Math.ceil(t.n.bitLength()/8),c=a-2*o.digestLength-2;if(e.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=e.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",h=c-e.length,g=0;g<h;g++)l+="\0";var d=u.getBytes()+l+""+e;if(!i)i=De.random.getBytes(o.digestLength);else if(i.length!==o.digestLength){var f=new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw f.seedLength=i.length,f.digestLength=o.digestLength,f}var p=Xi(i,a-o.digestLength-1,s),y=De.util.xorBytes(d,p,d.length),m=Xi(y,o.digestLength,s),S=De.util.xorBytes(i,m,i.length);return"\0"+S+y};pf.decode_rsa_oaep=function(t,e,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(t.n.bitLength()/8);if(e.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=e.length,y.expectedLength=s,y}if(i===void 0?i=De.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=e.charAt(0),f=e.substring(1,i.digestLength+1),u=e.substring(1+i.digestLength),l=Xi(u,i.digestLength,o),h=De.util.xorBytes(f,l,f.length),g=Xi(h,s-i.digestLength-1,o),d=De.util.xorBytes(u,g,u.length),p=d.substring(0,i.digestLength),y=c!=="\0",m=0;m<i.digestLength;++m)y|=a.charAt(m)!==p.charAt(m);for(var S=1,x=i.digestLength,I=i.digestLength;I<d.length;I++){var B=d.charCodeAt(I),E=B&1^1,L=S?65534:0;y|=B&L,S=S&E,x+=S}if(y||d.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(x+1)};function Xi(t,e,r){r||(r=De.md.sha1.create());for(var n="",i=Math.ceil(e/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(t+s),n+=r.digest().getBytes()}return n.substring(0,e)}});var mf=J((sv,Ls)=>{var yr=gt();Dt();Zi();Hn();(function(){if(yr.prime){Ls.exports=yr.prime;return}var t=Ls.exports=yr.prime=yr.prime||{},e=yr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var i=function(l,h){return l|h};t.generateProbablePrime=function(l,h,g){typeof h=="function"&&(g=h,h={}),h=h||{};var d=h.algorithm||"PRIMEINC";typeof d=="string"&&(d={name:d}),d.options=d.options||{};var p=h.prng||yr.random,y={nextBytes:function(m){for(var S=p.getBytesSync(m.length),x=0;x<m.length;++x)m[x]=S.charCodeAt(x)}};if(d.name==="PRIMEINC")return o(l,y,d.options,g);throw new Error("Invalid prime generation algorithm: "+d.name)};function o(l,h,g,d){return"workers"in g?c(l,h,g,d):s(l,h,g,d)}function s(l,h,g,d){var p=f(l,h),y=0,m=u(p.bitLength());"millerRabinTests"in g&&(m=g.millerRabinTests);var S=10;"maxBlockTime"in g&&(S=g.maxBlockTime),a(p,l,h,y,m,S,d)}function a(l,h,g,d,p,y,m){var S=+new Date;do{if(l.bitLength()>h&&(l=f(h,g)),l.isProbablePrime(p))return m(null,l);l.dAddOffset(r[d++%8],0)}while(y<0||+new Date-S<y);yr.util.setImmediate(function(){a(l,h,g,d,p,y,m)})}function c(l,h,g,d){if(typeof Worker>"u")return s(l,h,g,d);var p=f(l,h),y=g.workers,m=g.workLoad||100,S=m*30/8,x=g.workerScript||"forge/prime.worker.js";if(y===-1)return yr.util.estimateCores(function(B,E){B&&(E=2),y=E-1,I()});I();function I(){y=Math.max(1,y);for(var B=[],E=0;E<y;++E)B[E]=new Worker(x);for(var L=y,E=0;E<y;++E)B[E].addEventListener("message",N);var _=!1;function N(M){if(!_){--L;var K=M.data;if(K.found){for(var F=0;F<B.length;++F)B[F].terminate();return _=!0,d(null,new e(K.prime,16))}p.bitLength()>l&&(p=f(l,h));var H=p.toString(16);M.target.postMessage({hex:H,workLoad:m}),p.dAddOffset(S,0)}}}}function f(l,h){var g=new e(l,h),d=l-1;return g.testBit(d)||g.bitwiseTo(e.ONE.shiftLeft(d),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var ji=J((av,Bf)=>{var W=gt();qn();Zi();Ui();gf();mf();Hn();Dt();typeof st>"u"&&(st=W.jsbn.BigInteger);var st,Rs=W.util.isNodejs?Hi():null,w=W.asn1,le=W.util;W.pki=W.pki||{};Bf.exports=W.pki.rsa=W.rsa=W.rsa||{};var Q=W.pki,A1=[6,4,2,4,2,4,6,2],C1={name:"PrivateKeyInfo",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:w.Class.UNIVERSAL,type:w.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:w.Class.UNIVERSAL,type:w.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},I1={name:"RSAPrivateKey",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},T1={name:"RSAPublicKey",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},_1=W.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:w.Class.UNIVERSAL,type:w.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:w.Class.UNIVERSAL,type:w.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},L1={name:"DigestInfo",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:w.Class.UNIVERSAL,type:w.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:w.Class.UNIVERSAL,type:w.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:w.Class.UNIVERSAL,type:w.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},R1=function(t){var e;if(t.algorithm in Q.oids)e=Q.oids[t.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=t.algorithm,r}var n=w.oidToDer(e).getBytes(),i=w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[]),o=w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[]);o.value.push(w.create(w.Class.UNIVERSAL,w.Type.OID,!1,n)),o.value.push(w.create(w.Class.UNIVERSAL,w.Type.NULL,!1,""));var s=w.create(w.Class.UNIVERSAL,w.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(o),i.value.push(s),w.toDer(i).getBytes()},Ef=function(t,e,r){if(r)return t.modPow(e.e,e.n);if(!e.p||!e.q)return t.modPow(e.d,e.n);e.dP||(e.dP=e.d.mod(e.p.subtract(st.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(st.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new st(W.util.bytesToHex(W.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(st.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),o=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(o)<0;)i=i.add(e.p);var s=i.subtract(o).multiply(e.qInv).mod(e.p).multiply(e.q).add(o);return s=s.multiply(n.modInverse(e.n)).mod(e.n),s};Q.rsa.encrypt=function(t,e,r){var n=r,i,o=Math.ceil(e.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=Sf(t,e,r)):(i=W.util.createBuffer(),i.putBytes(t));for(var s=new st(i.toHex(),16),a=Ef(s,e,n),c=a.toString(16),f=W.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8);if(t.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=t.length,o.expected=i,o}var s=new st(W.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Ef(s,e,r),c=a.toString(16),f=W.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),n!==!1?Qi(f.getBytes(),e,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(t,e,r){typeof t=="string"&&(t=parseInt(t,10)),t=t||2048,r=r||{};var n=r.prng||W.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:t,rng:i,eInt:e||65537,e:new st(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};Q.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new st(null);r.fromInt(30);for(var n=0,i=function(l,h){return l|h},o=+new Date,s,a=0;t.keys===null&&(e<=0||a<e);){if(t.state===0){var c=t.p===null?t.pBits:t.qBits,f=c-1;t.pqState===0?(t.num=new st(c,t.rng),t.num.testBit(f)||t.num.bitwiseTo(st.ONE.shiftLeft(f),i,t.num),t.num.dAddOffset(31-t.num.mod(r).byteValue(),0),n=0,++t.pqState):t.pqState===1?t.num.bitLength()>c?t.pqState=0:t.num.isProbablePrime(D1(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(A1[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(st.ONE).gcd(t.e).compareTo(st.ONE)===0?3:0:t.pqState===3&&(t.pqState=0,t.p===null?t.p=t.num:t.q=t.num,t.p!==null&&t.q!==null&&++t.state,t.num=null)}else if(t.state===1)t.p.compareTo(t.q)<0&&(t.num=t.p,t.p=t.q,t.q=t.num),++t.state;else if(t.state===2)t.p1=t.p.subtract(st.ONE),t.q1=t.q.subtract(st.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(st.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var u=t.e.modInverse(t.phi);t.keys={privateKey:Q.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:Q.rsa.setPublicKey(t.n,t.e)}}s=+new Date,a+=s-o,o=s}return t.keys!==null};Q.rsa.generateKeyPair=function(t,e,r,n){if(arguments.length===1?typeof t=="object"?(r=t,t=void 0):typeof t=="function"&&(n=t,t=void 0):arguments.length===2?typeof t=="number"?typeof e=="function"?(n=e,e=void 0):typeof e!="number"&&(r=e,e=void 0):(r=t,n=e,t=void 0,e=void 0):arguments.length===3&&(typeof e=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=e,e=void 0)),r=r||{},t===void 0&&(t=r.bits||2048),e===void 0&&(e=r.e||65537),!W.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(xf("generateKeyPair"))return Rs.generateKeyPair("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,f){if(a)return n(a);n(null,{privateKey:Q.privateKeyFromPem(f),publicKey:Q.publicKeyFromPem(c)})});if(bf("generateKey")&&bf("exportKey"))return le.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:wf(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return le.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(w.fromDer(W.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(vf("generateKey")&&vf("exportKey")){var i=le.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:wf(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=le.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,h=Q.privateKeyFromAsn1(w.fromDer(W.util.createBuffer(l)));n(null,{privateKey:h,publicKey:Q.setRsaPublicKey(h.n,h.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(xf("generateKeyPairSync")){var o=Rs.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:Q.privateKeyFromPem(o.privateKey),publicKey:Q.publicKeyFromPem(o.publicKey)}}}var s=Q.rsa.createKeyPairGenerationState(t,e,r);if(!n)return Q.rsa.stepKeyPairGenerationState(s,0),s.keys;k1(s,r,n)};Q.setRsaPublicKey=Q.rsa.setPublicKey=function(t,e){var r={n:t,e};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,f){return Sf(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return W.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return Q.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,f){f=Qi(f,r,!0);var u=w.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!w.validate(u,L1,l,h)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=h,g}var d=w.derToOid(l.algorithmIdentifier);if(!(d===W.oids.md2||d===W.oids.md5||d===W.oids.sha1||d===W.oids.sha224||d===W.oids.sha256||d===W.oids.sha384||d===W.oids.sha512||d===W.oids["sha512-224"]||d===W.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=d,g}if((d===W.oids.md2||d===W.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=Qi(f,r,!0),c===f}});var a=Q.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};Q.setRsaPrivateKey=Q.rsa.setPrivateKey=function(t,e,r,n,i,o,s,a){var c={n:t,e,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var h=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:Qi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,d){return W.pkcs1.decode_rsa_oaep(d,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(h,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:R1},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var h=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(h,c,l)},c};Q.wrapRsaPrivateKey=function(t){return w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,w.integerToDer(0).getBytes()),w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.OID,!1,w.oidToDer(Q.oids.rsaEncryption).getBytes()),w.create(w.Class.UNIVERSAL,w.Type.NULL,!1,"")]),w.create(w.Class.UNIVERSAL,w.Type.OCTETSTRING,!1,w.toDer(t).getBytes())])};Q.privateKeyFromAsn1=function(t){var e={},r=[];if(w.validate(t,C1,e,r)&&(t=w.fromDer(W.util.createBuffer(e.privateKey))),e={},r=[],!w.validate(t,I1,e,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=W.util.createBuffer(e.privateKeyModulus).toHex(),o=W.util.createBuffer(e.privateKeyPublicExponent).toHex(),s=W.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=W.util.createBuffer(e.privateKeyPrime1).toHex(),c=W.util.createBuffer(e.privateKeyPrime2).toHex(),f=W.util.createBuffer(e.privateKeyExponent1).toHex(),u=W.util.createBuffer(e.privateKeyExponent2).toHex(),l=W.util.createBuffer(e.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new st(i,16),new st(o,16),new st(s,16),new st(a,16),new st(c,16),new st(f,16),new st(u,16),new st(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(t){return w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,w.integerToDer(0).getBytes()),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.n)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.e)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.d)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.p)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.q)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.dP)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.dQ)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.qInv))])};Q.publicKeyFromAsn1=function(t){var e={},r=[];if(w.validate(t,_1,e,r)){var n=w.derToOid(e.publicKeyOid);if(n!==Q.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}t=e.rsaPublicKey}if(r=[],!w.validate(t,T1,e,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=W.util.createBuffer(e.publicKeyModulus).toHex(),s=W.util.createBuffer(e.publicKeyExponent).toHex();return Q.setRsaPublicKey(new st(o,16),new st(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(t){return w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.OID,!1,w.oidToDer(Q.oids.rsaEncryption).getBytes()),w.create(w.Class.UNIVERSAL,w.Type.NULL,!1,"")]),w.create(w.Class.UNIVERSAL,w.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(t)])])};Q.publicKeyToRSAPublicKey=function(t){return w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.n)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.e))])};function Sf(t,e,r){var n=W.util.createBuffer(),i=Math.ceil(e.n.bitLength()/8);if(t.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=t.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-t.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=W.random.getBytes(s),c=0;c<s;++c)a=u.charCodeAt(c),a===0?++f:n.putByte(a);s=f}return n.putByte(0),n.putBytes(t),n}function Qi(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8),o=W.util.createBuffer(t),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function k1(t,e,r){typeof e=="function"&&(r=e,e={}),e=e||{};var n={algorithm:{name:e.algorithm||"PRIMEINC",options:{workers:e.workers||2,workLoad:e.workLoad||100,workerScript:e.workerScript}}};"prng"in e&&(n.prng=e.prng),i();function i(){o(t.pBits,function(a,c){if(a)return r(a);if(t.p=c,t.q!==null)return s(a,t.q);o(t.qBits,s)})}function o(a,c){W.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(t.q=c,t.p.compareTo(t.q)<0){var f=t.p;t.p=t.q,t.q=f}if(t.p.subtract(st.ONE).gcd(t.e).compareTo(st.ONE)!==0){t.p=null,i();return}if(t.q.subtract(st.ONE).gcd(t.e).compareTo(st.ONE)!==0){t.q=null,o(t.qBits,s);return}if(t.p1=t.p.subtract(st.ONE),t.q1=t.q.subtract(st.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(st.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,o(t.qBits,s);return}var u=t.e.modInverse(t.phi);t.keys={privateKey:Q.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:Q.rsa.setPublicKey(t.n,t.e)},r(null,t.keys)}}function Pe(t){var e=t.toString(16);e[0]>="8"&&(e="00"+e);var r=W.util.hexToBytes(e);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function D1(t){return t<=100?27:t<=150?18:t<=200?15:t<=250?12:t<=300?9:t<=350?8:t<=400?7:t<=500?6:t<=600?5:t<=800?4:t<=1250?3:2}function xf(t){return W.util.isNodejs&&typeof Rs[t]=="function"}function bf(t){return typeof le.globalScope<"u"&&typeof le.globalScope.crypto=="object"&&typeof le.globalScope.crypto.subtle=="object"&&typeof le.globalScope.crypto.subtle[t]=="function"}function vf(t){return typeof le.globalScope<"u"&&typeof le.globalScope.msCrypto=="object"&&typeof le.globalScope.msCrypto.subtle=="object"&&typeof le.globalScope.msCrypto.subtle[t]=="function"}function wf(t){for(var e=W.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var Lf=J((cv,_f)=>{var z=gt();Es();qn();Dc();_r();Ui();Oc();Vc();Hn();Jc();ji();Dt();typeof Af>"u"&&(Af=z.jsbn.BigInteger);var Af,C=z.asn1,et=z.pki=z.pki||{};_f.exports=et.pbe=z.pbe=z.pbe||{};var kr=et.oids,P1={name:"EncryptedPrivateKeyInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},N1={name:"PBES2Algorithms",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},U1={name:"pkcs-12PbeParams",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"iterations"}]};et.encryptPrivateKeyInfo=function(t,e,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=z.random.getBytesSync(r.saltSize),i=r.count,o=C.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=kr["aes128-CBC"],l=z.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=kr["aes192-CBC"],l=z.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=kr["aes256-CBC"],l=z.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=kr.desCBC,l=z.des.createEncryptionCipher;break;default:var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),d=Tf(g),p=z.pkcs5.pbkdf2(e,n,i,s,d),y=z.random.getBytesSync(f),m=l(p);m.start(y),m.update(C.toDer(t)),m.finish(),c=m.output.getBytes();var S=K1(n,o,s,g);a=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(kr.pkcs5PBES2).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(kr.pkcs5PBKDF2).getBytes()),S]),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(u).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){s=24;var x=new z.util.ByteBuffer(n),p=et.pbe.generatePkcs12Key(e,x,1,i,s),y=et.pbe.generatePkcs12Key(e,x,2,i,s),m=z.des.createEncryptionCipher(p);m.start(y),m.update(C.toDer(t)),m.finish(),c=m.output.getBytes(),a=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(kr["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,n),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,o.getBytes())])])}else{var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var I=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[a,C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,c)]);return I};et.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!C.validate(t,P1,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=C.derToOid(n.encryptionOid),a=et.pbe.getCipher(s,n.encryptionParams,e),c=z.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=C.fromDer(a.output)),r};et.encryptedPrivateKeyToPem=function(t,e){var r={type:"ENCRYPTED PRIVATE KEY",body:C.toDer(t).getBytes()};return z.pem.encode(r,{maxline:e})};et.encryptedPrivateKeyFromPem=function(t){var e=z.pem.decode(t)[0];if(e.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=e.type,r}if(e.procType&&e.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return C.fromDer(e.body)};et.encryptRsaPrivateKey=function(t,e,r){if(r=r||{},!r.legacy){var n=et.wrapRsaPrivateKey(et.privateKeyToAsn1(t));return n=et.encryptPrivateKeyInfo(n,e,r),et.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=z.pbe.opensslDeriveBytes(e,o.substr(0,8),s),u=a(f);u.start(o),u.update(C.toDer(et.privateKeyToAsn1(t))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:z.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return z.pem.encode(l)};et.decryptRsaPrivateKey=function(t,e){var r=null,n=z.pem.decode(t)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=z.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=z.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=z.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=z.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=z.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return z.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return z.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return z.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=z.util.hexToBytes(n.dekInfo.parameters),c=z.pbe.opensslDeriveBytes(e,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(z.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=et.decryptPrivateKeyInfo(C.fromDer(r),e):r=C.fromDer(r),r!==null&&(r=et.privateKeyFromAsn1(r)),r};et.pbe.generatePkcs12Key=function(t,e,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in z.md))throw new Error('"sha1" hash algorithm unavailable.');o=z.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new z.util.ByteBuffer,l=new z.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)l.putInt16(t.charCodeAt(a));l.putInt16(0)}var h=l.length(),g=e.length(),d=new z.util.ByteBuffer;d.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new z.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(e.at(a%g));var m=f*Math.ceil(h/f),S=new z.util.ByteBuffer;for(a=0;a<m;a++)S.putByte(l.at(a%h));var x=y;x.putBuffer(S);for(var I=Math.ceil(i/c),B=1;B<=I;B++){var E=new z.util.ByteBuffer;E.putBytes(d.bytes()),E.putBytes(x.bytes());for(var L=0;L<n;L++)o.start(),o.update(E.getBytes()),E=o.digest();var _=new z.util.ByteBuffer;for(a=0;a<f;a++)_.putByte(E.at(a%c));var N=Math.ceil(g/f)+Math.ceil(h/f),M=new z.util.ByteBuffer;for(s=0;s<N;s++){var K=new z.util.ByteBuffer(x.getBytes(f)),F=511;for(a=_.length()-1;a>=0;a--)F=F>>8,F+=_.at(a)+K.at(a),K.setAt(a,F&255);M.putBuffer(K)}x=M,u.putBuffer(E)}return u.truncate(u.length()-i),u};et.pbe.getCipher=function(t,e,r){switch(t){case et.oids.pkcs5PBES2:return et.pbe.getCipherForPBES2(t,e,r);case et.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case et.oids["pbewithSHAAnd40BitRC2-CBC"]:return et.pbe.getCipherForPKCS12PBE(t,e,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=t,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};et.pbe.getCipherForPBES2=function(t,e,r){var n={},i=[];if(!C.validate(e,N1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(t=C.derToOid(n.kdfOid),t!==et.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=t,o.supportedOids=["pkcs5PBKDF2"],o}if(t=C.derToOid(n.encOid),t!==et.oids["aes128-CBC"]&&t!==et.oids["aes192-CBC"]&&t!==et.oids["aes256-CBC"]&&t!==et.oids["des-EDE3-CBC"]&&t!==et.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=t,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=z.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(et.oids[t]){case"aes128-CBC":c=16,f=z.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=z.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=z.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=z.des.createDecryptionCipher;break;case"desCBC":c=8,f=z.des.createDecryptionCipher;break}var u=If(n.prfOid),l=z.pkcs5.pbkdf2(r,s,a,c,u),h=n.encIv,g=f(l);return g.start(h),g};et.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!C.validate(e,U1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=z.util.createBuffer(n.salt),a=z.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(t){case et.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=z.des.startDecrypting;break;case et.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var m=z.rc2.createDecryptionCipher(p,40);return m.start(y,null),m};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=t,o}var l=If(n.prfOid),h=et.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=et.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(h,g)};et.pbe.opensslDeriveBytes=function(t,e,r,n){if(typeof n>"u"||n===null){if(!("md5"in z.md))throw new Error('"md5" hash algorithm unavailable.');n=z.md.md5.create()}e===null&&(e="");for(var i=[Cf(n,t+e)],o=16,s=1;o<r;++s,o+=16)i.push(Cf(n,i[s-1]+t+e));return i.join("").substr(0,r)};function Cf(t,e){return t.start().update(e).digest().getBytes()}function If(t){var e;if(!t)e="hmacWithSHA1";else if(e=et.oids[C.derToOid(t)],!e){var r=new Error("Unsupported PRF OID.");throw r.oid=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return Tf(e)}function Tf(t){var e=z.md;switch(t){case"hmacWithSHA224":e=z.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":t=t.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!e||!(t in e))throw new Error("Unknown hash algorithm: "+t);return e[t].create()}function K1(t,e,r,n){var i=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,t),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,e.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,z.util.hexToBytes(r.toString(16))),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(et.oids[n]).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,"")])),i}});var nu=J((nw,ru)=>{"use strict";ru.exports=Hg;function Hg(t,e){for(var r=new Array(arguments.length-1),n=0,i=2,o=!0;i<arguments.length;)r[n++]=arguments[i++];return new Promise(function(a,c){r[n]=function(u){if(o)if(o=!1,u)c(u);else{for(var l=new Array(arguments.length-1),h=0;h<l.length;)l[h++]=arguments[h];a.apply(null,l)}};try{t.apply(e||null,r)}catch(f){o&&(o=!1,c(f))}})}});var au=J(su=>{"use strict";var ro=su;ro.length=function(e){var r=e.length;if(!r)return 0;for(var n=0;--r%4>1&&e.charAt(r)==="=";)++n;return Math.ceil(e.length*3)/4-n};var pn=new Array(64),ou=new Array(123);for(Be=0;Be<64;)ou[pn[Be]=Be<26?Be+65:Be<52?Be+71:Be<62?Be-4:Be-59|43]=Be++;var Be;ro.encode=function(e,r,n){for(var i=null,o=[],s=0,a=0,c;r<n;){var f=e[r++];switch(a){case 0:o[s++]=pn[f>>2],c=(f&3)<<4,a=1;break;case 1:o[s++]=pn[c|f>>4],c=(f&15)<<2,a=2;break;case 2:o[s++]=pn[c|f>>6],o[s++]=pn[f&63],a=0;break}s>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,o)),s=0)}return a&&(o[s++]=pn[c],o[s++]=61,a===1&&(o[s++]=61)),i?(s&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))};var iu="invalid encoding";ro.decode=function(e,r,n){for(var i=n,o=0,s,a=0;a<e.length;){var c=e.charCodeAt(a++);if(c===61&&o>1)break;if((c=ou[c])===void 0)throw Error(iu);switch(o){case 0:s=c,o=1;break;case 1:r[n++]=s<<2|(c&48)>>4,s=c,o=2;break;case 2:r[n++]=(s&15)<<4|(c&60)>>2,s=c,o=3;break;case 3:r[n++]=(s&3)<<6|c,o=0;break}}if(o===1)throw Error(iu);return n-i};ro.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}});var fu=J((ow,cu)=>{"use strict";cu.exports=no;function no(){this._listeners={}}no.prototype.on=function(e,r,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:r,ctx:n||this}),this};no.prototype.off=function(e,r){if(e===void 0)this._listeners={};else if(r===void 0)this._listeners[e]=[];else for(var n=this._listeners[e],i=0;i<n.length;)n[i].fn===r?n.splice(i,1):++i;return this};no.prototype.emit=function(e){var r=this._listeners[e];if(r){for(var n=[],i=1;i<arguments.length;)n.push(arguments[i++]);for(i=0;i<r.length;)r[i].fn.apply(r[i++].ctx,n)}return this}});var gu=J((sw,yu)=>{"use strict";yu.exports=uu(uu);function uu(t){return typeof Float32Array<"u"?function(){var e=new Float32Array([-0]),r=new Uint8Array(e.buffer),n=r[3]===128;function i(c,f,u){e[0]=c,f[u]=r[0],f[u+1]=r[1],f[u+2]=r[2],f[u+3]=r[3]}function o(c,f,u){e[0]=c,f[u]=r[3],f[u+1]=r[2],f[u+2]=r[1],f[u+3]=r[0]}t.writeFloatLE=n?i:o,t.writeFloatBE=n?o:i;function s(c,f){return r[0]=c[f],r[1]=c[f+1],r[2]=c[f+2],r[3]=c[f+3],e[0]}function a(c,f){return r[3]=c[f],r[2]=c[f+1],r[1]=c[f+2],r[0]=c[f+3],e[0]}t.readFloatLE=n?s:a,t.readFloatBE=n?a:s}():function(){function e(n,i,o,s){var a=i<0?1:0;if(a&&(i=-i),i===0)n(1/i>0?0:2147483648,o,s);else if(isNaN(i))n(2143289344,o,s);else if(i>34028234663852886e22)n((a<<31|2139095040)>>>0,o,s);else if(i<11754943508222875e-54)n((a<<31|Math.round(i/1401298464324817e-60))>>>0,o,s);else{var c=Math.floor(Math.log(i)/Math.LN2),f=Math.round(i*Math.pow(2,-c)*8388608)&8388607;n((a<<31|c+127<<23|f)>>>0,o,s)}}t.writeFloatLE=e.bind(null,lu),t.writeFloatBE=e.bind(null,hu);function r(n,i,o){var s=n(i,o),a=(s>>31)*2+1,c=s>>>23&255,f=s&8388607;return c===255?f?NaN:a*(1/0):c===0?a*1401298464324817e-60*f:a*Math.pow(2,c-150)*(f+8388608)}t.readFloatLE=r.bind(null,du),t.readFloatBE=r.bind(null,pu)}(),typeof Float64Array<"u"?function(){var e=new Float64Array([-0]),r=new Uint8Array(e.buffer),n=r[7]===128;function i(c,f,u){e[0]=c,f[u]=r[0],f[u+1]=r[1],f[u+2]=r[2],f[u+3]=r[3],f[u+4]=r[4],f[u+5]=r[5],f[u+6]=r[6],f[u+7]=r[7]}function o(c,f,u){e[0]=c,f[u]=r[7],f[u+1]=r[6],f[u+2]=r[5],f[u+3]=r[4],f[u+4]=r[3],f[u+5]=r[2],f[u+6]=r[1],f[u+7]=r[0]}t.writeDoubleLE=n?i:o,t.writeDoubleBE=n?o:i;function s(c,f){return r[0]=c[f],r[1]=c[f+1],r[2]=c[f+2],r[3]=c[f+3],r[4]=c[f+4],r[5]=c[f+5],r[6]=c[f+6],r[7]=c[f+7],e[0]}function a(c,f){return r[7]=c[f],r[6]=c[f+1],r[5]=c[f+2],r[4]=c[f+3],r[3]=c[f+4],r[2]=c[f+5],r[1]=c[f+6],r[0]=c[f+7],e[0]}t.readDoubleLE=n?s:a,t.readDoubleBE=n?a:s}():function(){function e(n,i,o,s,a,c){var f=s<0?1:0;if(f&&(s=-s),s===0)n(0,a,c+i),n(1/s>0?0:2147483648,a,c+o);else if(isNaN(s))n(0,a,c+i),n(2146959360,a,c+o);else if(s>17976931348623157e292)n(0,a,c+i),n((f<<31|2146435072)>>>0,a,c+o);else{var u;if(s<22250738585072014e-324)u=s/5e-324,n(u>>>0,a,c+i),n((f<<31|u/4294967296)>>>0,a,c+o);else{var l=Math.floor(Math.log(s)/Math.LN2);l===1024&&(l=1023),u=s*Math.pow(2,-l),n(u*4503599627370496>>>0,a,c+i),n((f<<31|l+1023<<20|u*1048576&1048575)>>>0,a,c+o)}}}t.writeDoubleLE=e.bind(null,lu,0,4),t.writeDoubleBE=e.bind(null,hu,4,0);function r(n,i,o,s,a){var c=n(s,a+i),f=n(s,a+o),u=(f>>31)*2+1,l=f>>>20&2047,h=4294967296*(f&1048575)+c;return l===2047?h?NaN:u*(1/0):l===0?u*5e-324*h:u*Math.pow(2,l-1075)*(h+4503599627370496)}t.readDoubleLE=r.bind(null,du,0,4),t.readDoubleBE=r.bind(null,pu,4,0)}(),t}function lu(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}function hu(t,e,r){e[r]=t>>>24,e[r+1]=t>>>16&255,e[r+2]=t>>>8&255,e[r+3]=t&255}function du(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16|t[e+3]<<24)>>>0}function pu(t,e){return(t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3])>>>0}});var mu=J((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(t){}return null}});var bu=J(xu=>{"use strict";var na=xu;na.length=function(e){for(var r=0,n=0,i=0;i<e.length;++i)n=e.charCodeAt(i),n<128?r+=1:n<2048?r+=2:(n&64512)===55296&&(e.charCodeAt(i+1)&64512)===56320?(++i,r+=4):r+=3;return r};na.read=function(e,r,n){var i=n-r;if(i<1)return"";for(var o=null,s=[],a=0,c;r<n;)c=e[r++],c<128?s[a++]=c:c>191&&c<224?s[a++]=(c&31)<<6|e[r++]&63:c>239&&c<365?(c=((c&7)<<18|(e[r++]&63)<<12|(e[r++]&63)<<6|e[r++]&63)-65536,s[a++]=55296+(c>>10),s[a++]=56320+(c&1023)):s[a++]=(c&15)<<12|(e[r++]&63)<<6|e[r++]&63,a>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,s)),a=0);return o?(a&&o.push(String.fromCharCode.apply(String,s.slice(0,a))),o.join("")):String.fromCharCode.apply(String,s.slice(0,a))};na.write=function(e,r,n){for(var i=n,o,s,a=0;a<e.length;++a)o=e.charCodeAt(a),o<128?r[n++]=o:o<2048?(r[n++]=o>>6|192,r[n++]=o&63|128):(o&64512)===55296&&((s=e.charCodeAt(a+1))&64512)===56320?(o=65536+((o&1023)<<10)+(s&1023),++a,r[n++]=o>>18|240,r[n++]=o>>12&63|128,r[n++]=o>>6&63|128,r[n++]=o&63|128):(r[n++]=o>>12|224,r[n++]=o>>6&63|128,r[n++]=o&63|128);return n-i}});var wu=J((cw,vu)=>{"use strict";vu.exports=zg;function zg(t,e,r){var n=r||8192,i=n>>>1,o=null,s=n;return function(c){if(c<1||c>i)return t(c);s+c>n&&(o=t(n),s=0);var f=e.call(o,s,s+=c);return s&7&&(s=(s|7)+1),f}}});var Su=J((fw,Eu)=>{"use strict";Eu.exports=Vt;var Yn=Nr();function Vt(t,e){this.lo=t>>>0,this.hi=e>>>0}var Pr=Vt.zero=new Vt(0,0);Pr.toNumber=function(){return 0};Pr.zzEncode=Pr.zzDecode=function(){return this};Pr.length=function(){return 1};var Gg=Vt.zeroHash="\0\0\0\0\0\0\0\0";Vt.fromNumber=function(e){if(e===0)return Pr;var r=e<0;r&&(e=-e);var n=e>>>0,i=(e-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new Vt(n,i)};Vt.from=function(e){if(typeof e=="number")return Vt.fromNumber(e);if(Yn.isString(e))if(Yn.Long)e=Yn.Long.fromString(e);else return Vt.fromNumber(parseInt(e,10));return e.low||e.high?new Vt(e.low>>>0,e.high>>>0):Pr};Vt.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var r=~this.lo+1>>>0,n=~this.hi>>>0;return r||(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296};Vt.prototype.toLong=function(e){return Yn.Long?new Yn.Long(this.lo|0,this.hi|0,!!e):{low:this.lo|0,high:this.hi|0,unsigned:!!e}};var br=String.prototype.charCodeAt;Vt.fromHash=function(e){return e===Gg?Pr:new Vt((br.call(e,0)|br.call(e,1)<<8|br.call(e,2)<<16|br.call(e,3)<<24)>>>0,(br.call(e,4)|br.call(e,5)<<8|br.call(e,6)<<16|br.call(e,7)<<24)>>>0)};Vt.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)};Vt.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this};Vt.prototype.zzDecode=function(){var e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this};Vt.prototype.length=function(){var e=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?e<16384?e<128?1:2:e<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}});var Nr=J(ia=>{"use strict";var G=ia;G.asPromise=nu();G.base64=au();G.EventEmitter=fu();G.float=gu();G.inquire=mu();G.utf8=bu();G.pool=wu();G.LongBits=Su();G.isNode=!!(typeof globalThis<"u"&&globalThis&&globalThis.process&&globalThis.process.versions&&globalThis.process.versions.node);G.global=G.isNode&&globalThis||typeof window<"u"&&window||typeof self<"u"&&self||ia;G.emptyArray=Object.freeze?Object.freeze([]):[];G.emptyObject=Object.freeze?Object.freeze({}):{};G.isInteger=Number.isInteger||function(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e};G.isString=function(e){return typeof e=="string"||e instanceof String};G.isObject=function(e){return e&&typeof e=="object"};G.isset=G.isSet=function(e,r){var n=e[r];return n!=null&&e.hasOwnProperty(r)?typeof n!="object"||(Array.isArray(n)?n.length:Object.keys(n).length)>0:!1};G.Buffer=function(){try{var t=G.inquire("buffer").Buffer;return t.prototype.utf8Write?t:null}catch{return null}}();G._Buffer_from=null;G._Buffer_allocUnsafe=null;G.newBuffer=function(e){return typeof e=="number"?G.Buffer?G._Buffer_allocUnsafe(e):new G.Array(e):G.Buffer?G._Buffer_from(e):typeof Uint8Array>"u"?e:new Uint8Array(e)};G.Array=typeof Uint8Array<"u"?Uint8Array:Array;G.Long=G.global.dcodeIO&&G.global.dcodeIO.Long||G.global.Long||G.inquire("long");G.key2Re=/^true|false|0|1$/;G.key32Re=/^-?(?:0|[1-9][0-9]*)$/;G.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;G.longToHash=function(e){return e?G.LongBits.from(e).toHash():G.LongBits.zeroHash};G.longFromHash=function(e,r){var n=G.LongBits.fromHash(e);return G.Long?G.Long.fromBits(n.lo,n.hi,r):n.toNumber(!!r)};function Bu(t,e,r){for(var n=Object.keys(e),i=0;i<n.length;++i)(t[n[i]]===void 0||!r)&&(t[n[i]]=e[n[i]]);return t}G.merge=Bu;G.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)};function Au(t){function e(r,n){if(!(this instanceof e))return new e(r,n);Object.defineProperty(this,"message",{get:function(){return r}}),Error.captureStackTrace?Error.captureStackTrace(this,e):Object.defineProperty(this,"stack",{value:new Error().stack||""}),n&&Bu(this,n)}return e.prototype=Object.create(Error.prototype,{constructor:{value:e,writable:!0,enumerable:!1,configurable:!0},name:{get:function(){return t},set:void 0,enumerable:!1,configurable:!0},toString:{value:function(){return this.name+": "+this.message},writable:!0,enumerable:!1,configurable:!0}}),e}G.newError=Au;G.ProtocolError=Au("ProtocolError");G.oneOfGetter=function(e){for(var r={},n=0;n<e.length;++n)r[e[n]]=1;return function(){for(var i=Object.keys(this),o=i.length-1;o>-1;--o)if(r[i[o]]===1&&this[i[o]]!==void 0&&this[i[o]]!==null)return i[o]}};G.oneOfSetter=function(e){return function(r){for(var n=0;n<e.length;++n)e[n]!==r&&delete this[e[n]]}};G.toJSONOptions={longs:String,enums:String,bytes:String,json:!0};G._configure=function(){var t=G.Buffer;if(!t){G._Buffer_from=G._Buffer_allocUnsafe=null;return}G._Buffer_from=t.from!==Uint8Array.from&&t.from||function(r,n){return new t(r,n)},G._Buffer_allocUnsafe=t.allocUnsafe||function(r){return new t(r)}}});var aa=J((lw,Lu)=>{"use strict";Lu.exports=Lt;var Ae=Nr(),sa,Tu=Ae.LongBits,Wg=Ae.utf8;function Ce(t,e){return RangeError("index out of range: "+t.pos+" + "+(e||1)+" > "+t.len)}function Lt(t){this.buf=t,this.pos=0,this.len=t.length}var Cu=typeof Uint8Array<"u"?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new Lt(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new Lt(e);throw Error("illegal buffer")},_u=function(){return Ae.Buffer?function(r){return(Lt.create=function(i){return Ae.Buffer.isBuffer(i)?new sa(i):Cu(i)})(r)}:Cu};Lt.create=_u();Lt.prototype._slice=Ae.Array.prototype.subarray||Ae.Array.prototype.slice;Lt.prototype.uint32=function(){var e=4294967295;return function(){if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,Ce(this,10);return e}}();Lt.prototype.int32=function(){return this.uint32()|0};Lt.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(e&1)|0};function oa(){var t=new Tu(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw Ce(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<e*7)>>>0,t}if(this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw Ce(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}Lt.prototype.bool=function(){return this.uint32()!==0};function io(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}Lt.prototype.fixed32=function(){if(this.pos+4>this.len)throw Ce(this,4);return io(this.buf,this.pos+=4)};Lt.prototype.sfixed32=function(){if(this.pos+4>this.len)throw Ce(this,4);return io(this.buf,this.pos+=4)|0};function Iu(){if(this.pos+8>this.len)throw Ce(this,8);return new Tu(io(this.buf,this.pos+=4),io(this.buf,this.pos+=4))}Lt.prototype.float=function(){if(this.pos+4>this.len)throw Ce(this,4);var e=Ae.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e};Lt.prototype.double=function(){if(this.pos+8>this.len)throw Ce(this,4);var e=Ae.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e};Lt.prototype.bytes=function(){var e=this.uint32(),r=this.pos,n=this.pos+e;if(n>this.len)throw Ce(this,e);if(this.pos+=e,Array.isArray(this.buf))return this.buf.slice(r,n);if(r===n){var i=Ae.Buffer;return i?i.alloc(0):new this.buf.constructor(0)}return this._slice.call(this.buf,r,n)};Lt.prototype.string=function(){var e=this.bytes();return Wg.read(e,0,e.length)};Lt.prototype.skip=function(e){if(typeof e=="number"){if(this.pos+e>this.len)throw Ce(this,e);this.pos+=e}else do if(this.pos>=this.len)throw Ce(this);while(this.buf[this.pos++]&128);return this};Lt.prototype.skipType=function(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+t+" at offset "+this.pos)}return this};Lt._configure=function(t){sa=t,Lt.create=_u(),sa._configure();var e=Ae.Long?"toLong":"toNumber";Ae.merge(Lt.prototype,{int64:function(){return oa.call(this)[e](!1)},uint64:function(){return oa.call(this)[e](!0)},sint64:function(){return oa.call(this).zzDecode()[e](!1)},fixed64:function(){return Iu.call(this)[e](!0)},sfixed64:function(){return Iu.call(this)[e](!1)}})}});var Pu=J((hw,Du)=>{"use strict";Du.exports=Ur;var ku=aa();(Ur.prototype=Object.create(ku.prototype)).constructor=Ur;var Ru=Nr();function Ur(t){ku.call(this,t)}Ur._configure=function(){Ru.Buffer&&(Ur.prototype._slice=Ru.Buffer.prototype.slice)};Ur.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))};Ur._configure()});var pa=J((dw,Ou)=>{"use strict";Ou.exports=ct;var he=Nr(),ca,oo=he.LongBits,Nu=he.base64,Uu=he.utf8;function Zn(t,e,r){this.fn=t,this.len=e,this.next=void 0,this.val=r}function ua(){}function $g(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}function ct(){this.len=0,this.head=new Zn(ua,0,0),this.tail=this.head,this.states=null}var Ku=function(){return he.Buffer?function(){return(ct.create=function(){return new ca})()}:function(){return new ct}};ct.create=Ku();ct.alloc=function(e){return new he.Array(e)};he.Array!==Array&&(ct.alloc=he.pool(ct.alloc,he.Array.prototype.subarray));ct.prototype._push=function(e,r,n){return this.tail=this.tail.next=new Zn(e,r,n),this.len+=r,this};function la(t,e,r){e[r]=t&255}function Yg(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}function ha(t,e){this.len=t,this.next=void 0,this.val=e}ha.prototype=Object.create(Zn.prototype);ha.prototype.fn=Yg;ct.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new ha((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this};ct.prototype.int32=function(e){return e<0?this._push(da,10,oo.fromNumber(e)):this.uint32(e)};ct.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)};function da(t,e,r){for(;t.hi;)e[r++]=t.lo&127|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)e[r++]=t.lo&127|128,t.lo=t.lo>>>7;e[r++]=t.lo}ct.prototype.uint64=function(e){var r=oo.from(e);return this._push(da,r.length(),r)};ct.prototype.int64=ct.prototype.uint64;ct.prototype.sint64=function(e){var r=oo.from(e).zzEncode();return this._push(da,r.length(),r)};ct.prototype.bool=function(e){return this._push(la,1,e?1:0)};function fa(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}ct.prototype.fixed32=function(e){return this._push(fa,4,e>>>0)};ct.prototype.sfixed32=ct.prototype.fixed32;ct.prototype.fixed64=function(e){var r=oo.from(e);return this._push(fa,4,r.lo)._push(fa,4,r.hi)};ct.prototype.sfixed64=ct.prototype.fixed64;ct.prototype.float=function(e){return this._push(he.float.writeFloatLE,4,e)};ct.prototype.double=function(e){return this._push(he.float.writeDoubleLE,8,e)};var Zg=he.Array.prototype.set?function(e,r,n){r.set(e,n)}:function(e,r,n){for(var i=0;i<e.length;++i)r[n+i]=e[i]};ct.prototype.bytes=function(e){var r=e.length>>>0;if(!r)return this._push(la,1,0);if(he.isString(e)){var n=ct.alloc(r=Nu.length(e));Nu.decode(e,n,0),e=n}return this.uint32(r)._push(Zg,r,e)};ct.prototype.string=function(e){var r=Uu.length(e);return r?this.uint32(r)._push(Uu.write,r,e):this._push(la,1,0)};ct.prototype.fork=function(){return this.states=new $g(this),this.head=this.tail=new Zn(ua,0,0),this.len=0,this};ct.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 Zn(ua,0,0),this.len=0),this};ct.prototype.ldelim=function(){var e=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=r,this.len+=n),this};ct.prototype.finish=function(){for(var e=this.head.next,r=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r};ct._configure=function(t){ca=t,ct.create=Ku(),ca._configure()}});var Vu=J((pw,Fu)=>{"use strict";Fu.exports=Ke;var Mu=pa();(Ke.prototype=Object.create(Mu.prototype)).constructor=Ke;var vr=Nr();function Ke(){Mu.call(this)}Ke._configure=function(){Ke.alloc=vr._Buffer_allocUnsafe,Ke.writeBytesBuffer=vr.Buffer&&vr.Buffer.prototype instanceof Uint8Array&&vr.Buffer.prototype.set.name==="set"?function(e,r,n){r.set(e,n)}:function(e,r,n){if(e.copy)e.copy(r,n,0,e.length);else for(var i=0;i<e.length;)r[n++]=e[i++]}};Ke.prototype.bytes=function(e){vr.isString(e)&&(e=vr._Buffer_from(e,"base64"));var r=e.length>>>0;return this.uint32(r),r&&this._push(Ke.writeBytesBuffer,r,e),this};function Xg(t,e,r){t.length<40?vr.utf8.write(t,e,r):e.utf8Write?e.utf8Write(t,r):e.write(t,r)}Ke.prototype.string=function(e){var r=vr.Buffer.byteLength(e);return this.uint32(r),r&&this._push(Xg,r,e),this};Ke._configure()});var Ju=J((p8,ju)=>{var Et=gt();_r();Dt();var Qn=ju.exports=Et.sha512=Et.sha512||{};Et.md.sha512=Et.md.algorithms.sha512=Qn;var Xu=Et.sha384=Et.sha512.sha384=Et.sha512.sha384||{};Xu.create=function(){return Qn.create("SHA-384")};Et.md.sha384=Et.md.algorithms.sha384=Xu;Et.sha512.sha256=Et.sha512.sha256||{create:function(){return Qn.create("SHA-512/256")}};Et.md["sha512/256"]=Et.md.algorithms["sha512/256"]=Et.sha512.sha256;Et.sha512.sha224=Et.sha512.sha224||{create:function(){return Qn.create("SHA-512/224")}};Et.md["sha512/224"]=Et.md.algorithms["sha512/224"]=Et.sha512.sha224;Qn.create=function(t){if(Qu||s2(),typeof t>"u"&&(t="SHA-512"),!(t in Vr))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=Vr[t],r=null,n=Et.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(t){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:t.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=Et.util.createBuffer(),r=new Array(e.length);for(var f=0;f<e.length;++f)r[f]=e[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=Et.util.encodeUtf8(c));var u=c.length;a.messageLength+=u,u=[u/4294967296>>>0,u>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=u[1],u[1]=u[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,u[0]=u[1]/4294967296>>>0;return n.putBytes(c),Zu(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=Et.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(Ea.substr(0,a.blockLength-u));for(var l,h,g=a.fullMessageLength[0]*8,d=0;d<a.fullMessageLength.length-1;++d)l=a.fullMessageLength[d+1]*8,h=l/4294967296>>>0,g+=h,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),d=0;d<r.length;++d)p[d]=r[d].slice(0);Zu(p,i,c);var y=Et.util.createBuffer(),m;t==="SHA-512"?m=p.length:t==="SHA-384"?m=p.length-2:m=p.length-4;for(var d=0;d<m;++d)y.putInt32(p[d][0]),(d!==m-1||t!=="SHA-512/224")&&y.putInt32(p[d][1]);return y},a};var Ea=null,Qu=!1,Sa=null,Vr=null;function s2(){Ea=String.fromCharCode(128),Ea+=Et.util.fillString(String.fromCharCode(0),128),Sa=[[1116352408,3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],Vr={},Vr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Vr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Vr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Vr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Qu=!0}function Zu(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,g,d,p,y,m,S,x,I,B,E,L,_,N,M,K,F,H,Z,A,k,T,R,v,U,O,q=r.length();q>=128;){for(A=0;A<16;++A)e[A][0]=r.getInt32()>>>0,e[A][1]=r.getInt32()>>>0;for(;A<80;++A)R=e[A-2],k=R[0],T=R[1],n=((k>>>19|T<<13)^(T>>>29|k<<3)^k>>>6)>>>0,i=((k<<13|T>>>19)^(T<<3|k>>>29)^(k<<26|T>>>6))>>>0,U=e[A-15],k=U[0],T=U[1],o=((k>>>1|T<<31)^(k>>>8|T<<24)^k>>>7)>>>0,s=((k<<31|T>>>1)^(k<<24|T>>>8)^(k<<25|T>>>7))>>>0,v=e[A-7],O=e[A-16],T=i+v[1]+s+O[1],e[A][0]=n+v[0]+o+O[0]+(T/4294967296>>>0)>>>0,e[A][1]=T>>>0;for(p=t[0][0],y=t[0][1],m=t[1][0],S=t[1][1],x=t[2][0],I=t[2][1],B=t[3][0],E=t[3][1],L=t[4][0],_=t[4][1],N=t[5][0],M=t[5][1],K=t[6][0],F=t[6][1],H=t[7][0],Z=t[7][1],A=0;A<80;++A)f=((L>>>14|_<<18)^(L>>>18|_<<14)^(_>>>9|L<<23))>>>0,u=((L<<18|_>>>14)^(L<<14|_>>>18)^(_<<23|L>>>9))>>>0,l=(K^L&(N^K))>>>0,h=(F^_&(M^F))>>>0,a=((p>>>28|y<<4)^(y>>>2|p<<30)^(y>>>7|p<<25))>>>0,c=((p<<4|y>>>28)^(y<<30|p>>>2)^(y<<25|p>>>7))>>>0,g=(p&m|x&(p^m))>>>0,d=(y&S|I&(y^S))>>>0,T=Z+u+h+Sa[A][1]+e[A][1],n=H+f+l+Sa[A][0]+e[A][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+d,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,H=K,Z=F,K=N,F=M,N=L,M=_,T=E+i,L=B+n+(T/4294967296>>>0)>>>0,_=T>>>0,B=x,E=I,x=m,I=S,m=p,S=y,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,y=T>>>0;T=t[0][1]+y,t[0][0]=t[0][0]+p+(T/4294967296>>>0)>>>0,t[0][1]=T>>>0,T=t[1][1]+S,t[1][0]=t[1][0]+m+(T/4294967296>>>0)>>>0,t[1][1]=T>>>0,T=t[2][1]+I,t[2][0]=t[2][0]+x+(T/4294967296>>>0)>>>0,t[2][1]=T>>>0,T=t[3][1]+E,t[3][0]=t[3][0]+B+(T/4294967296>>>0)>>>0,t[3][1]=T>>>0,T=t[4][1]+_,t[4][0]=t[4][0]+L+(T/4294967296>>>0)>>>0,t[4][1]=T>>>0,T=t[5][1]+M,t[5][0]=t[5][0]+N+(T/4294967296>>>0)>>>0,t[5][1]=T>>>0,T=t[6][1]+F,t[6][0]=t[6][0]+K+(T/4294967296>>>0)>>>0,t[6][1]=T>>>0,T=t[7][1]+Z,t[7][0]=t[7][0]+H+(T/4294967296>>>0)>>>0,t[7][1]=T>>>0,q-=128}}});var Rl=J((Q4,Ll)=>{var wn=1e3,En=wn*60,Sn=En*60,Gr=Sn*24,N2=Gr*7,U2=Gr*365.25;Ll.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return K2(t);if(r==="number"&&isFinite(t))return e.long?M2(t):O2(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function K2(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*U2;case"weeks":case"week":case"w":return r*N2;case"days":case"day":case"d":return r*Gr;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Sn;case"minutes":case"minute":case"mins":case"min":case"m":return r*En;case"seconds":case"second":case"secs":case"sec":case"s":return r*wn;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function O2(t){var e=Math.abs(t);return e>=Gr?Math.round(t/Gr)+"d":e>=Sn?Math.round(t/Sn)+"h":e>=En?Math.round(t/En)+"m":e>=wn?Math.round(t/wn)+"s":t+"ms"}function M2(t){var e=Math.abs(t);return e>=Gr?lo(t,e,Gr,"day"):e>=Sn?lo(t,e,Sn,"hour"):e>=En?lo(t,e,En,"minute"):e>=wn?lo(t,e,wn,"second"):t+" ms"}function lo(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var Dl=J((j4,kl)=>{function F2(t){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=Rl(),r.destroy=f,Object.keys(t).forEach(u=>{r[u]=t[u]}),r.names=[],r.skips=[],r.formatters={};function e(u){let l=0;for(let h=0;h<u.length;h++)l=(l<<5)-l+u.charCodeAt(h),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=e;function r(u){let l,h=null,g,d;function p(...y){if(!p.enabled)return;let m=p,S=Number(new Date),x=S-(l||S);m.diff=x,m.prev=l,m.curr=S,l=S,y[0]=r.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let I=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(E,L)=>{if(E==="%%")return"%";I++;let _=r.formatters[L];if(typeof _=="function"){let N=y[I];E=_.call(m,N),y.splice(I,1),I--}return E}),r.formatArgs.call(m,y),(m.log||r.log).apply(m,y)}return p.namespace=u,p.useColors=r.useColors(),p.color=r.selectColor(u),p.extend=n,p.destroy=r.destroy,Object.defineProperty(p,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(g!==r.namespaces&&(g=r.namespaces,d=r.enabled(u)),d),set:y=>{h=y}}),typeof r.init=="function"&&r.init(p),p}function n(u,l){let h=r(this.namespace+(typeof l>"u"?":":l)+u);return h.log=this.log,h}function i(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let l,h=(typeof u=="string"?u:"").split(/[\s,]+/),g=h.length;for(l=0;l<g;l++)h[l]&&(u=h[l].replace(/\*/g,".*?"),u[0]==="-"?r.skips.push(new RegExp("^"+u.slice(1)+"$")):r.names.push(new RegExp("^"+u+"$")))}function o(){let u=[...r.names.map(a),...r.skips.map(a).map(l=>"-"+l)].join(",");return r.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let l,h;for(l=0,h=r.skips.length;l<h;l++)if(r.skips[l].test(u))return!1;for(l=0,h=r.names.length;l<h;l++)if(r.names[l].test(u))return!0;return!1}function a(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}function c(u){return u instanceof Error?u.stack||u.message:u}function f(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}kl.exports=F2});var Pl=J((oe,ho)=>{oe.formatArgs=q2;oe.save=H2;oe.load=z2;oe.useColors=V2;oe.storage=G2();oe.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();oe.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function V2(){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 q2(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+ho.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),t.splice(n,0,e)}oe.log=console.debug||console.log||(()=>{});function H2(t){try{t?oe.storage.setItem("debug",t):oe.storage.removeItem("debug")}catch{}}function z2(){let t;try{t=oe.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function G2(){try{return localStorage}catch{}}ho.exports=Dl()(oe);var{formatters:W2}=ho.exports;W2.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Bm={};Ut(Bm,{webTransport:()=>Sm});function ir(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function He(t=0){return globalThis.Buffer?.alloc!=null?ir(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function ce(t=0){return globalThis.Buffer?.allocUnsafe!=null?ir(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var Lh=Math.pow(2,7),Rh=Math.pow(2,14),kh=Math.pow(2,21),Lo=Math.pow(2,28),Ro=Math.pow(2,35),ko=Math.pow(2,42),Do=Math.pow(2,49),lt=128,Zt=127;function Jt(t){if(t<Lh)return 1;if(t<Rh)return 2;if(t<kh)return 3;if(t<Lo)return 4;if(t<Ro)return 5;if(t<ko)return 6;if(t<Do)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Dh(t,e,r=0){switch(Jt(t)){case 8:e[r++]=t&255|lt,t/=128;case 7:e[r++]=t&255|lt,t/=128;case 6:e[r++]=t&255|lt,t/=128;case 5:e[r++]=t&255|lt,t/=128;case 4:e[r++]=t&255|lt,t>>>=7;case 3:e[r++]=t&255|lt,t>>>=7;case 2:e[r++]=t&255|lt,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function Ph(t,e,r=0){switch(Jt(t)){case 8:e.set(r++,t&255|lt),t/=128;case 7:e.set(r++,t&255|lt),t/=128;case 6:e.set(r++,t&255|lt),t/=128;case 5:e.set(r++,t&255|lt),t/=128;case 4:e.set(r++,t&255|lt),t>>>=7;case 3:e.set(r++,t&255|lt),t>>>=7;case 2:e.set(r++,t&255|lt),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function Nh(t,e){let r=t[e],n=0;if(n+=r&Zt,r<lt||(r=t[e+1],n+=(r&Zt)<<7,r<lt)||(r=t[e+2],n+=(r&Zt)<<14,r<lt)||(r=t[e+3],n+=(r&Zt)<<21,r<lt)||(r=t[e+4],n+=(r&Zt)*Lo,r<lt)||(r=t[e+5],n+=(r&Zt)*Ro,r<lt)||(r=t[e+6],n+=(r&Zt)*ko,r<lt)||(r=t[e+7],n+=(r&Zt)*Do,r<lt))return n;throw new RangeError("Could not decode varint")}function Uh(t,e){let r=t.get(e),n=0;if(n+=r&Zt,r<lt||(r=t.get(e+1),n+=(r&Zt)<<7,r<lt)||(r=t.get(e+2),n+=(r&Zt)<<14,r<lt)||(r=t.get(e+3),n+=(r&Zt)<<21,r<lt)||(r=t.get(e+4),n+=(r&Zt)*Lo,r<lt)||(r=t.get(e+5),n+=(r&Zt)*Ro,r<lt)||(r=t.get(e+6),n+=(r&Zt)*ko,r<lt)||(r=t.get(e+7),n+=(r&Zt)*Do,r<lt))return n;throw new RangeError("Could not decode varint")}function or(t,e,r=0){return e==null&&(e=ce(Jt(t))),e instanceof Uint8Array?Dh(t,e,r):Ph(t,e,r)}function ye(t,e=0){return t instanceof Uint8Array?Nh(t,e):Uh(t,e)}function yt(t,e){e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=ce(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return ir(r)}function It(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}var g0=Symbol.for("@achingbrain/uint8arraylist");function y0(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let i=r+n.byteLength;if(e<i)return{buf:n,index:e-r};r=i}throw new RangeError("index is out of bounds")}function ui(t){return!!t?.[g0]}var re=class t{constructor(...e){Object.defineProperty(this,g0,{value:!0}),this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let r=0;for(let n of e)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(ui(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...e){this.prependAll(e)}prependAll(e){let r=0;for(let n of e.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(ui(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(e){let r=y0(this.bufs,e);return r.buf[r.index]}set(e,r){let n=y0(this.bufs,e);n.buf[n.index]=r}write(e,r=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(r+n,e[n]);else if(ui(e))for(let n=0;n<e.length;n++)this.set(r+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,r){let{bufs:n,length:i}=this._subList(e,r);return yt(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:yt(n,i)}sublist(e,r){let{bufs:n,length:i}=this._subList(e,r),o=new t;return o.length=i,o.bufs=n,o}_subList(e,r){if(e=e??0,r=r??this.length,e<0&&(e=this.length+e),r<0&&(r=this.length+r),e<0||r>this.length)throw new RangeError("index is out of bounds");if(e===r)return{bufs:[],length:0};if(e===0&&r===this.length)return{bufs:[...this.bufs],length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let f=e>=a&&e<c,u=r>a&&r<=c;if(f&&u){if(e===a&&r===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(r-e)));break}if(f){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-e}}indexOf(e,r=0){if(!ui(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),e.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let h=f;h>=0;h--){let g=this.get(l+h);if(n[h]!==g){u=Math.max(1,h-a[g]);break}}if(u===0)return l}return-1}getInt8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(e,r){let n=ce(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,e)}getInt16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(e,r,n){let i=He(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,e)}getInt32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(e,r,n){let i=He(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,e)}getBigInt64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(e,r,n){let i=He(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,e)}getUint8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(e,r){let n=ce(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,e)}getUint16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(e,r,n){let i=He(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,e)}getUint32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(e,r,n){let i=He(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,e)}getBigUint64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(e,r,n){let i=He(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,e)}getFloat32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(e,r,n){let i=He(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,e)}getFloat64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(e,r,n){let i=He(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof t)||e.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!It(this.bufs[r],e.bufs[r]))return!1;return!0}static fromUint8Arrays(e,r){let n=new t;return n.bufs=e,r==null&&(r=e.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function li(t){return t[Symbol.asyncIterator]!=null}var hi=t=>{let e=Jt(t),r=ce(e);return or(t,r),hi.bytes=e,r};hi.bytes=0;function di(t,e){e=e??{};let r=e.lengthEncoder??hi;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return li(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}di.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??hi;return new re(r(t.byteLength),t)};var Wr=kt(b0(),1);var Oh=8,Mh=1024*1024*4,Er;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(Er||(Er={}));var Po=t=>{let e=ye(t);return Po.bytes=Jt(e),e};Po.bytes=0;function _n(t,e){let r=new re,n=Er.LENGTH,i=-1,o=e?.lengthDecoder??Po,s=e?.maxLengthLength??Oh,a=e?.maxDataLength??Mh;function*c(){for(;r.byteLength>0;){if(n===Er.LENGTH)try{if(i=o(r),i<0)throw(0,Wr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Wr.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),e?.onLength!=null&&e.onLength(i),n=Er.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Wr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===Er.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(f),yield f,n=Er.LENGTH}}}return li(t)?async function*(){for await(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,Wr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,Wr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}_n.fromReader=(t,e)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await t.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return _n(n,{...e??{},onLength:o=>{r=o}})};function $r(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var pi=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Yr=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new pi(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let r=this.head;this.head=r.next=new pi(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var No=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Zr(t={}){return Vh(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},t)}function Vh(t,e){e=e??{};let r=e.onEnd,n=new Yr,i,o,s,a=$r(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,m)=>{o=S=>{o=null,n.push(S);try{y(t(n))}catch(x){m(x)}return i}}):t(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=$r()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new Yr,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(e?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:y})},h=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new Yr,h(),{done:!0}),d=y=>(h(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:d,push:l,end:h,get readableLength(){return n.size},onEmpty:async y=>{let m=y?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let S,x;m!=null&&(S=new Promise((I,B)=>{x=()=>{B(new No)},m.addEventListener("abort",x)}));try{await Promise.race([a.promise,S])}finally{x!=null&&m!=null&&m?.removeEventListener("abort",x)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(y){return p.throw(y),r!=null&&(r(y),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(y){return p.end(y),r!=null&&(r(y),r=void 0),i},get readableLength(){return p.readableLength}},i}var yi=class extends Error{code;constructor(e,r){super(e),this.code=r}},Uo=class extends yi{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function v0(t){let e=Zr();t.sink(e).catch(o=>{e.end(o)}),t.sink=async o=>{for await(let s of o)e.push(s);e.end()};let r=t.source;t.source[Symbol.iterator]!=null?r=t.source[Symbol.iterator]():t.source[Symbol.asyncIterator]!=null&&(r=t.source[Symbol.asyncIterator]());let n=new re;return{read:async(o,s)=>{s?.signal?.throwIfAborted();let a,c=new Promise((f,u)=>{a=()=>{u(new Uo("Read aborted"))},s?.signal?.addEventListener("abort",a)});try{if(o==null){let{done:u,value:l}=await Promise.race([r.next(),c]);return u===!0?new re:l}for(;n.byteLength<o;){let{value:u,done:l}=await Promise.race([r.next(),c]);if(l===!0)throw new yi("unexpected end of input","ERR_UNEXPECTED_EOF");n.append(u)}let f=n.sublist(0,o);return n.consume(o),f}finally{a!=null&&s?.signal?.removeEventListener("abort",a)}},write:async(o,s)=>{s?.signal?.throwIfAborted(),o instanceof Uint8Array?e.push(o):e.push(o.subarray()),await e.onEmpty(s)},unwrap:()=>{let o=t.source;return t.source=async function*(){yield*n,yield*o}(),t}}}var gi=class extends Error{code;constructor(e,r){super(e),this.code=r}},w0=t=>ye(t);w0.bytes=0;function Ko(t,e){let r=v0(t);return{read:async i=>{let o=-1,s=new re,a=e?.lengthDecoder??w0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(o>-1)break;if(e?.maxLengthLength!=null&&s.byteLength>e.maxLengthLength)throw new gi("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(e?.maxDataLength!=null&&o>e.maxDataLength)throw new gi("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(di.single(i,e),o)},unwrap:()=>r.unwrap()}}function Oo(){let t=$r(),e=!1;return{sink:async r=>{if(e)throw new Error("already piped");e=!0,t.resolve(r)},source:async function*(){yield*await t.promise}()}}function E0(){let t=Oo(),e=Oo();return[{source:t.source,sink:e.sink},{source:e.source,sink:t.sink}]}function qh(t){return t[Symbol.asyncIterator]!=null}function Hh(...t){let e=[];for(let r of t)qh(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=Zr({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(t.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var S0=Hh;function B0(t,...e){if(t==null)throw new Error("Empty pipeline");if(Mo(t)){let n=t;t=()=>n.source}else if(C0(t)||A0(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&Mo(r[r.length-1])&&(r[r.length-1]=r[r.length-1].sink),r.length>2)for(let n=1;n<r.length-1;n++)Mo(r[n])&&(r[n]=Gh(r[n]));return zh(...r)}var zh=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},A0=t=>t?.[Symbol.asyncIterator]!=null,C0=t=>t?.[Symbol.iterator]!=null,Mo=t=>t==null?!1:t.sink!=null&&t.source!=null,Gh=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=Zr({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=t.source;if(A0(o))i=async function*(){yield*o,n.end()};else if(C0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return S0(n,i())}return t.source};var I0=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var Wh=t=>t instanceof Uint8Array;var ze=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),T0=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),$h=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!$h)throw new Error("Non little-endian hardware is not supported");function mi(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function xi(t){if(typeof t=="string"&&(t=mi(t)),!Wh(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}var Yh=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function _0(t,e){if(e!==void 0&&(typeof e!="object"||!Yh(e)))throw new Error("options must be object or undefined");return Object.assign(t,e)}function Sr(t,e){if(!(t instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof e=="number"&&t.length!==e)throw new Error(`Uint8Array length ${e} expected`)}function L0(t,e){if(t.length!==e.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<t.length;n++)r&&(r=t[n]===e[n]);return r}function Fo(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}function Vo(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Zh(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}function R0(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Xh(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("hash must be wrapped by utils.wrapConstructor");Vo(t.outputLen),Vo(t.blockLen)}function Qh(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function jh(t,e){R0(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Jh={number:Vo,bool:Zh,bytes:R0,hash:Xh,exists:Qh,output:jh},Xt=Jh;var Wt=(t,e)=>t[e++]&255|(t[e++]&255)<<8,qo=class{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,e=xi(e),Sr(e,32);let r=Wt(e,0),n=Wt(e,2),i=Wt(e,4),o=Wt(e,6),s=Wt(e,8),a=Wt(e,10),c=Wt(e,12),f=Wt(e,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=Wt(e,16+2*u)}process(e,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],h=s[5],g=s[6],d=s[7],p=s[8],y=s[9],m=Wt(e,r+0),S=Wt(e,r+2),x=Wt(e,r+4),I=Wt(e,r+6),B=Wt(e,r+8),E=Wt(e,r+10),L=Wt(e,r+12),_=Wt(e,r+14),N=o[0]+(m&8191),M=o[1]+((m>>>13|S<<3)&8191),K=o[2]+((S>>>10|x<<6)&8191),F=o[3]+((x>>>7|I<<9)&8191),H=o[4]+((I>>>4|B<<12)&8191),Z=o[5]+(B>>>1&8191),A=o[6]+((B>>>14|E<<2)&8191),k=o[7]+((E>>>11|L<<5)&8191),T=o[8]+((L>>>8|_<<8)&8191),R=o[9]+(_>>>5|i),v=0,U=v+N*a+M*(5*y)+K*(5*p)+F*(5*d)+H*(5*g);v=U>>>13,U&=8191,U+=Z*(5*h)+A*(5*l)+k*(5*u)+T*(5*f)+R*(5*c),v+=U>>>13,U&=8191;let O=v+N*c+M*a+K*(5*y)+F*(5*p)+H*(5*d);v=O>>>13,O&=8191,O+=Z*(5*g)+A*(5*h)+k*(5*l)+T*(5*u)+R*(5*f),v+=O>>>13,O&=8191;let q=v+N*f+M*c+K*a+F*(5*y)+H*(5*p);v=q>>>13,q&=8191,q+=Z*(5*d)+A*(5*g)+k*(5*h)+T*(5*l)+R*(5*u),v+=q>>>13,q&=8191;let $=v+N*u+M*f+K*c+F*a+H*(5*y);v=$>>>13,$&=8191,$+=Z*(5*p)+A*(5*d)+k*(5*g)+T*(5*h)+R*(5*l),v+=$>>>13,$&=8191;let Y=v+N*l+M*u+K*f+F*c+H*a;v=Y>>>13,Y&=8191,Y+=Z*(5*y)+A*(5*p)+k*(5*d)+T*(5*g)+R*(5*h),v+=Y>>>13,Y&=8191;let rt=v+N*h+M*l+K*u+F*f+H*c;v=rt>>>13,rt&=8191,rt+=Z*a+A*(5*y)+k*(5*p)+T*(5*d)+R*(5*g),v+=rt>>>13,rt&=8191;let X=v+N*g+M*h+K*l+F*u+H*f;v=X>>>13,X&=8191,X+=Z*c+A*a+k*(5*y)+T*(5*p)+R*(5*d),v+=X>>>13,X&=8191;let j=v+N*d+M*g+K*h+F*l+H*u;v=j>>>13,j&=8191,j+=Z*f+A*c+k*a+T*(5*y)+R*(5*p),v+=j>>>13,j&=8191;let mt=v+N*p+M*d+K*g+F*h+H*l;v=mt>>>13,mt&=8191,mt+=Z*u+A*f+k*c+T*a+R*(5*y),v+=mt>>>13,mt&=8191;let dt=v+N*y+M*p+K*d+F*g+H*h;v=dt>>>13,dt&=8191,dt+=Z*l+A*u+k*f+T*c+R*a,v+=dt>>>13,dt&=8191,v=(v<<2)+v|0,v=v+U|0,U=v&8191,v=v>>>13,O+=v,o[0]=U,o[1]=O,o[2]=q,o[3]=$,o[4]=Y,o[5]=rt,o[6]=X,o[7]=j,o[8]=mt,o[9]=dt}finalize(){let{h:e,pad:r}=this,n=new Uint16Array(10),i=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=i,i=e[a]>>>13,e[a]&=8191;e[0]+=i*5,i=e[0]>>>13,e[0]&=8191,e[1]+=i,i=e[1]>>>13,e[1]&=8191,e[2]+=i,n[0]=e[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=e[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)e[a]=e[a]&o|n[a];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let s=e[0]+r[0];e[0]=s&65535;for(let a=1;a<8;a++)s=(e[a]+r[a]|0)+(s>>>16)|0,e[a]=s&65535}update(e){Xt.exists(this);let{buffer:r,blockLen:n}=this;e=xi(e);let i=e.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(e,o);continue}r.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(e){Xt.exists(this),Xt.output(e,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)e[o++]=n[s]>>>0,e[o++]=n[s]>>>8;return e}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}};function td(t){let e=(n,i)=>t(i).update(xi(n)).digest(),r=t(new Uint8Array(32));return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=n=>t(n),e}var k0=td(t=>new qo(t));var ed=mi("expand 16-byte k"),rd=mi("expand 32-byte k"),nd=ze(ed),id=ze(rd),bi=t=>!(t.byteOffset%4),D0=t=>{let{core:e,rounds:r,counterRight:n,counterLen:i,allow128bitKeys:o,extendNonceFn:s,blockLen:a}=_0({rounds:20,counterRight:!1,counterLen:8,allow128bitKeys:!0,blockLen:64},t);Xt.number(i),Xt.number(r),Xt.number(a),Xt.bool(n),Xt.bool(o);let c=a/4;if(a%4!==0)throw new Error("Salsa/ChaCha: blockLen must be aligned to 4 bytes");return(f,u,l,h,g=0)=>{if(Xt.bytes(f),Xt.bytes(u),Xt.bytes(l),h||(h=new Uint8Array(l.length)),Xt.bytes(h),Xt.number(g),g<0||g>=2**32-1)throw new Error("Salsa/ChaCha: counter overflow");if(h.length<l.length)throw new Error(`Salsa/ChaCha: output (${h.length}) is shorter than data (${l.length})`);let d=[],p,y;if(f.length===32)bi(f)?p=f:(p=f.slice(),d.push(p)),y=id;else if(f.length===16&&o)p=new Uint8Array(32),p.set(f),p.set(f,16),y=nd,d.push(p);else throw new Error(`Salsa/ChaCha: invalid 32-byte key, got length=${f.length}`);if(bi(u)||(u=u.slice(),d.push(u)),s){if(u.length<=16)throw new Error("Salsa/ChaCha: extended nonce must be bigger than 16 bytes");p=s(y,p,u.subarray(0,16),new Uint8Array(32)),d.push(p),u=u.subarray(16)}let m=16-i;if(u.length!==m)throw new Error(`Salsa/ChaCha: nonce must be ${m} or 16 bytes`);if(m!==12){let N=new Uint8Array(12);N.set(u,n?0:12-u.length),d.push(u=N)}let S=new Uint8Array(a),x=ze(S),I=ze(p),B=ze(u),E=bi(l)&&ze(l),L=bi(h)&&ze(h);d.push(x);let _=l.length;for(let N=0,M=g;N<_;M++){if(e(y,I,B,x,M,r),M>=2**32-1)throw new Error("Salsa/ChaCha: counter overflow");let K=Math.min(a,_-N);if(K===a&&L&&E){let F=N/4;if(N%4!==0)throw new Error("Salsa/ChaCha: invalid block position");for(let H=0;H<c;H++)L[F+H]=E[F+H]^x[H];N+=a;continue}for(let F=0;F<K;F++)h[N+F]=l[N+F]^S[F];N+=K}for(let N=0;N<d.length;N++)d[N].fill(0);return h}};var ft=(t,e)=>t<<e|t>>>32-e;function od(t,e,r,n,i,o=20){let s=t[0],a=t[1],c=t[2],f=t[3],u=e[0],l=e[1],h=e[2],g=e[3],d=e[4],p=e[5],y=e[6],m=e[7],S=i,x=r[0],I=r[1],B=r[2],E=s,L=a,_=c,N=f,M=u,K=l,F=h,H=g,Z=d,A=p,k=y,T=m,R=S,v=x,U=I,O=B;for(let $=0;$<o;$+=2)E=E+M|0,R=ft(R^E,16),Z=Z+R|0,M=ft(M^Z,12),E=E+M|0,R=ft(R^E,8),Z=Z+R|0,M=ft(M^Z,7),L=L+K|0,v=ft(v^L,16),A=A+v|0,K=ft(K^A,12),L=L+K|0,v=ft(v^L,8),A=A+v|0,K=ft(K^A,7),_=_+F|0,U=ft(U^_,16),k=k+U|0,F=ft(F^k,12),_=_+F|0,U=ft(U^_,8),k=k+U|0,F=ft(F^k,7),N=N+H|0,O=ft(O^N,16),T=T+O|0,H=ft(H^T,12),N=N+H|0,O=ft(O^N,8),T=T+O|0,H=ft(H^T,7),E=E+K|0,O=ft(O^E,16),k=k+O|0,K=ft(K^k,12),E=E+K|0,O=ft(O^E,8),k=k+O|0,K=ft(K^k,7),L=L+F|0,R=ft(R^L,16),T=T+R|0,F=ft(F^T,12),L=L+F|0,R=ft(R^L,8),T=T+R|0,F=ft(F^T,7),_=_+H|0,v=ft(v^_,16),Z=Z+v|0,H=ft(H^Z,12),_=_+H|0,v=ft(v^_,8),Z=Z+v|0,H=ft(H^Z,7),N=N+M|0,U=ft(U^N,16),A=A+U|0,M=ft(M^A,12),N=N+M|0,U=ft(U^N,8),A=A+U|0,M=ft(M^A,7);let q=0;n[q++]=s+E|0,n[q++]=a+L|0,n[q++]=c+_|0,n[q++]=f+N|0,n[q++]=u+M|0,n[q++]=l+K|0,n[q++]=h+F|0,n[q++]=g+H|0,n[q++]=d+Z|0,n[q++]=p+A|0,n[q++]=y+k|0,n[q++]=m+T|0,n[q++]=S+R|0,n[q++]=x+v|0,n[q++]=I+U|0,n[q++]=B+O|0}var sd=D0({core:od,counterRight:!1,counterLen:4,allow128bitKeys:!1});var ad=new Uint8Array(16),P0=(t,e)=>{t.update(e);let r=e.length%16;r&&t.update(ad.subarray(r))},N0=(t,e,r,n,i)=>{let o=t(e,r,new Uint8Array(32)),s=k0.create(o);i&&P0(s,i),P0(s,n);let a=new Uint8Array(16),c=T0(a);Fo(c,0,BigInt(i?i.length:0),!0),Fo(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f},cd=t=>(e,r,n)=>(Sr(e,32),Sr(r),{tagLength:16,encrypt:(o,s)=>{let a=o.length,c=a+16;s?Sr(s,c):s=new Uint8Array(c),t(e,r,o,s,1);let f=N0(t,e,r,s.subarray(0,-16),n);return s.set(f,a),s},decrypt:(o,s)=>{let a=o.length,c=a-16;if(a<16)throw new Error("encrypted data must be at least 16 bytes");s?Sr(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=N0(t,e,r,f,n);if(!L0(u,l))throw new Error("invalid tag");return t(e,r,f,s,1),s}}),Ho=cd(sd);function vi(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function zo(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Ln(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");vi(t.outputLen),vi(t.blockLen)}function Xr(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function U0(t,e){zo(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var wi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var K0=t=>t instanceof Uint8Array;var Ei=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),ge=(t,e)=>t<<32-e|t>>>e,fd=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!fd)throw new Error("Non little-endian hardware is not supported");function Go(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function sr(t){if(typeof t=="string"&&(t=Go(t)),!K0(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function Si(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!K0(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var Qr=class{clone(){return this._cloneInto()}},Rx={}.toString;function Bi(t){let e=n=>t().update(sr(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Br(t=32){if(wi&&typeof wi.getRandomValues=="function")return wi.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function ud(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}var jr=class extends Qr{constructor(e,r,n,i){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Ei(this.buffer)}update(e){Xr(this);let{view:r,buffer:n,blockLen:i}=this;e=sr(e);let o=e.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=Ei(e);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Xr(this),U0(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;ud(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=Ei(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],o)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return e.length=i,e.pos=a,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var Ai=BigInt(4294967295),Wo=BigInt(32);function O0(t,e=!1){return e?{h:Number(t&Ai),l:Number(t>>Wo&Ai)}:{h:Number(t>>Wo&Ai)|0,l:Number(t&Ai)|0}}function ld(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let i=0;i<t.length;i++){let{h:o,l:s}=O0(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var hd=(t,e)=>BigInt(t>>>0)<<Wo|BigInt(e>>>0),dd=(t,e,r)=>t>>>r,pd=(t,e,r)=>t<<32-r|e>>>r,yd=(t,e,r)=>t>>>r|e<<32-r,gd=(t,e,r)=>t<<32-r|e>>>r,md=(t,e,r)=>t<<64-r|e>>>r-32,xd=(t,e,r)=>t>>>r-32|e<<64-r,bd=(t,e)=>e,vd=(t,e)=>t,wd=(t,e,r)=>t<<r|e>>>32-r,Ed=(t,e,r)=>e<<r|t>>>32-r,Sd=(t,e,r)=>e<<r-32|t>>>64-r,Bd=(t,e,r)=>t<<r-32|e>>>64-r;function Ad(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Cd=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Id=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Td=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),_d=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,Ld=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Rd=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var kd={fromBig:O0,split:ld,toBig:hd,shrSH:dd,shrSL:pd,rotrSH:yd,rotrSL:gd,rotrBH:md,rotrBL:xd,rotr32H:bd,rotr32L:vd,rotlSH:wd,rotlSL:Ed,rotlBH:Sd,rotlBL:Bd,add:Ad,add3L:Cd,add3H:Id,add4L:Td,add4H:_d,add5H:Rd,add5L:Ld},tt=kd;var[Dd,Pd]=(()=>tt.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))))(),ar=new Uint32Array(80),cr=new Uint32Array(80),$o=class extends jr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:h,Gh:g,Gl:d,Hh:p,Hl:y}=this;return[e,r,n,i,o,s,a,c,f,u,l,h,g,d,p,y]}set(e,r,n,i,o,s,a,c,f,u,l,h,g,d,p,y){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=h|0,this.Gh=g|0,this.Gl=d|0,this.Hh=p|0,this.Hl=y|0}process(e,r){for(let x=0;x<16;x++,r+=4)ar[x]=e.getUint32(r),cr[x]=e.getUint32(r+=4);for(let x=16;x<80;x++){let I=ar[x-15]|0,B=cr[x-15]|0,E=tt.rotrSH(I,B,1)^tt.rotrSH(I,B,8)^tt.shrSH(I,B,7),L=tt.rotrSL(I,B,1)^tt.rotrSL(I,B,8)^tt.shrSL(I,B,7),_=ar[x-2]|0,N=cr[x-2]|0,M=tt.rotrSH(_,N,19)^tt.rotrBH(_,N,61)^tt.shrSH(_,N,6),K=tt.rotrSL(_,N,19)^tt.rotrBL(_,N,61)^tt.shrSL(_,N,6),F=tt.add4L(L,K,cr[x-7],cr[x-16]),H=tt.add4H(F,E,M,ar[x-7],ar[x-16]);ar[x]=H|0,cr[x]=F|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:h,Fh:g,Fl:d,Gh:p,Gl:y,Hh:m,Hl:S}=this;for(let x=0;x<80;x++){let I=tt.rotrSH(l,h,14)^tt.rotrSH(l,h,18)^tt.rotrBH(l,h,41),B=tt.rotrSL(l,h,14)^tt.rotrSL(l,h,18)^tt.rotrBL(l,h,41),E=l&g^~l&p,L=h&d^~h&y,_=tt.add5L(S,B,L,Pd[x],cr[x]),N=tt.add5H(_,m,I,E,Dd[x],ar[x]),M=_|0,K=tt.rotrSH(n,i,28)^tt.rotrBH(n,i,34)^tt.rotrBH(n,i,39),F=tt.rotrSL(n,i,28)^tt.rotrBL(n,i,34)^tt.rotrBL(n,i,39),H=n&o^n&a^o&a,Z=i&s^i&c^s&c;m=p|0,S=y|0,p=g|0,y=d|0,g=l|0,d=h|0,{h:l,l:h}=tt.add(f|0,u|0,N|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let A=tt.add3L(M,F,Z);n=tt.add3H(A,N,K,H),i=A|0}({h:n,l:i}=tt.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=tt.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=tt.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=tt.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:h}=tt.add(this.Eh|0,this.El|0,l|0,h|0),{h:g,l:d}=tt.add(this.Fh|0,this.Fl|0,g|0,d|0),{h:p,l:y}=tt.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:m,l:S}=tt.add(this.Hh|0,this.Hl|0,m|0,S|0),this.set(n,i,o,s,a,c,f,u,l,h,g,d,p,y,m,S)}roundClean(){ar.fill(0),cr.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var Yo=Bi(()=>new $o);var Ti={};Ut(Ti,{bitGet:()=>Vd,bitLen:()=>Fd,bitMask:()=>Rn,bitSet:()=>qd,bytesToHex:()=>Ge,bytesToNumberBE:()=>We,bytesToNumberLE:()=>me,concatBytes:()=>Ye,createHmacDrbg:()=>Qo,ensureBytes:()=>bt,equalBytes:()=>Od,hexToBytes:()=>Ar,hexToNumber:()=>Xo,numberToBytesBE:()=>fr,numberToBytesLE:()=>$e,numberToHexUnpadded:()=>V0,numberToVarBytesBE:()=>Kd,utf8ToBytes:()=>Md,validateObject:()=>fe});var F0=BigInt(0),Ci=BigInt(1),Nd=BigInt(2),Ii=t=>t instanceof Uint8Array,Ud=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Ge(t){if(!Ii(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=Ud[t[r]];return e}function V0(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Xo(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function Ar(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let r=new Uint8Array(e/2);for(let n=0;n<r.length;n++){let i=n*2,o=t.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function We(t){return Xo(Ge(t))}function me(t){if(!Ii(t))throw new Error("Uint8Array expected");return Xo(Ge(Uint8Array.from(t).reverse()))}function fr(t,e){return Ar(t.toString(16).padStart(e*2,"0"))}function $e(t,e){return fr(t,e).reverse()}function Kd(t){return Ar(V0(t))}function bt(t,e,r){let n;if(typeof e=="string")try{n=Ar(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(Ii(e))n=Uint8Array.from(e);else throw new Error(`${t} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${t} expected ${r} bytes, got ${i}`);return n}function Ye(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!Ii(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function Od(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[r])return!1;return!0}function Md(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Fd(t){let e;for(e=0;t>F0;t>>=Ci,e+=1);return e}function Vd(t,e){return t>>BigInt(e)&Ci}var qd=(t,e,r)=>t|(r?Ci:F0)<<BigInt(e),Rn=t=>(Nd<<BigInt(t-1))-Ci,Zo=t=>new Uint8Array(t),M0=t=>Uint8Array.from(t);function Qo(t,e,r){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=Zo(t),i=Zo(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Zo())=>{i=a(M0([0]),l),n=a(),l.length!==0&&(i=a(M0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<e;){n=a();let g=n.slice();h.push(g),l+=n.length}return Ye(...h)};return(l,h)=>{s(),c(l);let g;for(;!(g=h(f()));)c();return s(),g}}var Hd={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function fe(t,e,r={}){let n=(i,o,s)=>{let a=Hd[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=t[i];if(!(s&&c===void 0)&&!a(c,t))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(e))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return t}var Kt=BigInt(0),St=BigInt(1),Cr=BigInt(2),zd=BigInt(3),jo=BigInt(4),q0=BigInt(5),H0=BigInt(8),Gd=BigInt(9),Wd=BigInt(16);function ut(t,e){let r=t%e;return r>=Kt?r:e+r}function Jo(t,e,r){if(r<=Kt||e<Kt)throw new Error("Expected power/modulo > 0");if(r===St)return Kt;let n=St;for(;e>Kt;)e&St&&(n=n*t%r),t=t*t%r,e>>=St;return n}function vt(t,e,r){let n=t;for(;e-- >Kt;)n*=n,n%=r;return n}function _i(t,e){if(t===Kt||e<=Kt)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=ut(t,e),n=e,i=Kt,o=St,s=St,a=Kt;for(;r!==Kt;){let f=n/r,u=n%r,l=i-s*f,h=o-a*f;n=r,r=u,i=s,o=a,s=l,a=h}if(n!==St)throw new Error("invert: does not exist");return ut(i,e)}function $d(t){let e=(t-St)/Cr,r,n,i;for(r=t-St,n=0;r%Cr===Kt;r/=Cr,n++);for(i=Cr;i<t&&Jo(i,e,t)!==t-St;i++);if(n===1){let s=(t+St)/jo;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+St)/Cr;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),h=a.pow(c,r);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(h);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let d=a.pow(u,St<<BigInt(f-g-1));u=a.sqr(d),l=a.mul(l,d),h=a.mul(h,u),f=g}return l}}function Yd(t){if(t%jo===zd){let e=(t+St)/jo;return function(n,i){let o=n.pow(i,e);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(t%H0===q0){let e=(t-q0)/H0;return function(n,i){let o=n.mul(i,Cr),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,Cr),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return t%Wd,$d(t)}var z0=(t,e)=>(ut(t,e)&St)===St,Zd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function ts(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Zd.reduce((n,i)=>(n[i]="function",n),e);return fe(t,r)}function Xd(t,e,r){if(r<Kt)throw new Error("Expected power > 0");if(r===Kt)return t.ONE;if(r===St)return e;let n=t.ONE,i=e;for(;r>Kt;)r&St&&(n=t.mul(n,i)),i=t.sqr(i),r>>=St;return n}function Qd(t,e){let r=new Array(e.length),n=e.reduce((o,s,a)=>t.is0(s)?o:(r[a]=o,t.mul(o,s)),t.ONE),i=t.inv(n);return e.reduceRight((o,s,a)=>t.is0(s)?o:(r[a]=t.mul(o,r[a]),t.mul(o,s)),i),r}function es(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Li(t,e,r=!1,n={}){if(t<=Kt)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=es(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=Yd(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:Rn(i),ZERO:Kt,ONE:St,create:c=>ut(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Kt<=c&&c<t},is0:c=>c===Kt,isOdd:c=>(c&St)===St,neg:c=>ut(-c,t),eql:(c,f)=>c===f,sqr:c=>ut(c*c,t),add:(c,f)=>ut(c+f,t),sub:(c,f)=>ut(c-f,t),mul:(c,f)=>ut(c*f,t),pow:(c,f)=>Xd(a,c,f),div:(c,f)=>ut(c*_i(f,t),t),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>_i(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Qd(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?$e(c,o):fr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?me(c):We(c)}});return Object.freeze(a)}function G0(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?t.neg(r):r}function W0(t){if(typeof t!="bigint")throw new Error("field order must be bigint");let e=t.toString(2).length;return Math.ceil(e/8)}function rs(t){let e=W0(t);return e+Math.ceil(e/2)}function $0(t,e,r=!1){let n=t.length,i=W0(e),o=rs(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?We(t):me(t),a=ut(s,e-St)+St;return r?$e(a,i):fr(a,i)}var Jd=BigInt(0),ns=BigInt(1);function Ri(t,e){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(e/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=t.ZERO,a=i;for(;o>Jd;)o&ns&&(s=s.add(a)),a=a.double(),o>>=ns;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let h=1;h<a;h++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=t.ZERO,u=t.BASE,l=BigInt(2**i-1),h=2**i,g=BigInt(i);for(let d=0;d<a;d++){let p=d*c,y=Number(s&l);s>>=g,y>c&&(y-=h,s+=ns);let m=p,S=p+Math.abs(y)-1,x=d%2!==0,I=y<0;y===0?u=u.add(r(x,o[m])):f=f.add(r(I,o[S]))}return{p:f,f:u}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,f=o.get(i);return f||(f=this.precomputeWindow(i,c),c!==1&&o.set(i,a(f))),this.wNAF(c,f,s)}}}function kn(t){return ts(t.Fp),fe(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...es(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var xe=BigInt(0),ne=BigInt(1),ki=BigInt(2),tp=BigInt(8),ep={zip215:!0};function rp(t){let e=kn(t);return fe(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Di(t){let e=rp(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,f=ki<<BigInt(a*8)-ne,u=r.create,l=e.uvRatio||((R,v)=>{try{return{isValid:!0,value:r.sqrt(R*r.inv(v))}}catch{return{isValid:!1,value:xe}}}),h=e.adjustScalarBytes||(R=>R),g=e.domain||((R,v,U)=>{if(v.length||U)throw new Error("Contexts/pre-hash are not supported");return R}),d=R=>typeof R=="bigint"&&xe<R,p=(R,v)=>d(R)&&d(v)&&R<v,y=R=>R===xe||p(R,f);function m(R,v){if(p(R,v))return R;throw new Error(`Expected valid scalar < ${v}, got ${typeof R} ${R}`)}function S(R){return R===xe?R:m(R,n)}let x=new Map;function I(R){if(!(R instanceof B))throw new Error("ExtendedPoint expected")}class B{constructor(v,U,O,q){if(this.ex=v,this.ey=U,this.ez=O,this.et=q,!y(v))throw new Error("x required");if(!y(U))throw new Error("y required");if(!y(O))throw new Error("z required");if(!y(q))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(v){if(v instanceof B)throw new Error("extended point not allowed");let{x:U,y:O}=v||{};if(!y(U)||!y(O))throw new Error("invalid affine point");return new B(U,O,ne,u(U*O))}static normalizeZ(v){let U=r.invertBatch(v.map(O=>O.ez));return v.map((O,q)=>O.toAffine(U[q])).map(B.fromAffine)}_setWindowSize(v){this._WINDOW_SIZE=v,x.delete(this)}assertValidity(){let{a:v,d:U}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:O,ey:q,ez:$,et:Y}=this,rt=u(O*O),X=u(q*q),j=u($*$),mt=u(j*j),dt=u(rt*v),zt=u(j*u(dt+X)),Gt=u(mt+u(U*u(rt*X)));if(zt!==Gt)throw new Error("bad point: equation left != right (1)");let Nt=u(O*q),Yt=u($*Y);if(Nt!==Yt)throw new Error("bad point: equation left != right (2)")}equals(v){I(v);let{ex:U,ey:O,ez:q}=this,{ex:$,ey:Y,ez:rt}=v,X=u(U*rt),j=u($*q),mt=u(O*rt),dt=u(Y*q);return X===j&&mt===dt}is0(){return this.equals(B.ZERO)}negate(){return new B(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:v}=e,{ex:U,ey:O,ez:q}=this,$=u(U*U),Y=u(O*O),rt=u(ki*u(q*q)),X=u(v*$),j=U+O,mt=u(u(j*j)-$-Y),dt=X+Y,zt=dt-rt,Gt=X-Y,Nt=u(mt*zt),Yt=u(dt*Gt),qe=u(mt*Gt),wr=u(zt*dt);return new B(Nt,Yt,wr,qe)}add(v){I(v);let{a:U,d:O}=e,{ex:q,ey:$,ez:Y,et:rt}=this,{ex:X,ey:j,ez:mt,et:dt}=v;if(U===BigInt(-1)){let a0=u(($-q)*(j+X)),c0=u(($+q)*(j-X)),_o=u(c0-a0);if(_o===xe)return this.double();let f0=u(Y*ki*dt),u0=u(rt*ki*mt),l0=u0+f0,h0=c0+a0,d0=u0-f0,vh=u(l0*_o),wh=u(h0*d0),Eh=u(l0*d0),Sh=u(_o*h0);return new B(vh,wh,Sh,Eh)}let zt=u(q*X),Gt=u($*j),Nt=u(rt*O*dt),Yt=u(Y*mt),qe=u((q+$)*(X+j)-zt-Gt),wr=Yt-Nt,In=Yt+Nt,s0=u(Gt-U*zt),gh=u(qe*wr),mh=u(In*s0),xh=u(qe*s0),bh=u(wr*In);return new B(gh,mh,bh,xh)}subtract(v){return this.add(v.negate())}wNAF(v){return _.wNAFCached(this,x,v,B.normalizeZ)}multiply(v){let{p:U,f:O}=this.wNAF(m(v,n));return B.normalizeZ([U,O])[0]}multiplyUnsafe(v){let U=S(v);return U===xe?L:this.equals(L)||U===ne?this:this.equals(E)?this.wNAF(U).p:_.unsafeLadder(this,U)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(v){let{ex:U,ey:O,ez:q}=this,$=this.is0();v==null&&(v=$?tp:r.inv(q));let Y=u(U*v),rt=u(O*v),X=u(q*v);if($)return{x:xe,y:ne};if(X!==ne)throw new Error("invZ was invalid");return{x:Y,y:rt}}clearCofactor(){let{h:v}=e;return v===ne?this:this.multiplyUnsafe(v)}static fromHex(v,U=!1){let{d:O,a:q}=e,$=r.BYTES;v=bt("pointHex",v,$);let Y=v.slice(),rt=v[$-1];Y[$-1]=rt&-129;let X=me(Y);X===xe||(U?m(X,f):m(X,r.ORDER));let j=u(X*X),mt=u(j-ne),dt=u(O*j-q),{isValid:zt,value:Gt}=l(mt,dt);if(!zt)throw new Error("Point.fromHex: invalid y coordinate");let Nt=(Gt&ne)===ne,Yt=(rt&128)!==0;if(!U&&Gt===xe&&Yt)throw new Error("Point.fromHex: x=0 and x_0=1");return Yt!==Nt&&(Gt=u(-Gt)),B.fromAffine({x:Gt,y:X})}static fromPrivateKey(v){return K(v).point}toRawBytes(){let{x:v,y:U}=this.toAffine(),O=$e(U,r.BYTES);return O[O.length-1]|=v&ne?128:0,O}toHex(){return Ge(this.toRawBytes())}}B.BASE=new B(e.Gx,e.Gy,ne,u(e.Gx*e.Gy)),B.ZERO=new B(xe,ne,ne,xe);let{BASE:E,ZERO:L}=B,_=Ri(B,a*8);function N(R){return ut(R,n)}function M(R){return N(me(R))}function K(R){let v=a;R=bt("private key",R,v);let U=bt("hashed private key",o(R),2*v),O=h(U.slice(0,v)),q=U.slice(v,2*v),$=M(O),Y=E.multiply($),rt=Y.toRawBytes();return{head:O,prefix:q,scalar:$,point:Y,pointBytes:rt}}function F(R){return K(R).pointBytes}function H(R=new Uint8Array,...v){let U=Ye(...v);return M(o(g(U,bt("context",R),!!i)))}function Z(R,v,U={}){R=bt("message",R),i&&(R=i(R));let{prefix:O,scalar:q,pointBytes:$}=K(v),Y=H(U.context,O,R),rt=E.multiply(Y).toRawBytes(),X=H(U.context,rt,$,R),j=N(Y+X*q);S(j);let mt=Ye(rt,$e(j,r.BYTES));return bt("result",mt,a*2)}let A=ep;function k(R,v,U,O=A){let{context:q,zip215:$}=O,Y=r.BYTES;R=bt("signature",R,2*Y),v=bt("message",v),i&&(v=i(v));let rt=me(R.slice(Y,2*Y)),X,j,mt;try{X=B.fromHex(U,$),j=B.fromHex(R.slice(0,Y),$),mt=E.multiplyUnsafe(rt)}catch{return!1}if(!$&&X.isSmallOrder())return!1;let dt=H(q,j.toRawBytes(),X.toRawBytes(),v);return j.add(X.multiplyUnsafe(dt)).subtract(mt).clearCofactor().equals(B.ZERO)}return E._setWindowSize(8),{CURVE:e,getPublicKey:F,sign:Z,verify:k,ExtendedPoint:B,utils:{getExtendedPublicKey:K,randomPrivateKey:()=>s(r.BYTES),precompute(R=8,v=B.BASE){return v._setWindowSize(R),v.multiply(BigInt(3)),v}}}}var Dn=BigInt(0),is=BigInt(1);function np(t){return fe(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function Y0(t){let e=np(t),{P:r}=e,n=x=>ut(x,r),i=e.montgomeryBits,o=Math.ceil(i/8),s=e.nByteLength,a=e.adjustScalarBytes||(x=>x),c=e.powPminus2||(x=>Jo(x,r-BigInt(2),r));function f(x,I,B){let E=n(x*(I-B));return I=n(I-E),B=n(B+E),[I,B]}function u(x){if(typeof x=="bigint"&&Dn<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(e.a-BigInt(2))/BigInt(4);function h(x,I){let B=u(x),E=u(I),L=B,_=is,N=Dn,M=B,K=is,F=Dn,H;for(let A=BigInt(i-1);A>=Dn;A--){let k=E>>A&is;F^=k,H=f(F,_,M),_=H[0],M=H[1],H=f(F,N,K),N=H[0],K=H[1],F=k;let T=_+N,R=n(T*T),v=_-N,U=n(v*v),O=R-U,q=M+K,$=M-K,Y=n($*T),rt=n(q*v),X=Y+rt,j=Y-rt;M=n(X*X),K=n(L*n(j*j)),_=n(R*U),N=n(O*(R+n(l*O)))}H=f(F,_,M),_=H[0],M=H[1],H=f(F,N,K),N=H[0],K=H[1];let Z=c(N);return n(_*Z)}function g(x){return $e(n(x),o)}function d(x){let I=bt("u coordinate",x,o);return s===o&&(I[s-1]&=127),me(I)}function p(x){let I=bt("scalar",x);if(I.length!==o&&I.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${I.length}`);return me(a(I))}function y(x,I){let B=d(I),E=p(x),L=h(B,E);if(L===Dn)throw new Error("Invalid private or public key received");return g(L)}let m=g(e.Gu);function S(x){return y(x,m)}return{scalarMult:y,scalarMultBase:S,getSharedSecret:(x,I)=>y(x,I),getPublicKey:x=>S(x),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:m}}var Pn=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Z0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),nb=BigInt(0),ip=BigInt(1),os=BigInt(2),op=BigInt(5),X0=BigInt(10),sp=BigInt(20),ap=BigInt(40),Q0=BigInt(80);function j0(t){let e=Pn,n=t*t%e*t%e,i=vt(n,os,e)*n%e,o=vt(i,ip,e)*t%e,s=vt(o,op,e)*o%e,a=vt(s,X0,e)*s%e,c=vt(a,sp,e)*a%e,f=vt(c,ap,e)*c%e,u=vt(f,Q0,e)*f%e,l=vt(u,Q0,e)*f%e,h=vt(l,X0,e)*s%e;return{pow_p_5_8:vt(h,os,e)*t%e,b2:n}}function J0(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function cp(t,e){let r=Pn,n=ut(e*e*e,r),i=ut(n*n*e,r),o=j0(t*i).pow_p_5_8,s=ut(t*n*o,r),a=ut(e*s*s,r),c=s,f=ut(s*Z0,r),u=a===t,l=a===ut(-t,r),h=a===ut(-t*Z0,r);return u&&(s=c),(l||h)&&(s=f),z0(s,r)&&(s=ut(-s,r)),{isValid:u||l,value:s}}var Ze=Li(Pn,void 0,!0),ss={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Ze,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Yo,randomBytes:Br,adjustScalarBytes:J0,uvRatio:cp},Jr=Di(ss);function tc(t,e,r){if(e.length>255)throw new Error("Context is too big");return Si(Go("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var ib=Di({...ss,domain:tc}),ob=Di({...ss,domain:tc,prehash:Yo}),Nn=(()=>Y0({P:Pn,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Pn,{pow_p_5_8:r,b2:n}=j0(t);return ut(vt(r,BigInt(3),e)*n,e)},adjustScalarBytes:J0,randomBytes:Br}))();var fp=(Ze.ORDER+BigInt(3))/BigInt(8),sb=Ze.pow(os,fp),ab=Ze.sqrt(Ze.neg(Ze.ONE)),cb=(Ze.ORDER-BigInt(5))/BigInt(8),fb=BigInt(486662);var ub=G0(Ze,Ze.neg(BigInt(486664)));var lb=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),hb=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),db=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),pb=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var yb=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Pi=class extends Qr{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Ln(e);let n=sr(r);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?e.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(e){return Xr(this),this.iHash.update(e),this}digestInto(e){Xr(this),zo(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=a,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},tn=(t,e,r)=>new Pi(t,e).update(r).digest();tn.create=(t,e)=>new Pi(t,e);function rc(t,e,r){return Ln(t),r===void 0&&(r=new Uint8Array(t.outputLen)),tn(t,sr(r),sr(e))}var as=new Uint8Array([0]),ec=new Uint8Array;function nc(t,e,r,n=32){if(Ln(t),vi(n),n>255*t.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/t.outputLen);r===void 0&&(r=ec);let o=new Uint8Array(i*t.outputLen),s=tn.create(t,e),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)as[0]=f+1,a.update(f===0?ec:c).update(r).update(as).digestInto(c),o.set(c,t.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),as.fill(0),o.slice(0,n)}var up=(t,e,r)=>t&e^~t&r,lp=(t,e,r)=>t&e^t&r^e&r,hp=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),ur=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),lr=new Uint32Array(64),cs=class extends jr{constructor(){super(64,32,8,!1),this.A=ur[0]|0,this.B=ur[1]|0,this.C=ur[2]|0,this.D=ur[3]|0,this.E=ur[4]|0,this.F=ur[5]|0,this.G=ur[6]|0,this.H=ur[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[e,r,n,i,o,s,a,c]}set(e,r,n,i,o,s,a,c){this.A=e|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,r){for(let l=0;l<16;l++,r+=4)lr[l]=e.getUint32(r,!1);for(let l=16;l<64;l++){let h=lr[l-15],g=lr[l-2],d=ge(h,7)^ge(h,18)^h>>>3,p=ge(g,17)^ge(g,19)^g>>>10;lr[l]=p+lr[l-7]+d+lr[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let h=ge(a,6)^ge(a,11)^ge(a,25),g=u+h+up(a,c,f)+hp[l]+lr[l]|0,p=(ge(n,2)^ge(n,13)^ge(n,22))+lp(n,i,o)|0;u=f,f=c,c=a,a=s+g|0,s=o,o=i,i=n,n=g+p|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,u=u+this.H|0,this.set(n,i,o,s,a,c,f,u)}roundClean(){lr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var en=Bi(()=>new cs);var fs={hashSHA256(t){return en(t)},getHKDF(t,e){let r=rc(en,e,t),i=nc(en,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let t=Nn.utils.randomPrivateKey();return{publicKey:Nn.getPublicKey(t),privateKey:t}},generateX25519KeyPairFromSeed(t){return{publicKey:Nn.getPublicKey(t),privateKey:t}},generateX25519SharedKey(t,e){return Nn.getSharedSecret(t,e)},chaCha20Poly1305Encrypt(t,e,r,n){return Ho(n,e,r).encrypt(t)},chaCha20Poly1305Decrypt(t,e,r,n,i){return Ho(n,e,r).decrypt(t,i)}};var dp=t=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(t):new Uint8Array(t),rn=t=>{let e=dp(2);return new DataView(e.buffer,e.byteOffset,e.byteLength).setUint16(0,t,!1),e};rn.bytes=2;var Un=t=>{if(t.length<2)throw RangeError("Could not decode int16BE");return t instanceof Uint8Array?new DataView(t.buffer,t.byteOffset,t.byteLength).getUint16(0,!1):t.getUint16(0)};Un.bytes=2;function ic(t){return yt([t.ne,t.ciphertext],t.ne.length+t.ciphertext.length)}function oc(t){return yt([t.ne,t.ns,t.ciphertext],t.ne.length+t.ns.length+t.ciphertext.length)}function sc(t){return yt([t.ns,t.ciphertext],t.ns.length+t.ciphertext.length)}function ac(t){if(t.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:t.subarray(0,32),ciphertext:t.subarray(32,t.length),ns:new Uint8Array(0)}}function cc(t){if(t.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:t.subarray(0,32),ns:t.subarray(32,80),ciphertext:t.subarray(80,t.length)}}function fc(t){if(t.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:new Uint8Array(0),ns:t.subarray(0,48),ciphertext:t.subarray(48,t.length)}}var lc=16;function hc(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s=t.encrypt(n.subarray(i,o),t.session);e?.encryptedPackets.increment(),yield rn(s.byteLength),yield s}}}function dc(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-lc<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-lc),{plaintext:c,valid:f}=t.decrypt(s,t.session,a);if(!f)throw e?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");e?.decryptedPackets.increment(),yield c}}}var nt=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},On=class t extends Error{code;constructor(e="Unexpected Peer"){super(e),this.code=t.code}static code="ERR_UNEXPECTED_PEER"},Ir=class t extends Error{code;constructor(e="Invalid crypto exchange"){super(e),this.code=t.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var h4=kt(qn(),1),d4=kt(Lf(),1);var _2=kt(gt(),1);var Us={};Ut(Us,{base10:()=>H1});function O1(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<t.length;i++){var o=t.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=t.length,c=t.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,y=0,m=0,S=d.length;m!==S&&d[m]===0;)m++,p++;for(var x=(S-m)*u+1>>>0,I=new Uint8Array(x);m!==S;){for(var B=d[m],E=0,L=x-1;(B!==0||E<y)&&L!==-1;L--,E++)B+=256*I[L]>>>0,I[L]=B%a>>>0,B=B/a>>>0;if(B!==0)throw new Error("Non-zero carry");y=E,m++}for(var _=x-y;_!==x&&I[_]===0;)_++;for(var N=c.repeat(p);_<x;++_)N+=t.charAt(I[_]);return N}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var y=0,m=0;d[p]===c;)y++,p++;for(var S=(d.length-p)*f+1>>>0,x=new Uint8Array(S);d[p];){var I=r[d.charCodeAt(p)];if(I===255)return;for(var B=0,E=S-1;(I!==0||B<m)&&E!==-1;E--,B++)I+=a*x[E]>>>0,x[E]=I%256>>>0,I=I/256>>>0;if(I!==0)throw new Error("Non-zero carry");m=B,p++}if(d[p]!==" "){for(var L=S-m;L!==S&&x[L]===0;)L++;for(var _=new Uint8Array(y+(S-L)),N=y;L!==S;)_[N++]=x[L++];return _}}}function g(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:g}}var M1=O1,F1=M1,Rf=F1;var uv=new Uint8Array(0);var kf=(t,e)=>{if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0},Je=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")};var Df=t=>new TextEncoder().encode(t),Pf=t=>new TextDecoder().decode(t);var ks=class{constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Ds=class{constructor(e,r,n){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return Uf(this,e)}},Ps=class{constructor(e){this.decoders=e}or(e){return Uf(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},Uf=(t,e)=>new Ps({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Ns=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ks(e,r,n),this.decoder=new Ds(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},cn=({name:t,prefix:e,encode:r,decode:n})=>new Ns(t,e,r,n),gr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=Rf(r,e);return cn({prefix:t,name:e,encode:n,decode:o=>Je(i(o))})},V1=(t,e,r,n)=>{let i={};for(let u=0;u<e.length;++u)i[e[u]]=u;let o=t.length;for(;t[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,f=0;for(let u=0;u<o;++u){let l=i[t[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},q1=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Tt=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>cn({prefix:e,name:t,encode(i){return q1(i,n,r)},decode(i){return V1(i,n,r,t)}});var H1=gr({prefix:"9",name:"base10",alphabet:"0123456789"});var Ks={};Ut(Ks,{base16:()=>z1,base16upper:()=>G1});var z1=Tt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),G1=Tt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Os={};Ut(Os,{base2:()=>W1});var W1=Tt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ms={};Ut(Ms,{base256emoji:()=>Q1});var Kf=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}"),$1=Kf.reduce((t,e,r)=>(t[r]=e,t),[]),Y1=Kf.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function Z1(t){return t.reduce((e,r)=>(e+=$1[r],e),"")}function X1(t){let e=[];for(let r of t){let n=Y1[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var Q1=cn({prefix:"\u{1F680}",name:"base256emoji",encode:Z1,decode:X1});var Fs={};Ut(Fs,{base32:()=>we,base32hex:()=>eg,base32hexpad:()=>ng,base32hexpadupper:()=>ig,base32hexupper:()=>rg,base32pad:()=>J1,base32padupper:()=>tg,base32upper:()=>j1,base32z:()=>og});var we=Tt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),j1=Tt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),J1=Tt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),tg=Tt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),eg=Tt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),rg=Tt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),ng=Tt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),ig=Tt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),og=Tt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Vs={};Ut(Vs,{base36:()=>sg,base36upper:()=>ag});var sg=gr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),ag=gr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var qs={};Ut(qs,{base58btc:()=>Ct,base58flickr:()=>cg});var Ct=gr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),cg=gr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var zs={};Ut(zs,{base64:()=>fn,base64pad:()=>fg,base64url:()=>Hs,base64urlpad:()=>ug});var fn=Tt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),fg=Tt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Hs=Tt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),ug=Tt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Gs={};Ut(Gs,{base8:()=>lg});var lg=Tt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Ws={};Ut(Ws,{identity:()=>hg});var hg=cn({prefix:"\0",name:"identity",encode:t=>Pf(t),decode:t=>Df(t)});var Av=new TextEncoder,Cv=new TextDecoder;var Zs={};Ut(Zs,{identity:()=>xr});var Ne={};Ut(Ne,{Digest:()=>Dr,create:()=>Ee,decode:()=>mr,equals:()=>Ys});var yg=Ff,Of=128,gg=127,mg=~gg,xg=Math.pow(2,31);function Ff(t,e,r){e=e||[],r=r||0;for(var n=r;t>=xg;)e[r++]=t&255|Of,t/=128;for(;t&mg;)e[r++]=t&255|Of,t>>>=7;return e[r]=t|0,Ff.bytes=r-n+1,e}var bg=$s,vg=128,Mf=127;function $s(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw $s.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Mf)<<i:(s&Mf)*Math.pow(2,i),i+=7}while(s>=vg);return $s.bytes=o-n,r}var wg=Math.pow(2,7),Eg=Math.pow(2,14),Sg=Math.pow(2,21),Bg=Math.pow(2,28),Ag=Math.pow(2,35),Cg=Math.pow(2,42),Ig=Math.pow(2,49),Tg=Math.pow(2,56),_g=Math.pow(2,63),Lg=function(t){return t<wg?1:t<Eg?2:t<Sg?3:t<Bg?4:t<Ag?5:t<Cg?6:t<Ig?7:t<Tg?8:t<_g?9:10},Rg={encode:yg,decode:bg,encodingLength:Lg},kg=Rg,Gn=kg;var Wn=(t,e=0)=>[Gn.decode(t,e),Gn.decode.bytes],un=(t,e,r=0)=>(Gn.encode(t,e,r),e),ln=t=>Gn.encodingLength(t);var Ee=(t,e)=>{let r=e.byteLength,n=ln(t),i=n+ln(r),o=new Uint8Array(i+r);return un(t,o,0),un(r,o,n),o.set(e,i),new Dr(t,r,e,o)},mr=t=>{let e=Je(t),[r,n]=Wn(e),[i,o]=Wn(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Dr(r,i,s,e)},Ys=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&kf(t.bytes,r.bytes)}},Dr=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var Vf=0,Dg="identity",qf=Je,Pg=t=>Ee(Vf,qf(t)),xr={code:Vf,name:Dg,encode:qf,digest:Pg};var js={};Ut(js,{sha256:()=>$t,sha512:()=>Ng});var Qs=({name:t,code:e,encode:r})=>new Xs(t,e,r),Xs=class{constructor(e,r,n){this.name=e,this.code=r,this.encode=n}digest(e){if(e instanceof Uint8Array){let r=this.encode(e);return r instanceof Uint8Array?Ee(this.code,r):r.then(n=>Ee(this.code,n))}else throw Error("Unknown type, must be binary type")}};var zf=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),$t=Qs({name:"sha2-256",code:18,encode:zf("SHA-256")}),Ng=Qs({name:"sha2-512",code:19,encode:zf("SHA-512")});var Gf=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return Kg(r,Js(t),e||Ct.encoder);default:return Og(r,Js(t),e||we.encoder)}};var Wf=new WeakMap,Js=t=>{let e=Wf.get(t);if(e==null){let r=new Map;return Wf.set(t,r),r}return e},Se=class t{constructor(e,r,n,i){this.code=r,this.version=e,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:e,multihash:r}=this;if(e!==$n)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Mg)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=Ee(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return t.equals(this,e)}static equals(e,r){let n=r;return n&&e.code===n.code&&e.version===n.version&&Ys(e.multihash,n.multihash)}toString(e){return Gf(this,e)}toJSON(){return{"/":Gf(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new t(n,i,o,s||$f(n,i,o.bytes))}else if(r[Fg]===!0){let{version:n,multihash:i,code:o}=r,s=mr(i);return t.create(n,o,s)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(r!==$n)throw new Error(`Version 0 CID must use dag-pb (code: ${$n}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=$f(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,$n,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=Je(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new Dr(r.multihashCode,r.digestSize,o,i);return[r.version===0?t.createV0(s):t.createV1(r.codec,s),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[l,h]=Wn(e.subarray(r));return r+=h,l},i=n(),o=$n;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,i]=Ug(e,r),o=t.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Js(o).set(n,e),o}},Ug=(t,e)=>{switch(t[0]){case"Q":{let r=e||Ct;return[Ct.prefix,r.decode(`${Ct.prefix}${t}`)]}case Ct.prefix:{let r=e||Ct;return[Ct.prefix,r.decode(t)]}case we.prefix:{let r=e||we;return[we.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}},Kg=(t,e,r)=>{let{prefix:n}=r;if(n!==Ct.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i},Og=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i},$n=112,Mg=18,$f=(t,e,r)=>{let n=ln(t),i=n+ln(e),o=new Uint8Array(i+r.byteLength);return un(t,o,0),un(e,o,n),o.set(r,i),o},Fg=Symbol.for("@ipld/js-cid/CID");var Ue={...Ws,...Os,...Gs,...Us,...Ks,...Fs,...Vs,...qs,...zs,...Ms},qv={...js,...Zs};function Zf(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var Yf=Zf("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),ta=Zf("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=ce(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Vg={utf8:Yf,"utf-8":Yf,hex:Ue.base16,latin1:ta,ascii:ta,binary:ta,...Ue},to=Vg;function _t(t,e="utf8"){let r=to[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ir(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var wa={};Ut(wa,{Ed25519PrivateKey:()=>Fr,Ed25519PublicKey:()=>Xn,generateKeyPair:()=>r2,generateKeyPairFromSeed:()=>Wu,unmarshalEd25519PrivateKey:()=>t2,unmarshalEd25519PublicKey:()=>e2});var hn=32,tr=64,eo=32;async function Xf(){let t=Jr.utils.randomPrivateKey(),e=Jr.getPublicKey(t);return{privateKey:tu(t,e),publicKey:e}}async function Qf(t){if(t.length!==eo)throw new TypeError('"seed" must be 32 bytes in length.');if(!(t instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=t,r=Jr.getPublicKey(e);return{privateKey:tu(e,r),publicKey:r}}async function jf(t,e){let r=t.subarray(0,eo);return Jr.sign(e,r)}async function Jf(t,e,r){return Jr.verify(e,r,t)}function tu(t,e){let r=new Uint8Array(tr);for(let n=0;n<eo;n++)r[n]=t[n],r[eo+n]=e[n];return r}var ee={get(t=globalThis){let e=t.crypto;if(e==null||e.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return e}};var ea={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function ra(t){let e=t?.algorithm??"AES-GCM",r=t?.keyLength??16,n=t?.nonceLength??12,i=t?.digest??"SHA-256",o=t?.saltLength??16,s=t?.iterations??32767,a=ee.get();r*=8;async function c(l,h){let g=a.getRandomValues(new Uint8Array(o)),d=a.getRandomValues(new Uint8Array(n)),p={name:e,iv:d};typeof h=="string"&&(h=_t(h));let y;if(h.length===0){y=await a.subtle.importKey("jwk",ea,{name:"AES-GCM"},!0,["encrypt"]);try{let S={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(S,x,{name:e,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",ea,{name:"AES-GCM"},!0,["encrypt"])}}else{let S={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(S,x,{name:e,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,y,l);return yt([g,p.iv,new Uint8Array(m)])}async function f(l,h){let g=l.subarray(0,o),d=l.subarray(o,o+n),p=l.subarray(o+n),y={name:e,iv:d};typeof h=="string"&&(h=_t(h));let m;if(h.length===0)try{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},I=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,I,{name:e,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",ea,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},I=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,I,{name:e,length:r},!0,["decrypt"])}let S=await a.subtle.decrypt(y,m,p);return new Uint8Array(S)}return{encrypt:c,decrypt:f}}async function dn(t,e){let n=await ra().encrypt(t,e);return fn.encode(n)}var ya=kt(aa(),1),qu=kt(Pu(),1),Hu=kt(Nr(),1),ga=kt(pa(),1),zu=kt(Vu(),1);function Qg(){Hu.default._configure(),ya.default._configure(qu.default),ga.default._configure(zu.default)}Qg();var Gu=["uint64","int64","sint64","fixed64","sfixed64"];function jg(t){for(let e of Gu){if(t[e]==null)continue;let r=t[e];t[e]=function(){return BigInt(r.call(this).toString())}}return t}function ma(t){return jg(new ya.default(t))}function Jg(t){for(let e of Gu){if(t[e]==null)continue;let r=t[e];t[e]=function(n){return r.call(this,n.toString())}}return t}function xa(){return Jg(ga.default.create())}function Kr(t,e){let r=ma(t instanceof Uint8Array?t:t.subarray());return e.decode(r)}function Or(t,e){let r=xa();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var yn;(function(t){t[t.VARINT=0]="VARINT",t[t.BIT64=1]="BIT64",t[t.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",t[t.START_GROUP=3]="START_GROUP",t[t.END_GROUP=4]="END_GROUP",t[t.BIT32=5]="BIT32"})(yn||(yn={}));function so(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function ba(t){function e(i){if(t[i.toString()]==null)throw new Error("Invalid enum value");return t[i]}let r=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return so("enum",yn.VARINT,r,n)}function Mr(t,e){return so("message",yn.LENGTH_DELIMITED,t,e)}var At;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(At||(At={}));var va;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(va||(va={}));(function(t){t.codec=()=>ba(va)})(At||(At={}));var Oe;(function(t){let e;t.codec=()=>(e==null&&(e=Mr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),At.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=At.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Or(r,t.codec()),t.decode=r=>Kr(r,t.codec())})(Oe||(Oe={}));var Me;(function(t){let e;t.codec=()=>(e==null&&(e=Mr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),At.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=At.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Or(r,t.codec()),t.decode=r=>Kr(r,t.codec())})(Me||(Me={}));var Xn=class{_key;constructor(e){this._key=gn(e,hn)}async verify(e,r){return Jf(this._key,r,e)}marshal(){return this._key}get bytes(){return Oe.encode({Type:At.Ed25519,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}},Fr=class{_key;_publicKey;constructor(e,r){this._key=gn(e,tr),this._publicKey=gn(r,hn)}async sign(e){return jf(this._key,e)}get public(){return new Xn(this._publicKey)}marshal(){return this._key}get bytes(){return Me.encode({Type:At.Ed25519,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}async id(){let e=xr.digest(this.public.bytes);return Ct.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return dn(this.bytes,e);throw new nt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function t2(t){if(t.length>tr){t=gn(t,tr+hn);let n=t.subarray(0,tr),i=t.subarray(tr,t.length);return new Fr(n,i)}t=gn(t,tr);let e=t.subarray(0,tr),r=t.subarray(hn);return new Fr(e,r)}function e2(t){return t=gn(t,hn),new Xn(t)}async function r2(){let{privateKey:t,publicKey:e}=await Xf();return new Fr(t,e)}async function Wu(t){let{privateKey:e,publicKey:r}=await Qf(t);return new Fr(e,r)}function gn(t,e){if(t=Uint8Array.from(t??[]),t.length!==e)throw new nt(`Key must be a Uint8Array of length ${e}, got ${t.length}`,"ERR_INVALID_KEY_TYPE");return t}function ot(t,e="utf8"){let r=to[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var Fw=kt(Dt(),1),Vw=kt(Zi(),1),$u=kt(gt(),1);function Ie(t,e){let r=Uint8Array.from(t.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=yt([new Uint8Array(e-r.length),r])}return ot(r,"base64url")}function ie(t){let e=Yu(t);return new $u.default.jsbn.BigInteger(ot(e,"base16"),16)}function Yu(t,e){let r=_t(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=yt([new Uint8Array(e-r.length),r])}return r}var n2={"P-256":256,"P-384":384,"P-521":521},i2=Object.keys(n2),jw=i2.join(" / ");var Ca={};Ut(Ca,{MAX_KEY_SIZE:()=>ti,RsaPrivateKey:()=>mn,RsaPublicKey:()=>Jn,fromJwk:()=>y2,generateKeyPair:()=>g2,unmarshalRsaPrivateKey:()=>d2,unmarshalRsaPublicKey:()=>p2});var jn=kt(gt(),1);var U8=kt(Ju(),1);function co(t){if(isNaN(t)||t<=0)throw new nt("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Br(t)}var x8=kt(ji(),1),Ba=kt(gt(),1);function tl(t,e){return e.map(r=>ie(t[r]))}function el(t){return Ba.default.pki.setRsaPrivateKey(...tl(t,["n","e","d","p","q","dp","dq","qi"]))}function rl(t){return Ba.default.pki.setRsaPublicKey(...tl(t,["n","e"]))}var qr={};Ut(qr,{jwkToPkcs1:()=>c2,jwkToPkix:()=>u2,pkcs1ToJwk:()=>a2,pkixToJwk:()=>f2});var w8=kt(qn(),1),E8=kt(ji(),1);var er=kt(gt(),1);function a2(t){let e=er.default.asn1.fromDer(ot(t,"ascii")),r=er.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:Ie(r.n),e:Ie(r.e),d:Ie(r.d),p:Ie(r.p),q:Ie(r.q),dp:Ie(r.dP),dq:Ie(r.dQ),qi:Ie(r.qInv),alg:"RS256"}}function c2(t){if(t.n==null||t.e==null||t.d==null||t.p==null||t.q==null||t.dp==null||t.dq==null||t.qi==null)throw new nt("JWK was missing components","ERR_INVALID_PARAMETERS");let e=er.default.pki.privateKeyToAsn1({n:ie(t.n),e:ie(t.e),d:ie(t.d),p:ie(t.p),q:ie(t.q),dP:ie(t.dp),dQ:ie(t.dq),qInv:ie(t.qi)});return _t(er.default.asn1.toDer(e).getBytes(),"ascii")}function f2(t){let e=er.default.asn1.fromDer(ot(t,"ascii")),r=er.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:Ie(r.n),e:Ie(r.e)}}function u2(t){if(t.n==null||t.e==null)throw new nt("JWK was missing components","ERR_INVALID_PARAMETERS");let e=er.default.pki.publicKeyToAsn1({n:ie(t.n),e:ie(t.e)});return _t(er.default.asn1.toDer(e).getBytes(),"ascii")}async function nl(t){let e=await ee.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await sl(e);return{privateKey:r[0],publicKey:r[1]}}async function Aa(t){let r=[await ee.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await l2(t)],n=await sl({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function il(t,e){let r=await ee.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ee.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(e));return new Uint8Array(n,0,n.byteLength)}async function ol(t,e,r){let n=await ee.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ee.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r)}async function sl(t){if(t.privateKey==null||t.publicKey==null)throw new nt("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([ee.get().subtle.exportKey("jwk",t.privateKey),ee.get().subtle.exportKey("jwk",t.publicKey)])}async function l2(t){return ee.get().subtle.importKey("jwk",{kty:t.kty,n:t.n,e:t.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function al(t,e,r,n){let i=e?rl(t):el(t),o=ot(Uint8Array.from(r),"ascii"),s=n(o,i);return _t(s,"ascii")}function cl(t,e){return al(t,!0,e,(r,n)=>n.encrypt(r))}function fl(t,e){return al(t,!1,e,(r,n)=>n.decrypt(r))}function fo(t){if(t.kty!=="RSA")throw new nt("invalid key type","ERR_INVALID_KEY_TYPE");if(t.n==null)throw new nt("invalid key modulus","ERR_INVALID_KEY_MODULUS");return _t(t.n,"base64url").length*8}var ti=8192,Jn=class{_key;constructor(e){this._key=e}async verify(e,r){return ol(this._key,r,e)}marshal(){return qr.jwkToPkix(this._key)}get bytes(){return Oe.encode({Type:At.RSA,Data:this.marshal()}).subarray()}encrypt(e){return cl(this._key,e)}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}},mn=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return co(16)}async sign(e){return il(this._key,e)}get public(){if(this._publicKey==null)throw new nt("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Jn(this._publicKey)}decrypt(e){return fl(this._key,e)}marshal(){return qr.jwkToPkcs1(this._key)}get bytes(){return Me.encode({Type:At.RSA,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}async id(){let e=await this.public.hash();return ot(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new jn.default.util.ByteBuffer(this.marshal()),i=jn.default.asn1.fromDer(n),o=jn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return jn.default.pki.encryptRsaPrivateKey(o,e,s)}else{if(r==="libp2p-key")return dn(this.bytes,e);throw new nt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function d2(t){let e=qr.pkcs1ToJwk(t);if(fo(e)>ti)throw new nt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await Aa(e);return new mn(r.privateKey,r.publicKey)}function p2(t){let e=qr.pkixToJwk(t);if(fo(e)>ti)throw new nt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Jn(e)}async function y2(t){if(fo(t)>ti)throw new nt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Aa(t);return new mn(e.privateKey,e.publicKey)}async function g2(t){if(t>ti)throw new nt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await nl(t);return new mn(e.privateKey,e.publicKey)}var La={};Ut(La,{Secp256k1PrivateKey:()=>ri,Secp256k1PublicKey:()=>ei,generateKeyPair:()=>T2,unmarshalSecp256k1PrivateKey:()=>C2,unmarshalSecp256k1PublicKey:()=>I2});function m2(t){let e=kn(t);fe(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=e;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:x2,hexToBytes:b2}=Ti,Hr={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=Hr;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");let r=t[1],n=t.subarray(2,r+2);if(!r||n.length!==r)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:x2(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=Hr,r=typeof t=="string"?b2(t):t;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:o}=Hr._parseInt(r.subarray(2)),{d:s,l:a}=Hr._parseInt(o);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(t){let e=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=e(r(t.s)),i=e(r(t.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},rr=BigInt(0),de=BigInt(1),q8=BigInt(2),ul=BigInt(3),H8=BigInt(4);function v2(t){let e=m2(t),{Fp:r}=e,n=e.toBytes||((d,p,y)=>{let m=p.toAffine();return Ye(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=e.fromBytes||(d=>{let p=d.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),m=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:m}});function o(d){let{a:p,b:y}=e,m=r.sqr(d),S=r.mul(m,d);return r.add(r.add(S,r.mul(d,p)),y)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&rr<d&&d<e.n}function a(d){if(!s(d))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(d){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:m,n:S}=e;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=Ge(d)),typeof d!="string"||!p.includes(d.length))throw new Error("Invalid key");d=d.padStart(y*2,"0")}let x;try{x=typeof d=="bigint"?d:We(bt("private key",d,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof d}`)}return m&&(x=ut(x,S)),a(x),x}let f=new Map;function u(d){if(!(d instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,m){if(this.px=p,this.py=y,this.pz=m,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(m==null||!r.isValid(m))throw new Error("z required")}static fromAffine(p){let{x:y,y:m}=p||{};if(!p||!r.isValid(y)||!r.isValid(m))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let S=x=>r.eql(x,r.ZERO);return S(y)&&S(m)?l.ZERO:new l(y,m,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(m=>m.pz));return p.map((m,S)=>m.toAffine(y[S])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(bt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let m=r.sqr(y),S=o(p);if(!r.eql(m,S))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:y,py:m,pz:S}=this,{px:x,py:I,pz:B}=p,E=r.eql(r.mul(y,B),r.mul(x,S)),L=r.eql(r.mul(m,B),r.mul(I,S));return E&&L}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=e,m=r.mul(y,ul),{px:S,py:x,pz:I}=this,B=r.ZERO,E=r.ZERO,L=r.ZERO,_=r.mul(S,S),N=r.mul(x,x),M=r.mul(I,I),K=r.mul(S,x);return K=r.add(K,K),L=r.mul(S,I),L=r.add(L,L),B=r.mul(p,L),E=r.mul(m,M),E=r.add(B,E),B=r.sub(N,E),E=r.add(N,E),E=r.mul(B,E),B=r.mul(K,B),L=r.mul(m,L),M=r.mul(p,M),K=r.sub(_,M),K=r.mul(p,K),K=r.add(K,L),L=r.add(_,_),_=r.add(L,_),_=r.add(_,M),_=r.mul(_,K),E=r.add(E,_),M=r.mul(x,I),M=r.add(M,M),_=r.mul(M,K),B=r.sub(B,_),L=r.mul(M,N),L=r.add(L,L),L=r.add(L,L),new l(B,E,L)}add(p){u(p);let{px:y,py:m,pz:S}=this,{px:x,py:I,pz:B}=p,E=r.ZERO,L=r.ZERO,_=r.ZERO,N=e.a,M=r.mul(e.b,ul),K=r.mul(y,x),F=r.mul(m,I),H=r.mul(S,B),Z=r.add(y,m),A=r.add(x,I);Z=r.mul(Z,A),A=r.add(K,F),Z=r.sub(Z,A),A=r.add(y,S);let k=r.add(x,B);return A=r.mul(A,k),k=r.add(K,H),A=r.sub(A,k),k=r.add(m,S),E=r.add(I,B),k=r.mul(k,E),E=r.add(F,H),k=r.sub(k,E),_=r.mul(N,A),E=r.mul(M,H),_=r.add(E,_),E=r.sub(F,_),_=r.add(F,_),L=r.mul(E,_),F=r.add(K,K),F=r.add(F,K),H=r.mul(N,H),A=r.mul(M,A),F=r.add(F,H),H=r.sub(K,H),H=r.mul(N,H),A=r.add(A,H),K=r.mul(F,A),L=r.add(L,K),K=r.mul(k,A),E=r.mul(Z,E),E=r.sub(E,K),K=r.mul(Z,F),_=r.mul(k,_),_=r.add(_,K),new l(E,L,_)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,f,p,y=>{let m=r.invertBatch(y.map(S=>S.pz));return y.map((S,x)=>S.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===rr)return y;if(a(p),p===de)return this;let{endo:m}=e;if(!m)return g.unsafeLadder(this,p);let{k1neg:S,k1:x,k2neg:I,k2:B}=m.splitScalar(p),E=y,L=y,_=this;for(;x>rr||B>rr;)x&de&&(E=E.add(_)),B&de&&(L=L.add(_)),_=_.double(),x>>=de,B>>=de;return S&&(E=E.negate()),I&&(L=L.negate()),L=new l(r.mul(L.px,m.beta),L.py,L.pz),E.add(L)}multiply(p){a(p);let y=p,m,S,{endo:x}=e;if(x){let{k1neg:I,k1:B,k2neg:E,k2:L}=x.splitScalar(y),{p:_,f:N}=this.wNAF(B),{p:M,f:K}=this.wNAF(L);_=g.constTimeNegate(I,_),M=g.constTimeNegate(E,M),M=new l(r.mul(M.px,x.beta),M.py,M.pz),m=_.add(M),S=N.add(K)}else{let{p:I,f:B}=this.wNAF(y);m=I,S=B}return l.normalizeZ([m,S])[0]}multiplyAndAddUnsafe(p,y,m){let S=l.BASE,x=(B,E)=>E===rr||E===de||!B.equals(S)?B.multiplyUnsafe(E):B.multiply(E),I=x(this,y).add(x(p,m));return I.is0()?void 0:I}toAffine(p){let{px:y,py:m,pz:S}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(S));let I=r.mul(y,p),B=r.mul(m,p),E=r.mul(S,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(E,r.ONE))throw new Error("invZ was invalid");return{x:I,y:B}}isTorsionFree(){let{h:p,isTorsionFree:y}=e;if(p===de)return!0;if(y)return y(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:y}=e;return p===de?this:y?y(l,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Ge(this.toRawBytes(p))}}l.BASE=new l(e.Gx,e.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let h=e.nBitLength,g=Ri(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function w2(t){let e=kn(t);return fe(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function ll(t){let e=w2(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(A){return rr<A&&A<r.ORDER}function a(A){return ut(A,n)}function c(A){return _i(A,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:h}=v2({...e,toBytes(A,k,T){let R=k.toAffine(),v=r.toBytes(R.x),U=Ye;return T?U(Uint8Array.from([k.hasEvenY()?2:3]),v):U(Uint8Array.from([4]),v,r.toBytes(R.y))},fromBytes(A){let k=A.length,T=A[0],R=A.subarray(1);if(k===i&&(T===2||T===3)){let v=We(R);if(!s(v))throw new Error("Point is not on curve");let U=l(v),O=r.sqrt(U),q=(O&de)===de;return(T&1)===1!==q&&(O=r.neg(O)),{x:v,y:O}}else if(k===o&&T===4){let v=r.fromBytes(R.subarray(0,r.BYTES)),U=r.fromBytes(R.subarray(r.BYTES,2*r.BYTES));return{x:v,y:U}}else throw new Error(`Point of length ${k} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=A=>Ge(fr(A,e.nByteLength));function d(A){let k=n>>de;return A>k}function p(A){return d(A)?a(-A):A}let y=(A,k,T)=>We(A.slice(k,T));class m{constructor(k,T,R){this.r=k,this.s=T,this.recovery=R,this.assertValidity()}static fromCompact(k){let T=e.nByteLength;return k=bt("compactSignature",k,T*2),new m(y(k,0,T),y(k,T,2*T))}static fromDER(k){let{r:T,s:R}=Hr.toSig(bt("DER",k));return new m(T,R)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(k){return new m(this.r,this.s,k)}recoverPublicKey(k){let{r:T,s:R,recovery:v}=this,U=L(bt("msgHash",k));if(v==null||![0,1,2,3].includes(v))throw new Error("recovery id invalid");let O=v===2||v===3?T+e.n:T;if(O>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let q=v&1?"03":"02",$=f.fromHex(q+g(O)),Y=c(O),rt=a(-U*Y),X=a(R*Y),j=f.BASE.multiplyAndAddUnsafe($,rt,X);if(!j)throw new Error("point at infinify");return j.assertValidity(),j}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return Ar(this.toDERHex())}toDERHex(){return Hr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Ar(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let S={isValidPrivateKey(A){try{return u(A),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let A=rs(e.n);return $0(e.randomBytes(A),e.n)},precompute(A=8,k=f.BASE){return k._setWindowSize(A),k.multiply(BigInt(3)),k}};function x(A,k=!0){return f.fromPrivateKey(A).toRawBytes(k)}function I(A){let k=A instanceof Uint8Array,T=typeof A=="string",R=(k||T)&&A.length;return k?R===i||R===o:T?R===2*i||R===2*o:A instanceof f}function B(A,k,T=!0){if(I(A))throw new Error("first arg must be private key");if(!I(k))throw new Error("second arg must be public key");return f.fromHex(k).multiply(u(A)).toRawBytes(T)}let E=e.bits2int||function(A){let k=We(A),T=A.length*8-e.nBitLength;return T>0?k>>BigInt(T):k},L=e.bits2int_modN||function(A){return a(E(A))},_=Rn(e.nBitLength);function N(A){if(typeof A!="bigint")throw new Error("bigint expected");if(!(rr<=A&&A<_))throw new Error(`bigint expected < 2^${e.nBitLength}`);return fr(A,e.nByteLength)}function M(A,k,T=K){if(["recovered","canonical"].some(dt=>dt in T))throw new Error("sign() legacy options not supported");let{hash:R,randomBytes:v}=e,{lowS:U,prehash:O,extraEntropy:q}=T;U==null&&(U=!0),A=bt("msgHash",A),O&&(A=bt("prehashed msgHash",R(A)));let $=L(A),Y=u(k),rt=[N(Y),N($)];if(q!=null){let dt=q===!0?v(r.BYTES):q;rt.push(bt("extraEntropy",dt))}let X=Ye(...rt),j=$;function mt(dt){let zt=E(dt);if(!h(zt))return;let Gt=c(zt),Nt=f.BASE.multiply(zt).toAffine(),Yt=a(Nt.x);if(Yt===rr)return;let qe=a(Gt*a(j+Yt*Y));if(qe===rr)return;let wr=(Nt.x===Yt?0:2)|Number(Nt.y&de),In=qe;return U&&d(qe)&&(In=p(qe),wr^=1),new m(Yt,In,wr)}return{seed:X,k2sig:mt}}let K={lowS:e.lowS,prehash:!1},F={lowS:e.lowS,prehash:!1};function H(A,k,T=K){let{seed:R,k2sig:v}=M(A,k,T),U=e;return Qo(U.hash.outputLen,U.nByteLength,U.hmac)(R,v)}f.BASE._setWindowSize(8);function Z(A,k,T,R=F){let v=A;if(k=bt("msgHash",k),T=bt("publicKey",T),"strict"in R)throw new Error("options.strict was renamed to lowS");let{lowS:U,prehash:O}=R,q,$;try{if(typeof v=="string"||v instanceof Uint8Array)try{q=m.fromDER(v)}catch(Nt){if(!(Nt instanceof Hr.Err))throw Nt;q=m.fromCompact(v)}else if(typeof v=="object"&&typeof v.r=="bigint"&&typeof v.s=="bigint"){let{r:Nt,s:Yt}=v;q=new m(Nt,Yt)}else throw new Error("PARSE");$=f.fromHex(T)}catch(Nt){if(Nt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(U&&q.hasHighS())return!1;O&&(k=e.hash(k));let{r:Y,s:rt}=q,X=L(k),j=c(rt),mt=a(X*j),dt=a(Y*j),zt=f.BASE.multiplyAndAddUnsafe($,mt,dt)?.toAffine();return zt?a(zt.x)===Y:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:B,sign:H,verify:Z,ProjectivePoint:f,Signature:m,utils:S}}function E2(t){return{hash:t,hmac:(e,...r)=>tn(t,e,Si(...r)),randomBytes:Br}}function hl(t,e){let r=n=>ll({...t,...E2(n)});return Object.freeze({...r(e),create:r})}var yl=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),dl=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),S2=BigInt(1),Ia=BigInt(2),pl=(t,e)=>(t+e/Ia)/e;function B2(t){let e=yl,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=t*t*t%e,u=f*f*t%e,l=vt(u,r,e)*u%e,h=vt(l,r,e)*u%e,g=vt(h,Ia,e)*f%e,d=vt(g,i,e)*g%e,p=vt(d,o,e)*d%e,y=vt(p,a,e)*p%e,m=vt(y,c,e)*y%e,S=vt(m,a,e)*p%e,x=vt(S,r,e)*u%e,I=vt(x,s,e)*d%e,B=vt(I,n,e)*f%e,E=vt(B,Ia,e);if(!Ta.eql(Ta.sqr(E),t))throw new Error("Cannot find square root");return E}var Ta=Li(yl,void 0,void 0,{sqrt:B2}),nr=hl({a:BigInt(0),b:BigInt(7),Fp:Ta,n:dl,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=dl,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-S2*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=pl(o*t,e),c=pl(-n*t,e),f=ut(t-a*r-c*i,e),u=ut(-a*n-c*o,e),l=f>s,h=u>s;if(l&&(f=e-f),h&&(u=e-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:f,k2neg:h,k2:u}}}},en),j8=BigInt(0);var J8=nr.ProjectivePoint;function gl(){return nr.utils.randomPrivateKey()}async function ml(t,e){let{digest:r}=await $t.digest(e);try{return nr.sign(r,t).toDERRawBytes()}catch(n){throw new nt(String(n),"ERR_INVALID_INPUT")}}async function xl(t,e,r){try{let{digest:n}=await $t.digest(r);return nr.verify(e,n,t)}catch(n){throw new nt(String(n),"ERR_INVALID_INPUT")}}function bl(t){return nr.ProjectivePoint.fromHex(t).toRawBytes(!0)}function vl(t){try{nr.getPublicKey(t,!0)}catch(e){throw new nt(String(e),"ERR_INVALID_PRIVATE_KEY")}}function _a(t){try{nr.ProjectivePoint.fromHex(t)}catch(e){throw new nt(String(e),"ERR_INVALID_PUBLIC_KEY")}}function wl(t){try{return nr.getPublicKey(t,!0)}catch(e){throw new nt(String(e),"ERR_INVALID_PRIVATE_KEY")}}var ei=class{_key;constructor(e){_a(e),this._key=e}async verify(e,r){return xl(this._key,r,e)}marshal(){return bl(this._key)}get bytes(){return Oe.encode({Type:At.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}},ri=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??wl(e),vl(this._key),_a(this._publicKey)}async sign(e){return ml(this._key,e)}get public(){return new ei(this._publicKey)}marshal(){return this._key}get bytes(){return Me.encode({Type:At.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}async id(){let e=await this.public.hash();return ot(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return dn(this.bytes,e);throw new nt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function C2(t){return new ri(t)}function I2(t){return new ei(t)}async function T2(){let t=gl();return new ri(t)}var zr={rsa:Ca,ed25519:wa,secp256k1:La};function El(t){let e=Object.keys(zr).join(" / ");return new nt(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Sl(t){let e=Oe.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case At.RSA:return zr.rsa.unmarshalRsaPublicKey(r);case At.Ed25519:return zr.ed25519.unmarshalEd25519PublicKey(r);case At.Secp256k1:return zr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw El(e.Type??"RSA")}}async function Bl(t){let e=Me.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case At.RSA:return zr.rsa.unmarshalRsaPrivateKey(r);case At.Ed25519:return zr.ed25519.unmarshalEd25519PrivateKey(r);case At.Secp256k1:return zr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw El(e.Type??"RSA")}}var Al=Symbol.for("@libp2p/peer-id");var L2=Symbol.for("nodejs.util.inspect.custom"),Cl=Object.values(Ue).map(t=>t.decoder).reduce((t,e)=>t.or(e),Ue.identity.decoder),Il=114,Ra=36,ka=37,ni=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Al]=!0;toString(){return this.string==null&&(this.string=Ct.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return Se.createV1(Il,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return It(this.multihash.bytes,e);if(typeof e=="string")return Da(e).equals(this);if(e?.multihash?.bytes!=null)return It(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[L2](){return`PeerId(${this.toString()})`}},xn=class extends ni{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},bn=class extends ni{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},vn=class extends ni{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Da(t,e){if(e=e??Cl,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=mr(Ct.decode(`z${t}`));return t.startsWith("12D")?new bn({multihash:r}):t.startsWith("16U")?new vn({multihash:r}):new xn({multihash:r})}return R2(Cl.decode(t))}function R2(t){try{let e=mr(t);if(e.code===xr.code){if(e.digest.length===Ra)return new bn({multihash:e});if(e.digest.length===ka)return new vn({multihash:e})}if(e.code===$t.code)return new xn({multihash:e})}catch{return k2(Se.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function k2(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==Il)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===$t.code)return new xn({multihash:t.multihash});if(e.code===xr.code){if(e.digest.length===Ra)return new bn({multihash:t.multihash});if(e.digest.length===ka)return new vn({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Pa(t,e){return t.length===Ra?new bn({multihash:Ee(xr.code,t),privateKey:e}):t.length===ka?new vn({multihash:Ee(xr.code,t),privateKey:e}):new xn({multihash:await $t.digest(t),publicKey:t,privateKey:e})}var uo;(function(t){let e;t.codec=()=>(e==null&&(e=Mr((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.webtransportCerthashes.push(r.bytes());break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Or(r,t.codec()),t.decode=r=>Kr(r,t.codec())})(uo||(uo={}));var ii;(function(t){let e;t.codec=()=>(e==null&&(e=Mr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),(i.writeDefaults===!0||r.identityKey!=null&&r.identityKey.byteLength>0)&&(n.uint32(10),n.bytes(r.identityKey??new Uint8Array(0))),(i.writeDefaults===!0||r.identitySig!=null&&r.identitySig.byteLength>0)&&(n.uint32(18),n.bytes(r.identitySig??new Uint8Array(0))),r.extensions!=null&&(n.uint32(34),uo.codec().encode(r.extensions,n,{writeDefaults:!1})),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:new Uint8Array(0),identitySig:new Uint8Array(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.identityKey=r.bytes();break;case 2:i.identitySig=r.bytes();break;case 4:i.extensions=uo.codec().decode(r,r.uint32());break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Or(r,t.codec()),t.decode=r=>Kr(r,t.codec())})(ii||(ii={}));async function Tl(t,e,r){let n=await P2(t,_l(e));if(t.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return D2(t.publicKey,n,r)}function D2(t,e,r){return ii.encode({identityKey:t,identitySig:e,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function P2(t,e){if(t.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await Bl(t.privateKey)).sign(e)}async function Na(t){return Pa(t.identityKey)}function Ua(t){return ii.decode(t)}function _l(t){let e=_t("noise-libp2p-static-key:");return yt([e,t],e.length+t.length)}async function Ka(t,e,r){let n=await Pa(e.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=_l(t);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(e.identitySig==null)throw new Error("Signature was missing from message");if(!await Sl(n.publicKey).verify(i,e.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function oi(t){return!(!(t instanceof Uint8Array)||t.length!==32)}var se=kt(Pl(),1);se.default.formatters.b=t=>t==null?"undefined":Ct.baseEncode(t);se.default.formatters.t=t=>t==null?"undefined":we.baseEncode(t);se.default.formatters.m=t=>t==null?"undefined":fn.baseEncode(t);se.default.formatters.p=t=>t==null?"undefined":t.toString();se.default.formatters.c=t=>t==null?"undefined":t.toString();se.default.formatters.k=t=>t==null?"undefined":t.toString();se.default.formatters.a=t=>t==null?"undefined":t.toString();function $2(t){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=t,e.destroy=()=>!0,e.extend=()=>e,e}function Bn(t){let e=$2(`${t}:trace`);return se.default.enabled(`${t}:trace`)&&se.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(e=(0,se.default)(`${t}:trace`)),Object.assign((0,se.default)(t),{error:(0,se.default)(`${t}:error`),trace:e})}var qt=Bn("libp2p:noise");var pe;I0?pe=qt:pe=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function Nl(t){pe(`LOCAL_STATIC_PUBLIC_KEY ${ot(t.publicKey,"hex")}`),pe(`LOCAL_STATIC_PRIVATE_KEY ${ot(t.privateKey,"hex")}`)}function Oa(t){t?(pe(`LOCAL_PUBLIC_EPHEMERAL_KEY ${ot(t.publicKey,"hex")}`),pe(`LOCAL_PRIVATE_EPHEMERAL_KEY ${ot(t.privateKey,"hex")}`)):pe("Missing local ephemeral keys.")}function Ul(t){pe(`REMOTE_STATIC_PUBLIC_KEY ${ot(t,"hex")}`)}function Ma(t){pe(`REMOTE_EPHEMERAL_PUBLIC_KEY ${ot(t,"hex")}`)}function Kl(t){t.cs1&&t.cs2?(pe(`CIPHER_STATE_1 ${t.cs1.n.getUint64()} ${ot(t.cs1.k,"hex")}`),pe(`CIPHER_STATE_2 ${t.cs2.n.getUint64()} ${ot(t.cs2.k,"hex")}`)):pe("Missing cipher state.")}var Y2="Cipherstate has reached maximum n, a new handshake must be performed",po=class{n;bytes;view;constructor(e=0){this.n=e,this.bytes=new Uint8Array(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,e,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>4294967295)throw new Error(Y2)}};var yo=class{crypto;constructor(e){this.crypto=e}encryptWithAd(e,r,n){let i=this.encrypt(e.k,e.n,r,n);return e.n.increment(),i}decryptWithAd(e,r,n,i){let{plaintext:o,valid:s}=this.decrypt(e.k,e.n,r,n,i);return s&&e.n.increment(),{plaintext:o,valid:s}}hasKey(e){return!this.isEmptyKey(e.k)}createEmptyKey(){return new Uint8Array(32)}isEmptyKey(e){let r=this.createEmptyKey();return It(r,e)}encrypt(e,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,e)}encryptAndHash(e,r){let n;return this.hasKey(e.cs)?n=this.encryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,n),n}decrypt(e,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,e,o);return s?{plaintext:s,valid:!0}:{plaintext:new Uint8Array(0),valid:!1}}decryptAndHash(e,r){let n,i=!0;return this.hasKey(e.cs)?{plaintext:n,valid:i}=this.decryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,r),{plaintext:n,valid:i}}dh(e,r){try{let n=this.crypto.generateX25519SharedKey(e,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return qt.error(i),new Uint8Array(32)}}mixHash(e,r){e.h=this.getHash(e.h,r)}getHash(e,r){return this.crypto.hashSHA256(yt([e,r],e.length+r.length))}mixKey(e,r){let[n,i]=this.crypto.getHKDF(e.ck,r);e.cs=this.initializeKey(i),e.ck=n}initializeKey(e){return{k:e,n:new po}}initializeSymmetric(e){let r=_t(e,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(e){if(e.length<=32){let r=new Uint8Array(32);return r.set(e),r}else return this.getHash(e,new Uint8Array(0))}split(e){let[r,n]=this.crypto.getHKDF(e.ck,new Uint8Array(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(e,r){let n=this.encryptWithAd(e,new Uint8Array(0),r),i=this.createEmptyKey(),o=new Uint8Array(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(e,r){return this.decryptWithAd(e,new Uint8Array(0),r.ciphertext)}};var go=class extends yo{initializeInitiator(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(e,r,n){let i=new Uint8Array(0);n!==void 0?e.e=n:e.e=this.crypto.generateX25519KeyPair();let o=e.e.publicKey;this.mixHash(e.ss,o);let s=this.encryptAndHash(e.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(e,r){e.e=this.crypto.generateX25519KeyPair();let n=e.e.publicKey;this.mixHash(e.ss,n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let i=e.s.publicKey,o=this.encryptAndHash(e.ss,i);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let s=this.encryptAndHash(e.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(e,r){let n=e.s.publicKey,i=this.encryptAndHash(e.ss,n);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let o=this.encryptAndHash(e.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(e.ss);return{h:e.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(e,r){return oi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),this.decryptAndHash(e.ss,r.ciphertext)}readMessageB(e,r){if(oi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);i&&oi(n)&&(e.rs=n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(e,r){let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);if(i&&oi(n)&&(e.rs=n),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(e.ss);return{h:e.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(e,r,n){let i=this.createEmptyKey(),o=new Uint8Array(32),s;return e?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:e,mc:0}}sendMessage(e,r,n){let i;if(e.mc===0)i=this.writeMessageA(e.hs,r,n);else if(e.mc===1)i=this.writeMessageB(e.hs,r);else if(e.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(e.hs,r);i=s,e.h=o,e.cs1=a,e.cs2=c}else if(e.mc>2)if(e.i){if(!e.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(e.cs1,r)}else{if(!e.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(e.cs2,r)}else throw new Error("Session invalid.");return e.mc++,i}recvMessage(e,r){let n=new Uint8Array(0),i=!1;if(e.mc===0)({plaintext:n,valid:i}=this.readMessageA(e.hs,r));else if(e.mc===1)({plaintext:n,valid:i}=this.readMessageB(e.hs,r));else if(e.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(e.hs,r);n=s,i=a,e.h=o,e.cs1=c,e.cs2=f}return e.mc++,{plaintext:n,valid:i}}};var mo=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;constructor(e,r,n,i,o,s,a,c){this.isInitiator=e,this.payload=r,this.prologue=n,this.staticKeypair=o,this.connection=s,a&&(this.remotePeer=a),this.xx=c??new go(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(Nl(this.session.hs.s),this.isInitiator){qt.trace("Stage 0 - Initiator starting to send first message.");let e=this.xx.sendMessage(this.session,new Uint8Array(0));await this.connection.write(ic(e)),qt.trace("Stage 0 - Initiator finished sending first message."),Oa(this.session.hs.e)}else{qt.trace("Stage 0 - Responder waiting to receive first message...");let e=ac((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new Ir("xx handshake stage 0 validation fail");qt.trace("Stage 0 - Responder received first message."),Ma(this.session.hs.re)}}async exchange(){if(this.isInitiator){qt.trace("Stage 1 - Initiator waiting to receive first message from responder...");let e=cc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new Ir("xx handshake stage 1 validation fail");qt.trace("Stage 1 - Initiator received the message."),Ma(this.session.hs.re),Ul(this.session.hs.rs),qt.trace("Initiator going to check remote's signature...");try{let i=Ua(r);this.remotePeer=this.remotePeer||await Na(i),await Ka(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new On(`Error occurred while verifying signed payload: ${o.message}`)}qt.trace("All good with the signature!")}else{qt.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(oc(e)),qt.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Oa(this.session.hs.e)}}async finish(){if(this.isInitiator){qt.trace("Stage 2 - Initiator sending third handshake message.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(sc(e)),qt.trace("Stage 2 - Initiator sent message with signed payload.")}else{qt.trace("Stage 2 - Responder waiting for third handshake message...");let e=fc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new Ir("xx handshake stage 2 validation fail");qt.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=Ua(r);this.remotePeer=this.remotePeer||await Na(i),await Ka(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new On(`Error occurred while verifying signed payload: ${o.message}`)}}Kl(this.session)}encrypt(e,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,new Uint8Array(0),e)}decrypt(e,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,new Uint8Array(0),e,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(e,r=!0){if(!e.cs1||!e.cs2)throw new Ir("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?e.cs1:e.cs2:r?e.cs2:e.cs1}setRemoteNoiseExtension(e){e&&(this.remoteExtensions=e)}};function Ol(t){return{xxHandshakeSuccesses:t.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:t.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:t.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:t.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:t.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var xo=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;constructor(e={}){let{staticNoiseKey:r,extensions:n,crypto:i,prologueBytes:o,metrics:s}=e;this.crypto=i??fs,this.extensions=n,this.metrics=s?Ol(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??new Uint8Array(0)}async secureOutbound(e,r,n){let i=Ko(r,{lengthEncoder:rn,lengthDecoder:Un,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(e,r,n){let i=Ko(r,{lengthEncoder:rn,lengthDecoder:Un,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(e){let r=await Tl(e.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(e,r)}async performXXHandshake(e,r){let{isInitiator:n,remotePeer:i,connection:o}=e,s=new mo(n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(e,r){let[n,i]=E0(),o=e.unwrap();return await B0(n,hc(r,this.metrics),o,s=>_n(s,{lengthDecoder:Un}),dc(r,this.metrics),n),i}};function Ml(t={}){return()=>new xo(t)}var Vl=Symbol.for("@libp2p/transport");var Fl;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(Fl||(Fl={}));var bo=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let r=this.index,n=e();return n===void 0&&(this.index=r),n}parseWith(e){let r=e();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let r=this.readChar();if(r===e)return r})}readSeparator(e,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let h=Number.parseInt(l,e);if(!Number.isNaN(h))return h});if(u===void 0)break;if(o*=e,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let r=0;r<e.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[r]=n}return e})}readIPv6Addr(){let e=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=e(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=e(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var ql=45,Z2=15,An=new bo;function Fa(t){if(!(t.length>Z2))return An.new(t).parseWith(()=>An.readIPv4Addr())}function Va(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>ql))return An.new(t).parseWith(()=>An.readIPv6Addr())}function vo(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>ql))return An.new(t).parseWith(()=>An.readIPAddr())}var Z3=parseInt("0xFFFF",16),X3=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function wo(t){return!!Fa(t)}function Eo(t){return!!Va(t)}function So(t){return!!vo(t)}var Gl=wo,tm=Eo,qa=function(t){let e=0;if(t=t.toString().trim(),Gl(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(tm(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let o=Gl(r[n]),s;o&&(s=qa(r[n]),r[n]=ot(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,ot(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(e+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},Wl=function(t,e=0,r){e=~~e,r=r??t.length-e;let n=new DataView(t.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(t[e+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Cn={},Ha={},rm=[[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"]];rm.forEach(t=>{let e=nm(...t);Ha[e.code]=e,Cn[e.name]=e});function nm(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function pt(t){if(typeof t=="number"){if(Ha[t]!=null)return Ha[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(Cn[t]!=null)return Cn[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var DE=pt("ip4"),PE=pt("ip6"),NE=pt("ipcidr");function Ga(t,e){switch(pt(t).code){case 4:case 41:return om(e);case 42:return Zl(e);case 6:case 273:case 33:case 132:return Ql(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Zl(e);case 421:return fm(e);case 444:return Xl(e);case 445:return Xl(e);case 466:return cm(e);default:return ot(e,"base16")}}function Wa(t,e){switch(pt(t).code){case 4:return $l(e);case 41:return $l(e);case 42:return Yl(e);case 6:case 273:case 33:case 132:return $a(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Yl(e);case 421:return sm(e);case 444:return um(e);case 445:return lm(e);case 466:return am(e);default:return _t(e,"base16")}}var za=Object.values(Ue).map(t=>t.decoder),im=function(){let t=za[0].or(za[1]);return za.slice(2).forEach(e=>t=t.or(e)),t}();function $l(t){if(!So(t))throw new Error("invalid ip address");return qa(t)}function om(t){let e=Wl(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!So(e))throw new Error("invalid ip address");return e}function $a(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function Ql(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function Yl(t){let e=_t(t),r=Uint8Array.from(or(e.length));return yt([r,e],r.length+e.length)}function Zl(t){let e=ye(t);if(t=t.slice(Jt(e)),t.length!==e)throw new Error("inconsistent lengths");return ot(t)}function sm(t){let e;t[0]==="Q"||t[0]==="1"?e=mr(Ct.decode(`z${t}`)).bytes:e=Se.parse(t).multihash.bytes;let r=Uint8Array.from(or(e.length));return yt([r,e],r.length+e.length)}function am(t){let e=im.decode(t),r=Uint8Array.from(or(e.length));return yt([r,e],r.length+e.length)}function cm(t){let e=ye(t),r=t.slice(Jt(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+ot(r,"base64url")}function fm(t){let e=ye(t),r=t.slice(Jt(e));if(r.length!==e)throw new Error("inconsistent lengths");return ot(r,"base58btc")}function um(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let r=we.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=$a(n);return yt([r,i],r.length+i.length)}function lm(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let r=we.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=$a(n);return yt([r,i],r.length+i.length)}function Xl(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=ot(e,"base32"),i=Ql(r);return`${n}:${i}`}function jl(t){t=Ya(t);let e=[],r=[],n=null,i=t.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=pt(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw th("invalid address: "+t);if(a.path===!0){n=Ya(i.slice(o).join("/")),e.push([a.code,Wa(a.code,n)]),r.push([a.code,n]);break}let c=Wa(a.code,i[o]);e.push([a.code,c]),r.push([a.code,Ga(a.code,c)])}return{string:Jl(r),bytes:Xa(e),tuples:e,stringTuples:r,path:n}}function Za(t){let e=[],r=[],n=null,i=0;for(;i<t.length;){let o=ye(t,i),s=Jt(o),a=pt(o),c=hm(a,t.slice(i+s));if(c===0){e.push([o]),r.push([o]),i+=s;continue}let f=t.slice(i+s,i+s+c);if(i+=c+s,i>t.length)throw th("Invalid address Uint8Array: "+ot(t,"base16"));e.push([o,f]);let u=Ga(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(t),string:Jl(r),tuples:e,stringTuples:r,path:n}}function Jl(t){let e=[];return t.map(r=>{let n=pt(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),Ya(e.join("/"))}function Xa(t){return yt(t.map(e=>{let r=pt(e[0]),n=Uint8Array.from(or(r.code));return e.length>1&&e[1]!=null&&(n=yt([n,e[1]])),n}))}function hm(t,e){if(t.size>0)return t.size/8;if(t.size===0)return 0;{let r=ye(e instanceof Uint8Array?e:Uint8Array.from(e));return r+Jt(r)}}function Ya(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function th(t){return new Error("Error parsing address: "+t)}var dm=Symbol.for("nodejs.util.inspect.custom"),pm=[pt("dns").code,pt("dns4").code,pt("dns6").code,pt("dnsaddr").code],ym=new Map,rh=Symbol.for("@multiformats/js-multiaddr/multiaddr");function gm(t){return!!t?.[rh]}var eh=class t{bytes;#e;#t;#r;#n;[rh]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=Za(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=jl(e)}else if(gm(e))r=Za(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,r,n,i,o="",s=pt("tcp"),a=pt("udp"),c=pt("ip4"),f=pt("ip6"),u=pt("dns6"),l=pt("ip6zone");for(let[g,d]of this.stringTuples())g===l.code&&(o=`%${d??""}`),pm.includes(g)&&(r=s.name,i=443,n=`${d??""}${o}`,e=g===u.code?6:4),(g===s.code||g===a.code)&&(r=pt(g).name,i=parseInt(d??"")),(g===c.code||g===f.code)&&(r=pt(g).name,n=`${d??""}${o}`,e=g===f.code?6:4);if(e==null||r==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:e,host:n,transport:r,port:i}}protos(){return this.#t.map(([e])=>Object.assign({},pt(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>pt(e).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(e){return e=new t(e),new t(this.toString()+e.toString())}decapsulate(e){let r=e.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new t(n.slice(0,i))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new t(Xa(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===Cn.p2p.code&&e.push([n,i]),n===Cn["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?ot(Ct.decode(`z${n}`),"base58btc"):ot(Se.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return It(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=ym.get(r.name);if(n==null)throw new nt(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new t(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let r=(e??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[dm](){return`Multiaddr(${this.#e})`}};var si=Bn("libp2p:webtransport:stream");async function Qa(t,e,r,n,i){let o=t.writable.getWriter(),s=t.readable.getReader();await o.ready;function a(){let h=n.findIndex(g=>g===l);h!==-1&&(n.splice(h,1),l.timeline.close=Date.now(),i?.(l))}let c=!1,f=!1;(async function(){let h=await o.closed.catch(g=>g);if(h!=null){let g=h.message;g.includes("aborted by the remote server")||g.includes("STOP_SENDING")||si.error(`WebTransport writer closed unexpectedly: streamId=${e} err=${h.message}`)}c=!0,c&&f&&a()})().catch(()=>{si.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await s.closed.catch(g=>g);h!=null&&si.error(`WebTransport reader closed unexpectedly: streamId=${e} err=${h.message}`),f=!0,c&&f&&a()}().catch(()=>{si.error("WebTransport failed to cleanup closed stream")});let u=!1,l={id:e,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){c||(o.abort(h).catch(g=>{si.error("could not abort stream",g)}),c=!0),f=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),a()},async close(h){this.status="closing",await Promise.all([l.closeRead(h),l.closeWrite(h)]),a(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!f){this.readStatus="closing";try{await s.cancel()}catch(g){g.toString().includes("RESET_STREAM")===!0&&(c=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",f=!0}c&&a()},async closeWrite(h){if(!c){c=!0,this.writeStatus="closing";try{await o.close()}catch(g){g.toString().includes("RESET_STREAM")===!0&&(f=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}f&&a()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await s.read();if(h.done){f=!0,c&&a();return}yield new re(h.value)}}(),sink:async function(h){if(u)throw new Error("sink already called on stream");u=!0;try{this.writeStatus="writing";for await(let g of h)if(g instanceof Uint8Array)await o.write(g);else for(let d of g)await o.write(d);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await l.closeWrite()}}};return l}function ja(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async t=>new Promise(()=>{})}}function nh(t,e){return e.filter(n=>!!t.find(i=>It(n,i))).length===e.length}var mm=t=>t.toString().split("/").slice(1),ai=t=>({match:e=>e.length<1?!1:t(e[0])?e.slice(1):!1,pattern:"fn"}),Pt=t=>({match:e=>ai(r=>r===t).match(e),pattern:t}),Ao=()=>({match:t=>ai(e=>typeof e=="string").match(t),pattern:"{string}"}),ih=()=>({match:t=>ai(e=>!isNaN(parseInt(e))).match(t),pattern:"{number}"}),Te=()=>({match:t=>{if(t.length<2||t[0]!=="p2p"&&t[0]!=="ipfs")return!1;if(t[1].startsWith("Q")||t[1].startsWith("1"))try{Ct.decode(`z${t[1]}`)}catch{return!1}else return!1;return t.slice(2)},pattern:"/p2p/{peerid}"}),Bo=()=>({match:t=>{if(t.length<2||t[0]!=="certhash")return!1;try{Hs.decode(t[1])}catch{return!1}return t.slice(2)},pattern:"/certhash/{certhash}"}),Fe=t=>({match:e=>{let r=t.match(e);return r===!1?e:r},pattern:`optional(${t.pattern})`}),Ve=(...t)=>({match:e=>{let r;for(let n of t){let i=n.match(e);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${t.map(e=>e.pattern).join(", ")})`}),Rt=(...t)=>({match:e=>{for(let r of t){let n=r.match(e);if(n===!1)return!1;e=n}return e},pattern:`and(${t.map(e=>e.pattern).join(", ")})`});function Ht(...t){function e(i){let o=mm(i);for(let s of t){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return e(i)!==!1}function n(i){let o=e(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var t0=Rt(Pt("dns4"),Ao()),e0=Rt(Pt("dns6"),Ao()),r0=Rt(Pt("dnsaddr"),Ao()),oh=Rt(Pt("dns"),Ao()),dS=Ht(t0),pS=Ht(e0),yS=Ht(r0),gS=Ht(Ve(oh,r0,t0,e0)),sh=Rt(Pt("ip4"),ai(wo)),ah=Rt(Pt("ip6"),ai(Eo)),ch=Ve(sh,ah),Co=Ve(ch,oh,t0,e0,r0),mS=Ht(sh),xS=Ht(ah),bS=Ht(ch),Io=Rt(Co,Pt("tcp"),ih()),ci=Rt(Co,Pt("udp"),ih()),xm=Ve(Io,ci),vS=Ht(Io),wS=Ht(ci),n0=Rt(ci,Pt("quic")),To=Rt(ci,Pt("quic-v1")),bm=Ve(n0,To),ES=Ht(n0),SS=Ht(To),Ja=Ve(Co,Io,ci,n0,To),fh=Ve(Rt(Ja,Pt("ws"),Fe(Te()))),BS=Ht(fh),uh=Ve(Rt(Ja,Pt("wss"),Fe(Te())),Rt(Ja,Pt("tls"),Pt("ws"),Fe(Te()))),AS=Ht(uh),lh=Rt(xm,Pt("webrtc-direct"),Bo(),Fe(Bo()),Fe(Te())),CS=Ht(lh),hh=Rt(To,Pt("webtransport"),Bo(),Bo(),Fe(Te())),dh=Ht(hh),i0=Ve(fh,uh,Rt(Io,Fe(Te())),Rt(bm,Fe(Te())),Rt(Co,Fe(Te())),lh,hh,Te()),IS=Ht(i0),ph=Rt(i0,Pt("p2p-circuit"),Te()),TS=Ht(ph),vm=Ve(Rt(ph,Pt("webrtc")),Rt(i0,Pt("webrtc"),Fe(Te())),Pt("webrtc")),_S=Ht(vm);var wm=Object.values(Ue).map(t=>t.decoder).reduce((t,e)=>t.or(e));function Em(t){return Ne.decode(wm.decode(t))}function yh(t){if(!dh.matches(t))throw new nt("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let e=t.stringTuples(),r=e.filter(([s,a])=>s===pt("certhash").code).map(([s,a])=>Em(a??"")),n=e.filter(([s,a])=>s===pt("p2p").code).map(([s,a])=>Da(a??""))[0],i=t.toOptions(),o=i.host;return i.family===6&&o?.includes(":")&&(o=`[${o}]`),{url:`https://${o}:${i.port}`,certhashes:r,remotePeer:n}}var ae=Bn("libp2p:webtransport"),o0=class{components;config;constructor(e,r={}){this.components=e,this.config={maxInboundStreams:r.maxInboundStreams??1e3}}[Symbol.toStringTag]="@libp2p/webtransport";[Vl]=!0;async dial(e,r){r?.signal?.throwIfAborted(),ae("dialing %s",e);let n=this.components.peerId;if(n===void 0)throw new Error("Need a local peerid");r=r??{};let{url:i,certhashes:o,remotePeer:s}=yh(e);if(s==null)throw new Error("Need a target peerid");if(o.length===0)throw new Error("Expected multiaddr to contain certhashes");let a,c,f=()=>{};try{let u=!1,l=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{try{if(c!=null){if(c.timeline.close!=null)return;c.timeline.close=Date.now()}if(u)return;l.close(h)}catch(g){ae.error("error closing wt session",g)}finally{u=!0}},l.closed.then(async()=>{await c?.close()}).catch(h=>{ae.error("error on remote wt session close",h),c?.abort(h)}).finally(()=>{c==null&&f()}),a=()=>{a!=null&&r.signal?.removeEventListener("abort",a),f()},r.signal?.addEventListener("abort",a),await l.ready,!await this.authenticateWebTransport(l,n,s,o))throw new Error("Failed to authenticate webtransport");return c={close:async h=>{ae("Closing webtransport"),f()},abort:h=>{ae("aborting webtransport due to passed err",h),f({closeCode:0,reason:h.message})},remoteAddr:e,timeline:{open:Date.now()},...ja()},r?.signal?.throwIfAborted(),await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(l,f),skipProtection:!0})}catch(u){throw ae.error("caught wt session err",u),f({closeCode:0,reason:u.message}),u}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(e,r,n,i){let o=await e.createBidirectionalStream(),s=o.writable.getWriter(),a=o.readable.getReader();await s.ready;let c={source:async function*(){for(;;){let l=await a.read();if(l.value!=null&&(yield l.value),l.done)break}}(),sink:async function(l){for await(let h of l)await s.write(h)}},f=Ml()(),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{ae.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{ae.error(`Failed to close authentication stream reader: ${l.message}`)}),!nh(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(e,r){let n=0,i=this.config;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=e.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f)break;if(s.length>=i.maxInboundStreams)u.writable.close().catch(l=>{ae.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{ae.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await Qa(u,String(n++),"inbound",s,o?.onStreamEnd);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{ae.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await e.createBidirectionalStream(),u=await Qa(f,String(n++),o?.direction??"outbound",s,o?.onStreamEnd);return s.push(u),u},close:async c=>{ae("Closing webtransport muxer"),r()},abort:c=>{ae("Aborting webtransport muxer with err:",c),r({closeCode:0,reason:c.message})},...ja()}}}}createListener(e){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(e){return e.filter(r=>r.protoNames().includes("webtransport"))}};function Sm(t={}){return e=>new o0(e,t)}return _h(Bm);})();
|
|
16
16
|
//! TODO unclear how to add backpressure here?
|
|
17
17
|
/*! Bundled license information:
|
|
18
18
|
|